:root{--pink:#ff007a;--lime:#c3f53c;--night:#120b35;--ink:#151113;--cream:#fff4d3;--muted:#aaa3af;--panel:#201646;--line:rgba(255,244,211,.2)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--cream);background:radial-gradient(circle at 12% 18%,rgba(255,0,122,.13),transparent 33%),var(--night);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button,input{font:inherit}.frog-shell{max-width:1440px;margin:auto;overflow:hidden}.eyebrow{margin:0 0 12px;color:var(--lime);font:800 .78rem/1.2 "Courier New",monospace;letter-spacing:.12em;text-transform:uppercase}
.token-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:2px solid var(--cream);background:#080611}.token-nav a{padding:17px 24px;color:rgba(255,244,211,.78);font:800 .78rem "Courier New",monospace;letter-spacing:.05em;text-transform:uppercase}.token-nav a:nth-child(2){border-inline:1px solid var(--line);color:var(--lime);text-align:center}.token-nav a:last-child{text-align:right}.token-nav a:hover{color:var(--pink)}
.frog-profile{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);min-height:700px;border-bottom:2px solid var(--cream)}.frog-art{position:relative;display:grid;place-items:center;margin:0;padding:clamp(24px,4vw,60px);background:repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 2px,transparent 2px 13px),#080611}.frog-art img{width:min(100%,680px);aspect-ratio:1;object-fit:cover;border:3px solid var(--cream);box-shadow:14px 14px 0 var(--pink)}.frog-art figcaption{margin-top:28px;color:var(--muted);font:800 .72rem "Courier New",monospace;letter-spacing:.11em;text-transform:uppercase}.frog-story{display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,6vw,92px)}.frog-story h1,.section-heading h2,.frog-finder h2,.directory-hero h1{margin:0;font:clamp(3.2rem,7vw,7.4rem)/.82 Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;letter-spacing:-.02em;text-transform:uppercase}.frog-title{margin:24px 0 0;color:var(--pink);font:900 clamp(1.35rem,2.4vw,2.2rem)/1 Impact,sans-serif;text-transform:uppercase}.frog-story blockquote{margin:28px 0 0;padding-left:20px;border-left:4px solid var(--lime);font:italic 1.15rem/1.5 Georgia,serif}.biography{margin:24px 0 0;max-width:660px;color:rgba(255,244,211,.78);font:1.08rem/1.72 Georgia,serif}.profile-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 20px;border:2px solid var(--cream);font:900 .77rem "Courier New",monospace;letter-spacing:.06em;text-transform:uppercase}.button-lime{border-color:var(--lime);color:var(--ink);background:var(--lime)}.button-plain:hover{background:rgba(255,244,211,.08)}.owner-status{min-height:1.3em;margin:18px 0 0;color:var(--muted);font:700 .76rem "Courier New",monospace}.owner-status a{color:var(--lime)}.is-one-of-one .frog-art img{border-color:#ffd75a;box-shadow:14px 14px 0 #a87800}.is-one-of-one .frog-title{color:#ffd75a}
.mission-lab{border-bottom:2px solid var(--cream);background:linear-gradient(135deg,#ff007a 0 36%,#120b35 36%)}.mission-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.36fr);gap:26px;padding:clamp(50px,7vw,96px) clamp(24px,6vw,90px);color:var(--ink)}.mission-intro .eyebrow{grid-column:1/-1;color:var(--ink)}.mission-intro h2{max-width:850px;margin:0;font:clamp(3.7rem,8vw,8rem)/.82 Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;letter-spacing:-.02em;text-transform:uppercase}.mission-intro>p:not(.eyebrow){align-self:end;max-width:560px;margin:0;font:700 1.08rem/1.6 Georgia,serif}.mission-stamp{align-self:end;justify-self:end;width:min(100%,280px);padding:18px;border:3px solid var(--ink);box-shadow:8px 8px 0 var(--cream);transform:rotate(2deg);background:var(--lime)}.mission-stamp span,.mission-stamp strong{display:block}.mission-stamp span{font:900 .68rem "Courier New",monospace;letter-spacing:.1em;text-transform:uppercase}.mission-stamp strong{margin-top:8px;font:900 1.55rem/1 Impact,sans-serif;text-transform:uppercase}.mission-console{padding:clamp(42px,6vw,82px) clamp(24px,6vw,90px);background:#080611}.mission-date{margin:0 0 12px;color:var(--lime);font:800 .72rem "Courier New",monospace;letter-spacing:.08em;text-transform:uppercase}.mission-console>h3,.arrow-ledger h3,.mission-progress h3{margin:0;font:900 clamp(2.2rem,5vw,4.8rem)/.9 Impact,sans-serif;text-transform:uppercase}.mission-brief{max-width:800px;margin:20px 0 0;color:rgba(255,244,211,.8);font:1.15rem/1.6 Georgia,serif}.mission-attempt,.ledger-button{margin-top:26px;padding:15px 20px;border:2px solid var(--lime);color:var(--ink);font:900 .76rem "Courier New",monospace;letter-spacing:.04em;text-transform:uppercase;background:var(--lime);cursor:pointer}.ledger-button:disabled{border-color:var(--line);color:var(--muted);background:transparent;cursor:not-allowed}.mission-result{max-width:900px;margin-top:26px;padding:24px;border:2px solid var(--pink);box-shadow:8px 8px 0 rgba(255,0,122,.3);background:var(--panel)}.mission-result span{color:var(--pink);font:900 .68rem "Courier New",monospace;letter-spacing:.1em;text-transform:uppercase}.mission-result p{margin:10px 0 0;font:700 1.12rem/1.65 Georgia,serif}.arrow-ledger{display:grid;grid-template-columns:minmax(210px,.55fr) minmax(0,1fr);gap:22px 46px;align-items:start;margin-top:54px;padding-top:40px;border-top:2px solid var(--line)}.arrow-ledger h3{font-size:clamp(2rem,3.8vw,3.8rem)}.arrow-ledger>p{margin:0;color:var(--muted);font:.96rem/1.6 Georgia,serif}.arrow-ledger .ledger-button{grid-column:2;margin-top:0;justify-self:start}.ledger-status{grid-column:2;color:var(--muted)!important;font:700 .72rem/1.5 "Courier New",monospace!important}.ledger-list{grid-column:2;margin:0;padding:0;list-style:none}.ledger-list li{display:grid;grid-template-columns:120px 1fr auto;gap:14px;padding:14px 0;border-top:1px solid var(--line);font:700 .72rem/1.4 "Courier New",monospace}.ledger-list span{color:var(--lime)}.ledger-list small{color:var(--muted)}.ledger-list .ledger-empty{display:block;color:var(--muted)}.mission-progress{display:grid;grid-template-columns:minmax(240px,.55fr) minmax(0,1.45fr);gap:40px;padding:clamp(46px,6vw,82px) clamp(24px,6vw,90px);background:var(--night)}.mission-progress h3{font-size:clamp(2.3rem,4.5vw,4.4rem)}.mission-progress>div>p:last-child{max-width:430px;color:var(--muted);font:.9rem/1.6 Georgia,serif}.progress-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.progress-card{min-height:170px;padding:17px;border:2px solid var(--line);background:#080611}.progress-card.is-current{border-color:var(--lime);box-shadow:inset 0 -7px 0 var(--lime)}.progress-card span{display:block;min-height:38px;color:var(--pink);font:900 .68rem/1.3 "Courier New",monospace;text-transform:uppercase}.progress-card strong{display:block;margin-top:20px;font:900 3rem/1 Impact,sans-serif}.progress-card small{display:block;margin-top:8px;color:var(--muted);font:700 .64rem "Courier New",monospace;text-transform:uppercase}
.record-section,.relationships{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:clamp(30px,6vw,90px);padding:clamp(50px,7vw,100px) clamp(24px,6vw,90px);border-bottom:2px solid var(--cream);background:#080611}.record-section:nth-of-type(even){background:var(--night)}.section-heading h2{font-size:clamp(2.8rem,5vw,5.1rem)}.facts-grid,.traits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fact,.trait{min-height:108px;padding:20px;border:2px solid var(--line);background:rgba(255,244,211,.045)}.fact span,.trait span{display:block;margin-bottom:9px;color:var(--pink);font:800 .7rem "Courier New",monospace;letter-spacing:.08em;text-transform:uppercase}.fact strong,.trait strong{font:800 1rem/1.4 Arial,sans-serif}.relationship-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.relationship-card{position:relative;display:grid;grid-template-columns:96px 1fr;grid-template-rows:auto auto auto;gap:2px 16px;align-items:center;padding:12px;border:2px solid var(--line);background:var(--panel);transition:transform .18s,border-color .18s}.relationship-card:hover{transform:translate(-4px,-4px);border-color:var(--lime)}.relationship-card img{grid-row:1/4;width:96px;height:96px;object-fit:cover}.relationship-card span{color:var(--pink);font:800 .68rem "Courier New",monospace;text-transform:uppercase}.relationship-card strong{font:900 1.25rem Impact,sans-serif;text-transform:uppercase}.relationship-card small{color:var(--muted);font:700 .7rem "Courier New",monospace}
.frog-finder{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;padding:clamp(50px,7vw,100px) clamp(24px,6vw,90px);border-bottom:2px solid var(--cream);background:var(--pink)}.frog-finder .eyebrow{color:var(--ink)}.frog-finder h2{font-size:clamp(3rem,6vw,6rem)}.frog-finder label,.directory-tools label{display:block;margin-bottom:10px;font:800 .76rem "Courier New",monospace;letter-spacing:.08em;text-transform:uppercase}.frog-finder form>div,.search-row{display:flex}.frog-finder input,.directory-tools input{min-width:0;flex:1;padding:15px 16px;border:2px solid var(--cream);border-radius:0;color:var(--cream);background:var(--night);outline:none}.frog-finder button,.directory-tools button,.load-more{padding:14px 18px;border:2px solid var(--cream);color:var(--ink);font:900 .75rem "Courier New",monospace;text-transform:uppercase;background:var(--cream);cursor:pointer}.frog-finder form>p{min-height:1em;margin:8px 0 0;color:var(--ink);font:700 .75rem "Courier New",monospace}.frog-footer{display:flex;justify-content:space-between;gap:20px;padding:34px clamp(24px,6vw,90px);background:var(--ink);font:800 .76rem "Courier New",monospace;letter-spacing:.06em;text-transform:uppercase}.frog-footer a{color:var(--lime)}
.directory-hero{padding:clamp(60px,9vw,132px) clamp(24px,6vw,90px) 48px;border-bottom:2px solid var(--cream);background:radial-gradient(circle at 82% 35%,rgba(195,245,60,.18),transparent 28%)}.directory-hero h1{font-size:clamp(4.2rem,10vw,10rem)}.directory-hero>p:last-child{max-width:660px;margin:28px 0 0;color:rgba(255,244,211,.78);font:clamp(1.1rem,1.8vw,1.45rem)/1.5 Georgia,serif}.directory-tools{padding:30px clamp(24px,6vw,90px);border-bottom:2px solid var(--cream);background:#080611}.search-row{max-width:740px}.filter-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.filter-row button{border-color:var(--line);color:var(--cream);background:transparent}.filter-row button:hover,.filter-row button.is-active{border-color:var(--lime);color:var(--ink);background:var(--lime)}.directory-tools>p{margin:16px 0 0;color:var(--muted);font:700 .74rem "Courier New",monospace}.directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:clamp(32px,5vw,72px) clamp(24px,6vw,90px);background:var(--night)}.directory-card{min-width:0;padding:12px;border:2px solid var(--line);background:#080611;transition:transform .18s,border-color .18s}.directory-card:hover{transform:translateY(-5px);border-color:var(--pink)}.card-image{position:relative;margin-bottom:14px;overflow:hidden;background:var(--panel)}.card-image img{width:100%;aspect-ratio:1;object-fit:cover}.card-image span{position:absolute;top:10px;right:10px;padding:6px 9px;border:1px solid var(--ink);color:var(--ink);font:900 .7rem "Courier New",monospace;background:#ffd75a}.directory-card small{display:block;color:var(--lime);font:800 .67rem "Courier New",monospace;text-transform:uppercase}.directory-card strong{display:block;overflow:hidden;margin-top:7px;font:900 1.25rem Impact,sans-serif;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.directory-card em{display:block;overflow:hidden;margin-top:6px;color:var(--muted);font:normal .72rem "Courier New",monospace;text-overflow:ellipsis;white-space:nowrap}.directory-card.is-one-of-one{border-color:rgba(255,215,90,.55)}.load-more{display:block;margin:0 auto 70px;border-color:var(--lime);background:var(--lime)}.load-more[hidden]{display:none}
.mission-intro>p:not(.eyebrow){color:var(--cream)}
.button-pink{border-color:var(--pink);color:var(--cream);background:var(--pink)}.mission-ribbon{display:grid;grid-template-columns:auto minmax(200px,.8fr) minmax(260px,1.2fr) auto;gap:12px 22px;align-items:center;padding:15px clamp(18px,3vw,46px);border-bottom:2px solid var(--ink);color:var(--ink);background:var(--lime)}.mission-ribbon span,.mission-ribbon b{font:900 .7rem/1.2 "Courier New",monospace;letter-spacing:.07em;text-transform:uppercase}.mission-ribbon strong{font:900 1.35rem/1 Impact,sans-serif;text-transform:uppercase}.mission-ribbon em{overflow:hidden;font:normal .82rem/1.35 Georgia,serif;text-overflow:ellipsis;white-space:nowrap}.mission-ribbon b{justify-self:end;padding:10px 12px;border:2px solid var(--ink);background:var(--cream)}.mission-ribbon:hover b{color:var(--cream);background:var(--pink)}.mission-how{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:10px;padding:20px clamp(24px,6vw,90px);border-top:2px solid var(--ink);border-bottom:2px solid var(--cream);color:var(--cream);background:var(--night)}.mission-how>div{position:relative;min-height:128px;padding:18px 16px 16px 56px;border:2px solid var(--line);background:#080611}.mission-how span{position:absolute;top:16px;left:16px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:var(--ink);font:900 .75rem "Courier New",monospace;background:var(--lime)}.mission-how strong{display:block;font:900 .82rem/1.3 "Courier New",monospace;text-transform:uppercase}.mission-how p{margin:8px 0 0;color:var(--muted);font:.84rem/1.45 Georgia,serif}.mission-how>a{display:grid;place-items:center;min-width:180px;padding:18px;border:2px solid var(--pink);color:var(--cream);font:900 .72rem/1.4 "Courier New",monospace;text-align:center;text-transform:uppercase;background:var(--pink)}
.community-experience{grid-column:1/-1;display:grid;grid-template-columns:minmax(260px,1fr) 180px auto;gap:18px;align-items:center;margin-top:12px;padding:20px;border:3px solid var(--ink);color:var(--ink);background:var(--lime);box-shadow:7px 7px 0 var(--pink)}.community-experience .eyebrow{color:#6d1641}.community-experience h3{margin:0;font:900 1.7rem/1 Impact,sans-serif;text-transform:uppercase}.community-experience>div:first-child>p:last-child{margin:8px 0 0;font:.82rem/1.45 Georgia,serif}.experience-score{padding:14px;border:2px solid var(--ink);text-align:center;background:var(--cream)}.experience-score span,.experience-score small{display:block;font:900 .5rem "Courier New",monospace;text-transform:uppercase}.experience-score strong{display:block;margin:4px 0;font:900 2.8rem Impact,sans-serif}.community-experience>button{padding:14px;border:3px solid var(--ink);color:var(--cream);font:900 .62rem "Courier New",monospace;text-transform:uppercase;background:var(--pink);box-shadow:4px 4px 0 var(--ink);cursor:pointer}.community-experience>button:disabled{filter:grayscale(.5);cursor:default}.experience-status,.experience-history,.community-experience>a{grid-column:1/-1}.experience-status{margin:0;padding-top:14px;border-top:2px solid var(--ink);font:800 .62rem/1.45 "Courier New",monospace}.experience-history{display:grid;gap:6px}.experience-history>div{padding:12px;border:2px solid var(--ink);background:rgba(255,244,211,.6)}.experience-history small{font:900 .5rem "Courier New",monospace;text-transform:uppercase}.experience-history p{margin:5px 0 0;font:.8rem/1.4 Georgia,serif}.community-experience>a{font:900 .62rem "Courier New",monospace;text-transform:uppercase}
@media(max-width:900px){.community-experience{grid-template-columns:1fr 160px}.community-experience>button{grid-column:1/-1}}
@media(max-width:700px){.mission-lab{background:var(--pink)}.mission-intro>p:not(.eyebrow){color:var(--ink)}.community-experience{grid-template-columns:1fr}.experience-score{width:100%}.community-experience>button{grid-column:1}}
@media(max-width:1100px){.mission-ribbon{grid-template-columns:auto 1fr auto}.mission-ribbon em{display:none}.mission-how{grid-template-columns:repeat(3,minmax(0,1fr))}.mission-how>a{grid-column:1/-1;min-height:54px}}
@media(max-width:980px){.frog-profile{grid-template-columns:1fr}.frog-art img{max-width:620px}.record-section,.relationships,.mission-progress{grid-template-columns:1fr}.directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.token-nav a{padding:14px 10px;font-size:.62rem}.frog-story{padding:42px 22px 54px}.frog-story h1{font-size:clamp(3.4rem,16vw,5.3rem)}.frog-art{padding:24px 22px 38px}.frog-art img{box-shadow:8px 8px 0 var(--pink)}.facts-grid,.traits-grid{grid-template-columns:1fr}.frog-finder{grid-template-columns:1fr}.relationship-grid{grid-template-columns:1fr}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-inline:14px}.directory-card{padding:8px}.directory-card strong{font-size:1rem}.directory-card em{font-size:.62rem}.frog-footer{flex-direction:column}.profile-actions{flex-direction:column}.button{width:100%}.mission-ribbon{grid-template-columns:1fr auto;gap:6px 10px;padding:12px 14px}.mission-ribbon span{grid-column:1/-1}.mission-ribbon strong{font-size:1rem}.mission-ribbon b{grid-column:2;grid-row:2;padding:8px;font-size:.58rem}.mission-how{grid-template-columns:1fr}.mission-how>a{grid-column:1}.mission-intro{grid-template-columns:1fr}.mission-intro .eyebrow{grid-column:auto}.mission-stamp{justify-self:start}.arrow-ledger{grid-template-columns:1fr}.arrow-ledger .ledger-button,.ledger-status,.ledger-list{grid-column:1}.ledger-list li{grid-template-columns:1fr}.progress-card{min-height:145px}}
@media(max-width:430px){.directory-grid{grid-template-columns:1fr 1fr}.search-row{display:grid}.relationship-card{grid-template-columns:76px 1fr}.relationship-card img{width:76px;height:76px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Preserve every complete NFT composition across profiles and collection cards. */
.frog-art img,.relationship-card img,.card-image img{object-fit:contain;object-position:center;background:#05040b}

/* Mobile wallet guidance on frog pages */
.frog-wallet-mobile-help{grid-column:1/-1;margin-top:18px;padding:18px;border:2px dashed var(--line);background:rgba(255,0,122,.08)}
.frog-wallet-mobile-help p{margin:0 0 12px;color:var(--muted);font:.9rem/1.45 Georgia,serif}
.frog-wallet-mobile-help .wallet-app-links{display:flex;flex-wrap:wrap;gap:10px}
.frog-wallet-mobile-help .wallet-app-link{padding:10px 14px;border:2px solid var(--cream);color:var(--cream);font:800 .72rem "Courier New",monospace;text-transform:uppercase;text-decoration:none;background:transparent}
.frog-wallet-mobile-help .wallet-app-link:hover{border-color:var(--lime);color:var(--ink);background:var(--lime)}

/* Directory loading and error states */
.directory-loading{grid-column:1/-1;margin:0;color:var(--muted);font:800 .85rem "Courier New",monospace;text-transform:uppercase}
.directory-error{grid-column:1/-1;margin:0;color:var(--pink);font:700 .9rem/1.5 Georgia,serif}
.directory-error button{margin-left:8px;padding:8px 14px;border:2px solid var(--pink);color:var(--ink);font:800 .72rem "Courier New",monospace;text-transform:uppercase;background:var(--pink);cursor:pointer}

/* Character pages use a real reading floor instead of micro-labels. */
.frog-shell .eyebrow,.frog-shell .frog-art figcaption,.frog-shell .button,.frog-shell .owner-status,
.frog-shell .mission-ribbon span,.frog-shell .mission-ribbon b,.frog-shell .mission-date,
.frog-shell .mission-result span,.frog-shell .ledger-status,.frog-shell .ledger-list li,
.frog-shell .progress-card span,.frog-shell .progress-card small,.frog-shell .fact span,
.frog-shell .trait span,.frog-shell .relationship-card span,.frog-shell .relationship-card small,
.frog-shell .frog-finder label,.frog-shell .directory-tools label,.frog-shell .frog-finder button,
.frog-shell .directory-tools button,.frog-shell .load-more,.frog-shell .frog-footer,
.frog-shell .directory-tools>p,.frog-shell .directory-card small,.frog-shell .directory-card em,
.frog-shell .community-experience small,.frog-shell .community-experience button{font-size:1rem;line-height:1.4}
