:root{color-scheme:dark;--bg: #1b1b1b;--panel: #242424;--panel-2: #2b2b2b;--ink: #f2f2f2;--muted: #a9a9a9;--accent: #ff751f;--accent-2: #353535;--danger: #ff6b6b;--border: #3a3a3a}*{box-sizing:border-box}body{margin:0;font-family:Sora,Segoe UI,sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}html,body{height:100%}body{overscroll-behavior:none}button,a,input,textarea,select{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.loading{padding:40px;text-align:center}.app-shell{display:grid;grid-template-columns:1fr;min-height:100vh}.sidebar{background:#242424;border-right:1px solid var(--border);padding:18px 14px;display:flex;flex-direction:column;gap:18px;position:fixed;top:54px;left:0;bottom:0;width:240px;transform:translate(-100%);transition:transform .2s ease;z-index:60;border-radius:10px;margin:10px}.sidebar-brand{padding:6px 8px 10px;display:flex;align-items:center;justify-content:center}.sidebar-brand img{max-width:140px;height:auto;display:block}.sidebar-nav{display:grid;gap:6px}.sidebar-nav a{padding:10px 12px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.04em;font-size:14px;color:var(--muted);display:flex;align-items:center;gap:8px;border-radius:10px}.sidebar-nav .nav-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;color:currentColor}.sidebar-nav .nav-icon svg{width:18px;height:18px;display:block}.sidebar-nav a:hover{color:var(--ink);border-color:var(--border);background:#1b1b1b}.sidebar-nav a.active{color:#111;background:var(--accent);border-color:var(--accent)}.sidebar-footer{margin-top:auto;display:grid;gap:10px}.sidebar-footer .btn{width:100%;border-radius:10px;font-size:14px}.content{padding:calc(76px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom))}.container{max-width:1200px;margin:0 auto;width:100%}body{overflow-x:hidden}main.content{overflow-x:hidden}.mobile-topbar{display:flex;position:fixed;top:0;left:0;right:0;height:54px;background:#222;border-bottom:1px solid var(--border);z-index:50;align-items:center;justify-content:space-between;padding:0 16px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);gap:12px}.mobile-topbar .brand{display:inline-flex;align-items:center;flex:0 0 auto}.mobile-topbar .brand img{height:26px;width:auto;display:block}.hamburger{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:#1a1a1a;cursor:pointer;margin-left:auto;z-index:60}.hamburger span{display:block;width:18px;height:2px;background:var(--accent);margin:2px 0}.overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:40}.sidebar.open{transform:translate(0)}.overlay.show{display:block}@media (min-width: 1024px){.app-shell{grid-template-columns:240px 1fr}.sidebar{position:static;transform:none}.mobile-topbar{display:none}.content{padding:24px}}@media (max-width: 1023px){.mobile-topbar{display:flex!important}.hamburger{display:inline-flex!important}.sidebar{position:fixed;top:0;left:0;height:100vh;transform:translate(-100%)}.content{padding:calc(76px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom))}}.card{background:var(--panel);border:1px solid var(--border);padding:20px;box-shadow:0 8px 24px #00000040;border-radius:0}.card.hero{background:var(--panel-2)}.grid{display:grid;gap:16px}.grid.cols-3,.grid.cols-4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}@media (min-width: 900px){.grid.cols-4{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1200px){.grid.cols-4{grid-template-columns:repeat(4,1fr)}}.kpi{font-size:28px;font-weight:700}.kpi.small{font-size:14px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-direction:column;margin-bottom:16px}@media (min-width: 900px){.page-head{flex-direction:row;align-items:center}}.btn{padding:10px 16px;border-radius:0;border:1px solid var(--border);background:var(--panel);color:var(--ink);cursor:pointer;font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:12px}.btn{min-height:48px}.btn.primary{background:var(--accent);color:#111;border-color:transparent}.btn.danger{color:#ffd8d8;background:#3a1a24;border-color:#5a2233}.btn.cta{min-width:140px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:14px}.btn.compact{padding:8px 12px;font-size:12px;letter-spacing:.04em;min-width:44px;min-height:40px}.btn.ghost{background:#1a1a1a}.btn.icon{padding:8px 10px;min-width:44px;min-height:40px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.icon{width:18px;height:18px;display:inline-block}.icon svg{width:18px;height:18px;display:block}.status{padding:4px 10px;border-radius:0;font-weight:600;font-size:11px;display:inline-block;text-transform:uppercase;letter-spacing:.04em}.status.active{background:#232323;color:var(--accent)}.status.inactive{background:#2a1a22;color:var(--danger)}.tag{display:inline-block;padding:3px 8px;border:1px solid var(--border);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--border);vertical-align:middle}th{font-weight:700;color:var(--muted);text-transform:uppercase;font-size:12px;letter-spacing:.08em}tbody tr:hover{background:#202020}.cell-tight{white-space:nowrap}.cell-url{max-width:420px;word-break:break-all;color:#cfcfcf}.actions{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}.date-range{display:inline-flex;align-items:center;gap:8px;padding:0;border:0;background:transparent}.date-range input{padding:8px 10px;min-height:40px;border:1px solid var(--border);background:#141414}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.form-grid.single{grid-template-columns:1fr}.form-grid>div{display:flex;flex-direction:column;gap:8px}.pair-grid{display:grid;gap:16px;grid-template-columns:1fr}@media (min-width: 900px){.pair-grid{grid-template-columns:repeat(2,minmax(320px,1fr))}}.form-section{border:1px solid var(--border);padding:18px;background:#222;box-shadow:0 10px 24px #0000002e}.form-section h3{margin:0 0 10px;font-size:16px;letter-spacing:.02em}.inline-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.inline-row>div{min-width:220px;flex:1;display:flex;flex-direction:column;gap:8px}.inline-row .subtle{flex-basis:100%}.form-actions{margin-top:18px;display:flex;gap:12px;align-items:center}label{font-weight:600;display:block;margin-bottom:6px}input,textarea,select{width:100%;padding:14px 16px;border-radius:0;border:1px solid var(--border);font:inherit;background:#1a1a1a;color:var(--ink)}input,textarea,select{font-size:16px;min-height:48px}textarea{min-height:100px;resize:vertical}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent);outline-offset:1px}.preview-card{border:1px solid var(--border);background:#1a1a1a;padding:12px;display:grid;gap:10px}.preview-card img{width:100%;border-radius:0;border:1px solid var(--border)}.flash{background:#242424;border:1px solid var(--border);padding:12px 16px;margin-bottom:16px;text-transform:uppercase;letter-spacing:.04em;font-size:12px}.flash.error{color:var(--danger)}.muted{color:var(--muted)}.subtle{color:var(--muted);font-size:12px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{max-width:420px;width:100%;padding:28px 26px;border-color:#313131;box-shadow:0 12px 30px #00000059;display:grid;gap:8px;border-radius:10px}.login-card h1{margin:6px 0 2px;text-align:center;letter-spacing:.02em}.login-card p{margin:0 0 6px;text-align:center;color:var(--muted)}.login-card label{margin-top:6px}.login-card input{background:#181818;border-radius:10px}.login-cta{width:100%;justify-content:center;margin-top:10px;border-radius:10px}.login-logo{display:flex;justify-content:center;margin:2px 0 12px}.login-logo img{max-width:160px;width:100%;height:auto;display:block}.chart-card{overflow:hidden}.chart-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.chart{height:220px;position:relative}.chart.bar-chart{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;align-items:end}.chart-col{display:grid;gap:4px;align-items:end;height:100%}.bar{width:100%;min-height:2px}.bar.views{background:#3a3a3a;border:1px solid #4a4a4a}.bar.clicks{background:var(--accent)}.bar.auto{background:#2f6fed}.bar-labels{display:grid;gap:2px;font-size:10px;color:var(--muted)}.bar-labels .val{line-height:1}.bar-labels .val.clicks{color:#ffd0b0}.chart-legend{margin-top:10px;display:flex;gap:10px;align-items:center;font-size:12px;color:var(--muted)}.chart-legend .dot{width:10px;height:10px;display:inline-block;margin:0 6px 0 10px}.chart-legend .dot.views{background:#2a2a2a;border:1px solid var(--border)}.chart-legend .dot.clicks{background:var(--accent)}.chart-legend .dot.auto{background:#2f6fed}.stacked-chart{display:grid;grid-template-columns:44px 1fr;gap:8px;padding:8px 10px;background:#1a1a1a;border-radius:12px}.chart-axis{display:flex;flex-direction:column;justify-content:space-between;font-size:11px;color:var(--muted);padding:4px 0}.chart-canvas{position:relative;overflow:hidden}.stacked-bars{position:absolute;top:6px;right:6px;bottom:22px;left:6px;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;align-items:end}.stacked-col{display:flex;flex-direction:column-reverse;height:100%}.seg{width:100%}.seg.views{background:#b7b7b7}.seg.clicks{background:var(--accent)}.seg.auto{background:#6ea2ff}.chart-x-axis{position:absolute;left:0;right:0;bottom:0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;font-size:10px;color:var(--muted);padding:0 2px 2px}.chart-x-axis div{text-align:center;white-space:nowrap}.dashboard-page .card{border-radius:12px}.dashboard-page .chart{border-radius:12px;padding:8px;background:#1a1a1a}.dashboard-page .date-range,.dashboard-page .date-range input,.dashboard-page .btn,.settings-page .card,.settings-page .btn,.settings-page input,.settings-page textarea,.links-page .card,.links-page .form-section,.links-page .preview-card,.links-page .btn,.links-page input,.links-page textarea,.links-page select,.links-page .status,.links-page .tag{border-radius:10px}.links-page td:last-child{text-align:right}.links-page .actions{justify-content:flex-end;width:100%}.links-page .form-card{padding:22px}.links-page .form-section{padding:20px}.links-page textarea{min-height:120px}.links-page .form-actions{flex-direction:column;align-items:stretch}@media (min-width: 900px){.links-page .form-actions{flex-direction:row;justify-content:flex-end}}.links-page textarea:disabled,.links-page input:disabled,.links-page select:disabled{opacity:.55;cursor:not-allowed}.users-page .card,.users-page .form-section,.users-page .preview-card,.users-page .btn,.users-page input,.users-page textarea,.users-page select,.users-page .status,.users-page .tag{border-radius:10px}.users-page td:last-child{text-align:right}.users-page .actions{justify-content:flex-end;width:100%}.users-page .user-form-grid{grid-template-columns:repeat(4,minmax(220px,1fr));align-items:end}.users-page .user-form-toggle{grid-column:1 / -1;display:flex;align-items:center;min-height:48px}.users-page .user-form-field{min-width:0}.users-page .checkbox-field{display:inline-flex;align-items:center;gap:10px;margin:0;font-weight:700}.users-page .checkbox-input{width:18px;height:18px;min-height:18px;padding:0;margin:0;flex:0 0 auto}@media (max-width: 1200px){.users-page .user-form-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media (max-width: 720px){.users-page .user-form-grid{grid-template-columns:1fr}}
