:root{color-scheme:light;--font-ui: Archivo, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;--font-display: Marcellus, "Noto Serif SC", Georgia, "Times New Roman", serif;--font-meta: "IBM Plex Mono", "SFMono-Regular", Menlo, Consolas, monospace;--plaster: #f3efe6;--bone: #fcfaf4;--ink: #221d16;--umber: #6f6758;--hairline: #e3dcca;--oxblood: #7c2430;--moss: #3e7a4e;--amber: #c4913f;--bg: var(--plaster);--surface: var(--bone);--panel: #f8f4eb;--panel-2: #eee8da;--canvas: #ebe4d5;--canvas-inner: #fbf8ef;--board-dot: rgba(34, 29, 22, .12);--ruler: #e9e1d1;--border: var(--hairline);--border-strong: #cabfa9;--text-strong: var(--ink);--text: #332c23;--text-muted: var(--umber);--text-soft: #8f8575;--muted: var(--text-muted);--faint: var(--text-soft);--control-bg: #fffdf7;--control-hover: #f0e9da;--control-muted: #f4f0e7;--chrome-border: #d8cfbf;--step-muted: #b7ad9e;--brand-accent: #8a2834;--focus: var(--oxblood);--primary: var(--oxblood);--primary-border: var(--oxblood);--primary-text: #fff8ef;--selection: rgba(124, 36, 48, .24);--label-bg: rgba(252, 250, 244, .92);--label-text: var(--ink);--modal-bg: rgba(34, 29, 22, .46);--modal-cap: var(--umber);--modal-canvas-border: var(--hairline);--menu-bg: var(--bone);--menu-border: var(--hairline);--menu-text: var(--ink);--menu-muted: var(--umber);--menu-hover: #f3ede0;--menu-shadow: rgba(34, 29, 22, .18);--accent: var(--oxblood);--accent-strong: #5d1b24;--accent-soft: rgba(124, 36, 48, .08);--gold: var(--amber);--shadow-soft: none;--shadow-modal: none;--radius-sm: 2px;--radius-md: 4px}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark;--plaster: #1b1712;--bone: #241f19;--ink: #ede7da;--umber: #a99f8f;--hairline: #766b5d;--bg: var(--plaster);--surface: var(--bone);--panel: #201b16;--panel-2: #2b251e;--canvas: var(--plaster);--canvas-inner: var(--bone);--board-dot: rgba(237, 231, 218, .1);--ruler: #2b251e;--border: var(--hairline);--border-strong: #8a7e6e;--text-strong: var(--ink);--text: var(--ink);--text-muted: var(--umber);--text-soft: var(--umber);--muted: var(--umber);--faint: var(--umber);--control-bg: var(--plaster);--control-hover: #2d261f;--control-muted: #2b251e;--chrome-border: #8a7e6e;--step-muted: #a99f8f;--brand-accent: #d77b87;--focus: #e39aa4;--primary: #b64f5e;--primary-border: #e39aa4;--accent: #d77b87;--accent-strong: #a43d4c;--primary-text: #fcfaf4;--selection: rgba(124, 36, 48, .38);--label-bg: rgba(36, 31, 25, .92);--label-text: var(--ink);--modal-bg: rgba(8, 7, 5, .72);--modal-cap: var(--umber);--modal-canvas-border: var(--hairline);--menu-bg: var(--bone);--menu-border: var(--hairline);--menu-text: var(--ink);--menu-muted: var(--umber);--menu-hover: var(--plaster);--menu-shadow: rgba(0, 0, 0, .5);--accent-soft: rgba(124, 36, 48, .18);--shadow-modal: 0 24px 60px rgba(0, 0, 0, .42)}html,body,#root{height:100%;margin:0}body{font-family:var(--font-ui);overflow:hidden;font-size:12px;line-height:1.45}*{box-sizing:border-box}button,input,textarea{font:inherit}button{color:inherit}button:disabled,input:disabled,textarea:disabled{cursor:default;opacity:.55}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.topBtn{width:auto;padding:6px 11px;font-size:11px;font-weight:700;letter-spacing:.06em;cursor:pointer;text-transform:uppercase}@media(pointer:coarse){.topBtn{min-width:44px;min-height:44px}}.authLoading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;height:100vh;color:var(--text-soft);font-size:13px}.authActions{display:flex;gap:8px}.loginScreen{display:flex;align-items:center;justify-content:center;height:100vh;padding:28px}.loginCard{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.loginLogoStack{position:relative;width:220px;height:48px;margin-bottom:8px}.loginLogo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:center}.loginLogoLight{display:block}.loginLogoDark{display:none}:root[data-theme=dark] .loginLogoLight{display:none}:root[data-theme=dark] .loginLogoDark{display:block}.loginTitle{margin:0}.loginSub{margin:0 0 8px;max-width:320px;font-size:12px}.googleBtn{width:100%;padding:11px 22px;border:1px solid var(--primary-border);color:var(--primary-text);cursor:pointer}.googleBtn:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.loginLang{align-self:center;margin-top:2px;background:none;border:none;font-size:11px;font-weight:700;cursor:pointer;text-decoration:underline}body{letter-spacing:0}.topBtn{margin-left:0;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.loginCard{border-color:color-mix(in srgb,var(--border),var(--surface) 18%)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html{background:var(--plaster)}#root{position:relative;z-index:0}.topBtn{box-shadow:none}.topBtn{border-color:var(--hairline)}.topBtn:hover{background:var(--control-hover);border-color:var(--oxblood);color:var(--ink)}body{background:var(--bg);color:var(--text-strong);font-weight:500}.topBtn{min-height:36px;background:var(--control-muted);border:1px solid var(--chrome-border);color:var(--text-strong)}.topBtn{border-radius:0}.loginScreen{background:var(--bg)}.loginCard{width:min(92vw,420px);padding:34px 36px 32px;background:var(--surface);border:1px solid var(--chrome-border);border-radius:4px;box-shadow:none}.loginTitle{color:var(--text-strong);font-family:var(--font-ui);font-size:24px;font-weight:700;letter-spacing:.01em;line-height:1.1}.loginSub{color:var(--text-muted)}.googleBtn{min-height:44px;background:var(--primary);border-color:var(--primary-border);border-radius:0;font-family:var(--font-ui);font-size:13px;font-weight:700;letter-spacing:0;text-transform:none}.loginLang{color:var(--text-muted);font-family:var(--font-ui);letter-spacing:0;text-transform:none}.viewportGate{height:100%;min-height:0;display:grid;place-items:center;overflow:auto;padding:max(24px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 5%,transparent),transparent 42%),var(--plaster)}.viewportGateCard{width:min(100%,420px);display:flex;flex-direction:column;align-items:flex-start;padding:28px 26px 24px;background:var(--bone);border:1px solid var(--hairline)}.viewportGateBrand{width:100%;display:flex;align-items:center;gap:10px;padding-bottom:18px;border-bottom:1px solid var(--hairline)}.viewportGateBrand span,.viewportGateKicker{color:var(--umber);font-family:var(--font-meta);font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.viewportGateLogo{width:116px;height:auto;display:block}.viewportGateLogoDark{display:none}:root[data-theme=dark] .viewportGateLogoLight{display:none}:root[data-theme=dark] .viewportGateLogoDark{display:block}.viewportGateIcon{width:58px;height:58px;display:grid;place-items:center;margin-top:30px;color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--hairline))}.viewportGateKicker{margin:20px 0 8px;color:var(--accent)}.viewportGateCard h1{max-width:340px;margin:0;color:var(--ink);font-family:var(--font-display);font-size:clamp(28px,8vw,36px);font-weight:400;letter-spacing:-.025em;line-height:1.08}.viewportGateCopy{max-width:350px;margin:14px 0 0;color:var(--umber);font-size:13px;line-height:1.65}.viewportGateDevices{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}.viewportGateDevices span{padding:6px 9px;color:var(--text-muted);background:var(--control-muted);border:1px solid var(--hairline);font-family:var(--font-meta);font-size:9px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.viewportGateLanguages{width:100%;display:flex;gap:4px;margin-top:26px;padding-top:14px;border-top:1px solid var(--hairline)}.viewportGateLanguages button{min-height:38px;padding:7px 11px;color:var(--text-muted);background:transparent;border:1px solid transparent;cursor:pointer;font:600 11px var(--font-ui)}.viewportGateLanguages button:hover,.viewportGateLanguages button:focus-visible{color:var(--text-strong);background:var(--control-hover);border-color:var(--border-strong)}.viewportGateLanguages button[aria-pressed=true]{color:var(--primary-text);background:var(--primary);border-color:var(--primary-border)}
