:root{--bg:#060606;--surface:#111;--surface2:#181818;--card:#141414;--red:#ed111c;--red2:#a90810;--white:#fff;--muted:#a9a9ad;--line:rgba(255,255,255,.10);--success:#20c968;--led:#bc54e7;--led2:#22defb;--radius:26px}
*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden;background:var(--bg);color:var(--white);font-family:Inter,Arial,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}
.app-shell{height:100dvh;overflow:hidden;position:relative;background:radial-gradient(circle at 15% 20%,rgba(237,17,28,.15),transparent 32%),linear-gradient(130deg,#050505,#0c0c0c 55%,#050505)}
.ambient span{position:absolute;border-radius:999px;filter:blur(60px);opacity:.28;animation:ambient 10s alternate infinite}.ambient span:first-child{height:260px;width:260px;background:var(--red);top:-90px;left:-70px}.ambient span:last-child{height:240px;width:240px;background:var(--red);right:-100px;bottom:15%}
.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:14px 25px;position:relative;z-index:20;background:rgba(6,6,6,.46);backdrop-filter:blur(12px)}
.brand{display:flex;align-items:center;gap:12px;cursor:pointer}.brand img{height:53px;width:53px;object-fit:contain;background:#050505;border-radius:14px}.brand strong{display:block;font-size:1.08rem}.brand small{display:block;font-size:.76rem;color:var(--muted)}
.main-nav{display:flex;align-items:center;padding:6px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.04)}
.main-nav button{border:0;color:var(--muted);background:transparent;border-radius:999px;padding:11px 18px}.main-nav button.active{background:var(--white);color:#0b0b0b;font-weight:700}
.user-actions{display:flex;align-items:center;gap:10px}.notify-btn{border:1px solid var(--line);height:44px;width:44px;border-radius:50%;background:var(--surface);color:var(--red);font-size:1rem}
.cta,.ghost,.led-button{border:0;border-radius:999px;padding:14px 21px;font-weight:800;color:#fff}.cta{background:linear-gradient(135deg,var(--red),#c70813);box-shadow:0 14px 35px rgba(237,17,28,.24)}.cta.small{padding:12px 17px}.ghost{background:#181818;border:1px solid var(--line)}
.stage{height:calc(100dvh - 82px);position:relative;z-index:2}.screen{position:absolute;inset:0;padding:22px 27px 28px;display:flex;gap:18px;opacity:0;pointer-events:none;transform:translateX(28px) scale(.986);transition:.45s cubic-bezier(.2,.8,.2,1)}.screen.active{opacity:1;pointer-events:auto;transform:none}
.home{align-items:center;padding-bottom:145px}.hero-copy{width:min(700px,54vw);z-index:2}.status-pill{display:inline-flex;gap:10px;align-items:center;color:#d4d4d4;padding:10px 15px;border-radius:999px;border:1px solid var(--line);background:#101010}.status-pill i{height:9px;width:9px;border-radius:50%;background:var(--red);box-shadow:0 0 15px var(--red)}
h1{font-size:clamp(2.7rem,5.2vw,5.8rem);line-height:.91;letter-spacing:-.07em;margin:20px 0}h1 span{color:var(--red)}p{color:var(--muted);line-height:1.55}.hero-copy p{font-size:1.02rem;max-width:620px}.hero-actions{display:flex;gap:12px;margin-top:26px}
.stats{display:flex;gap:12px;margin-top:24px}.stats article{min-width:120px;padding:14px 16px;border-radius:19px;background:rgba(255,255,255,.05);border:1px solid var(--line)}.stats b{display:block;font-size:1.55rem}.stats span{font-size:.8rem;color:var(--muted)}
.hero-special{flex:1;display:flex;justify-content:center;z-index:3}.led-card{width:min(345px,32vw);border-radius:30px;padding:22px;background:radial-gradient(circle at top right,rgba(188,84,231,.28),transparent 38%),#101011;border:1px solid rgba(188,84,231,.35);box-shadow:0 26px 70px rgba(0,0,0,.4),0 0 55px rgba(188,84,231,.13)}.led-card img{width:100%;height:138px;object-fit:contain;margin:8px 0}.led-card h3{font-size:1.5rem;margin:5px 0}.led-label{font-size:.72rem;font-weight:900;letter-spacing:.16em;color:var(--led2)}.led-button{width:100%;margin-top:10px;background:linear-gradient(135deg,var(--led),#713ed7);box-shadow:0 10px 30px rgba(188,84,231,.25)}
.characters{position:absolute;left:0;bottom:0;width:100%;height:150px;object-fit:cover;object-position:center bottom}
.panel{height:100%;min-height:0;padding:22px;background:rgba(15,15,15,.9);border:1px solid var(--line);border-radius:var(--radius);backdrop-filter:blur(14px)}.panel.full{width:100%;overflow:hidden;display:flex;flex-direction:column}
.panel-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.panel-title small{color:var(--red);font-size:.72rem;font-weight:900;letter-spacing:.17em}.panel-title h2{font-size:clamp(1.5rem,2.4vw,2.45rem);margin:4px 0 0}
.live-layout{display:grid;grid-template-columns:1.45fr .55fr}.map-shell{display:flex;flex-direction:column}.sidebar{overflow:auto}.select-event{margin-bottom:13px;max-width:420px}
#liveMap{border-radius:19px;min-height:300px;flex:1;background:#1c1c1c;overflow:hidden}.leaflet-container{font-family:inherit}
.grid{display:grid;gap:13px;overflow:auto;padding:4px 3px 100px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{padding:17px;border-radius:20px;background:var(--card);border:1px solid var(--line);min-height:145px;transition:.2s}.card:hover{transform:translateY(-3px);border-color:rgba(237,17,28,.38)}.card h3{font-size:1.05rem;margin:9px 0 6px}.card p{font-size:.88rem;margin:7px 0}.tag{display:inline-block;border-radius:999px;padding:5px 9px;color:#fff;background:#272727;font-size:.7rem;font-weight:800;text-transform:uppercase}.tag.red{background:rgba(237,17,28,.18);color:#ff5360}.tag.led{background:rgba(188,84,231,.2);color:#e2a4ff}.card.led{border-color:rgba(188,84,231,.36);background:radial-gradient(circle at top right,rgba(188,84,231,.13),transparent 42%),var(--card)}
.card-actions{display:flex;gap:7px;margin-top:13px}.card-actions button{padding:9px 11px;font-size:.76rem;border-radius:999px;border:1px solid var(--line);background:#1b1b1b;color:#fff;font-weight:700}.card-actions .alert{background:var(--red);border-color:var(--red)}
.field{width:100%;border-radius:14px;border:1px solid var(--line);padding:13px 14px;background:#191919;color:#fff;outline:none}.field:focus{border-color:var(--red)}textarea.field{min-height:100px;resize:vertical}.search{min-width:330px}
.filters{display:flex;gap:8px;margin-bottom:13px;overflow:auto}.filters button{white-space:nowrap;padding:10px 14px;border-radius:999px;background:#181818;color:#fff;border:1px solid var(--line)}.filters button.active{background:var(--red);border-color:var(--red)}
.products-title{margin:18px 0 12px}.product-grid{max-height:38%}.price{font-size:1.12rem;font-weight:900;color:#fff}
.drawer{position:fixed;inset:0;background:rgba(0,0,0,.63);z-index:60;opacity:0;pointer-events:none;transition:.22s;display:flex;justify-content:flex-end}.drawer.open{opacity:1;pointer-events:auto}.drawer-content{height:100%;width:min(485px,94vw);background:#0e0e0e;border-left:1px solid var(--line);padding:27px;overflow:auto;transform:translateX(100%);transition:.32s}.drawer.open .drawer-content{transform:none}.close{float:right;height:43px;width:43px;border-radius:50%;border:1px solid var(--line);background:#161616;color:#fff;font-size:27px}.drawer-content h2{margin-top:55px;font-size:2rem}.form{display:grid;gap:11px;margin-top:20px}.full-button{width:100%}.auth-tabs{display:flex;gap:7px;margin-top:52px}.auth-tabs button{flex:1;border-radius:999px;border:1px solid var(--line);background:#181818;color:#fff;padding:12px}.auth-tabs button.active{background:var(--red);border-color:var(--red)}.auth-tabs+h2{margin-top:20px}.role-checks{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px;border:1px solid var(--line);border-radius:16px}.role-checks label{font-size:.88rem;color:#dedede}
.notification-list article{margin:10px 0;padding:14px;background:#171717;border-radius:15px;border:1px solid var(--line)}.notification-list strong{display:block;margin-bottom:5px}
.bottom-nav{display:none}#toast{position:fixed;z-index:100;bottom:22px;left:50%;transform:translate(-50%,30px);opacity:0;pointer-events:none;background:#fff;color:#111;border-radius:999px;padding:13px 19px;font-weight:700;transition:.25s}#toast.show{opacity:1;transform:translate(-50%,0)}#toast.error{background:var(--red);color:#fff}
@keyframes ambient{to{transform:translate(35px,35px) scale(1.12)}}
@media(max-width:980px){
.topbar{height:70px;padding:10px 12px}.brand img{height:47px;width:47px}.brand small,.main-nav,.notify-btn{display:none}.stage{height:calc(100dvh - 70px)}.screen{padding:12px 12px 82px}.home{display:block;overflow:hidden;padding-bottom:100px}.hero-copy{width:100%}h1{font-size:2.65rem;margin:14px 0}.hero-copy p{font-size:.92rem;margin:10px 0}.hero-actions .cta,.hero-actions .ghost{padding:12px 14px}.stats{margin-top:15px;gap:7px}.stats article{min-width:0;flex:1;padding:10px}.hero-special{position:absolute;right:-15px;bottom:99px}.led-card{width:155px;padding:10px;border-radius:18px}.led-card img{height:58px}.led-card h3{font-size:.95rem}.led-card p,.led-button,.led-label{display:none}.characters{height:88px}.live-layout{display:flex;flex-direction:column}.map-shell{height:56%}.sidebar{height:44%}.panel{padding:14px;border-radius:20px}.panel-title h2{font-size:1.4rem}.grid.three,.grid.four{grid-template-columns:1fr}.responsive{display:block}.search{min-width:0;margin-top:12px}.product-grid{max-height:none}.bottom-nav{display:grid;position:fixed;left:9px;right:9px;bottom:9px;height:62px;grid-template-columns:repeat(5,1fr);background:rgba(12,12,12,.92);border:1px solid var(--line);padding:5px;border-radius:20px;z-index:30}.bottom-nav button{border:0;border-radius:15px;background:transparent;color:#ddd;display:grid;place-items:center}.bottom-nav button.active{background:var(--red);color:#fff}.bottom-nav span{display:block;font-size:.67rem}.cta.small{padding:10px 11px;font-size:.8rem}
}
@media(max-width:430px){h1{font-size:2.2rem}.hero-special{display:none}.stats article b{font-size:1.15rem}}
