:root{color-scheme:light;--wine:#80283e;--ink:#21191c;--muted:#786c71;--line:#e5dadd;--paper:#fffdfd;--ease:cubic-bezier(.22,.61,.36,1)}
*{box-sizing:border-box}body{margin:0;background:#f5f2f2;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.5}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}[hidden]{display:none!important}a{color:var(--wine)}button:focus-visible,a:focus-visible{outline:3px solid #bc778a;outline-offset:4px}input:focus,textarea:focus,select:focus{outline:2px solid var(--wine);outline-offset:2px}button{min-height:44px;border:1px solid var(--line);border-radius:10px;padding:10px 16px;background:white;color:var(--ink);transition:background .2s var(--ease),transform .2s var(--ease)}button:active{transform:scale(.98)}button:hover{background:#f4e9ed}.primary{background:var(--wine);color:white;border-color:var(--wine);display:flex;align-items:center;justify-content:space-between;gap:24px;font-weight:bold}.primary:hover{background:#682035}.quiet{background:transparent;font-size:13px}.masthead,main,footer{max-width:1240px;margin:auto}.masthead{display:flex;gap:24px;align-items:center;padding:24px 32px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}.brand strong{font-size:36px;font-weight:900;letter-spacing:-3px}.brand span{font-size:10px;line-height:1.2;font-weight:bold;border-left:1px solid var(--line);padding-left:10px;letter-spacing:1px}.eyebrow{font:11px/1.5 monospace;letter-spacing:2px;color:var(--wine)}#logout{margin-left:auto}main{padding:40px 32px}.login-layout{min-height:65vh;display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}.intro h1{font-size:clamp(44px,5vw,76px);font-weight:900;font-style:italic;letter-spacing:-3px;line-height:1.05;margin:24px 0}.intro h1 span{color:var(--wine)}.intro p{font-size:18px;color:var(--muted)}.ticket{margin-top:36px;padding:16px 24px;border-block:1px dashed #c9a7b1;display:flex;justify-content:space-between;font:12px monospace;letter-spacing:2px;color:var(--wine)}.login-card{padding:32px;border:1px solid var(--line);border-top:4px solid var(--wine);border-radius:16px;background:var(--paper);box-shadow:0 18px 50px #4e203509}.login-card h2{font-size:28px;margin:18px 0 8px}.muted,small{color:var(--muted)}label{display:block;font-size:13px;font-weight:bold;margin:16px 0}input,textarea,select{width:100%;min-height:46px;border:1px solid #d9cbd0;border-radius:8px;background:white;padding:11px 12px;color:var(--ink);margin-top:7px}textarea{resize:vertical;line-height:1.6}label small{display:block;font-weight:normal;margin-top:6px}input[readonly]{background:#f3f0f1;color:var(--muted)}.login-card .primary{width:100%;margin-top:24px}.login-card small{font-size:12px}.workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.workspace-heading h1{font-style:italic;font-size:42px;letter-spacing:-1.5px;margin:8px 0 20px}.workspace-heading p{font-size:13px;overflow-wrap:anywhere}.notice{background:#eee5e8;border-left:3px solid var(--wine);padding:16px 20px;border-radius:0 10px 10px 0;font-size:14px;margin:0 0 24px}.sections{display:flex;gap:8px;flex-wrap:wrap}.sections button[aria-pressed=true]{background:var(--wine);color:white;border-color:var(--wine)}.sections small{color:inherit;font-size:10px;margin-left:6px}.work-grid{display:grid;grid-template-columns:minmax(220px,310px) minmax(0,1fr);gap:24px;align-items:start}.record-list,.editor{background:var(--paper);border:1px solid var(--line);border-radius:14px;min-width:0}.record-list{padding:16px}.list-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.list-heading h2{font-size:18px;margin:0}.search-label{font-size:11px;text-transform:uppercase;letter-spacing:1px}.record{display:flex;gap:12px;align-items:center;width:100%;text-align:left;border-color:transparent;background:transparent;margin:4px 0;padding:10px;min-height:62px}.record[aria-current=true]{background:#f1e5e9;border-color:#d9bfc7;color:var(--wine)}.record img{width:38px;height:44px;object-fit:contain;border-radius:6px;background:#f1eaed}.record span{min-width:0;overflow-wrap:anywhere}.record strong{display:block;font-size:14px}.record small{display:block;font-size:11px;margin-top:3px}.editor{padding:28px}.editor h2{font-size:26px;line-height:1.2;margin:0 0 12px;overflow-wrap:anywhere}.editor h3{font-size:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.form-grid label{min-width:0}.full{grid-column:1/-1}.portrait{display:block;width:100%;height:200px;object-fit:contain;background:#f6f2f3;border-radius:12px;margin:16px 0}.actions{border-top:1px dashed var(--line);padding-top:20px;display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.empty{color:var(--muted);padding:20px;text-align:center}.status-error{color:#a5233f}.status-success{color:#31633d}#status,#login-message{font-size:14px;min-height:22px}.badge{display:inline-block;border:1px solid var(--line);border-radius:30px;padding:5px 12px;font:11px monospace;letter-spacing:1px;color:var(--wine)}.match-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.match-facts div{padding:16px;background:#f5eff1;border-radius:8px}.match-facts dt{font-size:11px;color:var(--muted)}.match-facts dd{margin:5px 0 0;font-weight:bold}footer{padding:32px;display:flex;justify-content:space-between;gap:16px;border-top:1px dashed #cfbbc2;color:var(--muted);font:10px monospace;letter-spacing:1.5px}
@media(max-width:768px){.masthead{padding:16px 20px;gap:14px}.masthead>.eyebrow{font-size:9px;letter-spacing:1px}main{padding:28px 16px}.login-layout{grid-template-columns:1fr;gap:28px;min-height:0}.intro h1{font-size:48px;margin:16px 0}.intro p{font-size:15px}.ticket{display:none}.login-card{padding:24px}.workspace-heading{display:block}.workspace-heading h1{font-size:34px;margin-bottom:0}.workspace-heading p{margin:8px 0 20px}.work-grid{grid-template-columns:1fr;gap:16px}#records{max-height:240px;overflow-y:auto;overscroll-behavior:contain}.editor{padding:20px}.form-grid{grid-template-columns:1fr;gap:0}.full{grid-column:auto}.actions .primary{flex:1}.notice{font-size:13px}.sections button{padding:10px 12px;font-size:14px}footer{padding:24px 16px;flex-wrap:wrap}.portrait{height:220px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.ballot-controls{margin-top:28px;padding-top:20px;border-top:1px dashed var(--line)}.ballot-controls>p{font-size:14px}.ballot-controls .primary{margin-top:16px}.record small{overflow-wrap:anywhere}
