:root{--brand-navy: #0b2a4a;--accent-teal: #0e7c7b;--link: #0b5f5e;--link-hover: #063f3e;--ink: #0f2438;--ink-2: #33475e;--muted: #52637a;--surface: #ffffff;--canvas: #f3f5f8;--surface-hover: #f7f9fb;--surface-new: #fff8f6;--line: #dde3ea;--line-soft: #edf0f4;--line-strong: #c5cfdb;--line-input: #b9c4d1;--side-text: #c9d6e4;--side-text-soft: #9fb3c8;--side-label: #8fa5bc;--side-active-bg: rgba(255, 255, 255, .1);--side-line: rgba(255, 255, 255, .14);--badge-patent-bg: #e3f1ec;--badge-patent-fg: #14593a;--badge-app-bg: #e4edf8;--badge-app-fg: #1b4f8c;--badge-unpub-bg: #fff1d6;--badge-unpub-fg: #7a4a00;--badge-change-bg: #fde8e4;--badge-change-fg: #8e2a1c;--badge-neutral-bg: #eceff3;--badge-neutral-fg: #52637a;--accept: #14593a;--flag: #8e2a1c;--radius: 6px;--radius-card: 8px;--radius-badge: 4px;--font-ui: "IBM Plex Sans", "Segoe UI", Helvetica, sans-serif;--font-mono: "IBM Plex Mono", Consolas, monospace;--font-serif: "Source Serif 4", Georgia, serif;--control-h: 44px;--pill-h: 40px;--sidebar-w: 232px;--topbar-h: 64px}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--control-h);padding:0 18px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-weight:500;text-decoration:none;white-space:nowrap}.ui-button:hover:not(:disabled){background:var(--surface-hover);color:var(--ink)}.ui-button:disabled{opacity:.55}.ui-button--primary{border-color:var(--accent-teal);background:var(--accent-teal);color:#fff;font-weight:600}.ui-button--primary:hover:not(:disabled){background:var(--link);border-color:var(--link);color:#fff}.ui-pill{height:var(--pill-h);padding:0 14px;border-radius:20px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font-size:13px;font-weight:500;white-space:nowrap}.ui-pill:hover{background:var(--surface-hover)}.ui-pill--on,.ui-pill--on:hover{border-color:var(--ink);background:var(--ink);color:#fff}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font-ui);font-size:14px;line-height:1.45;color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased}a{color:var(--link)}a:hover{color:var(--link-hover)}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}input:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent-teal);outline-offset:2px}h1,h2,p{margin:0}.mono{font-family:var(--font-mono)}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page{display:flex;flex-direction:column;gap:20px;padding:28px 32px 32px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}.page-title{font-family:var(--font-serif);font-weight:600;font-size:30px;letter-spacing:-.3px;line-height:1.2}.page-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.notice{padding:12px 16px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);color:var(--ink-2)}.notice--error{border-color:var(--badge-change-fg);background:var(--badge-change-bg);color:var(--badge-change-fg)}
