:root{--canvas:#eef0f2;--panel:#fbfbfa;--surface:#ffffff;--surface-alt:#f6f6f4;--border:#ececea;--border-strong:#dcdcda;--ink:#14151a;--ink-secondary:#6b6b74;--muted:#a2a2aa;--accent:#ff6b47;--accent-ink:#d8461f;--accent-soft:#ffe6dc;--success:#1f9d63;--success-soft:#e3f8ec;--warning:#c07a10;--warning-soft:#fff2d9;--danger:#d94438;--danger-soft:#fde5e2;--radius-card:22px;--radius-panel:30px;--radius-chip:12px;--radius-full:999px;--shadow-card:0 1px 2px rgba(20,21,26,0.04),0 12px 28px -10px rgba(20,21,26,0.10);--shadow-card-hover:0 4px 10px rgba(20,21,26,0.06),0 20px 40px -12px rgba(20,21,26,0.14);--shadow-panel:0 30px 70px -24px rgba(20,21,26,0.22);--shadow-focus:0 0 0 4px rgba(255,107,71,0.2);--ease-out:cubic-bezier(0.23,1,0.32,1);--font-sans:-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased}body{margin:0;background:var(--canvas);color:var(--ink);font-size:14.5px;line-height:1.5}body,h1,h2,h3{font-family:var(--font-sans)}h1,h2,h3{letter-spacing:-.02em}button,input,select{font:inherit;color:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid transparent;border-radius:var(--radius-full);padding:10px 18px;background:var(--ink);color:#fff;font-weight:580;font-size:13.5px;cursor:pointer;transition:background .13s var(--ease-out),border-color .13s var(--ease-out),transform 90ms var(--ease-out),box-shadow .13s var(--ease-out)}button:hover{background:#2a2b32}button:active{transform:scale(.96)}button:disabled{opacity:.4;cursor:default;transform:none}button:focus-visible,input:focus-visible,select:focus-visible{outline:none;box-shadow:var(--shadow-focus)}button.secondary{background:var(--surface);color:var(--ink);border-color:var(--border-strong)}button.secondary:hover{background:var(--surface-alt)}button.danger{background:var(--surface);color:var(--danger);border-color:var(--border-strong)}button.danger:hover{background:var(--danger-soft);border-color:#f3c2bc}input,select{width:100%;border:1px solid var(--border-strong);border-radius:var(--radius-chip);padding:10px 13px;background:var(--surface);color:var(--ink);font-size:13.5px;transition:box-shadow .13s var(--ease-out),border-color .13s var(--ease-out)}input::placeholder{color:var(--muted)}input:focus-visible,select:focus-visible{border-color:var(--accent)}label{display:grid;gap:6px;font-size:12.5px;font-weight:560;color:var(--ink-secondary)}.eyebrow{color:var(--muted);font-size:11.5px;font-weight:650;letter-spacing:.06em;text-transform:uppercase}.error{display:flex;align-items:center;gap:8px;margin:0;padding:10px 13px;border-radius:var(--radius-chip);background:var(--danger-soft);color:var(--danger);font-size:13px;font-weight:540}.empty{display:grid;justify-items:center;gap:8px;padding:44px 16px;color:var(--muted);text-align:center;font-size:13.5px}.empty svg{opacity:.4}.icon-chip{flex-shrink:0;width:38px;height:38px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;background:var(--surface-alt);color:var(--ink-secondary)}.icon-chip.accent{background:var(--accent-soft);color:var(--accent-ink)}.tag{display:inline-flex;align-items:center;gap:6px;border-radius:var(--radius-full);padding:5px 12px;font-size:12px;font-weight:620;white-space:nowrap}.tag:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.8;flex-shrink:0}.avatar{flex-shrink:0;width:34px;height:34px;border-radius:var(--radius-full);align-items:center;font-weight:650;font-size:12.5px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}.avatar,.canvas{display:flex;justify-content:center}.canvas{min-height:100vh;background:var(--canvas);padding:22px}.panel{width:100%;max-width:1180px;background:var(--panel);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);overflow:hidden}@media (max-width:720px){.canvas{padding:0}.panel{border-radius:0;box-shadow:none;min-height:100vh}}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--canvas)}.auth-card{width:100%;max-width:400px;background:var(--surface);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);padding:38px 34px 30px}.auth-mark{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:14px;background:var(--ink);color:#fff;font-weight:700;font-size:14px;margin-bottom:22px}.auth-card h1{margin:0 0 5px;font-size:22px;font-weight:680}.auth-card .lede{margin:0 0 24px;color:var(--ink-secondary);font-size:13.5px}.auth-card form{display:grid;gap:14px}.auth-card button[type=submit]{width:100%;padding:12px 16px;font-size:14px;margin-top:4px;background:var(--accent)}.auth-card button[type=submit]:hover{background:var(--accent-ink)}.app-topbar{justify-content:space-between;gap:16px;padding:18px clamp(18px,3vw,32px);border-bottom:1px solid var(--border)}.app-brand,.app-topbar{display:flex;align-items:center}.app-brand{gap:10px;min-width:0}.app-brand .mark{flex-shrink:0;width:34px;height:34px;border-radius:12px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center}.app-brand .titles{min-width:0;line-height:1.25}.app-brand .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650;font-size:14px}.app-brand .sub{color:var(--muted);font-size:11.5px}.app-body{padding:26px clamp(18px,3vw,32px) 40px}.page-title{margin:0 0 22px;font-size:clamp(19px,2.6vw,24px);font-weight:680}.page-note{max-width:560px;margin:-14px 0 22px;color:var(--ink-secondary);font-size:13px;line-height:1.5}.overview{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}.stat-card{grid-column:span 2;display:flex;align-items:center;gap:14px;background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:20px;transition:box-shadow .18s var(--ease-out),transform .18s var(--ease-out)}.stat-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.stat-card.highlight{background:var(--ink);color:#fff}.stat-card.highlight .stat-label{color:rgba(255,255,255,.65)}.stat-card.highlight .icon-chip{background:rgba(255,255,255,.14);color:#fff}.stat-label{margin:0;color:var(--muted);font-size:12px;font-weight:560}.stat-value{margin:3px 0 0;font-size:25px;font-weight:700;letter-spacing:-.015em}@media (max-width:720px){.overview{grid-template-columns:1fr 1fr 1fr}.stat-card{grid-column:span 1}}@media (max-width:480px){.overview{grid-template-columns:1fr 1fr}}.tab-bar{display:inline-flex;gap:3px;padding:4px;background:var(--surface-alt);margin-bottom:20px;max-width:100%;overflow-x:auto}.tab,.tab-bar{border-radius:var(--radius-full)}.tab{flex-shrink:0;background:transparent;color:var(--ink-secondary);padding:8px 18px;font-size:13px;font-weight:580}.tab.active,.tab:hover{color:var(--ink)}.tab.active{box-shadow:var(--shadow-card)}.tab.active,.tab.active:hover{background:var(--surface)}.tab-panel{display:grid;gap:16px}.panel-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.panel-toolbar h2{flex:1 1;min-width:100px;margin:0;font-size:16px;font-weight:660}.count{color:var(--muted);font-size:12.5px;font-weight:560}.card-list{display:grid;gap:10px}.registry-row{display:flex;align-items:center;gap:13px;padding:15px 18px;background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);flex-wrap:wrap}.registry-row h3{margin:0;font-size:14.5px;font-weight:620}.registry-row p{margin:1px 0 0;color:var(--muted);font-size:12px}.registry-row .actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.registry-row .actions button{padding:8px 15px;font-size:12.5px}@media (max-width:640px){.app-topbar{padding:14px 16px}.app-body{padding:20px 16px 32px}.registry-row .actions{margin-left:0;width:100%;justify-content:flex-start}.auth-card{padding:30px 22px 24px}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}