:root{--red: #ff2d20;--red-dark: #cc2419;--red-glow: rgba(255, 45, 32, .15);--bg: #0f0f1a;--bg-card: #1a1a2e;--bg-hover: #222240;--text: #e8e8e8;--text-sec: #a0a0b0;--text-muted: #707080;--border: #2a2a40}*{margin:0;padding:0;box-sizing:border-box}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--border);border-radius:5px;border:2px solid var(--bg)}*::-webkit-scrollbar-thumb:hover{background:var(--bg-hover)}*::-webkit-scrollbar-corner{background:transparent}*::-webkit-scrollbar-button{display:none}body{font-family:Outfit,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}a{color:var(--red);text-decoration:none}a:hover{opacity:.8}.layout{display:flex;min-height:100vh}.sidebar{width:240px;background:var(--bg-card);border-right:1px solid var(--border);padding:24px 0;position:fixed;top:0;bottom:0;overflow-y:auto}.sidebar-logo{padding:0 20px 24px;font-size:18px;font-weight:800;letter-spacing:-.02em;border-bottom:1px solid var(--border);margin-bottom:16px}.sidebar-logo span{color:var(--red)}.sidebar a{display:flex;align-items:center;gap:10px;padding:10px 20px;color:var(--text-sec);font-size:14px;font-weight:500;transition:all .2s}.sidebar a:hover,.sidebar a.active{color:var(--text);background:var(--bg-hover)}.sidebar a.active{border-right:2px solid var(--red)}.sidebar-sub{display:flex;flex-direction:column;border-left:1px solid var(--border);margin:4px 0 8px 28px}.sidebar-sub a{padding:7px 12px 7px 14px;font-size:13px;color:var(--text-muted);gap:8px}.sidebar-sub a:hover{color:var(--text);background:transparent}.sidebar-sub a.active{color:var(--red);background:transparent;border-right:none;font-weight:600}.main{margin-left:240px;flex:1;padding:32px}.page-title{font-size:28px;font-weight:800;letter-spacing:-.02em;margin-bottom:24px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-bottom:32px}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px}.stat-card .label{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.stat-card .value{font-size:28px;font-weight:700;color:var(--red)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:16px}.card p{font-size:13px;color:var(--text-sec)}.card .meta{font-size:12px;color:var(--text-muted);margin-top:8px}table{width:100%;border-collapse:collapse}th,td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--border);font-size:13px}th{color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:11px}tr:hover{background:var(--bg-hover)}.btn{background:var(--red);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:6px;line-height:1}.btn:hover{background:var(--red-dark)}.btn:disabled{opacity:.5;cursor:default}.btn-outline{background:none;border:1px solid var(--border);color:var(--text);padding:8px 16px;border-radius:8px;font-family:inherit;font-size:13px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:6px;line-height:1}.btn-outline:hover{border-color:var(--red);color:var(--red)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;color:var(--text-sec);margin-bottom:4px;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px 14px;color:var(--text);font-family:inherit;font-size:14px;outline:none}.form-group input:focus,.form-group textarea:focus{border-color:var(--red)}.snippet{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:14px;font-family:JetBrains Mono,monospace;font-size:12px;color:var(--red);overflow-x:auto;white-space:nowrap}.badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600}.badge-green{background:#28c84026;color:#28c840}.badge-red{background:#ff2d2026;color:var(--red)}.badge-gray{background:#a0a0b026;color:var(--text-muted)}.badge-yellow{background:#f59e0b26;color:#f59e0b}.msg-list{display:flex;flex-direction:column;gap:8px}.msg-bubble{padding:8px 12px;border-radius:10px;font-size:13px;max-width:80%}.msg-bubble.user{align-self:flex-end;background:var(--red);color:#fff}.msg-bubble.assistant{align-self:flex-start;background:var(--bg);border:1px solid var(--border)}.msg-bubble .time{font-size:10px;color:var(--text-muted);margin-top:4px}.card:hover{border-color:var(--border)}.card.highlight{border-color:var(--red)}.card h3{font-size:16px;font-weight:700;margin-bottom:4px;display:flex;align-items:center;gap:8px}.card .help{font-size:12px;color:var(--text-muted);line-height:1.5;margin-bottom:14px}.page-subtitle{font-size:14px;color:var(--text-sec);margin-top:-16px;margin-bottom:24px;max-width:720px;line-height:1.5}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:24px;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{background:none;border:none;color:var(--text-muted);font-family:inherit;font-size:14px;font-weight:500;padding:12px 16px;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;white-space:nowrap;display:flex;align-items:center;gap:8px}.tab:hover{color:var(--text)}.tab.active{color:var(--red);border-bottom-color:var(--red)}.tab .tab-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--red)}.progress{display:block;width:100%;height:8px;background:var(--bg);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:var(--red);border-radius:4px;transition:width .4s ease}.progress-fill.warn{background:#febc2e}.progress-fill.danger{background:var(--red)}.progress-fill.ok{background:#28c840}.plan-card{background:linear-gradient(135deg,var(--bg-card),var(--bg-hover));border:1px solid var(--border);border-radius:14px;padding:24px;margin-bottom:24px;position:relative;overflow:hidden}.plan-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--red)}.plan-card .plan-name{font-size:13px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em}.plan-card .plan-title{font-size:28px;font-weight:800;letter-spacing:-.02em;margin-top:4px;margin-bottom:8px}.plan-card .plan-desc{font-size:13px;color:var(--text-sec);line-height:1.5;max-width:560px}.usage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.usage-item .usage-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.usage-item .usage-value{font-size:18px;font-weight:700;margin-bottom:6px;display:flex;align-items:baseline;gap:6px}.usage-item .usage-value .of{font-size:12px;font-weight:500;color:var(--text-muted)}.upgrade-banner{background:linear-gradient(135deg,#ff2d2014,#ff2d2008);border:1px dashed rgba(255,45,32,.4);border-radius:12px;padding:20px 24px;text-align:center}.upgrade-banner .upgrade-icon{font-size:28px;margin-bottom:8px}.upgrade-banner h4{font-size:16px;font-weight:700;margin-bottom:4px}.upgrade-banner p{font-size:13px;color:var(--text-sec);margin-bottom:12px;max-width:480px;margin-left:auto;margin-right:auto}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.action-tile{display:block;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:18px 20px;text-decoration:none;color:var(--text);transition:all .2s}.action-tile:hover{border-color:var(--red);transform:translateY(-2px);opacity:1}.action-tile .action-title{font-size:15px;font-weight:700;margin-bottom:4px}.action-tile .action-desc{font-size:12px;color:var(--text-muted)}.empty-state{text-align:center;padding:48px 24px;color:var(--text-muted)}.empty-state .empty-icon{font-size:48px;opacity:.4;margin-bottom:12px}.empty-state h4{font-size:16px;color:var(--text);margin-bottom:6px;font-weight:600}.empty-state p{font-size:13px;max-width:420px;margin:0 auto 16px;line-height:1.5}.form-label{display:block;font-size:13px;font-weight:600;color:var(--text);margin-bottom:4px}.form-hint{font-size:12px;color:var(--text-muted);margin-bottom:8px;line-height:1.5}.form-input{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px 14px;color:var(--text);font-family:inherit;font-size:14px;outline:none;transition:border-color .2s}.form-input:focus{border-color:var(--red)}.form-input:disabled{opacity:.5;cursor:not-allowed}select.form-input,.form-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23a0a0b0'><path d='M7 10l5 5 5-5z'/></svg>");background-repeat:no-repeat;background-position:right 10px center;background-size:16px 16px;padding-right:32px;cursor:pointer}select.form-input:focus,.form-group select:focus{border-color:var(--red)}input[type=date].form-input,input[type=datetime-local].form-input{color-scheme:dark;cursor:pointer}input[type=date].form-input::-webkit-calendar-picker-indicator,input[type=datetime-local].form-input::-webkit-calendar-picker-indicator{filter:invert(.65);opacity:.8;cursor:pointer;margin-left:4px}input[type=date].form-input::-webkit-calendar-picker-indicator:hover,input[type=datetime-local].form-input::-webkit-calendar-picker-indicator:hover{opacity:1}textarea{resize:none;min-height:60px;outline:none}textarea.form-input{resize:none}textarea:focus{outline:none}.switch{position:relative;display:inline-block;width:40px;height:22px;flex-shrink:0}.switch input{opacity:0;width:0;height:0}.switch .track{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--border);border-radius:22px;transition:.2s;cursor:pointer}.switch .track:before{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.switch input:checked+.track{background:var(--red)}.switch input:checked+.track:before{transform:translate(18px)}.switch input:disabled+.track{opacity:.4;cursor:not-allowed}.sparkline{display:flex;align-items:stretch;gap:3px;height:200px;width:100%}.sparkline .bar-col{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;min-width:0}.sparkline .bar{width:100%;background:var(--red);border-radius:2px 2px 0 0;min-height:2px;transition:opacity .2s;opacity:.85}.sparkline .bar.empty{background:var(--border);opacity:.4}.sparkline .bar:hover{opacity:1}.alert{display:flex;gap:14px;padding:14px 16px;border-radius:10px;border:1px solid;margin-bottom:10px;align-items:flex-start}.alert.warning{background:#febc2e0f;border-color:#febc2e59}.alert.info{background:#6366f10d;border-color:#6366f14d}.alert.danger{background:#ff2d2014;border-color:#ff2d2066}.alert .alert-icon{flex-shrink:0;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center}.alert.warning .alert-icon{background:#febc2e2e;color:#febc2e}.alert.info .alert-icon{background:#6366f12e;color:#6366f1}.alert.danger .alert-icon{background:#ff2d202e;color:var(--red)}.alert .alert-body{flex:1;min-width:0}.alert .alert-title{font-size:14px;font-weight:700;margin-bottom:2px}.alert .alert-desc{font-size:12px;color:var(--text-sec);line-height:1.5}.setting{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--border)}.setting:last-child{border-bottom:none}.setting .setting-info{flex:1}.setting .setting-info .title{font-size:14px;font-weight:600;margin-bottom:2px}.setting .setting-info .desc{font-size:12px;color:var(--text-muted);line-height:1.5}.setting .setting-control{flex-shrink:0;display:flex;align-items:center;gap:8px}
