:root{color-scheme:light;font-family:Inter,system-ui,sans-serif;font-size:16px;color:#1f2937;background-color:#f4f7fb;--surface: #ffffff;--surface-strong: #edf2f7;--surface-soft: #f8fafc;--border: #e2e8f0;--text-secondary: #475569;--primary: #2563eb;--primary-dark: #1d4ed8;--danger: #dc2626;--success: #16a34a;--shadow: 0 20px 50px rgba(15, 23, 42, .08)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:radial-gradient(circle at top right,rgba(37,99,235,.12),transparent 35%),radial-gradient(circle at bottom left,rgba(34,197,94,.1),transparent 25%),#eef2ff;color:var(--text-primary, #0f172a)}main{min-height:calc(100vh - 190px)}.app{max-width:1240px;margin:0 auto;padding:24px 20px 40px}header.topbar{background:linear-gradient(135deg,#3b82f6f2,#10b981e6);color:#fff;border-radius:24px;padding:18px 24px;box-shadow:var(--shadow);margin-bottom:24px}form{margin:0}.form-card,.card,.section-card{background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:24px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:18px}.form-card{max-width:740px;margin:0 auto}.card-actions,.inline-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.label{display:grid;gap:10px;color:var(--text-secondary);font-weight:600}button,.button,.button-primary,.button-secondary{border:none;border-radius:999px;cursor:pointer;padding:12px 20px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}button:hover:not(:disabled),.button:hover:not(:disabled),.button-primary:hover:not(:disabled),.button-secondary:hover:not(:disabled){transform:translateY(-1px)}button:disabled,.button:disabled,.button-primary:disabled,.button-secondary:disabled{opacity:.6;cursor:not-allowed}.button-secondary.active{background:#2563eb1f;color:var(--text-primary)}button,input,textarea,select{font:inherit}input::placeholder,textarea::placeholder{color:#94a3b8}.code-inline{display:inline-flex;padding:2px 6px;border-radius:8px;background:#f1f5f9;color:#0f172a;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.topbar-inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}.topbar-brand{font-size:1.2rem;font-weight:700}nav.navbar{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center}.navbar-link,.navbar-action{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;text-decoration:none;background:#ffffff29;color:#fff;transition:transform .15s ease,background .15s ease}.navbar-link:hover,.navbar-action:hover{background:#ffffff42;transform:translateY(-1px)}.navbar-right{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.page-title{margin:0 0 12px;font-size:clamp(2rem,2.5vw,2.5rem);line-height:1.05}.page-subtitle{margin:0 0 24px;color:var(--text-secondary);max-width:680px}.card,.form-card,.section-card{background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:24px;box-shadow:var(--shadow)}.section-card{margin-top:24px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}@media (max-width: 900px){.grid-2{grid-template-columns:1fr}}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}@media (max-width: 1100px){.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 700px){.navbar{justify-content:center}}.button,.button-primary,.button-secondary{border:none;border-radius:999px;cursor:pointer;padding:12px 20px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.button:hover,.button-primary:hover,.button-secondary:hover{transform:translateY(-1px)}.button-primary{background:var(--primary);color:#fff;box-shadow:0 12px 30px #2563eb2e}.button-secondary{background:var(--surface-strong);color:var(--text-primary)}.input,.textarea,.select{width:100%;padding:14px 16px;border:1px solid var(--border);border-radius:16px;background:var(--surface-soft);color:var(--text-primary);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.input:focus,.textarea:focus,.select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #2563eb1f}.label{display:block;margin-bottom:12px;color:var(--text-secondary);font-size:.95rem}.form-grid{display:grid;gap:16px}.card-title{margin:0 0 16px;font-size:1.35rem}.status-chip{display:inline-flex;gap:8px;align-items:center;padding:8px 14px;border-radius:999px;font-size:.95rem;background:var(--surface-soft);color:var(--text-secondary)}.alert{padding:16px;border-radius:18px;background:#fff1f2;border:1px solid #fecdd3;color:#991b1b}.footer-note{margin-top:2rem;color:var(--text-secondary);font-size:.95rem}hr.divider{border:none;border-top:1px solid var(--border);margin:32px 0}.section-card ul,.form-card ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}.section-card ul>li,.form-card ul>li{border:1px solid var(--border);border-radius:18px;padding:18px 20px;background:var(--surface-soft);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.section-card ul>li:hover,.form-card ul>li:hover{border-color:#2563eb59;box-shadow:0 8px 24px #0f172a0f;transform:translateY(-1px)}.section-card h2{margin:0;font-size:1.15rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.stat-tile{border:1px solid var(--border);border-radius:18px;padding:18px 20px;background:var(--surface-soft)}.stat-value{font-size:1.9rem;font-weight:700;line-height:1.1;color:#0f172a}.stat-label{margin-top:6px;color:var(--text-secondary);font-size:.9rem}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-size:.85rem;font-weight:600}.badge-success{background:#dcfce7;color:#166534}.badge-danger{background:#fee2e2;color:#991b1b}.badge-neutral{background:var(--surface-strong);color:var(--text-secondary)}.badge:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.empty-state{text-align:center;padding:40px 24px;color:var(--text-secondary)}.empty-state-icon{font-size:2.5rem;margin-bottom:12px}.empty-state strong{display:block;color:#0f172a;font-size:1.05rem;margin-bottom:8px}.notice-success{padding:16px 18px;border-radius:18px;background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.notice-success p{margin:0 0 10px}.notice-success p:last-of-type{margin-bottom:12px}.page-head{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;justify-content:space-between}.page-head .page-title,.page-head .page-subtitle{margin-bottom:0}.meta-line{color:var(--text-secondary);font-size:.92rem;margin-top:4px}.item-title{font-size:1.05rem;font-weight:650;color:#0f172a}
