.app-root[data-v-539c97d8]{min-height:100vh}:root{--color-bg: #e8ecf2;--color-bg-elevated: #eef1f6;--color-surface: #ffffff;--color-border: #d8dee8;--color-border-strong: #c5cdd9;--color-text: #101828;--color-text-secondary: #475467;--color-text-muted: #667085;--color-primary: #154082;--color-primary-hover: #1a519f;--color-primary-muted: rgba(21, 64, 130, .09);--color-secondary: #344054;--color-secondary-hover: #475467;--color-link: #154082;--color-link-hover: #0f3060;--color-danger: #b42318;--color-success: #067647;--color-warning: #b54708;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .05);--shadow-card: 0 1px 3px rgba(16, 24, 40, .08), 0 4px 16px rgba(16, 24, 40, .06);--shadow-login: 0 4px 24px rgba(16, 24, 40, .07), 0 12px 48px rgba(21, 64, 130, .06);--radius-sm: 8px;--radius-md: 10px;--radius-lg: 12px;--font-sans: "IBM Plex Sans", "Segoe UI", system-ui, -apple-system, sans-serif}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:15px;line-height:1.55;color:var(--color-text);background-color:var(--color-bg);background-image:radial-gradient(ellipse 120% 80% at 50% -20%,rgba(21,64,130,.06),transparent 55%);background-attachment:fixed;-webkit-font-smoothing:antialiased}a{color:var(--color-link);text-decoration:none;font-weight:500;transition:color .15s ease}a:hover{color:var(--color-link-hover);text-decoration:underline;text-underline-offset:3px}.card{max-width:420px;margin:2rem auto;padding:1.85rem 2rem;background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-login)}.panel{background:var(--color-surface);padding:1.35rem 1.5rem;border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-card);max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}h1{margin:0 0 1rem;font-size:1.35rem;font-weight:600;letter-spacing:-.025em;color:var(--color-text)}label{display:block;font-size:.8125rem;font-weight:600;margin-bottom:.4rem;color:var(--color-text-secondary)}input{width:100%;padding:.6rem .75rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;margin-bottom:1rem;background:var(--color-surface);color:var(--color-text);transition:border-color .15s ease,box-shadow .15s ease}input:hover{border-color:var(--color-text-muted)}input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-muted)}button{width:100%;padding:.65rem 1rem;border:none;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;font-family:inherit;cursor:pointer;background:var(--color-primary);color:#fff;transition:background .15s ease,transform .05s ease}button:hover:not(:disabled){background:var(--color-primary-hover)}button:active:not(:disabled){transform:translateY(1px)}button:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-primary-muted)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:var(--color-secondary)}button.secondary:hover:not(:disabled){background:var(--color-secondary-hover)}button.small{width:auto;padding:.45rem .85rem;font-size:.8125rem}.err{color:var(--color-danger);font-size:.9rem;margin:-.5rem 0 1rem}.ok{color:var(--color-success);font-size:.9rem;margin-bottom:1rem}.warn{color:var(--color-warning);font-size:.88rem}.layout{width:100%;max-width:min(1280px,100%);margin:0 auto;padding:1.75rem 1.5rem 2.5rem}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-bottom:1.15rem;margin-bottom:1.75rem;border-bottom:1px solid var(--color-border)}.topbar h1{margin:0;font-size:1.2rem;font-weight:600;letter-spacing:-.02em;color:var(--color-text)}.topbar nav{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem 1rem}.topbar nav a{font-size:.9rem;font-weight:500;color:var(--color-text-secondary);text-decoration:none}.topbar nav a:hover{color:var(--color-primary);text-decoration:none}.topbar nav a.router-link-active{color:var(--color-primary)}table{width:100%;border-collapse:collapse;background:var(--color-surface);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.panel table{min-width:max-content}th,td{padding:.7rem .9rem;text-align:left;border-bottom:1px solid var(--color-border)}tr:last-child td{border-bottom:none}th{background:var(--color-bg-elevated);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}tbody tr:hover td{background:#15408208}.text-muted{color:var(--color-text-muted)}
