:root{--ink:#263369;--blue:#3559db;--yellow:#ffcf32;--mint:#b9f0db;--pink:#ffc2d3;--paper:#f5f9ff}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Arial Rounded MT Bold','Hiragino Maru Gothic ProN','Yu Gothic',Meiryo,sans-serif;font-size:17px;line-height:1.7}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:4px solid #ef7a12;outline-offset:4px}header{max-width:1120px;padding:23px 28px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{font-weight:900;font-size:21px;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;background:var(--yellow);border:2px solid var(--ink);border-radius:14px;width:42px;height:42px;transform:rotate(-8deg);font-size:28px;box-shadow:2px 3px 0 var(--ink)}.edition{font-size:14px;border:1px solid #abb5d3;border-radius:30px;padding:3px 13px;white-space:nowrap}main{max-width:1064px;margin:4px auto;padding:0 24px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(32px,4.5vw,54px);line-height:1.35;letter-spacing:.02em;margin-bottom:14px;font-weight:900}h2{font-size:25px;line-height:1.5}h3{font-size:20px;line-height:1.5}.welcome{border:3px solid var(--ink);border-radius:32px;background:var(--yellow);display:grid;grid-template-columns:1fr 1fr;overflow:hidden;box-shadow:0 7px 0 var(--ink)}.welcome-text{padding:36px 12px 32px 36px;position:relative;z-index:1}.eyebrow{display:inline-block;font-weight:bold;font-size:14px;letter-spacing:.1em;margin-bottom:14px}.welcome p{margin-bottom:20px}.welcome-art{display:flex;align-items:center;background:white;min-height:280px;border-radius:45% 0 0 45%}.welcome-art img{width:100%;height:100%;object-fit:contain}.primary{display:inline-flex;justify-content:center;align-items:center;gap:10px;background:var(--blue);color:white;border:2px solid var(--ink);border-radius:16px;padding:13px 24px;font-weight:800;box-shadow:0 4px 0 var(--ink);min-height:54px;text-decoration:none}.primary:hover{background:#2444ba;transform:translateY(-1px)}.primary:active{transform:translateY(3px);box-shadow:0 1px 0 var(--ink)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:38px;margin-bottom:14px}.section-head h2{margin:0}.section-head span{font-size:14px}.missions{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.mission{background:white;border:2px solid var(--ink);border-radius:23px;overflow:hidden;box-shadow:0 4px 0 #cad4e9;text-align:left;padding:0;display:flex;flex-direction:column}.mission:hover{transform:translateY(-3px);box-shadow:0 7px 0 #cad4e9}.mission-top{padding:14px 20px;display:flex;justify-content:space-between;align-items:center;background:var(--mint);font-weight:900}.mission:nth-child(2) .mission-top{background:var(--pink)}.mission:nth-child(3) .mission-top{background:#c5c5ff}.mission-top b{font-size:30px;line-height:1}.mission-body{padding:18px 20px 20px}.mission-body h3{margin:0 0 5px}.mission-body p{font-size:15px;margin:0 0 12px}.play-label{color:var(--blue);font-weight:900;font-size:15px}.done{font-size:14px;color:#16513c}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:14px 0}.subtle{border:1px solid #bac6df;background:white;border-radius:12px;padding:8px 16px;min-height:46px;font-weight:bold}.progress{font-size:14px;font-weight:bold}.game-banner{border:2px solid var(--ink);border-radius:24px;padding:22px 27px;background:var(--mint);margin-bottom:22px;box-shadow:0 4px 0 var(--ink)}.game-banner h1{font-size:30px;margin:4px 0 8px}.game-banner p{font-size:16px;margin:0;max-width:820px}.game-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:20px;align-items:start}.panel{background:white;border:2px solid #d9e1f0;border-radius:22px;padding:24px}.panel h2{font-size:21px;margin-bottom:14px}.rules{font-size:15px;background:#f1f5ff;border-radius:12px;padding:14px 17px;margin-bottom:20px}.rules p{margin:0}.clues{counter-reset:clue;list-style:none;padding:0;margin:0}.clues li{position:relative;padding:0 0 17px 38px;font-size:16px}.clues li:before{counter-increment:clue;content:counter(clue);position:absolute;left:0;top:1px;width:27px;height:27px;display:grid;place-items:center;background:var(--yellow);border-radius:50%;font-size:14px;font-weight:900}.clues li:last-child{padding-bottom:0}.answer-row{display:grid;grid-template-columns:80px 1fr 1fr;gap:8px;align-items:center;margin:12px 0}.animal-name{font-size:15px;font-weight:bold}.field-label{display:block;font-size:13px;color:#5e698d;margin-bottom:3px}select{width:100%;background:#f8faff;color:var(--ink);border:2px solid #a9b8d9;border-radius:10px;padding:9px 6px;min-height:48px;font-size:15px}.shelf-row{display:flex;align-items:center;gap:12px;margin:12px 0}.place-label{background:var(--pink);min-width:66px;text-align:center;padding:7px;border-radius:10px;font-size:15px;font-weight:bold}.window-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:360px;margin:18px auto}.window{border:3px solid #8596bd;background:#eaf3ff;min-height:76px;border-radius:14px;font-weight:900;font-size:24px;box-shadow:0 3px 0 #c5d0e5}.window[aria-pressed=true]{background:var(--yellow);border-color:var(--ink);box-shadow:0 3px 0 var(--ink)}.window small{font-size:13px;display:block;font-weight:500}.center{text-align:center}.muted{font-size:14px;color:#57678a}.actions{display:flex;gap:10px;margin-top:24px;flex-wrap:wrap}.actions .primary{flex:1}.feedback{margin-top:18px;border-radius:14px;background:#fff3d3;padding:16px;border:2px solid #ecc36c}.feedback:empty{display:none}.feedback.success{background:#ddf6e9;border-color:#5dad85}.feedback h3{margin:0 0 7px}.feedback p{margin:0}.explanation{font-size:15px;margin-top:15px;border-top:1px solid #8cbeaa;padding-top:12px}.explanation ol{padding-left:22px}.hint{margin-top:16px;border:2px dashed #bbc7df;border-radius:15px;background:#fff;padding:12px 16px}.hint summary{cursor:pointer;font-weight:bold;font-size:15px;min-height:32px}.hint p{font-size:15px;margin:10px 0}.finish{padding:32px;text-align:center;background:#fff6cf;border:2px solid var(--ink);border-radius:24px;margin-top:24px}.finish h2{margin-bottom:8px}.finish p{margin:0}footer{text-align:center;padding:30px 20px 24px;font-size:15px;color:#5a688a}footer small{display:block;margin-top:12px;font-size:12px;line-height:1.8}#confetti{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:8}.confetti-bit{position:absolute;top:-25px;width:12px;height:18px;animation:fall 1.7s ease-in forwards}@keyframes fall{to{transform:translateY(105vh) rotate(500deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.mission:hover,.primary:hover{transform:none}}@media(max-width:740px){header{padding:16px 18px}.brand{font-size:17px;gap:9px}.brand-mark{width:35px;height:35px;font-size:25px}.edition{font-size:12px;padding:3px 9px}main{padding:0 16px}.welcome{grid-template-columns:1fr;border-radius:24px;position:relative}.welcome-text{padding:25px 23px 19px}.welcome-text h1{font-size:34px}.welcome-text p{font-size:16px;margin-bottom:15px}.welcome-art{height:190px;min-height:0;border-radius:45% 45% 0 0;margin:0 13px}.welcome-art img{object-fit:contain}.welcome .primary{width:100%}.eyebrow{margin-bottom:8px}.section-head{margin-top:28px}.section-head h2{font-size:21px}.missions{grid-template-columns:1fr;gap:12px}.mission{display:grid;grid-template-columns:77px 1fr;border-radius:18px}.mission-top{padding:10px 8px;flex-direction:column;justify-content:center;gap:5px;font-size:12px}.mission-top b{font-size:32px}.mission-body{padding:13px 16px}.mission-body h3{font-size:19px}.mission-body p{margin-bottom:5px;font-size:14px}.game-layout{grid-template-columns:1fr;gap:14px}.game-banner{padding:18px;margin-bottom:16px}.game-banner h1{font-size:25px}.panel{padding:19px 16px}.answer-row{grid-template-columns:70px 1fr 1fr;gap:6px}.animal-name{font-size:14px}.section-head span{font-size:12px}.finish{padding:22px}h1 br{display:none}}@media(max-width:350px){.brand{font-size:15px}.edition{display:none}.answer-row{grid-template-columns:1fr 1fr}.animal-name{grid-column:1/-1}.welcome-text h1{font-size:29px}}
.rank-panel{background:#fff;border:2px solid var(--ink);border-radius:24px;padding:23px 26px;margin-top:27px;box-shadow:0 4px 0 #d7e1f5}.rank-heading{display:flex;align-items:center;gap:18px}.rank-badge{display:grid;place-items:center;flex-shrink:0;width:77px;height:77px;background:var(--yellow);border:3px solid var(--ink);border-radius:50%;box-shadow:0 4px 0 #e7a818;font-size:20px;font-weight:900;letter-spacing:-3px}.rank-kicker{font-size:13px;font-weight:bold;color:#626c8c}.rank-heading h2{font-size:25px;margin:0;line-height:1.5}.rank-heading p{font-size:15px;margin:2px 0 0}.rank-path{display:grid;grid-template-columns:repeat(4,1fr);padding:0;list-style:none;margin:22px 0 0;gap:8px}.rank-path li{display:flex;align-items:center;flex-direction:column;text-align:center;position:relative;gap:6px;color:#66728d}.rank-path li:not(:last-child):after{content:'';position:absolute;left:calc(50% + 23px);right:calc(-50% + 23px);top:19px;height:4px;background:#e0e6f0}.rank-path li span{display:grid;place-items:center;width:40px;height:40px;background:#edf1f7;border:2px solid #c6cfdf;border-radius:50%;font-weight:bold;z-index:1}.rank-path li b{font-size:14px}.rank-path li.earned{color:var(--ink)}.rank-path li.earned span{background:#b9f0db;border-color:var(--ink)}.rank-path li.current span{background:var(--yellow);box-shadow:0 3px 0 var(--ink)}.rank-note{font-size:13px;color:#59688c;margin:16px 0 0;line-height:1.7}.rank-panel.compact{margin:0 0 21px;padding:16px 22px}.compact .rank-badge{width:57px;height:57px;font-size:17px}.compact .rank-heading h2{font-size:21px}.compact .rank-path{margin-top:15px}.promotion{display:flex;gap:13px;align-items:center;background:var(--yellow);border:2px solid var(--ink);border-radius:15px;padding:14px;margin-bottom:15px;color:var(--ink)}.promotion strong{display:block;font-size:19px}.promotion-star{font-size:37px;line-height:1}.promotion span{font-weight:bold}@media(max-width:740px){.rank-panel{padding:19px 16px;margin-top:24px}.rank-heading{gap:13px}.rank-badge{width:65px;height:65px}.rank-heading h2{font-size:22px}.rank-heading p{font-size:14px}.rank-path{gap:4px}.rank-path li b{font-size:12px;line-height:1.5}.rank-panel.compact{padding:16px}.rank-note{font-size:12px}.promotion strong{font-size:17px}}
.level-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}.level-filter{border:2px solid #bac6df;border-radius:30px;padding:7px 18px;background:white;font-weight:bold;min-height:44px;font-size:15px}.level-filter[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.difficulty-tag{font-size:14px;color:#556187;font-weight:bold;display:block;margin-bottom:5px}.generic-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.generic-fields label{min-width:0}.generic-fields .field-label{font-size:14px;color:var(--ink)}.curriculum{margin-top:24px}.curriculum li{font-size:15px;margin:8px 0}@media(max-width:420px){.generic-fields{grid-template-columns:1fr}.level-filter{padding:6px 13px}.missions .mission-body h3{font-size:18px}}
.sprite{display:block;background-image:url('/assets/avatar-sprites.png');background-repeat:no-repeat;background-size:300% 200%}.avatar-stage{width:280px;height:280px;position:relative;margin:8px auto 22px;isolation:isolate}.avatar-base{position:absolute;inset:0;z-index:1}.avatar-gear{position:absolute;z-index:2;pointer-events:none}.gear-hat{width:180px;height:180px;top:-13px;left:51px}.gear-lens{width:150px;height:150px;top:121px;left:136px;transform:rotate(-8deg)}.gear-bag{width:135px;height:135px;top:170px;left:15px}.avatar-stage.small{width:110px;height:110px;margin:0;flex-shrink:0}.small .gear-hat{width:71px;height:71px;top:-5px;left:20px}.small .gear-lens{width:59px;height:59px;top:48px;left:53px}.small .gear-bag{width:53px;height:53px;top:67px;left:6px}.profile-panel{display:flex;align-items:center;gap:19px;margin-top:25px;border:2px solid var(--ink);border-radius:24px;background:#e8f5ff;padding:14px 22px;box-shadow:0 4px 0 #d5e4f3}.profile-info{flex:1}.profile-info h2{margin:0;font-size:23px}.profile-info p{margin:2px 0;font-size:14px}.point-balance,.point-wallet{font-size:23px;font-weight:900;color:#2847b2}.point-wallet{background:var(--yellow);border:2px solid var(--ink);border-radius:16px;padding:7px 18px}.wardrobe-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:23px}.wardrobe-preview{background:#d1f1ff;border:2px solid var(--ink);border-radius:25px;text-align:center;padding:27px 12px 19px}.wardrobe-preview h1{font-size:29px}.wardrobe-controls{display:grid;gap:16px}.animal-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.animal-choice{border:2px solid #b9c5db;border-radius:15px;background:#f6f9ff;padding:7px;font-weight:bold;min-width:0;font-size:15px}.animal-choice[aria-pressed=true]{background:#fff3b7;border-color:var(--ink);box-shadow:0 3px 0 var(--ink)}.animal-thumb{width:100%;aspect-ratio:1}.gear-item{display:flex;align-items:center;gap:12px;border-top:1px solid #e2e7f1;padding:14px 0}.gear-item:first-child{border-top:0}.gear-thumb{width:73px;height:73px;flex-shrink:0}.gear-item>div{flex:1;min-width:0}.gear-item h3{font-size:17px;margin:0}.gear-item p{font-size:14px;margin:0}.gear-item button{font-size:14px;padding:8px 12px;white-space:nowrap}.gear-item button:disabled{opacity:.55;cursor:not-allowed}.wardrobe-message{font-size:15px;font-weight:bold;color:#235341;margin:8px 0}.points-earned{background:var(--yellow);border-radius:10px;padding:9px 12px;font-weight:bold;margin-bottom:12px!important}@media(max-width:740px){.profile-panel{gap:10px;padding:12px;flex-wrap:wrap}.profile-info{min-width:110px}.profile-panel .primary{flex:1;font-size:16px;padding:9px 14px}.wardrobe-layout{grid-template-columns:1fr}.wardrobe-preview{padding:20px 12px 12px}.wardrobe-preview .avatar-stage{margin-bottom:14px}.wardrobe-preview h1{font-size:26px}.gear-thumb{width:60px;height:60px}.gear-item{gap:8px}.gear-item h3{font-size:15px}.gear-item button{padding:8px}.profile-panel .avatar-stage.small{width:90px;height:90px}.profile-panel .small .gear-hat{width:58px;height:58px;top:-4px;left:16px}.profile-panel .small .gear-lens{width:48px;height:48px;top:39px;left:43px}.profile-panel .small .gear-bag{width:43px;height:43px;top:55px;left:5px}}
/* The generated sheet uses a 560 px character row and a 464 px gear row. */
.avatar-stage{height:306.25px}.avatar-base,.animal-thumb{background-size:300% 182.857143%}.animal-thumb{aspect-ratio:512/560}.avatar-gear,.gear-thumb{background-size:300% 220.689655%}.gear-hat{width:210px;height:190.3125px;top:-43px;left:30px}.animal-0 .gear-hat{left:57px}.animal-2 .gear-hat{left:14px}.gear-lens{height:135.9375px}.gear-bag{height:122.34375px;top:184px}.gear-thumb{height:66.15625px}.avatar-stage.small{height:120.3125px}.small .gear-hat{width:82.5px;height:74.765625px;top:-16.9px;left:11.8px}.small.animal-0 .gear-hat{left:22.4px}.small.animal-2 .gear-hat{left:5.5px}.small .gear-lens{height:53.46875px}.small .gear-bag{height:48.03125px;top:72px}@media(max-width:740px){.profile-panel .avatar-stage.small{height:98.4375px}.profile-panel .small .gear-hat{width:67.5px;height:61.171875px;top:-13.8px;left:9.6px}.profile-panel .small.animal-0 .gear-hat{left:18.3px}.profile-panel .small.animal-2 .gear-hat{left:4.5px}.profile-panel .small .gear-lens{height:43.5px}.profile-panel .small .gear-bag{height:38.96875px;top:59px}.gear-thumb{height:54.375px}}
.route-map{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:270px;margin:14px auto 0}.route-map span{display:grid;place-items:center;border:2px solid #91a6cf;background:white;border-radius:10px;min-height:45px;font-weight:bold;font-size:18px}
/* Large functional diagrams and tap-friendly answer controls. */
.kind-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.more-row{text-align:center;margin:24px}.visual-board{margin:0 0 20px;padding:18px;background:#edf6ff;border:2px solid #a2bfe6;border-radius:18px}.visual-board figcaption{font-size:16px;margin-bottom:16px;font-weight:700}.logic-grid{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:5px;max-width:470px;margin:auto}.logic-cell{min-height:56px;display:flex;align-items:center;justify-content:center;text-align:center;background:white;border:2px solid #506b9b;border-radius:8px;font-size:20px;font-weight:bold;white-space:pre-wrap;overflow-wrap:anywhere;padding:4px;line-height:1.4}.logic-cell.blocked{background:#273655;color:white}.pattern-strip{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0}.pattern-strip li{display:flex;align-items:center;flex-direction:column;background:white;border:2px solid #9cb1d4;border-radius:10px;min-width:54px;padding:6px}.pattern-strip small{font-size:14px;color:#53617d}.visual-token{display:inline-flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;white-space:pre-wrap;overflow-wrap:anywhere;text-align:center}.token-icon{font-size:28px;line-height:1.3}.token-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:center}.diagram-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:10px}.diagram-card{padding:12px;background:white;border:2px solid #6384b0;border-radius:12px}.diagram-card h3{font-size:17px;margin:0 0 10px;text-align:center}.equations{display:grid;gap:14px}.equation-row{display:grid;grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr);gap:5px;align-items:center}.balance-side{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;align-items:center;border-bottom:4px solid #6584ac;background:white;padding:12px 4px;border-radius:8px}.relation{text-align:center;font-size:26px}.choice-field{border:0;padding:0;margin:0 0 22px;min-width:0}.choice-field legend{font-size:17px;font-weight:bold;margin-bottom:9px}.choice-options{display:flex;flex-wrap:wrap;gap:9px}.choice-tile{min-width:58px;min-height:54px;border:2px solid #9bb0d3;border-radius:13px;background:#fff;padding:10px 14px;font-size:19px;max-width:100%;overflow-wrap:anywhere;white-space:pre-wrap}.choice-tile[aria-pressed=true]{background:#fff0a6;border-color:#273665;box-shadow:0 3px 0 #273665}.choice-tile:disabled{opacity:.4;cursor:default}.answer-slots{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0}.answer-slots button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:68px;min-height:72px;background:#e8f5ff;border:2px dashed #547098;border-radius:12px;padding:7px;max-width:150px;overflow-wrap:anywhere}.answer-slots button:disabled{color:#425470;opacity:1}.answer-slots small{font-size:14px}.answer-slots b{font-size:21px}.empty-state{text-align:center;padding:25px}.rank-note{font-size:14px}.game-layout>section{min-width:0}@media(max-width:740px){.visual-board{padding:12px}.logic-cell{font-size:18px;min-height:48px}.choice-tile{font-size:18px;padding:9px 12px}.diagram-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.balance-side{font-size:16px}.token-icon{font-size:24px}.rank-note{font-size:14px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.board-choice{cursor:pointer}.board-choice:hover,.board-choice:focus-visible{background:#fff0a6;outline:3px solid #ffce32;outline-offset:2px}

.rating-panel{background:#f0f7ff;border:2px solid #adbfdf;padding:20px;border-radius:18px;margin-top:18px}.rating-panel h2{font-size:21px}.rating-panel p{font-size:15px}.rating-panel fieldset{border:0;padding:0;margin:0 0 18px;display:flex;flex-wrap:wrap;gap:10px}.rating-panel legend{font-weight:bold;margin-bottom:8px}.rating-panel label{display:flex;gap:6px;align-items:center;min-height:46px;padding:8px;background:white;border:1px solid #b7c8e2;border-radius:10px;font-size:16px}.rating-panel input{width:19px;height:19px}.rating-panel details{margin-top:15px;font-size:14px}.rating-panel summary{cursor:pointer;min-height:44px}.rating-status{min-height:24px;font-weight:bold}

/* Crawlable links retain the game controls appearance. */
a.mission,a.primary,a.subtle{text-decoration:none;color:inherit}a.primary,a.subtle{display:inline-block;text-align:center}#seo-reading{margin-bottom:24px}.puzzle-directory{display:grid;gap:12px;padding-left:24px}#seo-reading[hidden]{display:none}
/* Original CSS-only wardrobe additions. No external images or paid items. */
.rank-path{display:flex;flex-wrap:wrap;gap:.5rem}.rank-path li{flex:1 1 130px}.rank-path small{display:block;font-size:.75rem}
.gear-swatch{display:grid;place-items:center;width:64px;height:64px;border-radius:20px;background:#edf7df;color:#254732;font-size:26px;border:3px solid #a3c896}
.avatar-stage.bg-leaf,.gear-swatch.bg-leaf{background:radial-gradient(ellipse at 20% 20%,#d1e8a5 0 18%,transparent 19%),linear-gradient(135deg,#f6f8c8,#a9d7a5)}
.avatar-stage.bg-stream,.gear-swatch.bg-stream{background:repeating-linear-gradient(165deg,#caeef0 0 28px,#e2f6ef 29px 44px)}
.avatar-stage.bg-sunset,.gear-swatch.bg-sunset{background:linear-gradient(20deg,#f7b98c,#f6d8b4 55%,#f4a7b7)}
.avatar-stage.bg-night,.gear-swatch.bg-night{background:radial-gradient(circle at 20% 25%,#fffbc7 0 2px,transparent 3px),radial-gradient(circle at 80% 20%,#fffbc7 0 3px,transparent 4px),linear-gradient(#354866,#738daf)}
.avatar-stage.frame-seed,.gear-swatch.frame-seed{outline:5px solid #87b66a;outline-offset:-5px}
.avatar-stage.frame-river,.gear-swatch.frame-river{outline:5px double #398da6;outline-offset:-5px}
.avatar-stage.frame-flower,.gear-swatch.frame-flower{outline:5px dashed #d881a2;outline-offset:-5px}
.avatar-stage.frame-star,.gear-swatch.frame-star{outline:6px double #c59820;outline-offset:-6px}
.avatar-badge{position:absolute;right:7%;bottom:8%;display:grid;place-items:center;width:22%;aspect-ratio:1;border-radius:50%;background:#fff2a9;border:3px solid #b0801f;color:#72500a;font-size:clamp(14px,3vw,32px);z-index:5}
.gear-item small{color:#465d4c}.gear-item button:disabled{opacity:.65;cursor:default}.gear-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.rank-panel.compact .rank-path{display:none}
.token-icon-absent{position:relative;display:inline-grid;place-items:center}
.token-icon-absent::after{content:"";position:absolute;left:0;top:50%;width:1.15em;height:3px;background:#344b40;transform:rotate(-45deg);box-shadow:0 0 0 1px #fff}
.token-column{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem}
.diagram-matrix{display:grid;grid-template-columns:repeat(var(--matrix-cols),minmax(0,1fr));gap:2px;max-width:19rem;margin:.6rem auto}
.matrix-cell{display:grid;place-items:center;aspect-ratio:1;min-width:0;border:1px solid #779184;background:#f0f6e9;font:700 clamp(1rem,3vw,1.4rem)/1 monospace}
.matrix-blank{background:transparent;border-color:transparent;color:#647568}
