:root{--navy: #1A2B49;--navy-muted: #2c4266;--navy-deep: #152238;--blue: #007aff;--green: #008000;--green-dark: #006b00;--red: #dd2c00;--red-dark: #b62400;--black: #121212;--text-muted: #5f6b7a;--surface: #ffffff;--surface-muted: #f5f7f9;--border: #e4e7ec;--border-strong: #cfd6df;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.5;color:var(--black);background:var(--surface-muted);-webkit-font-smoothing:antialiased}h1{margin:0 0 4px;font-size:26px;line-height:1.2;font-weight:650;letter-spacing:-.01em}h2{margin:0 0 8px;font-size:16px;line-height:1.3;font-weight:600}p{margin:0 0 8px}a{color:var(--blue)}ul{margin:0;padding-left:20px}button{font:inherit;padding:8px 16px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--black);cursor:pointer}button:not(.primary):not(.danger):not(.ghost):hover:not(:disabled){background:var(--surface-muted)}button.primary{background:var(--green);border-color:var(--green);color:#fff}button.primary:hover:not(:disabled),button.primary:active:not(:disabled){background:var(--green-dark);border-color:var(--green-dark);color:#fff}button.danger{background:var(--red);border-color:var(--red);color:#fff}button.danger:hover:not(:disabled),button.danger:active:not(:disabled){background:var(--red-dark);border-color:var(--red-dark);color:#fff}button.ghost{background:transparent;border-color:transparent;color:var(--blue)}button.ghost:hover:not(:disabled){background:#007aff14;border-color:transparent}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.5;cursor:default}input,select,textarea{font:inherit;padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:inherit}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}input:focus-visible,select:focus-visible{outline-offset:0;border-color:var(--blue)}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}
