:root{--color-bg:#f8fafc;--color-surface:#fff;--color-surface-subtle:#f1f5f9;--color-surface-hover:#f8fafc;--color-border:#e2e8f0;--color-border-strong:#cbd5e1;--color-text-main:#0f172a;--color-text-muted:#475569;--color-text-subtle:#64748b;--color-text-inverse:#fff;--color-brand:#0f172a;--color-brand-accent:#2563eb;--color-brand-accent-hover:#1d4ed8;--color-opt-a-bg:#eff6ff;--color-opt-a-border:#bfdbfe;--color-opt-a-text:#1d4ed8;--color-opt-a-pill:#dbeafe;--color-opt-b-bg:#f0fdf4;--color-opt-b-border:#bbf7d0;--color-opt-b-text:#15803d;--color-opt-b-pill:#dcfce7;--color-callout-bg:#f8fafc;--color-callout-border:#cbd5e1;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--font-serif:Georgia, Cambria, "Times New Roman", Times, serif;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-14:3.5rem;--space-16:4rem;--space-20:5rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0f172a0d;--shadow-md:0 4px 6px -1px #0f172a0d, 0 2px 4px -2px #0f172a0d;--max-width:1160px;--max-width-narrow:840px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);color:var(--color-text-main);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6}body{flex-direction:column;min-height:100vh;display:flex}:focus-visible{outline:2px solid var(--color-brand-accent);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-to-content{top:var(--space-3);left:var(--space-3);z-index:1000;padding:var(--space-3) var(--space-5);background:var(--color-brand);color:var(--color-text-inverse);border-radius:var(--radius-md);font-weight:600;transition:transform .15s ease-in-out;position:absolute;transform:translateY(-200%)}.skip-to-content:focus{transform:translateY(0)}h1,h2,h3,h4{color:var(--color-text-main);letter-spacing:-.02em;font-weight:700;line-height:1.25}h1{margin-bottom:var(--space-4);font-size:clamp(2rem,3.5vw,2.75rem)}h2{margin-top:var(--space-8);margin-bottom:var(--space-4);font-size:clamp(1.4rem,2.5vw,1.85rem)}h3{margin-top:var(--space-6);margin-bottom:var(--space-3);font-size:1.25rem}p{margin-bottom:var(--space-4);color:var(--color-text-muted)}p.lead{color:var(--color-text-muted);max-width:72ch;font-size:1.125rem;line-height:1.65}a{color:var(--color-brand-accent);text-decoration:none;transition:color .15s}a:hover{color:var(--color-brand-accent-hover);text-decoration:underline}strong{color:var(--color-text-main);font-weight:600}.container{width:100%;max-width:var(--max-width);padding-left:var(--space-5);padding-right:var(--space-5);margin-left:auto;margin-right:auto}.container-narrow{width:100%;max-width:var(--max-width-narrow);padding-left:var(--space-5);padding-right:var(--space-5);margin-left:auto;margin-right:auto}.site-header{background-color:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:100;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;height:4rem;display:flex}.brand-link{align-items:center;gap:var(--space-3);color:var(--color-text-main);letter-spacing:-.01em;font-size:1.15rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-badge{background-color:var(--color-brand);width:2rem;height:2rem;color:var(--color-text-inverse);border-radius:var(--radius-sm);font-family:var(--font-mono);justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:inline-flex}.nav-menu{align-items:center;gap:var(--space-6);list-style:none;display:flex}@media (width<=480px){.header-inner{height:3.5rem}.brand-link{gap:var(--space-2);font-size:1rem}.brand-badge{width:1.75rem;height:1.75rem;font-size:.75rem}.nav-menu{gap:var(--space-4)}.nav-link{font-size:.875rem}}.nav-link{color:var(--color-text-muted);font-size:.95rem;font-weight:500;text-decoration:none}.nav-link:hover,.nav-link.active{color:var(--color-text-main);text-decoration:none}.site-footer{background-color:var(--color-surface);border-top:1px solid var(--color-border);padding-top:var(--space-12);padding-bottom:var(--space-8);margin-top:auto;font-size:.925rem}.footer-principles{background-color:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-6);margin-bottom:var(--space-10)}.footer-principles h4{margin-bottom:var(--space-2);font-size:1.05rem}.footer-principles p{color:var(--color-text-muted);margin-bottom:0}.footer-grid{gap:var(--space-8);margin-bottom:var(--space-10);grid-template-columns:2fr 1fr 1fr 1fr;display:grid}@media (width<=768px){.footer-grid{gap:var(--space-6);grid-template-columns:1fr}}.footer-col h5{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-subtle);margin-bottom:var(--space-3);font-size:.85rem}.footer-col ul{list-style:none}.footer-col li{margin-bottom:var(--space-2)}.footer-col a{color:var(--color-text-muted)}.footer-col a:hover{color:var(--color-text-main)}.footer-bottom{padding-top:var(--space-6);border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:var(--space-4);color:var(--color-text-subtle);flex-wrap:wrap;font-size:.85rem;display:flex}.btn{justify-content:center;align-items:center;gap:var(--space-2);white-space:nowrap;border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;padding:.65rem 1.3rem;font-size:.95rem;font-weight:600;line-height:1;text-decoration:none;transition:all .15s ease-in-out;display:inline-flex}.btn:hover{text-decoration:none}.btn-primary{background-color:var(--color-brand);color:var(--color-text-inverse);border-color:var(--color-brand)}.btn-primary:hover{color:var(--color-text-inverse);background-color:#1e293b}.btn-secondary{background-color:var(--color-surface);color:var(--color-text-main);border-color:var(--color-border-strong)}.btn-secondary:hover{background-color:var(--color-surface-subtle)}.btn-accent{background-color:var(--color-brand-accent);color:var(--color-text-inverse);border-color:var(--color-brand-accent)}.btn-accent:hover{background-color:var(--color-brand-accent-hover);color:var(--color-text-inverse)}.btn-sm{padding:.45rem .9rem;font-size:.85rem}.btn-block{width:100%}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-6);box-shadow:var(--shadow-sm)}.card-interactive{transition:border-color .15s,box-shadow .15s}.card-interactive:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md)}.badge{align-items:center;gap:var(--space-1);text-transform:uppercase;letter-spacing:.03em;border-radius:var(--radius-sm);white-space:nowrap;padding:.2rem .55rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-neutral{background-color:var(--color-surface-subtle);color:var(--color-text-muted);border:1px solid var(--color-border)}.badge-opt-a{background-color:var(--color-opt-a-pill);color:var(--color-opt-a-text);border:1px solid var(--color-opt-a-border)}.badge-opt-b{background-color:var(--color-opt-b-pill);color:var(--color-opt-b-text);border:1px solid var(--color-opt-b-border)}.form-group{margin-bottom:var(--space-4)}.form-label{color:var(--color-text-main);margin-bottom:var(--space-2);justify-content:space-between;align-items:baseline;font-size:.875rem;font-weight:600;display:flex}.form-hint{color:var(--color-text-subtle);font-size:.75rem;font-weight:400}.input-with-affix{background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);align-items:stretch;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.input-with-affix:focus-within{border-color:var(--color-brand-accent);box-shadow:0 0 0 1px var(--color-brand-accent)}.input-prefix,.input-suffix{padding:0 var(--space-3);background-color:var(--color-surface-subtle);color:var(--color-text-muted);user-select:none;align-items:center;font-size:.875rem;font-weight:500;display:flex}.input-prefix{border-right:1px solid var(--color-border)}.input-suffix{border-left:1px solid var(--color-border)}.form-input{width:100%;padding:.55rem var(--space-3);font-family:var(--font-sans);color:var(--color-text-main);background:0 0;border:none;outline:none;font-size:.95rem}.form-input[type=number]{font-variant-numeric:tabular-nums}.input-with-prefix,.input-with-unit{align-items:center;width:100%;display:flex;position:relative}.currency-prefix{left:var(--space-3);color:var(--color-text-muted);pointer-events:none;z-index:1;font-weight:500;line-height:1;position:absolute}.unit-label{right:var(--space-3);color:var(--color-text-muted);pointer-events:none;z-index:1;font-size:.85rem;line-height:1;position:absolute}.input-with-prefix input{width:100%;height:44px;min-height:44px;padding:0 var(--space-3) 0 var(--space-7);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface);font-size:.95rem;font-family:var(--font-sans);font-variant-numeric:tabular-nums;color:var(--color-text-main);caret-color:var(--color-brand-accent);transition:border-color .15s,box-shadow .15s}.input-with-unit input{width:100%;height:44px;min-height:44px;padding:0 var(--space-14) 0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface);font-size:.95rem;font-family:var(--font-sans);font-variant-numeric:tabular-nums;color:var(--color-text-main);caret-color:var(--color-brand-accent);transition:border-color .15s,box-shadow .15s}.input-with-prefix input:focus,.input-with-unit input:focus{border-color:var(--color-brand-accent);outline:none;box-shadow:0 0 0 2px #2563eb33}.form-select{width:100%;padding:.55rem var(--space-3);font-family:var(--font-sans);color:var(--color-text-main);background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);outline:none;font-size:.95rem}.form-select:focus{border-color:var(--color-brand-accent);box-shadow:0 0 0 1px var(--color-brand-accent)}.callout-box{background-color:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-5);margin-top:var(--space-6);margin-bottom:var(--space-6)}.callout-box h4{margin-bottom:var(--space-2);font-size:.95rem;font-weight:700}.callout-box p:last-child{margin-bottom:0}.table-responsive{border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-surface);width:100%;margin-top:var(--space-4);margin-bottom:var(--space-6);overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:.9rem}.data-table th,.data-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.data-table th{background-color:var(--color-surface-subtle);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:600}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background-color:var(--color-surface-hover)}.data-table .num-col{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono);font-size:.85rem}.breadcrumbs{align-items:center;gap:var(--space-2);color:var(--color-text-subtle);margin-bottom:var(--space-6);flex-wrap:wrap;font-size:.85rem;display:flex}.breadcrumb-separator{color:var(--color-border-strong);user-select:none}.breadcrumbs a{color:var(--color-text-muted)}.breadcrumbs a:hover{color:var(--color-text-main)}.breadcrumb-current{color:var(--color-text-main);font-weight:500}.form-actions-bar{align-items:center;gap:var(--space-4);padding-top:var(--space-5);margin-top:var(--space-6);margin-bottom:var(--space-6);border-top:1px solid var(--color-border);flex-wrap:wrap;display:flex}.form-status-note{color:var(--color-text-subtle);font-size:.825rem}
