:root{--canvas:#f8fafc;--surface:#fff;--ink:#0f1720;--muted:#52606b;--line:#d5e2ea;--focus:#9a6700;--warning:#fff7e0;--error:#a32e20;--success:#176342;--accent:#1d5963;--accent-soft:#edf5f5;--notice:#7b591f;color-scheme:light;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{color:var(--ink);background:var(--canvas);overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.6}a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}main a:not(.button){align-items:center;min-height:44px;display:inline-flex}button,input{font:inherit;color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.wrap{max-width:760px;margin:auto;padding-inline:40px}.reading{max-width:680px}.calculator-page{max-width:680px;margin-inline:auto}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}header{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;grid-template-areas:"brand nav language";justify-content:space-between;align-items:center;gap:16px;padding-block:24px;display:grid}.brand{letter-spacing:-.03em;grid-area:brand;align-items:center;min-height:48px;font-weight:750;text-decoration:none;display:inline-flex}.nav{grid-area:nav;justify-content:flex-end;align-items:center;gap:24px;display:flex}.nav a{align-items:center;min-height:48px;font-size:14px;display:inline-flex}.language{grid-area:language;align-items:center;min-height:48px;font-size:14px;font-weight:650;display:inline-flex}.skip{background:var(--surface);z-index:2;padding:12px;position:absolute;top:-100px;left:16px}.skip:focus{top:8px}main{padding-block:48px 64px}h1,h2,h3{letter-spacing:-.035em;line-height:1.2}h1{max-width:750px;margin:0 0 16px;font-size:clamp(30px,4vw,48px)}h2{margin:0 0 16px;font-size:24px}h3{font-size:18px}.lede{color:var(--muted);max-width:600px;margin:0 0 24px;font-size:18px}.legal{color:var(--muted);max-width:640px;font-size:14px;line-height:1.5}.button{border:1px solid var(--accent);background:var(--accent);min-height:48px;color:var(--surface);border-radius:6px;justify-content:center;align-items:center;padding:12px 20px;font-weight:650;text-decoration:none;display:inline-flex}.button.secondary{border-color:var(--line);background:var(--surface);color:var(--ink)}section+section{border-top:1px solid var(--line);margin-top:48px;padding-top:32px}footer{border-top:1px solid var(--line);color:var(--muted);padding-block:32px;font-size:14px}footer p{max-width:660px}footer a{align-items:center;min-height:44px;display:inline-flex}.source-note{color:var(--muted);font-size:14px}.source-note a{align-items:center;min-height:44px;display:inline-flex}.sources{border-top:0;margin-top:32px;padding-top:0}.sources h2{letter-spacing:-.02em;font-size:18px}.sources>p{margin-block:0 12px}.source-list{margin:0;padding-left:20px}.source-list li{margin-block:8px}.source-list p{margin:0 0 12px}.tool{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:32px}.tool label{margin-bottom:8px;font-weight:650;display:block}.tool form>.hint{max-width:560px;margin:0 0 16px}.form-row{align-items:start;gap:12px;display:flex}.form-row input{background:var(--surface);border:1px solid var(--ink);border-radius:6px;width:100%;min-width:0;min-height:50px;padding:12px}.field{flex:1}.hint,.error{margin:8px 0;font-size:14px}.hint{color:var(--muted)}.error{color:var(--error)}.result{border-top:1px solid var(--line);margin-top:24px;padding-top:24px;scroll-margin-top:24px}.result h2{scroll-margin-top:24px;font-size:clamp(22px,3vw,28px);line-height:1.3}.result-label{color:var(--muted);margin:0 0 8px;font-size:14px}.dates{grid-template-columns:1fr 1fr;gap:24px;margin-block:16px;display:grid}.dates dt{color:var(--muted);font-size:14px}.dates dd{letter-spacing:-.03em;margin:8px 0 0;font-size:23px;font-weight:650;line-height:1.2}.dates time{white-space:nowrap}.expiration-date{grid-column:1/-1}.expiration-date dd{font-size:18px}.status{color:var(--accent);font-weight:650}.status[data-state=inside]{color:var(--success)}.status[data-state=before],.status[data-state=after]{color:var(--notice)}.expired-hint{margin-block:16px;font-size:14px}.expired-links{display:grid}.expired-links a{width:fit-content}.status[data-state=expired],.status[data-state=expires-today]{color:var(--error)}.countdown{color:var(--muted);font-size:14px}.intro-tool{display:block}.intro-tool .tool{margin-top:24px}.timeline{--window-end:27.2%;height:100px;color:var(--accent);margin-block:20px 8px;position:relative}.timeline-rail,.timeline-window{border-radius:3px;height:6px;position:absolute;top:56px}.timeline-rail{background:var(--line);left:4%;right:4%}.timeline-window{width:calc(var(--window-end) - 12%);background:var(--accent);left:12%}.milestone{border:2px solid var(--accent);background:var(--surface);border-radius:50%;width:12px;height:12px;position:absolute;top:53px;transform:translate(-50%)}[data-timeline-start]{left:12%}[data-timeline-end]{left:var(--window-end)}[data-timeline-expiration]{left:88%}.today-marker{top:26px;left:var(--today-position);width:20px;height:20px;box-shadow:0 0 0 3px var(--surface);background:currentColor;position:absolute;transform:translate(-50%)}.today-stem{height:13px;top:46px;left:var(--today-position);background:currentColor;width:2px;position:absolute;transform:translate(-50%)}.timeline[data-state=before] .today-marker{clip-path:polygon(0 0,100% 50%,0 100%)}.timeline[data-state=inside] .today-marker{clip-path:circle(50%)}.timeline[data-state=after] .today-marker{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.timeline[data-state=expires-today] .today-marker{clip-path:inset(0)}.timeline[data-state=expired] .today-marker{clip-path:polygon(20% 0,50% 30%,80% 0,100% 20%,70% 50%,100% 80%,80% 100%,50% 70%,20% 100%,0 80%,30% 50%,0 20%)}.timeline[data-state=inside]{color:var(--success)}.timeline[data-state=before],.timeline[data-state=after]{color:var(--notice)}.timeline[data-state=expires-today],.timeline[data-state=expired]{color:var(--error)}.today-label{white-space:nowrap;top:0;left:clamp(24px, var(--today-position), calc(100% - 24px));font-size:14px;font-weight:650;position:absolute;transform:translate(-50%)}.window-label,.expiration-label{color:var(--muted);font-size:13px;position:absolute;top:77px}.window-label{left:0}.expiration-label{right:0}.intro-tool h1{font-size:clamp(30px,3.4vw,44px)}.steps{padding-left:24px}.steps li{margin-block:16px;padding-left:8px}.example{border-left:3px solid var(--accent);background:var(--accent-soft);margin-block:24px;padding:20px}.example h3{margin:0 0 8px}.example p{margin:0}.actions{grid-template-columns:1fr 1fr;gap:12px;margin:24px 0;padding:0;list-style:none;display:grid}.actions li{min-width:0}.actions .action-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:1fr 20px;grid-template-areas:"title arrow""body body";align-items:start;gap:6px 12px;height:100%;min-height:48px;padding:20px;text-decoration:none;display:grid}.action-card:hover{border-color:var(--accent);background:var(--accent-soft)}.action-title{grid-area:title;font-weight:650;line-height:1.35}.action-body{color:var(--muted);grid-area:body;font-size:14px;line-height:1.5}.action-arrow{color:var(--accent);grid-area:arrow}.guide-page>.lede{margin-bottom:16px}.guide-page>.legal{margin-block:0 16px}.back-link{color:var(--accent);font-size:14px;font-weight:650}.guide-context{border-top:1px solid var(--line);margin-top:40px;padding-top:24px}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:16px 8px;font-weight:650;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary:hover{background:var(--accent-soft)}summary svg{color:var(--accent);flex-shrink:0}details[open] summary svg{transform:rotate(180deg)}details p{margin:0 8px 20px}noscript{background:var(--warning);padding:12px;display:block}@media (width<=760px){.actions{grid-template-columns:1fr;gap:8px;margin-block:16px 12px}.actions .action-card{padding:12px}.wrap{padding-inline:20px}header{grid-template-columns:1fr auto;grid-template-areas:"brand language""nav nav";gap:0 16px;padding-block:12px}.nav{justify-content:flex-start}main{padding-top:32px}.intro-tool{display:block}.tool{margin-top:24px;padding:20px}.form-row{flex-direction:column}.field,.form-row .button{width:100%}.legal{margin-bottom:24px}}@media (width<=440px){.dates{grid-template-columns:1fr;gap:20px}.dates dd{font-size:21px}.expiration-date dd{font-size:18px}.brand{font-size:14px}.nav{gap:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
