:root{--color-primary: #714b67;--color-primary-600: #5e3d56;--color-primary-700: #4b3045;--color-accent: #875a7b;--color-bg: #f6f6f8;--color-surface: #ffffff;--color-surface-alt: #fafafc;--color-border: #e3e3e8;--color-border-strong: #cfcfd6;--color-text: #1f1f1f;--color-muted: #6b6b76;--color-success-bg: #e6f4ea;--color-success-fg: #1e7e34;--color-warning-bg: #fff4e0;--color-warning-fg: #b76e00;--color-danger-bg: #fde7e9;--color-danger-fg: #b1212d;--color-info-bg: #e7f0fb;--color-info-fg: #1e5fb0;--color-neutral-bg: #ececef;--color-neutral-fg: #4a4a55;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 2px 8px rgba(0, 0, 0, .06);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--header-height: 48px;--subheader-height: 44px;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0 0 var(--space-3);font-weight:600;color:var(--color-text)}h1{font-size:22px}h2{font-size:18px}h3{font-size:16px}h4{font-size:14px}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}p{margin:0 0 var(--space-3)}small{color:var(--color-muted)}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-header{height:var(--header-height);background:var(--color-primary);color:#fff;display:flex;align-items:stretch;padding:0 var(--space-4);box-shadow:var(--shadow-sm)}.app-header__brand{display:flex;align-items:center;gap:var(--space-2);font-weight:600;font-size:15px;color:#fff;padding-right:var(--space-5)}.app-header__brand-mark{width:22px;height:22px;border-radius:50%;background:#ffffff2e;display:inline-flex;align-items:center;justify-content:center;font-size:12px}.app-header__nav{display:flex;align-items:stretch;gap:0;flex:1;overflow-x:auto}.app-header__nav a{display:inline-flex;align-items:center;padding:0 var(--space-3);color:#ffffffdb;font-size:13px;text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent}.app-header__nav a:hover{color:#fff;background:#00000014;text-decoration:none}.app-header__nav a.is-active{color:#fff;border-bottom-color:#fff;background:#0000001a}.app-header__right{display:flex;align-items:center;gap:var(--space-3);color:#ffffffeb;font-size:13px}.app-header__avatar{width:26px;height:26px;border-radius:50%;background:#fff;color:var(--color-primary);font-weight:600;display:inline-flex;align-items:center;justify-content:center}.app-main{flex:1;padding:var(--space-5);max-width:1400px;width:100%;margin:0 auto}section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-sm);margin-bottom:var(--space-4)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap}.toolbar__title{display:flex;align-items:center;gap:var(--space-3)}.toolbar__title h2{margin:0}.toolbar__actions{display:flex;gap:var(--space-2);align-items:center}button,.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);padding:6px 12px;border-radius:var(--radius-md);font:inherit;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}button:hover,.btn:hover{background:var(--color-surface-alt)}button:disabled,.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary,button.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.btn-primary:hover,button.btn-primary:hover{background:var(--color-primary-600);border-color:var(--color-primary-600)}.btn-ghost{background:transparent;border-color:transparent;color:var(--color-primary)}.btn-ghost:hover{background:#714b6714}input,select,textarea{font:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);padding:6px 10px;outline:none;transition:border-color .12s ease,box-shadow .12s ease}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #714b6726}label{display:inline-flex;flex-direction:column;gap:var(--space-1);font-size:12px;color:var(--color-muted);margin-right:var(--space-3);margin-bottom:var(--space-2)}label>input,label>select{color:var(--color-text)}table{width:100%;border-collapse:separate;border-spacing:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;font-size:13px}thead th{background:var(--color-surface-alt);color:var(--color-muted);font-weight:600;text-align:left;padding:10px 12px;border-bottom:1px solid var(--color-border);text-transform:none;font-size:12px;letter-spacing:.02em}tbody td{padding:10px 12px;border-bottom:1px solid var(--color-border);vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--color-surface-alt)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.pill{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:500;line-height:1.6;background:var(--color-neutral-bg);color:var(--color-neutral-fg);text-transform:capitalize}.pill-success{background:var(--color-success-bg);color:var(--color-success-fg)}.pill-warning{background:var(--color-warning-bg);color:var(--color-warning-fg)}.pill-danger{background:var(--color-danger-bg);color:var(--color-danger-fg)}.pill-info{background:var(--color-info-bg);color:var(--color-info-fg)}[role=alert]{background:var(--color-danger-bg);color:var(--color-danger-fg);border:1px solid #f5c6cb;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);margin-top:var(--space-3)}[role=status]{background:var(--color-success-bg);color:var(--color-success-fg);border:1px solid #c3e6cb;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);margin-top:var(--space-3)}.muted{color:var(--color-muted)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
