:root{--ink:#151515;--paper:#f5f5f2;--surface:#fff;--line:#dddcd7;--muted:#757570;--accent:#b8ff5a;--side:220px;--sans:"DM Sans",sans-serif;--display:"Space Grotesk",sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px}button,input,textarea{font:inherit}button{color:inherit}aside{position:fixed;z-index:20;inset:0 auto 0 0;width:var(--side);display:flex;flex-direction:column;padding:22px 13px;background:var(--ink);color:#fff}.admin-brand{display:flex;align-items:center;justify-content:space-between;padding:7px 9px 28px;color:inherit;text-decoration:none}.admin-brand b{font-family:var(--display);letter-spacing:.1em}.admin-brand span{padding:4px 7px;border:1px solid #555;border-radius:15px;color:#aaa;font-size:.55rem;text-transform:uppercase}aside nav{display:grid;gap:3px}aside nav button{min-height:44px;padding:0 12px;border:0;border-radius:4px;background:none;color:#999;cursor:pointer;text-align:left}aside nav button.active,aside nav button:hover{background:#2b2b2b;color:#fff}.plan{margin-top:auto;padding:17px 10px 0;border-top:1px solid #333}.plan span{display:block;color:#777;font-size:.6rem;text-transform:uppercase}.plan a{display:block;margin-top:6px;color:var(--accent);font-size:.7rem;text-decoration:none}header{position:fixed;z-index:15;top:0;right:0;left:var(--side);height:62px;display:flex;align-items:center;gap:22px;padding:0 26px;border-bottom:1px solid var(--line);background:rgba(245,245,242,.94);backdrop-filter:blur(10px);font-size:.65rem}header>div{margin-right:auto}header i{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#45a56d}header a{color:inherit;text-decoration:none}.user{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:var(--ink);color:#fff;font-size:.58rem}.menu{display:none;border:0;background:none}main{min-height:100vh;margin-left:var(--side);padding:100px clamp(20px,3vw,45px) 60px}.view{display:none;max-width:1320px;margin:auto}.view.active{display:block}.page-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}.page-head p{margin-bottom:5px;color:var(--muted);font-size:.63rem;text-transform:uppercase}.page-head h1{font-family:var(--display);font-size:2.9rem}.page-head>span{color:var(--muted)}.primary{min-height:42px;padding:0 16px;border:0;border-radius:3px;background:var(--ink);color:#fff;cursor:pointer}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:var(--surface)}.metrics.small{grid-template-columns:repeat(3,1fr)}.metrics article{min-height:120px;padding:20px;border-right:1px solid var(--line)}.metrics article:last-child{border:0}.metrics span,.panel-head span,.live>span,.scan-stats>span{color:var(--muted);font-size:.6rem;text-transform:uppercase}.metrics strong{display:block;margin:15px 0 5px;font-size:2rem;font-weight:500}.metrics small{color:var(--muted)}.grid{display:grid;grid-template-columns:1.5fr .8fr;gap:15px;margin-top:15px}.panel{border:1px solid var(--line);background:var(--surface);padding:22px}.panel-head{display:flex;justify-content:space-between}.panel-head h2,.panel>h2{font-size:.95rem}.panel-head b{color:#38805a}.bars{height:230px;display:flex;align-items:end;gap:10px;padding:42px 0 0}.bars i{flex:1;height:var(--h);min-height:5px;background:var(--ink)}.bars i:nth-last-child(-n+2){background:var(--accent)}.live{display:flex;flex-direction:column;background:var(--accent)}.live h2{margin:32px 0 5px;font-family:var(--display);font-size:1.8rem}.live>strong{font-size:4rem;font-weight:500;line-height:1}.live p{margin-top:auto}.activity-panel{margin-top:15px}.activity{margin-top:18px}.activity p{display:grid;grid-template-columns:12px 1fr 1fr auto;gap:12px;padding:13px 0;border-top:1px solid var(--line);font-size:.7rem}.activity i{width:7px;height:7px;border-radius:50%;background:#45a56d}.activity span,.activity time{color:var(--muted)}.editor{display:grid;grid-template-columns:1.6fr .7fr;gap:15px}.editor-side{display:grid;align-content:start;gap:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:25px}.form-grid label{font-size:.66rem}.form-grid label.wide{grid-column:1/-1}.form-grid small{color:var(--muted)}.form-grid input,.form-grid textarea{display:block;width:100%;margin-top:6px;padding:0 11px;border:1px solid var(--line);background:#fff}.form-grid input{height:44px}.form-grid textarea{padding-top:10px;resize:vertical}.editor-side img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;margin:18px 0}.upload{display:flex;align-items:center;justify-content:center;height:42px;border:1px solid;cursor:pointer}.upload input{display:none}.color{display:flex;align-items:center;gap:12px;margin-top:18px}.color input{width:48px;height:38px;border:0;background:none}.status-message{margin-top:12px;color:#38805a}.table-panel{margin-top:15px;padding:0;overflow-x:auto}.table-head,.ticket-admin-row{display:grid;grid-template-columns:1fr 1.2fr 100px 120px;align-items:center;gap:15px;min-width:650px;padding:12px 18px;border-bottom:1px solid var(--line)}.table-head,.promo-head{min-height:42px;background:#fafaf8;color:var(--muted);font-size:.58rem;text-transform:uppercase}.ticket-admin-row input,.ticket-admin-row select{width:100%;height:36px;padding:0 8px;border:1px solid var(--line);background:#fff}.promo-head,.promo-row{display:grid;grid-template-columns:1fr 110px 90px 120px 1.3fr;gap:15px;align-items:center;min-width:700px;padding:12px 18px;border-bottom:1px solid var(--line)}.promo-row{min-height:56px}.promo-row span{font-size:.72rem}.promo-link{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.scan-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:15px}.scanner{min-height:570px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--ink);color:#fff}.scan-frame{position:relative;width:230px;height:230px;border:1px solid #555}.scan-frame::before,.scan-frame::after,.scan-frame span::before,.scan-frame span::after{content:"";position:absolute;width:28px;height:28px;border-color:var(--accent);border-style:solid}.scan-frame::before{top:-2px;left:-2px;border-width:3px 0 0 3px}.scan-frame::after{top:-2px;right:-2px;border-width:3px 3px 0 0}.scan-frame span::before{bottom:-2px;left:-2px;border-width:0 0 3px 3px}.scan-frame span::after{right:-2px;bottom:-2px;border-width:0 3px 3px 0}.scan-frame i{position:absolute;top:20px;right:12px;left:12px;height:1px;background:var(--accent);animation:scan 2.4s ease-in-out infinite}@keyframes scan{50%{transform:translateY(188px)}}.scanner h2{margin:30px 0 5px}.scanner p{color:#888}.scanner button{margin-top:25px;padding:12px 17px;border:0;background:var(--accent);color:#111}.scan-stats{display:flex;flex-direction:column}.scan-stats>strong{margin:35px 0 0;font-size:7rem;font-weight:500;line-height:1}.scan-stats>p{color:var(--muted)}.scan-stats>div{height:8px;margin:30px 0;background:#eee}.scan-stats>div i{display:block;width:var(--w);height:100%;background:var(--accent);transition:width .3s}.scan-stats ul{list-style:none;margin-top:auto}.scan-stats li{display:flex;justify-content:space-between;padding:14px 0;border-top:1px solid var(--line)}.offline{color:#38805a!important}.toast{position:fixed;z-index:50;right:20px;bottom:20px;padding:13px 17px;background:var(--ink);color:#fff;opacity:0;transform:translateY(20px);transition:.25s}.toast.show{opacity:1;transform:none}@media(max-width:900px){:root{--side:70px}.admin-brand span,.admin-brand b{font-size:0}.admin-brand b::first-letter{font-size:1rem}aside nav button{font-size:0;text-align:center}aside nav button::first-letter{font-size:1rem}.plan{display:none}.grid,.editor{grid-template-columns:1fr}}@media(max-width:650px){:root{--side:0}aside{width:220px;transform:translateX(-102%);transition:.25s}aside.open{transform:none}.admin-brand b{font-size:inherit}.admin-brand span{font-size:.55rem}aside nav button{font-size:inherit;text-align:left}.menu{display:block}header{left:0;padding:0 15px}main{margin-left:0;padding:88px 14px 40px}.page-head h1{font-size:2.3rem}.metrics,.metrics.small{grid-template-columns:1fr 1fr}.metrics article:nth-child(2){border-right:0}.grid{grid-template-columns:1fr}.activity p{grid-template-columns:10px 1fr auto}.activity span{display:none}.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:1}.scan-layout{grid-template-columns:1fr}.scanner{min-height:500px}.scan-stats{min-height:350px}.page-head{align-items:start}.page-head>span{display:none}}
