:root{--ink: #0f1d2e;--ink-2: #15263a;--steel: #2a3f54;--brass: #b0894f;--brass-dark: #9c7943;--teal: #2f6e68;--teal-light: #7fa8a3;--mist: #eef1f3;--cloud: #ffffff;--surface: #f7f9fa;--slate: #5a6b7b;--slate-2: #7e8b98;--line: #dce2e6;--line-2: #c4ced6;--danger: #b0524f;--brass-50: #f7f0e3;--brass-text: #7a5d31;--teal-50: #e6f0ee;--danger-50: #f8ecec;--danger-text: #8f3f3c;--slate-50: #e9edf1;--font-display: "Archivo", "Arial Black", Arial, sans-serif;--font-body: "IBM Plex Sans", Arial, sans-serif;--font-mono: "IBM Plex Mono", Consolas, ui-monospace, monospace;--radius-card: 8px;--radius-control: 6px;--radius-pill: 999px;--shadow: 0 1px 2px rgba(15, 29, 46, .06);--shadow-raised: 0 8px 24px rgba(15, 29, 46, .16);--ease: cubic-bezier(.22, .61, .36, 1);--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 20px;--s6: 24px;--s8: 32px;--s10: 40px;--s12: 48px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{min-width:360px;font-family:var(--font-body);font-size:.9375rem;line-height:1.6;color:var(--ink);background:var(--mist);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;line-height:1.15}p{margin:0}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}img,svg{display:block}:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.micro{font-family:var(--font-mono);font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;line-height:1.4}.micro-brass{color:var(--brass-dark)}.muted{color:var(--slate)}.page{display:flex;flex-direction:column;gap:var(--s6);animation:rise .32s var(--ease) both}.card{background:var(--cloud);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow);padding:22px}.card-title{font-family:var(--font-display);font-size:1.125rem;font-weight:600}.card-lead{margin-top:var(--s1);color:var(--slate);font-size:.875rem}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s4);flex-wrap:wrap;margin-bottom:var(--s5)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);min-height:40px;padding:0 var(--s4);border:1px solid transparent;border-radius:var(--radius-control);font-family:var(--font-body);font-size:.875rem;font-weight:600;line-height:1;white-space:nowrap;cursor:pointer;text-decoration:none;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.btn:hover{text-decoration:none}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--brass);color:var(--ink)}.btn-primary:hover:not(:disabled){background:var(--brass-dark)}.btn-secondary{background:var(--cloud);color:var(--ink);border-color:var(--line-2)}.btn-secondary:hover:not(:disabled){border-color:var(--ink)}.btn-danger{background:var(--danger);color:var(--cloud)}.btn-danger:hover:not(:disabled){background:var(--danger-text)}.btn-text{min-height:32px;padding:0 var(--s2);background:transparent;color:var(--ink);font-weight:500}.btn-text:hover:not(:disabled){color:var(--teal);background:var(--surface)}.btn-text-danger{color:var(--danger-text)}.btn-text-danger:hover:not(:disabled){color:var(--danger);background:var(--danger-50)}.btn-sm{min-height:32px;padding:0 var(--s3);font-size:.8125rem}.btn-block{width:100%}.form{display:flex;flex-direction:column;gap:var(--s4)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4)}.form-grid .full{grid-column:1 / -1}.form-section{display:flex;flex-direction:column;gap:var(--s4);padding-top:var(--s4);border-top:1px solid var(--line)}.form-actions{display:flex;gap:var(--s2);flex-wrap:wrap;align-items:center}.field{display:flex;flex-direction:column;gap:6px;min-width:0;margin:0;padding:0;border:0}.field-label{padding:0;font-size:.8125rem;font-weight:600;color:var(--ink)}.field-optional{font-weight:400;color:var(--slate)}.input{width:100%;min-height:40px;padding:var(--s2) var(--s3);background:var(--cloud);border:1px solid var(--line-2);border-radius:var(--radius-control);font-family:var(--font-body);font-size:.9375rem;color:var(--ink);transition:border-color .18s ease,box-shadow .18s ease}.input:hover:not(:disabled){border-color:var(--slate-2)}.input:focus,.input:focus-visible{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #2f6e682e}.input:disabled{background:var(--surface);color:var(--slate)}.input.mono{font-family:var(--font-mono)}.input.invalid{border-color:var(--danger)}select.input{appearance:none;padding-right:var(--s8);background-image:linear-gradient(45deg,transparent 50%,var(--slate) 50%),linear-gradient(135deg,var(--slate) 50%,transparent 50%);background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.field-help{font-size:.8125rem;color:var(--slate);line-height:1.45}.field-error{font-size:.8125rem;color:var(--danger-text);line-height:1.45}.input-group{position:relative;display:flex}.input-group .input{padding-right:48px}.input-addon{position:absolute;top:0;right:0;display:inline-flex;align-items:center;justify-content:center;width:44px;height:100%;border:0;background:transparent;color:var(--slate);border-radius:0 var(--radius-control) var(--radius-control) 0;cursor:pointer}.input-addon:hover{color:var(--ink)}.check{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s3);border:1px solid var(--line);border-radius:var(--radius-control);cursor:pointer}.check:hover{border-color:var(--line-2)}.check.disabled{cursor:default;background:var(--surface)}.check input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:var(--teal)}.check-text{display:flex;flex-direction:column;gap:2px}.check-title{font-size:.875rem;font-weight:600}.check-help{font-size:.8125rem;color:var(--slate);line-height:1.45}.check-list{display:flex;flex-direction:column;gap:var(--s2)}.badge{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:.6875rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;line-height:1.6;background:var(--slate-50);color:var(--steel)}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge-plain:before{display:none}.badge-ok{background:var(--teal-50);color:var(--teal)}.badge-pending{background:var(--brass-50);color:var(--brass-text)}.badge-error{background:var(--danger-50);color:var(--danger-text)}.badge-neutral{background:var(--slate-50);color:var(--steel)}.badge-review{background:var(--cloud);color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal-light)}.badge-review:before{background:var(--teal-light)}.badge-list{display:flex;flex-wrap:wrap;gap:var(--s1)}.alert{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s3) var(--s4);border:1px solid var(--line-2);border-left-width:4px;border-radius:var(--radius-control);background:var(--surface);font-size:.875rem;line-height:1.5}.alert svg{flex:none;margin-top:1px}.alert-error{border-color:var(--danger);background:var(--danger-50);color:var(--danger-text)}.alert-ok{border-color:var(--teal);background:var(--teal-50);color:var(--teal)}.alert-info{border-color:var(--brass);background:var(--brass-50);color:var(--brass-text)}.table-card{background:var(--cloud);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow);overflow:hidden}.table-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap;padding:var(--s4) var(--s5);border-bottom:1px solid var(--line)}.table-scroll{overflow:auto;max-height:calc(100vh - 220px);min-height:160px}.table{width:100%;border-collapse:collapse;font-size:.875rem}.table th{position:sticky;top:0;z-index:1;height:40px;padding:0 var(--s4);text-align:left;font-family:var(--font-mono);font-size:.6875rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);background:var(--surface);border-bottom:1px solid var(--line);white-space:nowrap}.table td{height:40px;padding:6px var(--s4);border-bottom:1px solid var(--line);vertical-align:middle}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:var(--surface)}.table .num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.table th.num{font-family:var(--font-mono)}.table .mono{font-size:.8125rem;white-space:nowrap}.table .actions{text-align:right;white-space:nowrap}.actions-cell{display:inline-flex;gap:var(--s1);justify-content:flex-end}.cell-main{display:block;font-weight:500}.cell-sub{display:block;font-size:.8125rem;color:var(--slate)}.empty{display:flex;flex-direction:column;align-items:center;gap:var(--s2);padding:var(--s12) var(--s6);text-align:center;color:var(--slate)}.empty-title{font-family:var(--font-display);font-size:1rem;font-weight:600;color:var(--ink)}.loading{padding:var(--s10) var(--s6);text-align:center;color:var(--slate);font-size:.875rem}.toolbar{display:flex;gap:var(--s3);flex-wrap:wrap;align-items:flex-end}.toolbar .field{flex:1 1 180px}.dl{display:grid;grid-template-columns:minmax(120px,max-content) minmax(0,1fr);gap:var(--s3) var(--s6);margin:0}.dl dt{font-family:var(--font-mono);font-size:.6875rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);padding-top:3px}.dl dd{margin:0;min-width:0;overflow-wrap:anywhere}.code-block{margin:0;padding:var(--s3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);font-family:var(--font-mono);font-size:.8125rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.auth-head{display:flex;flex-direction:column;gap:6px}.auth-title{font-size:1.625rem}.auth-lead{color:var(--slate);font-size:.9375rem}.panel-form{display:flex;flex-direction:column;gap:var(--s5)}.panel-actions{position:sticky;bottom:calc(var(--s6) * -1);display:flex;gap:var(--s2);flex-wrap:wrap;margin:var(--s2) calc(var(--s6) * -1) calc(var(--s6) * -1);padding:var(--s4) var(--s6);background:var(--cloud);border-top:1px solid var(--line)}.progress{position:relative;height:4px;border-radius:2px;background:var(--line);overflow:hidden}.progress-fill{position:absolute;inset:0 auto 0 0;background:var(--brass);border-radius:2px;transition:width .4s var(--ease)}.progress-fill.indeterminate{animation:sweep 1.4s ease-in-out infinite}html:has(dialog[open]){overflow:hidden}@keyframes sweep{0%{transform:translate(-100%)}to{transform:translate(340%)}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media(max-width:640px){.form-grid{grid-template-columns:1fr}.card{padding:var(--s4)}.dl{grid-template-columns:1fr;gap:var(--s1)}.dl dd{margin-bottom:var(--s2)}.table-scroll{max-height:none}.panel-actions{bottom:calc(var(--s4) * -1);margin:var(--s2) calc(var(--s4) * -1) calc(var(--s4) * -1);padding:var(--s3) var(--s4)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
