/* @LastCodex Modified: 2026-09-29 08:33:37 CEST */
:root{--ink:#183b50;--muted:#526d7e;--paper:#f4f8fb;--line:#dbe6ed;--primary:#08749c;--accent:#2ba5d5;--white:#fff;--danger:#a52b32}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.testbar{text-align:center;background:#e6f4fa;color:#235b73;padding:8px 15px;font-size:12px;letter-spacing:.04em}header{max-width:1320px;margin:auto;padding:18px 42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;text-decoration:none;flex-shrink:0}.brandlogo{display:block;width:164px;height:82px;object-fit:contain}nav{display:flex;align-items:center;gap:20px;font-size:14px}main{max-width:1236px;min-height:68vh;margin:0 auto;padding:48px 0 70px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,4vw,50px);line-height:1.12;letter-spacing:-1.6px;font-weight:620;margin-bottom:23px}h2{font-size:23px;letter-spacing:-.4px;line-height:1.25;margin-bottom:18px}h3{font-size:18px}a{color:var(--primary);text-underline-offset:4px}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:750;color:var(--muted);margin:0 0 15px}.lead{font-size:19px;max-width:630px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.card{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:30px;min-width:0}.section{margin-top:30px}.tenantcard{text-decoration:none;transition:transform .15s,border-color .15s}.tenantcard:hover{border-color:var(--primary);transform:translateY(-2px)}.tenantcard>span:last-child{font-size:14px;font-weight:650}.loginlayout{display:grid;grid-template-columns:1.05fr 1fr;gap:100px;align-items:center;padding:35px 40px}.loginlayout h1{font-size:clamp(40px,5vw,67px)}.loginlayout .card{padding:38px}.steps{display:flex;gap:18px;border-top:2px solid var(--accent);padding-top:25px;margin-top:40px;font-size:12px;color:var(--muted)}label{display:block;font-size:14px;font-weight:600;margin-bottom:19px}input,select,textarea{font:inherit;color:var(--ink);border:1px solid #b9ccd8;border-radius:8px;padding:11px 12px;background:#fcfdff;width:100%;margin-top:7px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--primary);outline-offset:2px}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:15px;border:1px solid #b9ccd8;border-radius:8px;background:#fff;padding:11px 17px;color:var(--ink);font:600 14px/1.4 system-ui;cursor:pointer;text-decoration:none}button:hover,.button:hover{background:#edf7fc}.primary{background:var(--primary);color:#fff;border-color:var(--primary)}.primary:hover{background:#075d7e}.wide{width:100%}.linkbutton{border:0;background:none;padding:0;text-decoration:underline}.muted,small{color:var(--muted)}.muted{font-size:14px}.card form+p{margin-top:20px}.formrow{display:flex;align-items:flex-end;gap:18px}.formrow label{flex:1;margin-bottom:0}.formrow button{flex-shrink:0}.back{display:inline-block;margin-bottom:28px;font-size:14px}.heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.badge,.count{font-size:12px;font-weight:650;background:#e8f5fb;border:1px solid #c6e6f3;border-radius:20px;padding:6px 12px;white-space:nowrap}.heading h1,.heading h2{margin-bottom:12px}.heading p:last-child{margin-bottom:0}.count{margin-left:5px}hr{border:0;border-top:1px solid var(--line);margin:30px 0}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;color:var(--muted);font-size:12px;font-weight:600}td,th{padding:15px 12px;border-bottom:1px solid var(--line);vertical-align:middle}td:first-child,th:first-child{padding-left:0}.compactform{display:flex;align-items:center;gap:8px}.compactform select{margin:0;width:auto;max-width:180px}.compactform button,td button{font-size:12px;padding:9px 11px}.notice{padding:14px 18px;border:1px solid #c0dfed;background:#eff8fc;border-radius:9px;margin-bottom:24px}.notice.error{color:#82232b;border-color:#ebc4c4;background:#fff2ef}.notice.success{background:#edf7e5;color:#295329}.narrow{max-width:640px;margin:20px auto}.listlink{display:flex;gap:12px;justify-content:space-between;text-decoration:none;padding:18px 0;border-bottom:1px solid var(--line);margin-bottom:15px}.listlink span{font-size:12px;color:var(--muted)}.result{border-top:1px solid var(--line);padding-top:23px;margin-top:25px}.resultrow{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px 0}.result p{margin-top:18px}.selection{font-size:32px;font-weight:700;padding:25px;border-radius:12px;background:#e6f4fb;margin-bottom:25px}fieldset{border:0;padding:0;margin:20px 0}legend{font-weight:600;margin-bottom:13px}.choice{border:1px solid var(--line);border-radius:9px;padding:14px;font-size:16px;display:flex;gap:10px;align-items:center;cursor:pointer}.choice:has(input:checked){background:#e8f6fc;border-color:var(--primary)}.choice input{width:20px;height:20px;margin:0;accent-color:var(--primary)}details{margin-top:20px}summary{cursor:pointer;font-size:14px;font-weight:600}footer{max-width:1236px;border-top:1px solid var(--line);margin:auto;padding:25px 0 35px;display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}code{overflow-wrap:anywhere;font-size:12px}@media(max-width:1300px){main,footer{margin-left:35px;margin-right:35px}.loginlayout{gap:50px;padding:25px 0}}@media(max-width:800px){header{padding:20px}main{padding-top:30px;margin:0 18px}.grid,.loginlayout{grid-template-columns:1fr}.loginlayout{gap:24px}.loginlayout h1{font-size:42px}.steps{display:none}.card,.loginlayout .card{padding:23px}.formrow,.heading{flex-wrap:wrap}.formrow{display:block}.formrow label{margin-bottom:18px}.heading .badge{margin-bottom:15px}footer{margin:0 18px;gap:15px;flex-wrap:wrap}nav>span{display:none}.compactform{flex-wrap:wrap}h1{overflow-wrap:anywhere}table{min-width:470px}}

/* wsVote brand accents; status colors remain meaningful. */
.card{box-shadow:0 8px 28px rgba(23,73,102,.035)}.loginlayout .card{border-top:3px solid var(--accent)}.eyebrow{color:#19789e}.brand:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.tenantcard:hover{border-color:var(--accent)}.testbar{border-bottom:1px solid #cae7f3}@media(max-width:800px){.brandlogo{width:132px;height:66px}}

/* Status is always conveyed by text as well as color. */
.status-draft{--state:#526171;--state-tint:#eef1f5;--state-line:#c8d0d9}
.status-ready{--state:#08749c;--state-tint:#e6f5fc;--state-line:#8ccce5}
.status-open{--state:#23713e;--state-tint:#eaf6ee;--state-line:#93c9a3}
.status-closed{--state:#93500d;--state-tint:#fff4e4;--state-line:#e4bd83}
.status-published{--state:#6942a0;--state-tint:#f2ecfa;--state-line:#c3ace4}
.status-void{--state:#a52b32;--state-tint:#fff0f0;--state-line:#df9fa4}
.ballot-card{border-top:4px solid var(--state);background:linear-gradient(var(--state-tint),#fff 150px)}
.ballot-status{display:inline-block;color:var(--state);background:var(--state-tint);border-color:var(--state-line);white-space:normal;font-size:13px}
.ballot-card .heading{align-items:flex-start;flex-wrap:wrap;margin-bottom:16px}.ballot-card>.ballot-status{margin-bottom:16px}
.status-hint{color:var(--state);font-size:14px;font-weight:600}
.ballot-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.state-action{background:var(--state);border-color:var(--state);color:#fff}.state-action:hover{background:var(--state);filter:brightness(.88)}
.deactivate{color:#526171;border-color:#b6c0cc;background:#f5f7fa}.deactivate:hover{background:#e8edf3}

/* Explain the meeting prerequisite before an unavailable action is attempted. */
.meeting-hint{max-width:720px;margin:14px 0 0;font-size:15px}#versammlung-steuern{scroll-margin-top:24px}.state-action:disabled,.state-action:disabled:hover{background:#e6ebf0;border-color:#cbd3dc;color:#526171;cursor:not-allowed;filter:none}

.meeting-status{white-space:normal}


.meeting-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.meeting-controls>div{min-width:0}.meeting-controls form{margin:18px 0}.meeting-controls button:disabled{background:#e6ebf0;color:#526171;border-color:#cbd3dc;cursor:not-allowed}.participation-panel{margin-bottom:26px}.meeting-controls select:disabled{opacity:.7}@media(max-width:1000px){.meeting-controls{grid-template-columns:1fr}.meeting-controls>div+div{border-top:1px solid var(--line);padding-top:22px}}

#custom-css{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:14px;tab-size:2;min-height:260px}
.club-welcome{white-space:pre-line;overflow-wrap:anywhere}.club-subtitle{font-size:24px;font-weight:600;color:var(--primary)}
.logo-dropzone{border:2px dashed #8ccce5;border-radius:12px;padding:22px;background:#f4fbfe;margin-bottom:16px;transition:background .15s,border-color .15s}.logo-dropzone.drag-over,.logo-dropzone:focus-within{border-color:var(--primary);background:#e0f3fb}.logo-dropzone label{margin-bottom:8px}.logo-dropzone p{margin:12px 0 0}.logo-dropzone input{background:#fff}
.tenant-heading{display:flex;align-items:center;gap:24px;margin-bottom:30px;flex-wrap:wrap}.tenant-heading>div{flex:1}.tenant-heading h1{margin-bottom:12px}.tenant-heading .lead{margin-bottom:0}.tenant-logo{display:block;width:140px;height:90px;object-fit:contain;object-position:left center;flex-shrink:0;margin-bottom:15px}.tenant-heading>.tenant-logo{margin-bottom:0}.logo-preview{background:#f5f8fb;border:1px solid var(--line);border-radius:12px;padding:24px;display:flex;align-items:center;justify-content:center;min-height:200px;margin-bottom:15px}.logo-preview img{max-width:100%;max-height:180px;object-fit:contain}@media(max-width:600px){#custom-css{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:14px;tab-size:2;min-height:260px}
.club-welcome{white-space:pre-line;overflow-wrap:anywhere}.club-subtitle{font-size:24px;font-weight:600;color:var(--primary)}
.logo-dropzone{border:2px dashed #8ccce5;border-radius:12px;padding:22px;background:#f4fbfe;margin-bottom:16px;transition:background .15s,border-color .15s}.logo-dropzone.drag-over,.logo-dropzone:focus-within{border-color:var(--primary);background:#e0f3fb}.logo-dropzone label{margin-bottom:8px}.logo-dropzone p{margin:12px 0 0}.logo-dropzone input{background:#fff}
.tenant-heading{align-items:flex-start}.tenant-heading>div{flex-basis:100%}}

.signature-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.signature-toolbar button{padding:7px 11px}.signature-preview{border:1px solid var(--line);border-radius:10px;background:white;color:#183b50;padding:20px;margin:12px 0;min-height:80px;overflow-wrap:anywhere;font:16px/1.5 Arial,sans-serif}.signature-preview p:last-child{margin-bottom:0}.signature-preview img{max-width:100%;height:auto}#signature-source{font-family:ui-monospace,monospace}

.signature-toolbar[hidden],.signature-link-panel[hidden]{display:none}.signature-visual .tiptap{min-height:220px;outline:none;white-space:pre-wrap;overflow-wrap:anywhere}.signature-visual:focus-within{outline:2px solid var(--primary);outline-offset:2px}.signature-visual p{margin:0 0 1em}.signature-visual .tiptap p:last-child{margin-bottom:0}.signature-visual h1,.signature-visual h2,.signature-visual h3{font-family:Arial,sans-serif;letter-spacing:normal}.signature-visual h3{font-size:1.17em}.signature-visual ul,.signature-visual ol{padding-left:1.5em}.signature-visual .ProseMirror-selectednode{outline:2px solid var(--primary)}.signature-toolbar [aria-pressed="true"]{background:#d9f0fa;border-color:var(--primary)}.signature-link-panel{padding:16px;border:1px solid var(--line);border-radius:8px;margin:12px 0}
