@font-face{font-family:"Pressio No. 34 Condensed";src:url(/fonts/pressio-no34.otf) format("opentype");font-weight:400;font-display:swap}@font-face{font-family:VT323;src:url(/fonts/VT323-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-VariableFont_opsz,wght.ttf) format("truetype-variations");font-weight:100 900;font-display:swap}:root{--smoke-0: hsl(0 0% 98%);--smoke-50: hsl(0 0% 95%);--smoke-100: hsl(0 0% 88%);--smoke-300: hsl(0 0% 66%);--smoke-500: hsl(0 0% 38%);--smoke-600: hsl(0 0% 27%);--smoke-700: hsl(0 0% 19%);--smoke-800: hsl(0 0% 13%);--smoke-900: hsl(0 0% 9%);--smoke-950: hsl(0 0% 6.5%);--smoke-1000: hsl(0 0% 4.5%);--rose: hsl(331 100% 63%);--gold: hsl(40 100% 58%);--secure: hsl(75 100% 45%);--pulse: hsl(41 100% 55%);--ascend: hsl(4 100% 62%);--defend: hsl(191 100% 48%);--bg: var(--smoke-1000);--surface: var(--smoke-950);--tier-2: var(--smoke-800);--tier-3: var(--smoke-700);--card: var(--surface);--card-hover: hsl(0 0% 10%);--input: var(--smoke-900);--border: hsl(0 0% 100% / .1);--border-strong: hsl(0 0% 100% / .2);--border-focus: var(--rose);--ring: var(--rose);--text: var(--smoke-50);--text-muted: hsl(0 0% 62%);--text-dim: hsl(0 0% 44%);--success: var(--secure);--success-dim: hsl(75 100% 45% / .1);--warn: var(--pulse);--warn-dim: hsl(41 100% 55% / .1);--fail: var(--ascend);--fail-dim: hsl(4 100% 62% / .1);--info: var(--defend);--info-dim: hsl(191 100% 48% / .1);--rose-dim: color-mix(in srgb, var(--rose) 12%, transparent);--gold-dim: color-mix(in srgb, var(--gold) 10%, transparent);--teal: var(--secure);--red: var(--ascend);--sunset: var(--rose);--flourish: linear-gradient(90deg, var(--rose), var(--gold));--glow-success: 0 0 24px hsl(75 100% 45% / .35);--glow-fail: 0 0 15px hsl(4 100% 62% / .45);--glow-gold: 0 0 14px color-mix(in srgb, var(--gold) 35%, transparent);--glow-rose: 0 0 14px hsl(331 100% 63% / .4);--text-tiny: .6875rem;--font-display: "Pressio No. 34 Condensed", "Oswald", sans-serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--font-accent: "VT323", monospace;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--radius: 0;--nav-h: 64px;--ease-snap: cubic-bezier(.2, .9, .25, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button{font-family:var(--font-body)}::selection{background:var(--rose);color:var(--smoke-0)}:focus-visible{outline:1px solid var(--ring);outline-offset:2px}body:before{content:"";position:fixed;top:-60%;right:-60%;bottom:-60%;left:-60%;z-index:2000;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.065;animation:grain 9s steps(8) infinite}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:1999;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 2px,hsl(0 0% 0% / .05) 2px 3px),radial-gradient(130% 100% at 50% 0%,transparent 60%,hsl(0 0% 0% / .32) 100%)}@keyframes grain{0%{transform:translate(0)}12%{transform:translate(-4%,3%)}25%{transform:translate(3%,-5%)}37%{transform:translate(-5%,-2%)}50%{transform:translate(4%,4%)}62%{transform:translate(-2%,5%)}75%{transform:translate(5%,-3%)}87%{transform:translate(-3%,-4%)}to{transform:translate(0)}}@media (prefers-reduced-motion: reduce){body:before{animation:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}h1{font-family:var(--font-display);font-size:2.1rem;font-weight:400;letter-spacing:.025em;line-height:.95;text-transform:uppercase;color:var(--smoke-0)}h2{font-family:var(--font-display);font-size:1.45rem;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--smoke-0);line-height:1}h3{font-size:.9rem;font-weight:600;line-height:1.2}p{line-height:1.55}.text-muted{color:var(--text-muted);font-size:.75rem;letter-spacing:.04em}.ui-label,.operative-label,.mc-category,.mp-category,.points-unit,.mc-pts-label,.board-pts-label,.progress-pct,.settings-section-title{font-family:var(--font-mono);font-weight:500;text-transform:uppercase}.app-shell{display:flex;flex-direction:column;min-height:100vh;max-width:640px;margin:0 auto}.page{flex:1;padding:1.25rem 1rem calc(var(--nav-h) + env(safe-area-inset-bottom,0px) + 1.5rem);animation:pageIn .35s var(--ease-snap) both}@keyframes pageIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.loading-screen{height:100dvh;display:flex;align-items:center;justify-content:center}.loading-pulse{font-family:var(--font-accent);font-size:1rem;letter-spacing:.2em;color:var(--gold)}.loading-pulse:after{content:"▮";margin-left:.35em;animation:blink 1s steps(2) infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.btn-primary,.btn-secondary{position:relative;display:block;width:100%;min-height:48px;border-radius:0;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s,color .15s,border-color .15s,transform .12s var(--ease-snap)}.btn-primary:before,.btn-primary:after,.btn-secondary:before,.btn-secondary:after,.photo-drop:before,.photo-drop:after{content:"";position:absolute;width:9px;height:9px;opacity:0;transition:opacity .15s,transform .22s var(--ease-snap);pointer-events:none}.btn-primary:before,.btn-secondary:before,.photo-drop:before{top:4px;left:4px;border-top:1.5px solid var(--rose);border-left:1.5px solid var(--rose);transform:translate(5px,5px)}.btn-primary:after,.btn-secondary:after,.photo-drop:after{bottom:4px;right:4px;border-bottom:1.5px solid var(--rose);border-right:1.5px solid var(--rose);transform:translate(-5px,-5px)}.btn-primary:hover:before,.btn-primary:hover:after,.btn-primary:focus-visible:before,.btn-primary:focus-visible:after,.btn-primary:active:before,.btn-primary:active:after,.btn-secondary:hover:before,.btn-secondary:hover:after,.btn-secondary:focus-visible:before,.btn-secondary:focus-visible:after,.btn-secondary:active:before,.btn-secondary:active:after,.photo-drop:active:before,.photo-drop:active:after{opacity:1;transform:translate(0)}.btn-primary{padding:.8rem 1.5rem;background:var(--smoke-0);color:var(--smoke-1000);border:none;font-size:1.05rem}.btn-primary:hover{background:#fff}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.35;cursor:not-allowed}.btn-secondary{padding:.7rem 1.5rem;background:transparent;color:var(--text);border:1px solid var(--border-strong);font-size:.95rem}.btn-secondary:hover{border-color:var(--rose);color:var(--rose)}.btn-secondary:active{transform:scale(.98)}.btn-back{display:inline-flex;align-items:center;gap:.4rem;background:none;border:none;color:var(--text-muted);font-family:var(--font-accent);font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;padding:.4rem 0;margin-bottom:1.25rem;min-height:44px;transition:color .15s;-webkit-tap-highlight-color:transparent}.btn-back:hover,.btn-back:active{color:var(--gold)}.form-group{margin-bottom:1.1rem}.form-group label{display:block;font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.45rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group input[type=number],.form-group textarea{width:100%;padding:.75rem 1rem;min-height:48px;background:var(--input);border:1px solid var(--border);border-radius:0;color:var(--text);font-family:var(--font-body);font-size:1rem;outline:none;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none}.form-group input:focus,.form-group textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 1px var(--border-focus),0 0 14px color-mix(in srgb,var(--border-focus) 40%,transparent)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-dim)}.error-msg{padding:.7rem .9rem;background:var(--fail-dim);border:1px solid hsl(4 100% 62% / .35);border-left:3px solid var(--fail);color:var(--fail);font-size:1rem;font-family:var(--font-accent);letter-spacing:.05em;margin-bottom:1rem;animation:glitchShake .3s var(--ease-snap)}.feedback-msg{padding:.7rem .9rem;font-size:1rem;font-family:var(--font-accent);letter-spacing:.05em;margin-bottom:1rem}.feedback-msg--verifying{background:var(--warn-dim);border:1px solid hsl(41 100% 55% / .35);border-left:3px solid var(--warn);color:var(--warn);animation:pulse 1.5s ease-in-out infinite}.feedback-msg--wrong{background:var(--fail-dim);border:1px solid hsl(4 100% 62% / .35);border-left:3px solid var(--fail);color:var(--fail);animation:glitchShake .3s var(--ease-snap)}.feedback-msg--correct{background:var(--success-dim);border:1px solid hsl(75 100% 45% / .3);border-left:3px solid var(--success);color:var(--success);text-shadow:0 0 12px hsl(75 100% 45% / .4)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes glitchShake{0%{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}to{transform:translate(0)}}.register-bg{position:relative;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:var(--bg);background-image:linear-gradient(hsl(0 0% 100% / .03) 1px,transparent 1px),linear-gradient(90deg,hsl(0 0% 100% / .03) 1px,transparent 1px);background-size:40px 40px;overflow:hidden}.register-bg:before{content:"";position:absolute;left:0;right:0;height:120px;top:-120px;background:linear-gradient(180deg,transparent,hsl(331 100% 63% / .06),transparent);animation:sweep 7s linear infinite;pointer-events:none}@keyframes sweep{to{transform:translateY(calc(100dvh + 240px))}}.register-card{position:relative;width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border);padding:2rem 1.75rem}.register-card:before,.register-card:after{content:"";position:absolute;width:12px;height:12px;pointer-events:none}.register-card:before{top:-1px;left:-1px;border-top:1.5px solid var(--gold);border-left:1.5px solid var(--gold)}.register-card:after{bottom:-1px;right:-1px;border-bottom:1.5px solid var(--gold);border-right:1.5px solid var(--gold)}.register-header{text-align:center;margin-bottom:2rem}.register-logo{display:flex;justify-content:center;margin-bottom:.9rem;filter:drop-shadow(0 0 14px hsl(331 100% 63% / .45))}.register-logo svg{width:34px;height:48px}.register-logo-emoji{font-size:2.4rem}.register-title{font-family:var(--font-display);font-size:2.7rem;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--smoke-0);line-height:.95}.register-sub{font-family:var(--font-accent);font-size:1rem;letter-spacing:.24em;color:var(--gold);margin-top:.4rem}.register-divider{height:1px;background:var(--rose);margin:1.1rem auto;width:40px}.register-tagline{font-family:var(--font-accent);font-size:.9rem;letter-spacing:.14em;color:var(--text-muted)}.register-form{display:flex;flex-direction:column}.install-banner{position:fixed;top:0;left:0;right:0;background:var(--smoke-0);color:var(--smoke-1000);display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem;padding-top:calc(.6rem + env(safe-area-inset-top,0px));font-size:.8rem;font-weight:600;z-index:999;gap:.75rem;border-bottom:2px solid transparent;border-image:linear-gradient(90deg,var(--rose),var(--gold)) 1}.install-btn{background:var(--smoke-1000);color:var(--smoke-0);border:none;border-radius:0;padding:.45rem .9rem;font-family:var(--font-accent);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;white-space:nowrap;flex-shrink:0}.ios-hint{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem}.ios-hint-box{background:var(--surface);border:1px solid var(--gold);padding:1.5rem;max-width:320px;text-align:left;color:var(--text)}.ios-hint-box p{margin:0 0 .75rem;font-weight:700;color:var(--gold)}.ios-hint-box ol{margin:0 0 1.25rem;padding-left:1.25rem;line-height:2}.ios-hint-box .install-btn{display:block;width:100%;text-align:center;padding:.7rem;background:var(--smoke-0);color:var(--smoke-1000)}.register-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.register-note{text-align:center;font-size:.75rem;color:var(--text-muted);margin-top:1.25rem;line-height:1.5}.consent-label{display:flex;align-items:flex-start;gap:.6rem;margin-bottom:1rem;cursor:pointer}.consent-label input[type=checkbox]{margin-top:.15rem;flex-shrink:0;width:1rem;height:1rem;accent-color:var(--teal);cursor:pointer}.consent-label span{font-size:.78rem;color:var(--text-muted);line-height:1.5}.consent-label a{color:var(--teal);text-decoration:underline}.page-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--border)}.operative-label{font-size:var(--text-tiny);letter-spacing:.16em;color:var(--text-muted);margin-bottom:.15rem}.operative-name{font-family:var(--font-display);font-size:1.55rem;font-weight:400;letter-spacing:.03em;color:var(--smoke-0);line-height:1}.points-display{display:flex;align-items:baseline;gap:.3rem;text-align:right}.points-value{font-size:2rem;font-weight:700;color:var(--gold);line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 0 10px color-mix(in srgb,var(--gold) 22%,transparent)}.points-unit{font-size:var(--text-tiny);letter-spacing:.1em;color:var(--text-muted)}.progress-track{position:relative;height:4px;background:var(--smoke-800);margin-bottom:1.75rem;overflow:visible}.progress-fill{height:100%;background:var(--flourish);transition:width .8s var(--ease-snap);box-shadow:0 0 8px #ff429e4d;min-width:4px;position:relative}.progress-fill:after{content:"";position:absolute;right:-1px;top:-3px;width:2px;height:10px;background:var(--gold)}.progress-pct{position:absolute;right:0;top:10px;font-size:var(--text-tiny);letter-spacing:.08em;color:var(--text-muted)}.missions-list{display:flex;flex-direction:column;gap:6px}.mission-card{display:flex;align-items:stretch;background:var(--card);border:1px solid var(--border);overflow:hidden;cursor:pointer;transition:border-color .15s,background .15s,transform .12s var(--ease-snap);-webkit-tap-highlight-color:transparent;animation:cardIn .4s var(--ease-snap) both;animation-delay:calc(var(--i, 0) * 45ms)}@keyframes cardIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mission-card:hover{border-color:var(--rose);background:var(--card-hover)}.mission-card:active{border-color:var(--rose);background:var(--card-hover);transform:scale(.985)}.mission-card--done{border-color:#ace60038}.mission-card--done:hover,.mission-card--done:active{border-color:#ace60080}.mc-icon{display:flex;align-items:center;justify-content:center;width:48px;flex-shrink:0;font-family:var(--font-accent);font-size:1.2rem;letter-spacing:.05em;color:var(--text-muted);background:var(--smoke-900);border-right:1px solid var(--border)}.mission-card:hover .mc-icon,.mission-card:active .mc-icon{color:var(--rose)}.mission-card--done .mc-icon{color:var(--success);opacity:1;filter:none}.mc-body{flex:1;padding:.65rem .75rem;min-width:0}.mc-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem;flex-wrap:wrap}.type-badge{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-mono);font-size:.625rem;font-weight:600;letter-spacing:.08em;padding:.14rem .42rem}.type-badge:before{content:"";width:5px;height:5px;background:currentColor;flex-shrink:0}.type-badge--photo,.type-badge--riddle{background:#ffffff0a;color:var(--text-muted);border:1px solid var(--border)}.type-badge--riddle:before{background:transparent;border:1px solid currentColor}.mc-category{font-size:var(--text-tiny);letter-spacing:.08em;color:var(--text-muted)}.mc-name{font-family:var(--font-display);font-size:1.05rem;font-weight:400;letter-spacing:.03em;text-transform:uppercase;color:var(--smoke-50);margin-bottom:.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mc-desc{font-size:.78rem;color:var(--text-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mc-right{display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;flex-shrink:0;padding:.5rem;border-left:1px solid var(--border)}.mc-pts{font-size:1.05rem;font-weight:700;color:var(--gold);line-height:1;font-variant-numeric:tabular-nums}.mc-pts-label{font-size:var(--text-tiny);letter-spacing:.08em;color:var(--text-muted);margin-top:.15rem}.mc-done-check{font-size:1.25rem;color:var(--success);text-shadow:var(--glow-success)}.mp-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.mp-icon{display:flex;align-items:center;justify-content:center;width:58px;height:58px;flex-shrink:0;font-family:var(--font-accent);font-size:1.6rem;color:var(--text-muted);background:var(--smoke-900);border:1px solid var(--border);margin-top:.25rem}.mp-header-text{min-width:0}.mp-title{font-family:var(--font-display);font-size:1.9rem;font-weight:400;letter-spacing:.02em;text-transform:uppercase;margin:.35rem 0 .4rem;line-height:1;color:var(--smoke-0)}.mp-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.mp-category{font-size:var(--text-tiny);letter-spacing:.1em;color:var(--text-muted)}.mp-pts-big{font-size:.95rem;font-weight:700;color:var(--gold);letter-spacing:.03em}.briefing-block{position:relative;display:flex;align-items:stretch;background:var(--surface);border:1px solid var(--border);margin-bottom:1.5rem}.briefing-block:before,.briefing-block:after{content:"";position:absolute;width:10px;height:10px;pointer-events:none}.briefing-block:before{top:-1px;right:-1px;border-top:1.5px solid var(--rose);border-right:1.5px solid var(--rose)}.briefing-block:after{bottom:-1px;left:-1px;border-bottom:1.5px solid var(--rose);border-left:1.5px solid var(--rose)}.briefing-rail{display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;transform:rotate(180deg);padding:.75rem .3rem;font-family:var(--font-accent);font-size:.95rem;letter-spacing:.26em;text-transform:uppercase;color:var(--rose);background:var(--rose-dim);border-left:1px solid hsl(331 100% 63% / .3);flex-shrink:0}.briefing-body{flex:1;padding:1rem 1.1rem;min-width:0}.briefing-text{font-size:.9rem;line-height:1.6;color:var(--text)}.submit-card{background:var(--card);border:1px solid var(--border);padding:1.25rem}.photo-drop{position:relative;width:100%;min-height:170px;border:1px dashed var(--border-strong);display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;transition:border-color .15s,background .15s;-webkit-tap-highlight-color:transparent}.photo-drop:hover,.photo-drop:active{border-color:var(--border-focus);background:#ffffff08}.photo-empty{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem;color:var(--text-muted)}.photo-empty-icon{display:flex;color:var(--text-muted)}.photo-empty-icon svg{width:34px;height:34px}.photo-empty-text{font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.1em;color:var(--text)}.photo-empty-sub{font-size:var(--text-tiny);color:var(--text-muted)}.photo-preview{display:flex;flex-direction:column;align-items:center;width:100%}.photo-preview img{width:100%;max-height:220px;object-fit:cover}.photo-name{font-size:.8rem;color:var(--text-muted);padding:.4rem;font-family:var(--font-accent);letter-spacing:.05em}.status-banner{padding:1.2rem 1.25rem;font-size:1rem;letter-spacing:.06em;text-align:center;font-family:var(--font-accent);animation:flickerIn .45s var(--ease-snap) both}.status-banner--success{background:var(--success-dim);border:1px solid hsl(75 100% 45% / .3);color:var(--success);text-shadow:0 0 40px hsl(75 100% 45% / .8),0 0 12px hsl(75 100% 45% / .5)}.status-banner--error{background:var(--fail-dim);border:1px solid hsl(4 100% 62% / .35);color:var(--fail);text-shadow:0 0 15px hsl(4 100% 62% / .5)}@keyframes flickerIn{0%{opacity:0}10%{opacity:1}20%{opacity:.3}35%{opacity:1}45%{opacity:.6}to{opacity:1}}.live-dot{font-family:var(--font-accent);font-size:.85rem;color:var(--success);letter-spacing:.08em;animation:blink 2s steps(2) infinite}.board-list{display:flex;flex-direction:column;gap:5px}.board-row{display:flex;align-items:center;gap:.75rem;padding:.8rem 1rem;background:var(--card);border:1px solid var(--border);transition:border-color .15s;animation:cardIn .4s var(--ease-snap) both;animation-delay:calc(var(--i, 0) * 40ms)}.board-row--me{border-color:var(--rose);background:var(--rose-dim);box-shadow:inset 0 0 20px #ff429e0f}.board-row--gold{border-left:3px solid var(--gold)}.board-row--silver{border-left:3px solid var(--smoke-300)}.board-row--bronze{border-left:3px solid hsl(24 45% 48%)}.board-rank{font-family:var(--font-accent);font-size:1.3rem;width:2.1rem;text-align:center;flex-shrink:0;color:var(--text-muted)}.board-row--gold .board-rank{color:var(--gold)}.board-row--silver .board-rank{color:var(--smoke-300)}.board-row--bronze .board-rank{color:#c08259}.board-info{flex:1;min-width:0}.board-name{display:block;font-size:.88rem;font-weight:600;letter-spacing:.03em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-you{font-family:var(--font-mono);font-size:var(--text-tiny);font-weight:600;letter-spacing:.06em;color:var(--rose)}.board-missions{display:block}.board-score{display:flex;align-items:baseline;gap:.25rem;flex-shrink:0}.board-pts{font-size:1.3rem;font-weight:700;color:var(--gold);font-variant-numeric:tabular-nums}.board-pts-label{font-size:var(--text-tiny);letter-spacing:.08em;color:var(--text-muted)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));background:#0d0d0dd1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--border);display:flex;z-index:100;max-width:640px;margin:0 auto;padding-bottom:env(safe-area-inset-bottom,0)}.nav-item{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;color:var(--text-muted);border-left:1px solid var(--border);transition:color .15s,background .15s;-webkit-tap-highlight-color:transparent}.nav-item:first-child{border-left:none}.nav-item:hover{color:var(--text)}.nav-item:active{color:var(--rose);background:var(--rose-dim)}.nav-item--active{color:var(--rose);background:linear-gradient(180deg,var(--rose-dim),transparent 70%)}.nav-item--active:before{content:"";position:absolute;top:-1px;left:0;right:0;height:2px;background:var(--rose)}.nav-item--active .nav-icon svg{stroke-width:2}.nav-icon{display:flex;align-items:center;justify-content:center}.nav-icon svg{width:22px;height:22px}.nav-label{font-family:var(--font-mono);font-size:.625rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.empty-state{text-align:center;color:var(--text-muted);font-size:.95rem;padding:3rem 1rem;font-family:var(--font-accent);letter-spacing:.08em}.admin-page{padding-bottom:2rem}.admin-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--border);gap:.75rem;flex-wrap:wrap}.admin-list{display:flex;flex-direction:column;gap:5px}.admin-row-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--card);border:1px solid var(--border)}.admin-item-icon{font-family:var(--font-accent);font-size:1.1rem;color:var(--text-muted);flex-shrink:0}.admin-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.admin-item-name{font-size:.88rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-item-actions{display:flex;gap:.4rem;flex-shrink:0}.admin-btn-edit{padding:.5rem .75rem;min-height:44px;background:var(--gold-dim);border:1px solid color-mix(in srgb,var(--gold) 30%,transparent);color:var(--gold);font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.08em;cursor:pointer;transition:background .15s}.admin-btn-edit:hover{background:color-mix(in srgb,var(--gold) 20%,transparent)}.admin-btn-delete{padding:.5rem .75rem;min-height:44px;background:var(--fail-dim);border:1px solid hsl(4 100% 62% / .3);color:var(--fail);font-family:var(--font-accent);font-size:.85rem;cursor:pointer;transition:background .15s}.admin-btn-delete:hover{background:#ff4a3d33}.admin-modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;z-index:200;padding:1rem}.admin-modal{width:100%;max-width:500px;background:var(--surface);border:1px solid var(--border-strong);border-bottom:none;padding:1.5rem;padding-bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));max-height:90dvh;overflow-y:auto;animation:sheetUp .3s var(--ease-snap) both}@keyframes sheetUp{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.admin-modal-title{font-family:var(--font-accent);font-size:1rem;letter-spacing:.12em;color:var(--gold);margin-bottom:1.25rem}.admin-row{display:flex;gap:.75rem}.admin-toggle{display:flex;gap:.5rem}.admin-toggle-btn{flex:1;padding:.7rem;min-height:44px;background:var(--input);border:1px solid var(--border);color:var(--text-muted);font-family:var(--font-accent);font-size:.85rem;letter-spacing:.08em;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.admin-toggle-btn.active{border-color:var(--gold);color:var(--gold);background:var(--gold-dim)}.admin-form-actions{display:flex;gap:.75rem;margin-top:1.25rem}.bulk-hint{background:var(--gold-dim);border:1px solid color-mix(in srgb,var(--gold) 25%,transparent);padding:.75rem;margin-bottom:1rem;font-size:.78rem;color:var(--text-muted);line-height:1.6}.bulk-hint strong{color:var(--gold)}.settings-section{background:var(--card);border:1px solid var(--border);padding:1.25rem;margin-bottom:1rem}.settings-section-title{font-size:.72rem;font-weight:600;letter-spacing:.14em;color:var(--text-muted);margin-bottom:1rem}.register-brand-logo{max-width:200px;max-height:80px;object-fit:contain;margin-bottom:.75rem}.logo-preview-area{width:100%;min-height:80px;background:var(--input);border:1px dashed var(--border-strong);display:flex;align-items:center;justify-content:center;margin-bottom:.75rem;padding:1rem}.logo-preview-img{max-width:100%;max-height:100px;object-fit:contain}.logo-preview-empty{font-family:var(--font-accent);font-size:.85rem;color:var(--text-muted);letter-spacing:.08em}.color-row{display:flex;gap:.75rem;flex-wrap:wrap}.color-item{flex:1;min-width:80px}.color-item label{display:block;font-family:var(--font-accent);font-size:.75rem;letter-spacing:.1em;color:var(--text-muted);margin-bottom:.4rem;text-transform:uppercase}.color-picker-wrap{display:flex;flex-direction:column;align-items:center;gap:.3rem}.color-picker-wrap input[type=color]{width:100%;height:44px;border:1px solid var(--border);border-radius:0;background:var(--input);cursor:pointer;padding:2px}.color-hex{font-family:var(--font-accent);font-size:.75rem;color:var(--text-muted);letter-spacing:.06em}@media (min-width: 641px){.bottom-nav{left:50%;transform:translate(-50%);width:640px}}.register-logo-glyph{font-family:var(--font-accent);font-size:1.6rem;letter-spacing:.2em;color:var(--gold);margin-bottom:.75rem}
