:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#0f172a;background:#f1f5f9;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{margin:0}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.75rem;z-index:9}header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem clamp(1rem,5vw,5rem);background:#071427;color:#fff;border-bottom:1px solid #243047;flex-wrap:wrap}header nav{display:flex;gap:.25rem;flex-wrap:wrap}h1{font-size:1.25rem;margin:0;letter-spacing:.04em}h2{font-size:clamp(2rem,5vw,4.5rem);line-height:1.02;max-width:900px;margin:.4rem 0 1rem;letter-spacing:-.045em;text-wrap:balance}h3{font-size:1.35rem;margin:.5rem 0 1rem}.eyebrow,.kicker,.step{color:#60a5fa;text-transform:uppercase;letter-spacing:.14em;font-weight:800;font-size:.7rem}.badge{border:1px solid #3b82f6;border-radius:999px;padding:.35rem .7rem;font-size:.8rem;white-space:nowrap}.warning{border-color:#f59e0b;color:#fbb24}main{max-width:1440px;margin:auto;padding:clamp(1rem,4vw,4rem);min-height:70dvh}main:focus{outline:none}.hero{padding:clamp(2rem,5vw,5rem) 0}.hero>p:last-child{max-width:680px;color:#475569;font-size:1.15rem}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.card{background:#fff;padding:clamp(1.25rem,3vw,2.25rem);border:1px solid #dbe2ea;border-radius:1rem;box-shadow:0 12px 32px #0f172a0d;min-height:330px;overflow-wrap:anywhere}.dark{background:#071427;color:#fff}.muted{color:#cbd5e1}.helper{color:#475569;font-size:.9rem;max-width:68ch}.result{margin-top:1.25rem;padding-top:1rem;border-top:1px solid #cbd5e1}label{display:block;font-weight:700;margin-bottom:.25rem}textarea{width:100%;min-height:96px;padding:.8rem;border:1px solid #64748b;border-radius:.5rem;font:inherit;resize:vertical}button,.button{display:inline-block;margin-top:.75rem;min-height:44px;border:0;border-radius:.5rem;padding:.7rem 1rem;background:#1d4ed8;color:#fff;font-weight:750;text-decoration:none;cursor:pointer;touch-action:manipulation;transition:background-color .15s ease,opacity .15s ease}button:hover,.button:hover{background:#1e40af}button:active,.button:active{opacity:.82}button:disabled{opacity:.45;cursor:not-allowed}.nav{margin:0;background:transparent;color:#cbd5e1;border:1px solid transparent}.nav:hover,.nav.active{background:#172554;color:#fff}.nav.active{border-color:#3b82f6}.secondary{background:#e2e8f0;color:#0f172a}.danger{background:#b91c1c}.danger:hover{background:#991b1b}.citation{display:block;background:#eff6ff;color:#1e3a8a;border:1px solid #bfdbfe;text-align:left;margin:.5rem 0}.citation:hover{background:#dbeafe}button:focus-visible,.button:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #f59e0b;outline-offset:2px}pre{white-space:pre-wrap;overflow:auto;font-size:.82rem;background:#020617;color:#dbeafe;padding:1rem;border-radius:.5rem;max-height:420px}details{margin:.55rem 0}summary{cursor:pointer;font-weight:700}.alert,.status,.notice{padding:1rem;margin-bottom:1rem;border-radius:.6rem}.alert{background:#fee2e2;color:#991b1b}.status{background:#dbeafe;color:#1e3a8a}.notice{background:#dcfce7;color:#166534}.spinner{display:inline-block;width:.75rem;height:.75rem;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.source{margin-top:1rem;min-height:0}.source-head,.action-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.page{max-width:900px;margin:2rem auto}.page.narrow{max-width:680px}.history-group{margin-top:2rem}.history-list{list-style:none;padding:0}.history-list li{display:grid;grid-template-columns:7rem 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid #cbd5e1}.empty{padding:1rem;background:#fff;border:1px dashed #64748b;border-radius:.5rem;color:#475569}footer{padding:2rem;text-align:center;color:#475569}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){header{align-items:flex-start;flex-direction:column}.grid{grid-template-columns:1fr}h2{font-size:2.4rem}.history-list li{grid-template-columns:1fr}.action-row{flex-direction:column;align-items:stretch}.action-row button{width:100%}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
