:root{color-scheme:dark;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;background:#050706;color:#f0eee7;font-synthesis:none}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{background:radial-gradient(circle at 50% 44%,rgba(49,73,65,.24),transparent 38%),#050706}button{font:inherit}#camera{position:fixed;left:-9999px;width:960px;height:540px}#stage{position:fixed;inset:0;width:100%;height:100%;cursor:crosshair}.gate{position:fixed;inset:0;z-index:10;display:grid;place-content:center;justify-items:center;padding:32px;text-align:center;background:linear-gradient(#050706b8,#050706e6),radial-gradient(circle at 50% 40%,rgba(111,148,134,.18),transparent 42%);transition:opacity .6s ease,visibility .6s ease}.gate.is-leaving{opacity:0;visibility:hidden}.gate__frame{position:fixed;inset:28px;border:1px solid rgba(209,215,204,.16);pointer-events:none}.gate__frame:after{content:"";position:absolute;inset:7px;border:1px solid rgba(209,215,204,.07)}.eyebrow,.byline,.status small,.privacy-note,.manual-help,.camera-live{letter-spacing:.22em;text-transform:uppercase}.eyebrow{margin:0 0 18px;color:#ccd9cf85;font-size:10px}h1{margin:0;font-family:Songti SC,"Noto Serif CJK SC",Georgia,serif;font-size:clamp(36px,7vw,72px);font-weight:400;letter-spacing:.18em}h1 span{display:inline-grid;width:.9em;height:.9em;margin-right:.18em;place-items:center;border:1px solid rgba(216,227,218,.45);font-size:.7em;line-height:1;vertical-align:.08em}.byline{margin:14px 0 34px;color:#eceae461;font-size:9px}.gesture-sequence{display:flex;align-items:center;gap:clamp(15px,4vw,34px);margin-bottom:28px}.gesture-sequence span{display:grid;width:58px;height:58px;place-items:center;border:1px solid rgba(214,223,216,.2);border-radius:50%;background:#d2ded60a;font-size:27px;filter:grayscale(1)}.gesture-sequence i{color:#eceae438;font-style:normal}.intro{max-width:620px;margin:0;color:#eeede7bd;font:400 14px/2 Songti SC,Georgia,serif}.intro span{color:#eeede766;font:400 11px/1.8 Inter,sans-serif;letter-spacing:.06em}.gate__actions{display:flex;gap:12px;margin:32px 0 20px}.gate button{min-width:170px;padding:13px 18px;border:1px solid rgba(212,223,214,.3);color:#e7e9e2;background:#bcd3c50f;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.gate button:hover{transform:translateY(-2px);border-color:#d4dfd6b8;background:#bcd3c51f}.gate button small{display:block;margin-top:5px;color:#e7e9e266;font-size:8px;letter-spacing:.18em}.gate .primary{border-color:#a4cbb794}.privacy-note{margin:0;color:#eceae457;font-size:8px;line-height:1.8}.privacy-note span{letter-spacing:.1em}.hud{position:fixed;inset:0;z-index:5;padding:24px;pointer-events:none}.status{display:flex;width:max-content;align-items:center;gap:12px}.status__icon{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(225,231,224,.2);border-radius:50%;filter:grayscale(1)}.status strong,.status small{display:block}.status strong{color:#eeefeacc;font-size:12px;font-weight:500;letter-spacing:.12em}.status small{margin-top:5px;color:#eeefea59;font-size:8px}.controls{position:absolute;top:24px;right:24px;display:flex;align-items:center;gap:8px;pointer-events:auto}.controls button{width:36px;height:36px;border:1px solid rgba(225,231,224,.18);border-radius:50%;color:#eff0ebb8;background:#070a0973;cursor:pointer}.controls button:hover{border-color:#e1e7e085}.camera-live{margin-right:8px;color:#95d3b2b3;font-size:7px}.manual-help{position:fixed;right:24px;bottom:22px;z-index:5;color:#edeee947;font-size:7px;pointer-events:none}.error{position:fixed;left:50%;bottom:28px;z-index:20;max-width:min(640px,calc(100vw - 40px));padding:12px 16px;transform:translate(-50%);border:1px solid rgba(231,190,157,.3);background:#20120dd1;color:#ffe3cde0;font-size:11px;line-height:1.6;text-align:center}[hidden]{display:none!important}@media(max-width:640px){.gate{padding:24px}.gate__frame{inset:14px}.gesture-sequence span{width:48px;height:48px;font-size:23px}.gate__actions{width:min(320px,100%);flex-direction:column}.gate button{width:100%}.hud{padding:16px}.controls{top:16px;right:16px}.camera-live,.manual-help{display:none}.status strong{font-size:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
