@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(./inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(./inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(./inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(./inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(./inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(./inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(./inter-latin-400-normal-CyCys3Eg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(./inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(./inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(./inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(./inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(./inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(./inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(./inter-latin-500-normal-BL9OpVg8.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(./inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(./inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(./inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(./inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(./inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(./inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(./inter-latin-600-normal-CiBQ2DWP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-cyrillic-ext-700-normal-BjwYoWNd.woff2)format("woff2"),url(./inter-cyrillic-ext-700-normal-LO58E6JB.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-cyrillic-700-normal-CjBOestx.woff2)format("woff2"),url(./inter-cyrillic-700-normal-DrXBdSj3.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-greek-ext-700-normal-qfdV9bQt.woff2)format("woff2"),url(./inter-greek-ext-700-normal-BoQ6DsYi.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-greek-700-normal-C3JjAnD8.woff2)format("woff2"),url(./inter-greek-700-normal-BUv2fZ6O.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-vietnamese-700-normal-DlLaEgI2.woff2)format("woff2"),url(./inter-vietnamese-700-normal-BZaoP0fm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-latin-ext-700-normal-Ca8adRJv.woff2)format("woff2"),url(./inter-latin-ext-700-normal-TidjK2hL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(./inter-latin-700-normal-BLAVimhd.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(./space-grotesk-vietnamese-500-normal-BmEvtly_.woff2)format("woff2"),url(./space-grotesk-vietnamese-500-normal-BTqKIpxg.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(./space-grotesk-latin-ext-500-normal-DUe3BAxM.woff2)format("woff2"),url(./space-grotesk-latin-ext-500-normal-3dgZTiw9.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(./space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2"),url(./space-grotesk-latin-500-normal-CNSSEhBt.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(./space-grotesk-vietnamese-600-normal-DUi7WF5p.woff2)format("woff2"),url(./space-grotesk-vietnamese-600-normal-D6zpsUhD.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(./space-grotesk-latin-ext-600-normal-DxxdqCpr.woff2)format("woff2"),url(./space-grotesk-latin-ext-600-normal-VcznFIpX.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(./space-grotesk-latin-600-normal-DjKNqYRj.woff2)format("woff2"),url(./space-grotesk-latin-600-normal-BflQw4A9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--accent:#b42830;--accent2:#cc9830;--ink:#f4f1ec;--ink-dim:#f4f1ecb8;--glass:#121418b8;--glass-strong:#0e1013e6;--line:#ffffff1f;--radius:16px;--font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--display:"Space Grotesk", var(--font);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;background:#0f1114;margin:0;overflow:hidden}body{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}#app{position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}#app.preview{background:radial-gradient(120% 90% at 50% 38%, var(--sky1,#3a3f47) 0%, var(--sky2,#23262b) 55%, var(--sky3,#15171a) 100%);transition:background 1.2s}#cam{visibility:hidden;position:absolute;top:0;left:0}#cam.on{visibility:visible}#gl{width:100%;height:100%;transition:opacity .6s;display:block;position:absolute;top:0;bottom:0;left:0;right:0}#labels{pointer-events:none;transition:opacity .6s;position:absolute;top:0;bottom:0;left:0;right:0}#app.card-lost #gl,#app.card-lost #labels{opacity:0}.label{letter-spacing:.01em;white-space:nowrap;color:var(--ink);border:1px solid var(--line);will-change:transform;background:#0f1114db;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:600;position:absolute;top:0;left:0}.label:after{content:"";background:#ffffff73;width:1px;height:8px;position:absolute;bottom:-8px;left:50%}.label-primary{border-color:color-mix(in srgb, var(--accent2) 65%, transparent);color:#fff;background:#181a1ced}.label-focused{border-color:var(--accent2);box-shadow:0 2px 12px #0000004d}.label-focused:after{background:var(--accent2)}.label-campus{border-color:color-mix(in srgb, var(--accent) 70%, transparent);box-shadow:inset 3px 0 0 var(--accent);padding-left:10px}.label-street{color:#f4f1ec8c;text-transform:uppercase;letter-spacing:.08em;background:0 0;border:none;font-size:10px;font-weight:500}.label-street:after,.label-offsite:after{display:none}.label-offsite{color:var(--ink-dim);background:#0f111480;border:1px dashed #ffffff59;font-weight:500}.label-note{background:color-mix(in srgb, var(--accent2) 88%, black);color:#17130a;border:none;padding:5px 10px;font-size:12px}.label-note:after{background:color-mix(in srgb, var(--accent2) 88%, black)}#ui{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}#ui>.screen,#ui>.sheet,#ui>.toast{pointer-events:auto}.hidden{display:none!important}.btn{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-size:15px;font-weight:600;text-decoration:none;transition:transform .15s,background .2s,opacity .2s;display:inline-flex}.btn svg{flex:none;width:20px;height:20px}.btn:active{transform:scale(.97)}button:focus-visible{outline:2px solid var(--accent2);outline-offset:3px}a:focus-visible{outline:2px solid var(--accent2);outline-offset:3px}input:focus-visible{outline:2px solid var(--accent2);outline-offset:3px}button:disabled{opacity:.4;cursor:default}.btn.primary{background:var(--accent);color:#fff;box-shadow:0 10px 30px -10px color-mix(in srgb, var(--accent) 80%, transparent)}.btn.primary.big{width:100%;max-width:340px;min-height:56px;padding:0 30px;font-size:17px}.btn.ghost{border:1px solid var(--line);background:#ffffff14}.btn.pill{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);min-height:40px;padding:0 14px;font-size:13px}.btn.link{color:var(--ink-dim);text-underline-offset:3px;background:0 0;padding:0 10px;font-weight:500;text-decoration:underline}.btn.link.inline{min-height:0;font-size:inherit;padding:0}.brand{letter-spacing:.04em;color:var(--ink-dim);align-items:center;gap:10px;font-size:13px;font-weight:500;display:flex}.brand b{color:var(--accent)}.brand.small{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);border-radius:999px;padding:8px 12px;font-size:12px}.brand-mark{background:linear-gradient(135deg, var(--accent), var(--accent2));border-radius:4px;flex:none;width:14px;height:14px;box-shadow:0 0 0 3px #ffffff0f}.topbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.topbar .brand{min-width:0}.btn.pill.save{white-space:nowrap;flex:none}.screen{padding:max(18px, env(safe-area-inset-top)) 20px max(18px, env(safe-area-inset-bottom));flex-direction:column;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.landing{background:radial-gradient(90% 60% at 80% 0%, color-mix(in srgb, var(--accent) 35%, transparent) 0%, transparent 60%), radial-gradient(80% 50% at 0% 100%, color-mix(in srgb, var(--accent2) 18%, transparent) 0%, transparent 60%), linear-gradient(180deg, #121418 0%, #0c0d10 100%);overflow-y:auto}.landing-body{flex-direction:column;align-self:center;align-items:flex-start;gap:14px;width:100%;max-width:460px;margin:auto 0;padding:28px 0;display:flex}.landing h1{font-family:var(--display);letter-spacing:-.02em;margin:4px 0 2px;font-size:clamp(34px,10vw,52px);font-weight:600;line-height:1.02}.lede{color:var(--ink);opacity:.92;margin:0;font-size:17px;line-height:1.45}.how{color:var(--ink-dim);margin:0 0 10px;font-size:15px;line-height:1.55}.how b{color:var(--ink)}.event-pill{letter-spacing:.06em;text-transform:uppercase;background:color-mix(in srgb, var(--accent2) 22%, transparent);color:color-mix(in srgb, var(--accent2) 60%, white);border:1px solid color-mix(in srgb, var(--accent2) 45%, transparent);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600}.btn.ghost.big{width:100%;max-width:340px;min-height:56px;padding:0 24px;font-size:17px}.btn small{opacity:.7;margin-left:2px;font-size:12px;font-weight:500}.landing #btn-preview{margin-top:2px}.btn.cond{flex:0 auto;justify-content:flex-start;min-width:0;max-width:min(62vw,420px)}.btn.cond span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cond-dot{background:var(--ink-dim);border-radius:50%;flex:none;width:8px;height:8px}.weather .seg{border:1px solid var(--line);background:#ffffff0f;border-radius:999px;gap:6px;margin:10px 0;padding:4px;display:flex}.weather .seg button{font:inherit;color:var(--ink-dim);cursor:pointer;background:0 0;border:none;border-radius:999px;flex:1;min-height:40px;font-size:14px;font-weight:600}.weather .seg button.on{color:var(--ink);background:#ffffff24}.weather .pick{flex-direction:column;gap:12px;margin:6px 0 4px;display:flex}.weather label{color:var(--ink-dim);align-items:center;gap:10px;font-size:14px;display:flex}.weather input[type=date]{font:inherit;color:var(--ink);border:1px solid var(--line);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#ffffff14;border-radius:10px;padding:8px 10px}.weather input[type=range]{accent-color:var(--accent2);flex:1}.weather output{text-align:right;min-width:52px;color:var(--ink);font-weight:600}.w-status{min-height:1.4em;color:var(--ink)!important;font-size:14px!important}.fine.left{text-align:left;margin:10px 0 0}.tools{right:max(14px, env(safe-area-inset-right));top:max(64px, calc(env(safe-area-inset-top) + 56px));background:var(--glass-strong);border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);z-index:2;border-radius:18px;flex-direction:column;gap:10px;width:min(300px,100vw - 28px);padding:12px;display:flex;position:absolute;box-shadow:0 12px 36px #00000047}.tools .cond{width:100%;max-width:100%}.motion-status{text-align:center;color:var(--ink-dim);margin:0;font-size:11px;line-height:1.5}.level{flex-direction:row;justify-content:center;align-items:center;gap:12px;display:flex}.modes{border:1px solid var(--line);background:#ffffff0a;border-radius:14px;flex-direction:row;gap:2px;padding:3px;display:flex}.modes button{min-width:52px;min-height:44px;color:var(--ink-dim);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:11px;flex:1;justify-content:center;align-items:center;gap:6px;padding:4px 8px;font-size:12px;font-weight:600;display:flex}.modes button svg{width:18px;height:18px}.modes button[aria-pressed=true]{color:var(--ink);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 60%, transparent);background:#ffffff1f}.modes.searching [data-mode=card] svg{animation:1.4s ease-in-out infinite seek}@keyframes seek{50%{opacity:.35}}#app.preview #cam.on{opacity:.32;filter:saturate(.6)}.level-dish{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);background:radial-gradient(circle,#ffffff14 0 30%,#0e1013d9 31%);border-radius:50%;width:62px;height:62px;position:relative}.level-dish:before{content:"";border:1px dashed #ffffff59;border-radius:50%;position:absolute;top:22px;bottom:22px;left:22px;right:22px}.level-dish i{background:var(--accent2);width:14px;height:14px;box-shadow:0 0 10px color-mix(in srgb, var(--accent2) 70%, transparent);border-radius:50%;margin:-7px 0 0 -7px;transition:transform 80ms linear;position:absolute;top:50%;left:50%}.level .btn.pill{min-height:44px;padding:0 12px;font-size:12px}.fine{color:#f4f1ec80;text-align:center;font-size:12px;line-height:1.5}.scan{text-align:center;background:radial-gradient(closest-side,#0000 60%,#00000073);justify-content:center;align-items:center}.reticle{aspect-ratio:88.9/50.8;width:min(78vw,360px);position:relative}.reticle i{filter:drop-shadow(0 0 6px #0009);border:3px solid #fff;width:34px;height:34px;animation:2.2s ease-in-out infinite breathe;position:absolute}.reticle i:first-child{border-bottom:0;border-right:0;border-radius:12px 0 0;top:0;left:0}.reticle i:nth-child(2){border-bottom:0;border-left:0;border-radius:0 12px 0 0;top:0;right:0}.reticle i:nth-child(3){border-top:0;border-right:0;border-radius:0 0 0 12px;bottom:0;left:0}.reticle i:nth-child(4){border-top:0;border-left:0;border-radius:0 0 12px;bottom:0;right:0}.reticle.small{width:150px}.reticle.small i{border-width:2px;width:20px;height:20px}@keyframes breathe{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.96)}}.scan-text{text-shadow:0 2px 12px #000c;margin-top:26px;padding:0 20px;font-size:17px;font-weight:600}.scan-help{background:var(--glass-strong);border-radius:var(--radius);border:1px solid var(--line);flex-direction:column;align-items:center;gap:12px;max-width:340px;margin-top:14px;padding:16px 18px;display:flex}.scan-help p{color:var(--ink-dim);margin:0;font-size:14px;line-height:1.45}.scan .scan-top{padding:max(12px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) 0 max(14px, env(safe-area-inset-left));justify-content:flex-end;position:absolute;top:0;left:0;right:0}.hud{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.hud>*{pointer-events:auto}.hud-top{padding:max(12px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) 0 max(14px, env(safe-area-inset-left));pointer-events:none;justify-content:space-between;align-items:center;gap:8px;display:flex;position:absolute;top:0;left:0;right:0}.hud-top>*{pointer-events:auto}.hud-actions{align-items:center;gap:6px;display:flex}.hud-actions .save{color:var(--ink-dim);background:#1214186b;border-color:#0000}.camera-status{color:var(--ink-dim);white-space:nowrap;background:#1214186b;border-radius:999px;padding:8px 10px;font-size:11px;font-weight:500}.camera-status:before{content:"";vertical-align:1px;background:currentColor;border-radius:50%;width:5px;height:5px;margin-right:6px;display:inline-block}.camera-status[data-status=anchored]{color:#a7d2bb}.camera-status[data-status=searching]{color:#e4cf9e}.camera-status[data-status=paused]{color:#d4c3b3}.hud-bottom{padding:24px 12px max(12px, env(safe-area-inset-bottom));pointer-events:none;background:linear-gradient(#0000,#0006);flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;bottom:0;left:0;right:0}.hud-bottom>*{pointer-events:auto}.hint{background:color-mix(in srgb, var(--accent2) 86%, #ede6d7);color:#17130a;text-align:left;border-radius:999px;align-items:center;gap:7px;max-width:100%;padding:7px 12px;font-size:12px;font-weight:600;transition:opacity .4s,background .4s;display:inline-flex}.hint.quiet{opacity:.55;background:var(--glass);color:var(--ink);font-weight:500}.hint.succeeded{background:#a7d2bbe6}.act-actions{gap:6px;display:flex}.act-actions .btn{min-height:44px;font-size:11px}.playback{color:var(--ink-dim);justify-content:center;align-items:center;gap:8px;font-size:10px;display:flex}.playback .btn{border:1px solid var(--line);background:#12141873;min-height:32px;padding:0 10px;font-size:11px}.hint-icon svg{width:20px;height:20px;display:block}.hint.pulse{animation:.5s cubic-bezier(.2,1.4,.4,1) pop}@keyframes pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.caption{background:var(--glass-strong);border:1px solid var(--line);border-radius:var(--radius);width:100%;max-width:520px;color:var(--ink-dim);-webkit-backdrop-filter:blur(12px);padding:10px 14px;font-size:13.5px;line-height:1.45;transition:padding .2s}.caption b{color:var(--ink);font-family:var(--display);margin-bottom:2px;font-size:15px;font-weight:600;display:block}button.caption{text-align:left;cursor:pointer;font-family:inherit;display:block}.caption.collapsed{width:auto;padding:7px 14px}.caption.collapsed span{display:none}.caption.collapsed b{margin-bottom:0}.caption.collapsed b:after{content:"  ·  more";color:var(--ink-dim);font-family:var(--font);font-size:12px;font-weight:400}@media (max-width:400px){.hud-actions .save{padding:0 9px}.hud-actions .save span{display:none}.hud-actions .save svg{width:18px;height:18px}.camera-status{padding:8px;font-size:10px}.hud-top .btn{font-size:12px}}.acts{background:var(--glass-strong);border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);border-radius:999px;gap:6px;width:100%;max-width:520px;padding:5px;display:flex;position:relative;overflow:hidden}.acts button{font:inherit;color:var(--ink-dim);cursor:pointer;background:0 0;border:none;border-radius:999px;flex:1;min-height:44px;font-size:13px;font-weight:600}.acts button.active{color:var(--ink);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 60%, transparent);background:#ffffff1f}.acts .next{color:#fff;background:var(--accent);flex:0 0 42px;place-items:center;display:grid}.acts .next svg{width:18px;height:18px}.progress{height:2px;position:absolute;bottom:1px;left:12px;right:56px}.progress div{background:var(--accent2);transform-origin:0;height:100%;transform:scaleX(0)}.acts.free .progress{display:none}.lost{flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:absolute;top:0;bottom:0;left:0;right:0;pointer-events:none!important}.lost p{text-shadow:0 2px 10px #000c;margin:0;font-weight:600}.sheet{border:1px solid var(--line);max-width:560px;padding:22px 20px max(20px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);background:#101215f0;border-bottom:none;border-radius:22px 22px 0 0;max-height:88vh;margin:0 auto;animation:.45s cubic-bezier(.2,.9,.3,1) rise;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}@keyframes rise{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}.sheet h2{font-family:var(--display);letter-spacing:-.01em;margin:0 0 8px;font-size:22px}.sheet p{color:var(--ink-dim);font-size:14.5px;line-height:1.55}.sheet .row{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:10px;display:flex}.sheet .row .btn{white-space:nowrap;flex:140px}.sheet .row.small .btn{flex:none}.contact-card{border:1px solid var(--line);background:linear-gradient(160deg,#1d2025,#15171b);border-radius:16px;padding:18px 18px 16px 22px;position:relative;overflow:hidden}.cc-accent{background:linear-gradient(var(--accent), var(--accent2));width:5px;position:absolute;top:0;bottom:0;left:0}.contact-card h2{margin:0}.contact-card p{margin:2px 0 0}.cc-title{font-weight:500;color:var(--ink)!important}.cc-unit,.cc-org{font-size:13.5px!important}.cc-lines{flex-direction:column;gap:4px;margin-top:10px;display:flex}.cc-lines a{color:var(--ink);font-size:14px;text-decoration:none}.cc-lines:empty{display:none}.finale-line{margin:14px 2px 4px}.about ul.credits{color:var(--ink-dim);padding-left:18px;font-size:13px;line-height:1.6}.about .btn{width:100%;margin-top:6px}.toast{left:50%;top:max(70px, calc(env(safe-area-inset-top) + 56px));background:var(--glass-strong);border:1px solid var(--line);text-align:center;border-radius:999px;max-width:90vw;padding:10px 16px;font-size:14px;font-weight:500;position:absolute;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (min-width:900px){.hud-bottom{padding-bottom:22px}}
