:root{--ink:#14181f;--ink-soft:#4a5464;--ink-faint:#6b7688;--line:#dfe3ea;--line-soft:#eef1f5;--paper:#ffffff;--paper-soft:#f7f9fb;--accent:#1b4d8f;--accent-soft:#eaf1fa;--warn:#8a4b09;--warn-soft:#fdf3e4;--good:#1d6b45;--radius:10px;--measure:68ch}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.55;color:var(--ink);background:var(--paper)}a{color:var(--accent)}h1,h2,h3{line-height:1.2;letter-spacing:-.015em;margin:0 0 .5rem}h1{font-size:2.25rem}h2{font-size:1.4rem}p{margin:0 0 1rem;max-width:var(--measure)}.wrap{max-width:940px;margin:0 auto;padding:0 1.25rem}.masthead{border-bottom:1px solid var(--line);background:var(--paper)}.masthead .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem;padding-bottom:1rem}.brand{font-weight:650;color:var(--ink);text-decoration:none;font-size:1.05rem}.brand span{display:block;font-size:.75rem;font-weight:400;color:var(--ink-faint);letter-spacing:.02em}.nav{display:flex;gap:1.25rem;font-size:.92rem}main{padding:2.5rem 0 4rem}.sitefoot{border-top:1px solid var(--line);background:var(--paper-soft);padding:1.75rem 0 3rem;font-size:.95rem;color:var(--ink-soft)}.sitefoot strong{color:var(--ink)}.lede{font-size:1.15rem;color:var(--ink-soft)}.section{margin:3rem 0 0}.card{border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;background:var(--paper)}.card+.card{margin-top:.75rem}.callout{border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:var(--radius);padding:1rem 1.15rem;margin:0 0 1.25rem}.callout.warn{border-left-color:var(--warn);background:var(--warn-soft)}.callout p:last-child{margin-bottom:0}.muted{color:var(--ink-faint);font-size:.9rem}label{display:block;font-weight:600;font-size:.92rem;margin-bottom:.35rem}input[type=email],input[type=search],input[type=text],select,textarea{width:100%;padding:.6rem .7rem;font:inherit;color:inherit;border:1px solid var(--line);border-radius:8px;background:var(--paper)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.field{margin-bottom:1rem;max-width:34rem}.row{display:flex;gap:.6rem;align-items:flex-end;flex-wrap:wrap}.button,button{display:inline-block;font:inherit;font-weight:600;padding:.6rem 1.1rem;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;text-decoration:none}.button.secondary,button.secondary{background:var(--paper);color:var(--accent)}.button.quiet,button.quiet{background:var(--paper);color:var(--ink-soft);border-color:var(--line);font-weight:500}.deadline{border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.15rem;margin-bottom:.6rem;display:grid;grid-template-columns:8.5rem 1fr;gap:.25rem 1.25rem}@media (max-width:640px){.deadline{grid-template-columns:1fr}}.deadline .when{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:650}.deadline .when small{display:block;font-weight:400;color:var(--ink-faint)}.deadline h3{font-size:1.02rem;margin-bottom:.25rem}.deadline p{margin:0 0 .4rem;color:var(--ink-soft);font-size:.95rem}.tags{display:flex;flex-wrap:wrap;gap:.4rem;font-size:.82rem}.tag{border:1px solid var(--line);border-radius:999px;padding:.1rem .6rem;color:var(--ink-soft);background:var(--paper-soft)}.tag.fee{border-color:#cfe0d8;background:#f0f7f3;color:var(--good)}.tag.penalty{border-color:#f0dcbe;background:var(--warn-soft);color:var(--warn)}table{border-collapse:collapse;width:100%;font-size:.95rem}td,th{text-align:left;padding:.55rem .7rem;border-bottom:1px solid var(--line-soft);vertical-align:top}th{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);border-bottom-color:var(--line)}td.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.pricegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem}.pricehead{font-size:2rem;font-weight:680;letter-spacing:-.02em}.pricehead small{font-size:.95rem;font-weight:400;color:var(--ink-faint)}ul.plain{padding-left:1.1rem;margin:.5rem 0 0;color:var(--ink-soft);font-size:.95rem}ul.plain li{margin-bottom:.3rem}.adminbar{align-items:center;justify-content:space-between;gap:1rem;padding:.6rem .9rem;margin-bottom:1.75rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-soft);font-size:.92rem}.adminbar,.adminbar .links{display:flex;flex-wrap:wrap}.adminbar .links{gap:1.1rem}.adminbar .who{display:flex;align-items:center;gap:.6rem;color:var(--ink-faint)}.adminbar .who button{padding:.25rem .6rem;font-size:.85rem}.role{border-radius:999px;padding:.1rem .6rem;font-size:.78rem;font-weight:600;letter-spacing:.02em;border:1px solid var(--line);background:var(--paper);color:var(--ink-soft)}.role.operator{border-color:#cfe0d8;background:#f0f7f3;color:var(--good)}.mono,code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.88em}.feedurl{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.feedurl input{flex:1 1 24rem;background:var(--paper-soft)}.empty{color:var(--ink-faint);padding:1.5rem 0}.mt-xs{margin-top:.4rem}.mt-sm{margin-top:.5rem}.mt-md{margin-top:.75rem}.hero-deadline{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius);padding:1.35rem 1.5rem;margin:1.5rem 0}.hero-deadline .eyebrow{font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 .35rem}.hero-deadline h2{margin:0 0 .35rem}.hero-deadline .hero-when{font-size:1.15rem;margin:0 0 .75rem}.mt-lg{margin-top:1rem}.mt-xl{margin-top:1.25rem}.mt-xxl{margin-top:1.5rem}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:.5rem}.gap-xs{gap:.4rem}.breakall{word-break:break-all}.bigger{font-size:1.05rem}.field.grow{flex:1 1 22rem;margin-bottom:0}.inline-check{width:auto;margin-right:.5rem}fieldset.plain{border:0;padding:0;margin:0 0 1.25rem}.as-heading{font-weight:600;font-size:.92rem;padding:0}.as-heading+*{margin-top:.4rem}.weight-normal{font-weight:400}