:root{font-family:Inter,system-ui,sans-serif;color:#0f2747;background:#eff6ff;--text-primary: #0f2747;--text-secondary: #475569;--bg-page: radial-gradient(1200px 500px at 10% -20%, rgba(59, 130, 246, .16), transparent), radial-gradient(900px 450px at 90% 0%, rgba(14, 165, 233, .14), transparent), linear-gradient(135deg, #eaf3ff, #f7fbff 60%, #eef7ff);--surface: rgba(255, 255, 255, .92);--surface-strong: rgba(255, 255, 255, .95);--border-soft: rgba(59, 130, 246, .14);--border-strong: rgba(59, 130, 246, .2);--shadow-soft: 0 14px 36px rgba(30, 64, 175, .12);--input-bg: #ffffff;--input-text: #0f2747;--button-secondary-bg: rgba(37, 99, 235, .06);--button-secondary-text: #1d4ed8;--button-secondary-border: rgba(37,99,235,.22);--pill-bg: rgba(37, 99, 235, .09);--pill-text: #1e3a8a;--success-bg: rgba(22, 163, 74, .18);--success-text: #166534;--success-border: rgba(22, 163, 74, .35);--error-bg: rgba(239, 68, 68, .16);--error-text: #b91c1c;--error-border: rgba(185, 28, 28, .28);--link-color: #2563eb}:root[data-theme=dark]{color:#e6edf7;background:#071526;--text-primary: #e6edf7;--text-secondary: #b7c5d9;--bg-page: radial-gradient(1000px 500px at 5% -20%, rgba(59, 130, 246, .2), transparent), radial-gradient(900px 400px at 95% 0%, rgba(14, 165, 233, .16), transparent), linear-gradient(135deg, #071526, #0b223d 55%, #0f2f52);--surface: rgba(9, 25, 43, .9);--surface-strong: rgba(11, 31, 54, .96);--border-soft: rgba(125, 168, 255, .22);--border-strong: rgba(125, 168, 255, .32);--shadow-soft: 0 14px 36px rgba(2, 10, 22, .55);--input-bg: #0b223b;--input-text: #e6edf7;--button-secondary-bg: rgba(125, 168, 255, .14);--button-secondary-text: #d7e6ff;--button-secondary-border: rgba(125, 168, 255, .36);--pill-bg: rgba(125, 168, 255, .16);--pill-text: #d7e6ff;--success-bg: rgba(22, 163, 74, .22);--success-text: #bbf7d0;--success-border: rgba(34, 197, 94, .45);--error-bg: rgba(239, 68, 68, .2);--error-text: #fecaca;--error-border: rgba(248, 113, 113, .46);--link-color: #7db3ff}*{box-sizing:border-box}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{width:0;height:0;display:none}body{margin:0;background:var(--bg-page);color:var(--text-primary);min-height:100vh}#root{min-height:100vh;position:relative}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.auth-shell,.page{min-height:100vh;padding:24px}.public-shell{min-height:100vh;padding:28px;max-width:1200px;margin:0 auto}.public-hero{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.auth-shell{display:grid;place-items:center}.auth-card,.panel,.vip-card,.center-card,.promo-card,.catalog-card,.hero-card,.client-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:20px;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.topbar,.public-hero{background:var(--surface-strong);border:1px solid var(--border-soft);border-radius:18px;padding:16px 18px}.brand-block{display:flex;align-items:center;gap:12px}.auth-brand{margin-bottom:16px}.brand-logo{width:56px;height:56px;object-fit:cover;border-radius:14px;border:1px solid rgba(59,130,246,.25);box-shadow:0 6px 20px #1e40af38}.auth-card{width:min(440px,100%);padding:28px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px}.topbar-shell{position:sticky;top:0;z-index:30;margin-bottom:24px;max-height:260px;opacity:1;transform:translateY(0);overflow:hidden;transition:max-height .35s ease,opacity .25s ease,transform .35s ease,margin-bottom .35s ease}.topbar-shell.hidden{max-height:0;opacity:0;transform:translateY(-18px);margin-bottom:0;pointer-events:none}.nav-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.form-grid{display:grid;gap:14px}label{display:grid;gap:8px;color:var(--text-primary)}input,.select{padding:12px 14px;border-radius:12px;border:1px solid var(--border-strong);background:var(--input-bg);color:var(--input-text)}.select option{color:var(--input-text);background:var(--input-bg)}.button{border:0;border-radius:12px;padding:12px 16px;background:linear-gradient(135deg,#2563eb,#0ea5e9);color:#fff;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.button:hover{transform:translateY(-1px);box-shadow:0 10px 24px #2563eb47}.button.secondary{background:var(--button-secondary-bg);color:var(--button-secondary-text);border:1px solid var(--button-secondary-border)}.button.small{padding:8px 12px}.grid.two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grid.three-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.panel,.vip-card{padding:24px;margin-bottom:20px}.hero-card{padding:24px;margin-bottom:8px}.compact-panel{padding:18px 24px}.panel.narrow{max-width:520px}.vip-card{display:grid;gap:16px;max-width:580px}.vip-card-centered{margin:0 auto 28px;text-align:center}.vip-progress{font-size:2rem;font-weight:800}.badge,.pill,.success-box,.error-box{border-radius:999px;padding:8px 12px;display:inline-flex;width:fit-content}.badge,.pill{background:var(--pill-bg);color:var(--pill-text)}.badge.success,.success-box{background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border);font-weight:600}.error-box{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border);font-weight:600}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 12px;border-bottom:1px solid rgba(255,255,255,.08);vertical-align:middle}.center-card{margin:40px auto;width:min(420px,calc(100% - 32px));padding:24px;text-align:center}.client-home{display:grid;gap:24px}.promotions-panel{max-width:920px;margin:0 auto}.promo-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.promo-card{padding:18px}.muted-text{color:var(--text-secondary);margin:0}.muted-text.small{font-size:.86rem}.inline-help{margin-top:14px}.text-link{color:var(--link-color);text-decoration:underline}.inline-check{display:flex;gap:10px;align-items:center}.inline-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.admin-tabs-bar{display:flex;gap:10px;flex-wrap:wrap}.admin-tab-active{background:linear-gradient(135deg,#2563eb,#0ea5e9)!important;color:#fff!important;border-color:transparent!important}.client-stack{display:grid;gap:16px}.scrollable-list{max-height:420px;overflow-y:auto;padding-right:6px}.client-card{padding:16px}.client-card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.catalog-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:20px;align-items:start}.catalog-main{min-width:0;padding-right:0}.catalog-sidebar{position:sticky;top:92px;width:100%;max-height:calc(100vh - 110px);overflow-y:auto;z-index:20}.announcement-panel{display:grid;gap:10px;background:linear-gradient(180deg,#bfdbfe6b,#dbeafe3d);border:1px solid var(--border-strong)}:root[data-theme=dark] .announcement-panel{background:linear-gradient(180deg,#2563eb33,#1e293b59)}:root[data-theme=dark] .button{box-shadow:0 10px 24px #020a1680}:root[data-theme=dark] th,:root[data-theme=dark] td{border-bottom:1px solid rgba(230,237,247,.16)}.announcement-stack{display:grid;gap:12px}.announcement-carousel{display:grid;gap:10px}.announcement-item{padding-bottom:12px;border-bottom:1px solid rgba(37,99,235,.14)}.announcement-item:last-of-type{border-bottom:0;padding-bottom:0}.announcement-carousel-vertical{animation:announcement-slide-down .45s ease}@keyframes announcement-slide-down{0%{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}.announcement-image{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:12px;border:1px solid rgba(37,99,235,.2)}.announcement-text{white-space:pre-line}.announcement-admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.announcement-admin-text{min-width:0;overflow-wrap:anywhere;word-break:break-word}@media(max-width:560px){.announcement-admin-row{grid-template-columns:1fr}}.catalog-grid.compact{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.catalog-card{padding:18px;display:grid;gap:10px}.catalog-card.featured{border-color:#2563eb52}.tournament-public-shell{min-height:100vh;padding:24px;max-width:1250px;margin:0 auto;position:relative}.tournament-hero{margin-bottom:18px;background:linear-gradient(135deg,#0ea5e91f,#2563eb14)}.tournament-public-layout{display:grid;grid-template-columns:minmax(280px,390px) minmax(0,1fr);gap:18px;align-items:start}.tournament-poster-panel{position:sticky;top:90px}.tournament-poster{width:100%;border-radius:14px;border:1px solid rgba(59,130,246,.3);box-shadow:0 14px 34px #1e40af33;object-fit:cover}.tournament-info-panel{display:grid;gap:14px}.tournament-floating-announcements{position:fixed;right:18px;bottom:18px;width:min(340px,calc(100vw - 36px));z-index:40}.tournament-announcement-panel{box-shadow:0 14px 34px #1e40af33}.tournament-announcement-panel .announcement-item{border-bottom:0;padding-bottom:0}.tournament-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.wave-effect{position:fixed;left:0;right:0;bottom:0;height:90px;pointer-events:none;z-index:5;overflow:hidden}.wave-layer{position:absolute;left:-20%;width:140%;border-radius:45% 55% 0 0;transform:translateZ(0);will-change:transform}.wave-layer-1{bottom:-26px;height:88px;background:#0ea5e947;animation:waveMoveRight 7s linear infinite,waveBob 3.2s ease-in-out infinite}.wave-layer-2{bottom:-30px;height:78px;background:#2563eb3d;animation:waveMoveLeft 9s linear infinite,waveBob 2.8s ease-in-out infinite reverse}.wave-layer-3{bottom:-35px;height:70px;background:#38bdf82e;animation:waveMoveRight 11s linear infinite,waveBob 3.6s ease-in-out infinite}@keyframes waveMoveRight{0%{transform:translate(-8%)}to{transform:translate(8%)}}@keyframes waveMoveLeft{0%{transform:translate(8%)}to{transform:translate(-8%)}}@keyframes waveBob{0%,to{transform:translateY(0) scaleX(1)}50%{transform:translateY(-8px) scaleX(1.03)}}.price-tag{font-size:2rem;font-weight:800;color:#1d4ed8;margin:0}@media(max-width:800px){.grid.two-columns,.grid.three-columns{grid-template-columns:1fr}.topbar,.public-hero{flex-direction:column;align-items:flex-start}.catalog-layout,.tournament-public-layout{grid-template-columns:1fr}.tournament-poster-panel{position:static}.tournament-floating-announcements{right:12px;bottom:12px;width:min(320px,calc(100vw - 24px))}.catalog-main{padding-right:0}.catalog-sidebar{position:static;width:100%;max-height:none;overflow:visible;margin-top:16px}}.menu-board-page{min-height:100vh;padding:24px;display:grid;place-items:center;background:radial-gradient(circle at 12% 14%,rgba(0,0,0,.035),transparent 28%),radial-gradient(circle at 82% 68%,rgba(0,0,0,.03),transparent 30%),radial-gradient(circle at 42% 84%,rgba(0,0,0,.02),transparent 26%),#f3f0e7}.menu-board-card{width:min(1380px,100%);min-height:760px;background:transparent;border-radius:0;padding:34px 44px 26px;border:0;box-shadow:none;display:grid;grid-template-columns:1fr 1.15fr 1fr;align-items:start;gap:24px;position:relative}.menu-board-column{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.menu-board-heading,.menu-board-subtitle,.menu-board-list li,.menu-board-menus li,.menu-board-note{font-family:Allura,Monotype Corsiva,Lucida Calligraphy,Times New Roman,cursive;font-weight:400;line-height:1.12}.menu-board-heading{margin:0;color:#2f92b8;font-size:clamp(3.6rem,4.8vw,6rem);white-space:nowrap}.menu-board-heading span{color:#2f92b8}.menu-board-list{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.menu-board-list li{color:#123f98;font-size:clamp(2.4rem,3vw,3.9rem);white-space:nowrap;text-align:center}.menu-board-center{min-width:420px;display:grid;justify-items:center;gap:18px;padding-top:8px}.menu-board-logo{width:min(700px,100%);height:auto;object-fit:contain}.menu-board-subtitle{margin:-4px 0 0;font-size:clamp(3.8rem,5vw,6.2rem);color:#2f92b8}.menu-board-menus{list-style:none;margin:0;padding:0;width:100%;display:grid;gap:8px}.menu-board-menus li{color:#123f98;font-size:clamp(3rem,3.9vw,4.8rem);display:flex;justify-content:center;gap:8px;flex-wrap:wrap;white-space:nowrap}.menu-board-menus strong{color:#2f92b8;font-weight:500}.menu-board-column-right{align-items:center;text-align:center;margin-top:14px}.menu-board-column-right .menu-board-list{align-items:center;text-align:center}.menu-board-note{position:absolute;right:40px;bottom:12px;margin:0;font-size:clamp(2.2rem,2.9vw,3.4rem);color:#0f0f0f}@media(max-width:1180px){.menu-board-card{grid-template-columns:1fr;padding:34px 26px 90px;gap:28px}.menu-board-center,.menu-board-column,.menu-board-column-right .menu-board-list{justify-items:start;text-align:left}.menu-board-menus li{justify-content:flex-start}.menu-board-note{right:26px;bottom:24px}}
