:root{--bg: #f4f5f7;--panel: #ffffff;--ink: #1a1b1f;--muted: #5c6370;--line: #d9dce2;--accent: #0052cc;--accent-2: #00a3a3;--danger: #b42318;--radius: 14px;--shadow: 0 12px 30px rgba(0, 0, 0, .07)}*{box-sizing:border-box}body{margin:0;font-family:IBM Plex Sans,Segoe UI,sans-serif;color:var(--ink);background:radial-gradient(circle at top right,rgba(0,163,163,.08),transparent 35%),radial-gradient(circle at bottom left,rgba(0,82,204,.08),transparent 45%),var(--bg)}.app{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{background:linear-gradient(160deg,#111827,#1f2937 65%,#0f172a);color:#e5e7eb;padding:24px 16px;display:flex;flex-direction:column;gap:10px}.sidebar h1{margin:0;font-size:1.4rem}.sidebar p{margin:0 0 8px;color:#94a3b8}.menu{text-align:left;border:1px solid transparent;background:#ffffff08;color:#e5e7eb;padding:10px 12px;border-radius:10px;cursor:pointer;transition:all .2s ease}.menu:hover{border-color:#fff3}.menu.active{background:linear-gradient(90deg,var(--accent),var(--accent-2));border-color:transparent}.content{padding:20px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.topbar button,.card button{border:0;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#fff;font-weight:600;padding:9px 12px;border-radius:10px;cursor:pointer}.notice{background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:10px;padding:10px;margin-bottom:14px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.span-2{grid-column:span 2}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px;display:flex;flex-direction:column;gap:10px}.card h2{margin:0;font-size:1rem}input,select,textarea{border:1px solid var(--line);border-radius:10px;padding:9px 10px;font:inherit}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{border-bottom:1px solid var(--line);padding:8px;text-align:left;vertical-align:top}td pre{margin:0;white-space:pre-wrap;max-width:520px}.actions{display:flex;flex-wrap:wrap;gap:6px}.actions button{padding:6px 8px;font-size:.8rem}@media (max-width: 980px){.app{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:10}.grid{grid-template-columns:1fr}.span-2{grid-column:span 1}}
