:root{color:var(--tg-theme-text-color,#182033);background:var(--tg-theme-bg-color,#f4f6fa);font-synthesis:none;text-rendering:optimizelegibility;--ink:var(--tg-theme-text-color,#182033);--muted:var(--tg-theme-hint-color,#6d7688);--surface:var(--tg-theme-secondary-bg-color,#fff);--accent:var(--tg-theme-button-color,#3157d5);--accent-text:var(--tg-theme-button-text-color,#fff);--line:color-mix(in srgb, var(--muted) 20%, transparent);--shadow:0 14px 40px #16203e14;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px;min-height:100vh;min-height:var(--tg-viewport-stable-height,100vh);background:var(--tg-theme-bg-color,#f4f6fa)}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.center-shell{min-height:100vh;padding:max(24px, env(safe-area-inset-top)) 20px max(24px, env(safe-area-inset-bottom));place-items:center;display:grid}.auth-card{border:1px solid var(--line);background:var(--surface);width:min(100%,430px);box-shadow:var(--shadow);border-radius:28px;padding:34px 28px}.brand-mark,.mini-logo{color:#fff;background:linear-gradient(145deg,#4169e1,#203a97);place-items:center;font-weight:850;display:inline-grid;box-shadow:0 8px 20px #3157d547}.brand-mark{border-radius:17px;width:52px;height:52px;margin-bottom:24px;font-size:24px}.brand-mark.warning{background:#d77a28}.eyebrow{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 7px;font-size:11px;font-weight:800;line-height:1.2}h1,h2,p{margin-top:0}h1{letter-spacing:-.035em;margin-bottom:12px;font-size:clamp(29px,8vw,40px);line-height:1.03}h2{letter-spacing:-.025em}.muted,.empty-card p,.admin-card p,.profile-card p{color:var(--muted);line-height:1.55}form{margin-top:28px}label{margin-bottom:8px;font-size:13px;font-weight:750;display:block}input{border:1px solid var(--line);width:100%;color:var(--ink);background:var(--tg-theme-bg-color,#f8f9fc);border-radius:14px;outline:none;padding:14px 15px}input:focus{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 14%, transparent)}.primary-button{width:100%;min-height:48px;color:var(--accent-text);background:var(--accent);cursor:pointer;border:0;border-radius:14px;margin-top:18px;font-weight:800}.primary-button:disabled{opacity:.5;cursor:default}.form-error{color:#c43d4d;margin:10px 0 0;font-size:13px}.loader{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{width:min(100%,760px);min-height:100vh;padding-bottom:calc(88px + env(safe-area-inset-bottom));margin:0 auto}.topbar{height:68px;padding:max(10px, env(safe-area-inset-top)) 20px 10px;justify-content:space-between;align-items:center;display:flex}.topbar>div{letter-spacing:.08em;align-items:center;gap:9px;display:flex}.mini-logo{border-radius:10px;width:31px;height:31px;font-size:14px}.season-pill{border:1px solid var(--line);color:var(--muted);border-radius:99px;padding:5px 9px;font-size:11px;font-weight:800}.content{padding:18px 18px 32px}.hero-card{color:#fff;background:linear-gradient(135deg,#172c72 0%,#3157d5 65%,#5b7be2 100%);border-radius:28px;padding:30px 26px;position:relative;overflow:hidden;box-shadow:0 18px 40px #23429e3d}.hero-card:after{content:"";border:34px solid #ffffff14;border-radius:50%;width:180px;height:180px;position:absolute;top:-80px;right:-70px}.hero-card .eyebrow{color:#cbd6ff}.hero-card h1{margin-bottom:10px;position:relative}.hero-card p:last-child{color:#e4e9ff;max-width:400px;margin:0;line-height:1.5;position:relative}.section-heading{justify-content:space-between;align-items:end;margin:30px 2px 12px;display:flex}.section-heading h2{margin:0;font-size:23px}.empty-card,.admin-card{border:1px solid var(--line);background:var(--surface);border-radius:20px;align-items:center;gap:15px;padding:19px;display:flex;box-shadow:0 8px 24px #16203e0a}.empty-card p,.admin-card p{margin:4px 0 0;font-size:13px}.empty-icon{width:40px;height:40px;color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border-radius:13px;flex:none;place-items:center;font-weight:900;display:grid}.admin-card{background:color-mix(in srgb, var(--accent) 7%, var(--surface));margin-top:14px}.admin-card>span{color:#fff;background:var(--accent);letter-spacing:.1em;border-radius:8px;padding:6px 8px;font-size:10px;font-weight:900}.bottom-nav{z-index:10;width:min(100%,760px);padding:8px 8px max(8px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb, var(--tg-theme-bg-color,#fff) 92%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{color:var(--muted);cursor:pointer;background:0 0;border:0;justify-items:center;gap:4px;padding:6px 2px;font-size:10px;display:grid}.bottom-nav svg{width:22px;height:22px}.bottom-nav button.active{color:var(--accent);font-weight:800}.profile-card{color:#fff;background:linear-gradient(135deg,#172c72,#3157d5);border-radius:22px;align-items:center;gap:16px;margin-top:22px;padding:22px;display:flex}.profile-card h2,.profile-card p{color:inherit;margin:0}.profile-card p{opacity:.78;margin-top:4px}.avatar{background:#ffffff24;border:1px solid #ffffff40;border-radius:19px;place-items:center;width:58px;height:58px;font-size:24px;font-weight:850;display:grid}.details{border:1px solid var(--line);background:var(--surface);border-radius:20px;margin-top:18px;overflow:hidden}.details div{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:16px 18px;display:flex}.details div:last-child{border:0}.details dt{color:var(--muted)}.details dd{text-align:right;margin:0;font-weight:750}.placeholder-page{padding-top:8px}.placeholder-page .empty-card{margin-top:24px}@media (width>=620px){.content{padding-inline:28px}.bottom-nav{border:1px solid var(--line);border-bottom:0;border-radius:22px 22px 0 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important}}
