:root{--font: "Inter", system-ui, -apple-system, sans-serif;--bg: #f5f5f7;--bg-card: rgba(255, 255, 255, .8);--bg-glass: rgba(255, 255, 255, .6);--border: rgba(0, 0, 0, .06);--border-hover: rgba(0, 0, 0, .1);--text: #1d1d1f;--text-secondary: #86868b;--text-tertiary: #aeaeb2;--accent: #0071e3;--accent-hover: #0077ed;--accent-active: #006edb;--green: #34c759;--red: #ff3b30;--orange: #ff9500;--yellow: #ffcc00;--blue: #007aff;--purple: #af52de;--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--radius-xl: 18px;--shadow-sm: 0 1px 3px rgba(0,0,0,.04);--shadow: 0 2px 8px rgba(0,0,0,.06);--shadow-lg: 0 8px 30px rgba(0,0,0,.08);--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--duration-fast: .16s;--duration: .25s;--sidebar-width: 240px}@media(prefers-color-scheme:dark){:root{--bg: #1c1c1e;--bg-card: rgba(44, 44, 46, .8);--bg-glass: rgba(28, 28, 30, .7);--border: rgba(255,255,255,.08);--border-hover: rgba(255,255,255,.15);--text: #f5f5f7;--text-secondary: #98989d;--text-tertiary: #636366}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased}.app-layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:var(--bg-card);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-right:1px solid var(--border);padding:20px 12px;display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;z-index:100;transition:transform var(--duration) var(--ease-out)}.sidebar-logo{font-size:18px;font-weight:700;letter-spacing:-.03em;padding:0 12px 20px;color:var(--text)}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:2px}.sidebar-link{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;color:var(--text-secondary);text-decoration:none;transition:all var(--duration-fast) var(--ease-out);cursor:pointer;border:none;background:none;width:100%;text-align:left}.sidebar-link:hover{background:#0000000a;color:var(--text)}.sidebar-link.active{background:var(--accent);color:#fff}.sidebar-link:active{transform:scale(.97)}.sidebar-section{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);padding:16px 12px 6px}.main-content{margin-left:var(--sidebar-width);flex:1;padding:32px 40px;max-width:1200px}.page-header{margin-bottom:28px}.page-header h1{font-size:28px;font-weight:700;letter-spacing:-.03em;margin-bottom:4px}.page-header p{color:var(--text-secondary);font-size:15px}.card{background:var(--bg-card);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;transition:all var(--duration-fast) var(--ease-out)}.card:hover{border-color:var(--border-hover);box-shadow:var(--shadow)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card-title{font-size:15px;font-weight:600}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat-card{background:var(--bg-card);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;transition:all var(--duration-fast) var(--ease-out)}.stat-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow);transform:translateY(-1px)}.stat-label{font-size:13px;color:var(--text-secondary);font-weight:500}.stat-value{font-size:32px;font-weight:700;letter-spacing:-.03em;margin-top:4px}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius);font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all var(--duration-fast) var(--ease-out);text-decoration:none;background:var(--bg);color:var(--text)}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover{opacity:.9}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:#0000000a;color:var(--text)}.btn-sm{padding:5px 10px;font-size:13px}.btn-lg{padding:12px 24px;font-size:16px}.form-group{margin-bottom:16px}.form-label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:var(--text-secondary)}.form-input,.form-select,.form-textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);font-size:14px;font-family:var(--font);background:var(--bg);color:var(--text);transition:border-color var(--duration-fast) var(--ease-out)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0071e326}.form-textarea{min-height:100px;resize:vertical}.form-select{cursor:pointer}.table-container{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-card);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%)}table{width:100%;border-collapse:collapse}th{text-align:left;padding:12px 16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);border-bottom:1px solid var(--border)}td{padding:12px 16px;font-size:14px;border-bottom:1px solid var(--border)}tr:last-child td{border-bottom:none}tr:hover td{background:#00000005}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:12px;font-weight:500}.badge-green{background:#34c75926;color:var(--green)}.badge-red{background:#ff3b3026;color:var(--red)}.badge-orange{background:#ff950026;color:var(--orange)}.badge-blue{background:#007aff26;color:var(--blue)}.badge-gray{background:#0000000f;color:var(--text-secondary)}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:6px}.status-dot.green{background:var(--green)}.status-dot.red{background:var(--red)}.status-dot.orange{background:var(--orange)}.status-dot.blue{background:var(--blue)}.status-dot.gray{background:var(--text-tertiary)}.progress-bar{height:4px;background:#0000000f;border-radius:2px;overflow:hidden}.progress-fill{height:100%;border-radius:2px;background:var(--accent);transition:width var(--duration) var(--ease-out)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200;opacity:0;transition:opacity .2s var(--ease-out)}.modal-overlay.open{opacity:1}.modal{background:var(--bg-card);-webkit-backdrop-filter:blur(40px) saturate(180%);backdrop-filter:blur(40px) saturate(180%);border-radius:var(--radius-xl);padding:28px;width:90%;max-width:540px;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-lg);transform:scale(.95);transition:transform .25s var(--ease-out)}.modal-overlay.open .modal{transform:scale(1)}.modal-title{font-size:18px;font-weight:700;margin-bottom:16px}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:20px}.tab{padding:10px 16px;font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;border:none;background:none;border-bottom:2px solid transparent;transition:all var(--duration-fast) var(--ease-out)}.tab:hover{color:var(--text)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.toggle{position:relative;width:44px;height:24px;border-radius:12px;background:#0000001a;cursor:pointer;transition:background var(--duration-fast) var(--ease-out);border:none}.toggle.on{background:var(--green)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000026;transition:transform var(--duration-fast) var(--ease-out)}.toggle.on:after{transform:translate(20px)}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.empty-state h3{font-size:18px;margin-bottom:8px;color:var(--text)}.empty-state p{font-size:14px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:fadeIn .3s var(--ease-out) both}.page-enter:nth-child(2){animation-delay:40ms}.page-enter:nth-child(3){animation-delay:80ms}.page-enter:nth-child(4){animation-delay:.12s}@media(max-width:768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0;padding:20px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#0003}.toast-container{position:fixed;bottom:20px;right:20px;z-index:300;display:flex;flex-direction:column;gap:8px}.toast{padding:12px 20px;border-radius:var(--radius);background:var(--bg-card);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid var(--border);box-shadow:var(--shadow-lg);font-size:14px;animation:slideIn .3s var(--ease-out);max-width:380px}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast.error{border-left:3px solid var(--red)}.toast.success{border-left:3px solid var(--green)}
