:root{--primary-color:#facc15;--primary-color-hover:#eab308;--bg-color:#fef3c7;--text-primary:#1e293b;--text-secondary:#475569;--accent-color:#38bdf8;--accent-color-hover:#0ea5e9;--card-bg:#fff;--border-radius-lg:24px;--border-radius-md:16px;--border-radius-sm:8px;--shadow-cartoon:4px 4px 0px #1e293b;--shadow-cartoon-hover:2px 2px 0px #1e293b}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);font-family:Outfit,Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:500;line-height:1.5}.cartoon-btn{background-color:var(--primary-color);color:var(--text-primary);border:3px solid var(--text-primary);border-radius:var(--border-radius-sm);cursor:pointer;box-shadow:var(--shadow-cartoon);justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:1.1rem;font-weight:800;text-decoration:none;transition:all .2s;display:inline-flex;position:relative;top:0;left:0}.cartoon-btn:hover{background-color:var(--primary-color-hover);transform:translateY(-4px);box-shadow:6px 6px #1e293b}.cartoon-btn:active{box-shadow:var(--shadow-cartoon-hover);top:2px;left:2px}.cartoon-btn.accent{background-color:var(--accent-color);color:#fff}.cartoon-btn.accent:hover{background-color:var(--accent-color-hover)}.cartoon-card{background:var(--card-bg);border:4px solid var(--text-primary);border-radius:var(--border-radius-lg);box-shadow:8px 8px 0px var(--text-primary);margin-bottom:24px;padding:32px}.cartoon-input{border:3px solid var(--text-primary);border-radius:var(--border-radius-sm);outline:none;width:100%;padding:12px 16px;font-family:inherit;font-size:1rem;font-weight:600;transition:box-shadow .2s}.cartoon-input:focus{box-shadow:4px 4px 0px var(--text-primary)}.cartoon-input::placeholder{color:var(--text-secondary,#666);opacity:.4;font-weight:400}h1,h2,h3,h4,h5,h6{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:.5rem;font-weight:900}h3,h4,h5,h6{margin-top:1.5rem}.cartoon-card h3{margin-top:2rem;margin-bottom:.5rem}h1{text-shadow:2px 2px 0px var(--accent-color);font-size:3.5rem;line-height:1.1}h2{text-shadow:1px 1px 0px var(--accent-color);font-size:2.5rem}.app-container{flex-direction:column;min-height:100vh;display:flex}.navbar{background-color:var(--primary-color);border-bottom:4px solid var(--text-primary);justify-content:space-between;align-items:center;padding:20px 40px;display:flex}.navbar-brand{color:var(--text-primary);letter-spacing:-1px;align-items:center;gap:12px;font-size:2rem;font-weight:900;text-decoration:none;display:flex}.navbar-nav{align-items:center;gap:20px;display:flex}.nav-link{color:var(--text-primary);font-size:1.1rem;font-weight:800;text-decoration:none}.nav-link:hover{text-decoration:underline;text-decoration-thickness:3px}.main-content{flex:1;width:100%;max-width:1600px;margin:0 auto;padding:40px}.hero{text-align:center;max-width:800px;margin:0 auto;padding:0 0 60px}.hero p{color:var(--text-secondary);margin-bottom:32px;font-size:1.25rem;font-weight:600}.dashboard-tabs{flex-wrap:wrap;gap:12px;margin-bottom:24px;display:flex}.dashboard-grid{grid-template-columns:1fr 2fr;gap:32px;display:grid}.usage-filters{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:20px;display:flex}.usage-filters label{color:#64748b;flex-direction:column;gap:4px;font-size:.75rem;font-weight:800;display:flex}.usage-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:20px;display:grid}.usage-stat{background:#fff;border:4px solid #1e293b;border-radius:16px;padding:16px;box-shadow:4px 4px #1e293b}.usage-stat-label{color:#64748b;text-transform:uppercase;font-size:.72rem;font-weight:800}.usage-stat-value{color:#1e293b;font-size:1.7rem;font-weight:900;line-height:1.2}.usage-stat-hint{color:#94a3b8;font-size:.75rem;font-weight:700}.usage-split{grid-template-columns:1fr 1fr;gap:20px;display:grid}.usage-bars{flex-direction:column;gap:8px;display:flex}.usage-bar-row{grid-template-columns:minmax(90px,140px) 1fr 40px;align-items:center;gap:8px;display:grid}.usage-bar-name{font-size:.85rem;font-weight:800}.usage-bar-track{background:#f1f5f9;border:2px solid #1e293b;border-radius:8px;height:12px;overflow:hidden}.usage-bar-fill{background:#facc15;height:100%}.usage-bar-num{text-align:right;font-weight:900}.usage-timeline{align-items:flex-end;gap:6px;min-height:120px;margin-bottom:16px;padding-bottom:8px;display:flex;overflow-x:auto}.usage-tl-col{text-align:center;flex:none;width:44px}.usage-tl-stack{justify-content:center;align-items:flex-end;height:96px;display:flex}.usage-tl-bar{background:#38bdf8;border:2px solid #1e293b;border-radius:6px 6px 0 0;width:18px}.usage-tl-label{color:#64748b;transform-origin:0 0;white-space:nowrap;margin-top:4px;font-size:.62rem;font-weight:700;transform:rotate(-35deg)}.usage-table{margin-top:16px;font-size:.9rem}.usage-empty{color:#64748b;margin:12px 0 0;font-weight:600}.usage-pager{color:#64748b;justify-content:center;align-items:center;gap:12px;margin-top:16px;font-weight:700;display:flex}.usage-pill{border:2px solid #1e293b;border-radius:999px;padding:2px 8px;font-size:.78rem;font-weight:800;display:inline-block}.usage-pill.usage-ok{color:#166534;background:#dcfce7}.usage-pill.usage-warn{color:#92400e;background:#fef3c7}.usage-pill.usage-bad{color:#991b1b;background:#fee2e2}.usage-pill.usage-muted{color:#475569;background:#f1f5f9}@media (width<=900px){.usage-split{grid-template-columns:1fr}}@media (width<=768px){.dashboard-grid{grid-template-columns:1fr}}.api-key-list{margin-top:16px;list-style:none}.api-key-item{border:3px solid var(--text-primary);border-radius:var(--border-radius-sm);background:var(--bg-color);justify-content:space-between;align-items:center;margin-bottom:12px;padding:16px;font-family:monospace;font-size:1.1rem;font-weight:700;display:flex}.auth-container{max-width:400px;margin:80px auto}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-form label{margin-bottom:-10px;font-weight:700;display:block}.error-text{color:#ef4444;margin-bottom:12px;font-weight:700}.admin-table{border-collapse:collapse;width:100%;margin-top:24px}.admin-table th,.admin-table td{border:3px solid var(--text-primary);text-align:left;padding:12px}.admin-table th{background-color:var(--primary-color);font-weight:900}input::placeholder,textarea::placeholder{color:#c8d3dd;opacity:1}
