:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.4;font-weight:400;color:#e2e8f0;background:#020617;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body{margin:0;width:100%;min-height:100vh;background:#020617}body{display:block}button,input{font:inherit}#root{width:100vw;min-height:100svh;display:block}.app-shell{width:100vw;height:100svh;min-height:100svh;position:relative;overflow:hidden;background:radial-gradient(circle at top,#1f2937,#0f172a 45%,#020617);color:#f8fafc}.map-root{position:relative;width:100%;height:100%}.map-root.blocked{pointer-events:none;-webkit-user-select:none;user-select:none}.map-viewport{position:absolute;inset:0;touch-action:none;overflow:hidden;overscroll-behavior:contain;cursor:grab}.map-viewport:active{cursor:grabbing}.map-canvas{display:block;width:100%;height:100%}.map-next-day-btn{position:absolute;z-index:14;right:14px;bottom:14px;border:0;border-radius:999px;background:linear-gradient(135deg,#38bdf8,#0ea5e9);color:#082f49;font-size:12px;font-weight:700;padding:10px 14px;cursor:pointer;box-shadow:0 8px 24px #02061757}.map-next-day-btn:disabled{opacity:.45;cursor:not-allowed}.loading-screen{min-height:100vh;display:grid;place-items:center;color:#e2e8f0;background:#0f172a}.muted{margin:0;font-size:12px;color:#cbd5e1}.field-label{display:block;margin-top:10px;margin-bottom:6px;font-size:12px;color:#cbd5e1}.text-input{width:100%;box-sizing:border-box;border-radius:10px;border:1px solid rgba(148,163,184,.45);background:#020617bf;color:#f8fafc;padding:10px}input[type=range]{width:100%;margin:6px 0}.logo-picker{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.emoji-btn{border-radius:8px;border:1px solid rgba(148,163,184,.4);background:#0f172ad9;color:#f8fafc;padding:8px 0;font-size:18px}.emoji-btn.active{border-color:#38bdf8e6;background:#0e749061}.primary-btn,.secondary-btn{width:100%;margin-top:10px;border:0;border-radius:10px;padding:10px 12px;font-weight:700;cursor:pointer}.primary-btn{background:linear-gradient(135deg,#38bdf8,#0ea5e9);color:#082f49}.secondary-btn{background:#94a3b833;border:1px solid rgba(148,163,184,.4);color:#e2e8f0}.primary-btn:disabled,.secondary-btn:disabled{opacity:.45;cursor:not-allowed}.district-sheet{position:absolute;left:0;right:0;z-index:16;bottom:12px;margin:0 10px;padding:12px;border-radius:12px;border:1px solid rgba(148,163,184,.35);background:#0f172af7;box-shadow:0 -6px 24px #00000059}.sheet-head{display:flex;justify-content:space-between;align-items:center}.sheet-head h3{margin:0}.sheet-close{border:1px solid rgba(148,163,184,.4);background:#1e293be6;color:#e2e8f0;border-radius:8px;padding:6px 10px}.sheet-grid{margin-top:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;font-size:12px;color:#cbd5e1}.sheet-actions{margin-top:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sheet-actions .primary-btn,.sheet-actions .secondary-btn{margin-top:0}.modal-layer{position:absolute;inset:0;z-index:30;background:#020617cc;display:grid;place-items:center;padding:18px}.onboarding-layer{background:#02061759;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:onboarding-fade-in .2s ease-out}.modal-card{width:100%;border-radius:14px;border:1px solid rgba(248,113,113,.45);background:#0f172afa;padding:14px}.modal-card h3{margin-top:0}.modal-card p{margin-top:6px;color:#cbd5e1;font-size:13px}.onboarding-modal{max-width:360px;border-color:#38bdf873;box-shadow:0 20px 44px #02061773;animation:onboarding-pop-in .24s ease-out}.onboarding-modal h3{margin:0;font-size:23px}.onboarding-card{margin:auto 12px;border-radius:14px;border:1px solid rgba(148,163,184,.25);background:#0f172ae6;padding:14px}.onboarding-card h1{margin:0 0 8px;font-size:22px}.status-line{margin:10px 0 0;font-size:12px;color:#bfdbfe}@keyframes onboarding-fade-in{0%{opacity:0}to{opacity:1}}@keyframes onboarding-pop-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
