@import url('/static/fonts/fonts.css');

:root {
  --red:#A70014; --red-deep:#7E000F; --rose:#F7E6E8;
  --ink:#1B2130; --slate:#5A6373; --line:#DEE1E6;
  --paper:#F6F7F9; --card:#FFFFFF; --field:#F6F7F9;
  --display:"Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif;
  --body:"IBM Plex Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  color-scheme:light;
}
@media(prefers-color-scheme:dark) {
  :root {
    --red:#E0394B; --red-deep:#FF6070; --rose:#3A1A1F;
    --ink:#EDEFF3; --slate:#A3ABB8; --line:#2E3442;
    --paper:#141821; --card:#1C212C; --field:#141821;
    color-scheme:dark;
  }
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.7 var(--body);-webkit-font-smoothing:antialiased}
a{color:var(--red);text-underline-offset:3px}
:focus-visible{outline:3px solid var(--red);outline-offset:3px;border-radius:4px}
.skip-link{position:absolute;top:-100px;left:24px;background:var(--card);padding:10px 16px;z-index:10}
.skip-link:focus{top:12px}
header{max-width:960px;margin:auto;padding:24px 24px 8px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{font:800 1.7rem/1 var(--display);color:var(--red);text-decoration:none;letter-spacing:-.04em}
nav{display:flex;gap:24px;align-items:center}
nav a{color:var(--ink);text-decoration:none;font-size:.95rem;font-weight:500}
nav a:hover{color:var(--red)}
nav .navcta{border:1.5px solid var(--ink);padding:8px 16px;border-radius:999px}
main{max-width:880px;margin:48px auto 64px;padding:0 24px}
h1{font:800 clamp(2.4rem,6vw,3.4rem)/1.05 var(--display);letter-spacing:-.035em;margin:12px 0 20px;overflow-wrap:break-word}
h2{font:700 clamp(1.45rem,3.2vw,1.8rem)/1.15 var(--display);letter-spacing:-.02em;margin:0 0 16px}
p{margin:0 0 16px}
.hero{max-width:720px;padding:12px 0 16px}
.hero h1{max-width:17ch}
.hero p,.intro{font-size:1.15rem;color:var(--slate);max-width:48ch;margin-bottom:24px}
.eyebrow{display:inline-block;font:600 .76rem/1.4 var(--body);letter-spacing:.13em;color:var(--red);margin-bottom:8px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 28px;margin:24px 0}
.grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:20px;row-gap:0}
label{display:block;font-size:.88rem;font-weight:500;margin-bottom:20px}
input{display:block;width:100%;min-width:0;padding:12px 14px;margin-top:6px;border:1.5px solid var(--line);border-radius:10px;background:var(--field);font:400 1rem/1.5 var(--body);color:var(--ink)}
input::placeholder{color:var(--slate);opacity:1}
input:focus{outline:2px solid var(--red);outline-offset:2px;border-color:var(--red)}
input[readonly]{background:var(--paper);color:var(--slate);border-style:dashed}
.verified{border-top:1px solid var(--line);padding-top:24px;margin-top:20px}
button,.button{display:inline-block;background:var(--red);color:#fff;border:1.5px solid var(--red);border-radius:12px;padding:13px 20px;font:600 1rem/1.4 var(--body);cursor:pointer;text-decoration:none;text-align:center}
button:hover,.button:hover{background:var(--red-deep);border-color:var(--red-deep)}
.secondary{background:var(--field);color:var(--ink);border-color:var(--line)}
.secondary:hover{background:var(--rose);color:var(--red);border-color:var(--red)}
button:disabled{opacity:.45;cursor:wait}
.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:24px 0 0}
.muted{font-size:.88rem;color:var(--slate)}
.narrow{max-width:620px;margin:auto}
.break{overflow-wrap:anywhere}
code{display:inline;background:var(--rose);color:var(--red-deep);padding:3px 6px;border-radius:5px;font-size:.82rem;overflow-wrap:anywhere}
ol{padding-left:22px;margin:8px 0 16px}
li{padding-bottom:10px;padding-left:4px}
li::marker{color:var(--red);font-weight:600}
dt{font-size:.75rem;letter-spacing:.06em;color:var(--slate)}
dd{margin:3px 0 18px;overflow-wrap:anywhere}
dl{margin-bottom:0}
.connection{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding:16px 0}
.connection:last-child{border-bottom:0;padding-bottom:0}
.connection p{margin:4px 0 0}
footer{max-width:832px;margin:0 auto;border-top:1px solid var(--line);padding:28px 0 48px;color:var(--slate);font-size:.88rem}
footer p{margin:0 0 6px}
footer strong{color:var(--ink);font-weight:600}
.footer-links{display:flex;gap:18px;flex-wrap:wrap}
summary{cursor:pointer;font-weight:500}
details[open] summary{margin-bottom:20px}
#cea-status{font-size:.9rem;color:var(--slate);margin-top:12px}
#cea-status:empty{display:none}
#cea-status.error{color:var(--red)}
@media(max-width:879px){footer{margin-left:24px;margin-right:24px}}
@media(max-width:600px){
  header{padding:20px 20px 8px;gap:14px}
  nav{gap:14px}nav a{font-size:.84rem}nav .navcta{padding:7px 12px}
  main{padding:0 20px;margin-top:36px}
  .grid{grid-template-columns:1fr}
  .card{padding:22px 20px}
  .connection{align-items:flex-start;flex-direction:column}
  .actions>*{flex:1 1 auto}
  footer{margin:0 20px;padding:24px 0 36px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

select{display:block;width:100%;padding:12px 14px;margin-top:6px;border:1.5px solid var(--line);border-radius:10px;background:var(--field);color:var(--ink);font:400 1rem/1.5 var(--body)}
.check{display:flex;align-items:center;gap:10px}.check input{width:18px;height:18px;margin:0;accent-color:var(--red);flex-shrink:0}
.management-row{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--line);padding:20px 0;overflow-wrap:anywhere}
.management-row>div{min-width:0}.management-row p{margin:4px 0}.management-row form{flex-shrink:0;max-width:50%}.management-row .actions{margin-top:10px}.search-form{display:flex;gap:12px;align-items:flex-end;margin-bottom:20px}.search-form label{flex:1;margin:0}.search-form button{flex-shrink:0}
@media(max-width:600px){.management-row,.search-form{flex-direction:column;align-items:stretch}.management-row form{max-width:100%}.search-form label{width:100%}}
