@import url('/app/globals.css');
@import url('/public/scanner.css');
@import url('/public/workbook.css');
@import url('/public/workbook-warm.css');
@import url('/public/workbook-cinematic.css');
body{font-family:Arial,'Microsoft YaHei',sans-serif}button{color:inherit}button:disabled{opacity:.45;cursor:wait}:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.skip-link{position:fixed;top:-80px;left:20px;padding:12px;background:white;z-index:30}.skip-link:focus{top:12px}
.hero{background:var(--cream)}.hero:before{opacity:.14}.topbar{height:110px;padding:0 5vw}.monogram{font-size:28px}nav{gap:40px;font-size:14px}nav button{border:0;background:none;font:inherit;letter-spacing:.1em;padding:12px 0;cursor:pointer}nav button:hover{color:var(--orange)}.contact-button{font-size:12px;min-height:48px;border:0;cursor:pointer}.contact-button span{font-size:24px}.sound-button[aria-pressed=true]{background:var(--ink);color:var(--cream)}
.hero-content{grid-template-columns:minmax(360px,.92fr) minmax(0,1.08fr);padding:0 4vw 0 7vw;min-height:calc(100svh - 180px)}.intro{padding-bottom:2vh}.eyebrow{font-size:13px;margin:0 0 28px 8px}h1{font-family:Arial,sans-serif;font-weight:800;font-size:clamp(100px,11.3vw,178px);line-height:.84;letter-spacing:-.078em}h1 span:last-child{margin-top:4px}.role-badge{font-size:clamp(14px,1.2vw,19px);margin-top:36px;padding:15px 18px;letter-spacing:.055em;box-shadow:6px 6px 0 var(--orange)}.microcopy{font-size:16px;letter-spacing:.06em;opacity:.72;margin-top:34px}.intro-bottom{display:flex;align-items:center;gap:12px;margin:44px 0 0 8px;font-size:12px;letter-spacing:.1em;opacity:.55}.tiny-line{width:30px;height:1px;background:currentColor}
.scene-wrap{height:calc(100svh - 180px);min-height:550px;max-height:900px;perspective:none;margin:0}.scene-halo{width:84%;left:8%;top:17%;background:#eab895;opacity:.23;filter:none}.ground-shadow{position:absolute;bottom:11%;width:38%;height:4%;left:31%;border-radius:50%;background:#54443820;filter:blur(13px)}#character{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:grab;touch-action:none;z-index:2}#character:active{cursor:grabbing}.bone-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}.hello-note{position:absolute;right:1%;top:12%;font-size:18px;font-style:italic;transform:rotate(8deg);z-index:4;pointer-events:none}.hello-note span{display:block;font-size:29px;color:var(--orange);text-align:center}#model-status{position:absolute;left:50%;bottom:54px;transform:translateX(-50%);margin:0;white-space:nowrap;font-size:12px;color:#69717a;z-index:4}.character-controls{position:absolute;left:50%;bottom:7px;transform:translateX(-50%);display:flex;gap:7px;z-index:5;white-space:nowrap}.character-controls button{background:#fff8;border:1px solid #10284626;border-radius:24px;padding:10px 14px;cursor:pointer;font-size:13px}.character-controls button:hover{background:white}.character-controls button:first-child{background:var(--ink);color:white}.character-controls button[aria-pressed=true]{border-color:var(--orange);background:#fff}.footer-note{position:relative;left:auto;bottom:auto;display:flex;justify-content:space-between;align-items:center;min-height:70px;margin:0 5vw;opacity:.65;font-size:12px;letter-spacing:.08em}.footer-note b{font-size:23px;color:var(--orange);margin-left:20px}
dialog{border:1px solid #10284620;border-radius:22px;padding:44px;max-width:480px;width:calc(100% - 40px);background:var(--cream);color:var(--ink);box-shadow:0 25px 100px #10284633}dialog::backdrop{background:#10284655;backdrop-filter:blur(5px)}dialog h2{font-size:34px;letter-spacing:-1px;margin:12px 0 20px}dialog p{font-size:16px;line-height:1.8}.dialog-label{font-size:12px;letter-spacing:.2em;color:var(--orange)}.close-dialog{position:absolute;right:18px;top:12px;border:0;background:none;font-size:30px;cursor:pointer}.topic-tags{display:flex;gap:8px;flex-wrap:wrap}.topic-tags span{border:1px solid #10284630;padding:7px 12px;border-radius:18px;font-size:14px}
@media(max-width:1050px){.topbar{padding:0 4vw}nav{gap:22px;font-size:12px;display:flex}.hero-content{grid-template-columns:.92fr 1.08fr;padding-left:5vw;padding-right:2vw}h1{font-size:clamp(85px,11.5vw,125px)}.contact-button{padding:0 14px;font-size:11px;gap:10px}.scene-wrap{min-height:510px}.hello-note{font-size:14px;top:9%}.character-controls{gap:4px}.character-controls button{padding:9px 10px;font-size:12px}}
@media(max-width:760px){.topbar{height:118px;grid-template-columns:1fr auto;align-content:center;row-gap:17px}.topbar nav{grid-row:2;grid-column:1/-1;justify-self:center;gap:35px}.hero-content{grid-template-columns:1fr;padding:28px 24px 0;min-height:0}.intro{padding:0;z-index:1}h1{font-size:clamp(88px,20vw,132px)}.eyebrow{margin-bottom:20px}.role-badge{margin-top:26px;font-size:14px}.microcopy{margin-top:27px;font-size:15px}.intro-bottom{display:none}.scene-wrap{height:650px;min-height:500px;margin-top:0}.hello-note{right:2%;top:15%}.scene-halo{width:90%;left:5%;top:23%}.footer-note{margin:0 24px;min-height:90px;gap:20px;flex-wrap:wrap;font-size:11px}.character-controls{bottom:8px}.sound-button{width:42px;height:42px}.contact-button{height:42px;min-height:42px}}
.footer-note span{color:inherit;margin:0}.footer-note b{color:var(--orange)}#model-status{bottom:43px}.ground-shadow{bottom:8%}
@media(max-width:760px){.hello-note{top:7%;right:2%}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.character-controls{width:max-content;max-width:100%;justify-content:center;flex-wrap:wrap;gap:5px}.character-controls button{padding:9px 11px}#model-status{bottom:91px}
@media(max-width:760px){.character-controls{width:100%;max-width:360px}.character-controls button{font-size:13px}}
body[data-ready=true] #model-status{display:none}
@media(max-width:760px){#character,.bone-overlay{height:calc(100% - 64px)}.ground-shadow{bottom:16%}}
/* One shared workspace: no card, divider or isolated circular stage. */
.minimal .hero-content{height:100svh!important;min-height:650px!important}
.minimal .intro{width:49%!important}
.minimal h1{font-size:clamp(48px,5.9vw,96px)!important;letter-spacing:-.055em;line-height:1.1}
.minimal h1 span:first-child{font-size:clamp(30px,3.5vw,52px);color:#dfc875;letter-spacing:-.025em;padding:0;margin-bottom:20px}
.minimal h1 span:last-child{white-space:nowrap;color:#080808;font-size:clamp(62px,7.4vw,116px)}
@media(max-width:760px){.minimal h1 span:last-child{font-size:clamp(40px,10vw,68px)}}
@media(max-width:760px){.minimal .hero-content{height:auto!important;min-height:900px!important}.minimal .intro{width:100%!important;padding-top:45px}.minimal h1{font-size:clamp(30px,7.5vw,55px)!important}.minimal .scene-wrap{top:250px!important;height:600px!important}}
@font-face{font-family:LunaHand;src:url('/public/handwriting.ttf') format('truetype');font-weight:400 700;font-display:swap}
body.office{background:#fff9dc}
.office .hero{background:radial-gradient(ellipse at 30% 16%,#fffcef 0,transparent 75%),#fff9dc}
.minimal h1{font-family:LunaHand,'Segoe Print',cursive!important;font-weight:600;letter-spacing:-.015em!important}
.minimal h1 span:first-child{font-weight:500;color:#d5bc62}
.office .hero-content{display:block;height:calc(100svh - 180px);min-height:600px;padding:0 6vw}
.office .intro{position:relative;width:44%;top:40%;transform:translateY(-56%);pointer-events:none}
.office .hero,.office .hero-content,.office .scene-wrap{border:0;box-shadow:none}
.office #character,.office .bone-overlay{height:100%;border:0}
.office .scene-wrap{position:absolute;inset:0;height:100%;max-height:none;min-height:0;margin:0;animation:none}
.office .scene-halo,.office .ground-shadow,.office .tiny-line{display:none}
.office .hello-note{right:6%;top:9%}
.office .character-controls{left:73%;bottom:4px;max-width:49%}
.office h1{font-size:clamp(95px,10.6vw,170px)}
.office .intro-bottom{opacity:.55}
.office .footer-note{background:transparent}
.office .asset-credit{position:absolute;right:5vw;bottom:5px;font-size:11px;opacity:.6;z-index:8}
@media(max-width:760px){.office .hero-content{height:auto;min-height:980px;padding:28px 24px 0}.office .intro{width:100%;top:0;transform:none}.office h1{font-size:clamp(88px,20vw,132px)}.office .scene-wrap{top:370px;height:600px}.office .character-controls{left:50%;max-width:95%;bottom:0}.office .hello-note{top:2%}.office .asset-credit{position:relative;display:block;text-align:center;right:auto;bottom:auto;padding:10px}}
