.card-room,.flash-player{width:min(100%,780px);margin:0 auto 36px;color:#51372c}.flash-player{max-width:655px}.card-room .back,.flash-player .back{margin:0;min-height:44px;display:inline-flex;align-items:center}.fc-heading h1,.player-heading h1{font:500 clamp(43px,6vw,76px)/1 var(--serif);letter-spacing:-.065em;color:#6b3626;margin:14px 0 22px}.fc-heading em{font-weight:400;color:#af542e}.fc-heading p{font-size:17px;line-height:1.5;margin:-8px 0 20px;color:#715344}.flash-shelf{display:grid;gap:13px}.shelf-link,.fc-resume{display:flex;align-items:center;gap:21px;border-radius:19px;border:1px solid #c8a482;color:#593223;background:#fce1bf;padding:17px 24px;text-decoration:none;box-shadow:0 3px 0 #dbb49957;min-height:104px}.shelf-link.lilac{background:#ece0f1;border-color:#c4a9c5}.shelf-link.mint{background:#e8ecda;border-color:#b3bda0}.shelf-link>span:nth-child(2),.fc-resume div{display:grid;gap:5px;flex:1}.shelf-link b{font:500 clamp(23px,3.3vw,36px)/1.05 var(--serif);letter-spacing:-.045em}.shelf-link small,.fc-resume small{font-size:15px;line-height:1.4;color:#674d42}.shelf-link>svg,.subject-ledger button>svg,.fc-resume>svg{width:20px;flex-shrink:0}.pile-art{position:relative;display:inline-block;width:94px;height:72px;flex-shrink:0;isolation:isolate;--paper-front:#fff1cb;--paper-back:#dc9060}.pile-art.lilac{--paper-front:#fcf2f6;--paper-back:#bb98bf}.pile-art.mint{--paper-front:#f6f2d7;--paper-back:#acb797}.pile-art i{position:absolute;left:12%;top:8%;width:72%;height:76%;border-radius:6px;border:1px solid #987c65;background:var(--paper-back);rotate:-13deg}.pile-art i:nth-child(2){rotate:-2deg;translate:3px 4px;background:#fff4db}.pile-art i:last-child{rotate:9deg;translate:6px 6px;background:var(--paper-front);box-shadow:inset 0 0 0 3px var(--paper-front),inset 0 0 0 4px #b39573}.pile-art img{width:74%;height:78%;margin:9% 13%;object-fit:contain}.fc-resume{min-height:68px;font-size:15px;background:#fff6e8;padding:10px 15px;margin:0 0 15px}.fc-resume>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f4dbbd}.fc-resume svg{width:19px}
.subject-ledger{display:grid;grid-template-columns:1fr 1fr;border:1px solid #d5bc9e;border-radius:15px;overflow:hidden;background:#fff5e6}.subject-ledger button{display:flex;align-items:center;gap:11px;text-align:left;padding:13px;min-height:76px;border:none;border-bottom:1px solid #e4d1b8;background:transparent;color:#553522;cursor:pointer}.subject-ledger button:nth-child(odd){border-right:1px solid #e4d1b8}.subject-ledger i{width:39px;height:43px;display:grid;place-items:center;background:var(--swatch);border:1px solid #c8b6a1;border-radius:5px;box-shadow:-2px 2px #fbefd8,-3px 3px #c5ab93;flex-shrink:0}.subject-ledger i svg{width:22px;height:22px}.subject-ledger span{flex:1}.subject-ledger b{font:650 16px/1.25 var(--sans);display:block}.subject-ledger small{font-size:12px;line-height:1.35;color:#715344}.subject-ledger button:hover,.shelf-link:hover,.fc-resume:hover{filter:brightness(.975)}.shuffle-box{margin:12px 0 16px;padding:24px 18px;text-align:center;border:1px solid #c9ad92;border-radius:20px;background:linear-gradient(156deg,#ffeed5,#f7e4da)}.shuffle-box h2{margin:6px 0 16px;font:500 34px/1.08 var(--serif);letter-spacing:-.045em}.shuffle-box .actions{justify-content:center}.pile-size{display:flex;max-width:455px;margin:0 auto;padding:0;border:0;gap:6px}.pile-size legend{font-size:14px;text-align:left;padding:0 0 7px;font-weight:650}.pile-size label{flex:1}.pile-size input{position:absolute;opacity:0;width:1px;height:1px}.pile-size span{min-height:48px;display:grid;place-items:center;border:1px solid #c2a78c;border-radius:9px;background:#fff8ee;color:#5d382a;font-weight:650}.pile-size input:checked+span{background:#77402f;color:#fff7e5;border-color:#77402f}.pile-size input:focus-visible+span{outline:3px solid #6a518b;outline-offset:2px}.bonus-opt{margin:8px auto;min-height:44px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:14px}.bonus-opt input{width:18px;height:18px;accent-color:#77402f}.fc-start{width:min(455px,100%);justify-content:center}
.player-nav,.player-heading,.card-top,.card-foot,.pile-controls{display:flex;justify-content:space-between;align-items:center;gap:10px}.player-nav>button,.pile-controls button{min-height:44px;border:none;background:transparent;color:#70422b;font:650 15px var(--sans);display:inline-flex;align-items:center;gap:7px;cursor:pointer}.player-nav>button{text-decoration:underline;text-underline-offset:3px}.player-heading{margin:6px 0 10px}.player-heading h1{font-size:clamp(28px,4vw,45px);margin:0;max-width:72%}.player-heading>span{font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums}.pile-track{height:4px;border-radius:8px;background:#e8d6c2;overflow:hidden;margin-bottom:20px}.pile-track>i{display:block;height:100%;background:#ad5534}.card-stack{position:relative;isolation:isolate;margin:0 4px 17px;perspective:1200px}.card-stack::before,.card-stack::after{content:'';position:absolute;inset:3px 0 -5px;border:1px solid #bc9d82;border-radius:17px;background:#fff4dc;transform:rotate(-.6deg);z-index:-1}.card-stack::before{inset:7px 2px -9px;transform:rotate(.6deg);background:#e9c5a3}.study-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;text-align:left;width:100%;min-height:310px;padding:20px 25px;gap:15px;background:linear-gradient(153deg,#fff8e8 44%,var(--tint) 160%);border:1px solid #af886c;border-radius:16px;color:#583526;cursor:pointer;box-shadow:inset 0 0 0 6px #fff3db,inset 0 0 0 7px #c9a383;touch-action:pan-y pinch-zoom;user-select:none}.study-card.show-back{background:linear-gradient(145deg,#fcf5e9 4%,var(--tint) 160%)}.card-top{align-self:stretch}.stamp{display:inline-block;background:var(--tint);padding:6px 10px;border:1px solid #a1887380;border-radius:5px;font:700 13px/1.2 var(--sans)}.card-flower{font:30px/1 Georgia,serif;color:#b4653e}.face-body{display:grid;gap:10px;align-content:center;margin:4px 0;text-align:center}.face-body small{font:750 11px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#845439}.face-body strong{font:500 clamp(30px,4.5vw,47px)/1.12 var(--serif);letter-spacing:-.035em;overflow-wrap:anywhere}.show-back .face-body strong,.long-face .face-body strong{font-size:clamp(22px,3vw,30px)}.face-why{font:400 16px/1.45 var(--sans);color:#644b40;max-width:520px;margin:auto}.card-foot{width:100%;border-top:1px solid #d5bba1;padding-top:10px}.card-foot>span:first-child{font:500 19px/1 var(--serif);letter-spacing:-.04em}.card-foot i{font-size:15px}.card-foot>span:last-child{font:600 12px var(--sans);display:flex;align-items:center;gap:6px}.card-foot svg,.pile-controls svg,.rating-pad svg{width:17px;height:17px}.rating-pad{display:grid;grid-template-columns:1fr 1fr;gap:9px}.rating-pad button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:49px;font:700 16px var(--sans);border:1px solid #b89776;color:#65402f;border-radius:11px;background:#f8e8d4;cursor:pointer}.rating-pad button.got{color:#fff7e8;background:#784028;border-color:#784028}.rating-pad button:disabled{background:#eee2d3;color:#79695b;border-color:#d8c8b6;cursor:default}.pile-controls{margin:3px 0 4px}.pile-controls button:disabled{opacity:.42}.pile-controls>span{font-weight:600;font-size:13px}.pile-options,.card-notes{border-top:1px solid #ddc6ad}.pile-options summary,.card-notes summary{cursor:pointer;font:650 14px var(--sans);padding:13px 1px;min-height:44px}.pile-options>div,.card-notes>div{padding:5px 0 12px}.card-notes p{margin:6px 0;font-size:15px}.card-check{display:grid;gap:6px;margin:0 0 12px}.card-check button{border:1px solid #cbb59c;background:#fff7e9;border-radius:8px;min-height:44px;padding:8px;text-align:left;font-size:15px}.card-check-feedback{font-weight:650;color:#66442e}.study-hub .desk-links{margin:6px 0 18px}.study-hub .card-notes{margin-top:14px}.study-hub .card-notes .desk-links{margin:0}
.moving-tool{position:fixed;z-index:80;pointer-events:none;width:66px;height:62px;transform:translate(-50%,-60%) rotate(-8deg);filter:drop-shadow(0 5px 5px #663a2588);display:grid;place-items:center}.moving-tool img{max-width:100%;max-height:100%;object-fit:contain}.visit-room [data-grab-object],.visit-room [data-grab-tool],.visit-room [data-lens-brush]{touch-action:none}.drop-ready{outline:3px solid #844b5f!important;outline-offset:2px}.inspected i{background:#654432!important;color:#fff!important}.working-set .scene-feedback{border-radius:8px}.visit-room .toolbox button[aria-pressed=true]{background:#f2dae6;border-color:#8d6683;box-shadow:0 2px 0 #ae8e99}
@media(min-width:800px){.card-room{padding-top:5px}.flash-player{padding-top:5px}.card-room .flash-shelf{margin-bottom:22px}.study-card{min-height:330px}}
@media(max-width:680px){.card-room,.flash-player{width:min(100%,470px);margin:0 auto 15px}.fc-heading h1{font-size:43px;margin:8px 0 16px}.fc-heading p{font-size:15px;margin:-4px 0 14px}.flash-shelf{gap:9px}.shelf-link{min-height:85px;border-radius:14px;padding:10px;gap:10px}.shelf-link b{font-size:24px}.shelf-link small,.fc-resume small{font-size:13px}.pile-art{width:65px;height:55px}.subject-ledger{grid-template-columns:1fr}.subject-ledger button,.subject-ledger button:nth-child(odd){border-right:none;min-height:65px;padding:9px 10px}.subject-ledger small{font-size:13px}.shuffle-box{padding:17px 12px}.pile-size span{font-size:14px}.player-heading h1{font-size:27px}.player-heading>span{font-size:13px}.pile-track{margin-bottom:13px}.study-card{padding:16px;min-height:255px;gap:10px}.card-stack{margin:0 4px 14px}.stamp{font-size:12px}.card-flower{font-size:24px}.face-body strong{font-size:34px}.show-back .face-body strong,.long-face .face-body strong{font-size:22px}.face-why{font-size:15px}.card-foot>span:first-child{font-size:17px}.rating-pad button{min-height:47px}.flash-player .player-nav{min-height:44px}.flash-player + .audio-row{margin:4px auto 0}.study-hub .desk-links{display:grid;grid-template-columns:1fr}.visit-room .room-foot{gap:3px 12px}}
@media (prefers-reduced-motion:no-preference){.study-card.turn{animation:turn-paper .26s ease-out}@keyframes turn-paper{0%{transform:rotateY(-40deg);opacity:.7}100%{transform:rotateY(0);opacity:1}}.rating-pad button:active,.shelf-link:active{transform:translateY(1px)}.drop-ready{transition:outline-color .1s}}
@media(max-width:680px){html{scroll-padding-bottom:calc(62px + env(safe-area-inset-bottom))}.card-room button,.card-room a,.flash-player button,.visit-room button{scroll-margin-bottom:calc(58px + env(safe-area-inset-bottom))}}
