:root{color-scheme:light;--ink:#17202a;--muted:#657381;--line:#d9e0e7;--bg:#f4f7f8;--panel:#fff;--accent:#0f766e;--accent2:#115e59;--danger:#be123c}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}a{color:var(--accent2);text-decoration:none}h1,h2,h3{line-height:1.2}.shell{min-height:100vh;display:grid;grid-template-columns:235px 1fr}.sidebar{background:#16202a;color:#eef4f7;padding:22px 18px}.brand{font-weight:800;font-size:18px;margin-bottom:25px}.nav a{display:block;color:#d8e4ea;padding:10px;border-radius:7px;margin:2px 0}.nav a:hover{background:#223140;color:#fff}.main{padding:28px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.topbar h1{font-size:25px;margin:0}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.panel,.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px;margin-bottom:16px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:18px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.stat{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px}.stat .value{font-size:27px;font-weight:800}.muted,.stat .label{color:var(--muted);font-size:13px}.badge{display:inline-block;border-radius:999px;padding:4px 9px;background:#e8edf1;font-size:12px;font-weight:700}.badge.PUBLISHED,.badge.COMPLETED{background:#d1fae5;color:#065f46}.badge.IN_PROGRESS{background:#dbeafe;color:#1e40af}.badge.CLOSED,.badge.REVOKED,.badge.EXPIRED{background:#ffe4e6;color:#9f1239}table{width:100%;border-collapse:collapse}th,td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;font-size:14px;vertical-align:top}th{color:var(--muted)}label{display:block;color:var(--muted);font-size:13px;margin:11px 0 6px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:7px;padding:10px 11px;font:inherit;background:#fff}input[type=checkbox],input[type=radio]{width:auto}textarea{min-height:90px;resize:vertical}button,.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:7px;padding:10px 14px;background:var(--accent);color:#fff;font:inherit;font-weight:750;cursor:pointer}button:hover,.button:hover{background:var(--accent2);color:#fff}.secondary{background:#e8edf1;color:var(--ink)}.secondary:hover{background:#d7e0e6;color:var(--ink)}.danger{background:var(--danger)}.danger:hover{background:#9f1239}.small{padding:7px 10px;font-size:13px}.inline{display:inline}.message,.error{border-radius:7px;padding:11px 13px;margin-bottom:16px}.message{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.error{background:#fff1f2;color:#9f1239;border:1px solid #fecdd3}.login-wrap,.vote-wrap{min-height:100vh;display:grid;place-items:center;padding:22px}.login-card,.vote-card{width:min(560px,100%);background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;box-shadow:0 18px 50px rgba(22,32,42,.08)}.question-card{border-left:4px solid var(--accent)}.option-row{display:grid;grid-template-columns:1fr minmax(180px,280px) auto;gap:8px;align-items:end;margin:8px 0;padding:10px;background:#f7f9fa;border-radius:8px}.option-editor{grid-template-columns:minmax(180px,1fr) minmax(160px,240px) minmax(130px,170px) minmax(180px,1fr) auto}.check-label{display:flex;gap:7px;align-items:center;color:var(--ink)}.option-choice{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:9px;padding:14px;margin:10px 0;cursor:pointer}.option-choice:hover{border-color:var(--accent)}.option-choice input{margin-top:4px}.vote-title{font-size:28px;margin:0 0 8px}.progress{color:var(--muted);font-size:13px;margin-bottom:22px}.copy-field{display:flex;gap:6px}.copy-field input{font-size:12px}.nowrap{white-space:nowrap}.break{word-break:break-all}@media(max-width:1100px){.option-editor{grid-template-columns:1fr 1fr}}@media(max-width:800px){.shell{display:block}.sidebar{padding:14px}.nav{display:flex;gap:4px;flex-wrap:wrap}.brand{margin-bottom:10px}.main{padding:18px}.two-col{grid-template-columns:1fr}.option-row,.option-editor{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}table{display:block;overflow:auto}}
