:root{color-scheme:light;--bg:#f5f7fb;--bg-gradient:linear-gradient(180deg,rgba(255,255,255,0.9),rgba(245,247,251,0.9));--panel:#ffffff;--panel-soft:#f8fafc;--panel-muted:#f6f8fb;--ink:#162033;--muted:#637083;--line:#dde4ef;--accent:#1f7a8c;--accent-strong:#145c69;--warm:#f0b84f;--danger:#b42318;--soft:#e8f3f6;--shadow:0 16px 45px rgba(24,38,62,0.1)}html[data-theme=dark]{color-scheme:dark;--bg:#07111f;--bg-gradient:radial-gradient(circle at top,#13283a 0%,#091522 42%,#050c16 100%);--panel:#101f2d;--panel-soft:#172a3b;--panel-muted:#1c3245;--ink:#f5f9ff;--muted:#c4d8ea;--line:#38556b;--accent:#66d4e3;--accent-strong:#a4edf4;--warm:#ffd166;--danger:#ff9c92;--soft:#173846;--shadow:0 18px 50px rgba(0,5,12,0.42)}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;background:var(--bg-gradient),var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}main{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:22px 0 40px}.update-toast{position:fixed;top:16px;left:50%;z-index:80;display:inline-flex;align-items:center;gap:10px;max-width:min(92vw,520px);padding:11px 14px;border:1px solid rgba(31,122,140,.3);border-radius:999px;background:var(--panel);color:var(--ink);box-shadow:0 18px 40px rgba(24,38,62,.18);transform:translateX(-50%);pointer-events:none}.update-toast svg{color:var(--accent);flex:0 0 auto}.update-toast span{overflow-wrap:anywhere;font-size:.92rem;font-weight:700}.app-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0 22px}.header-actions{justify-content:flex-end;flex-wrap:wrap;min-width:0}.brand,.header-actions{display:flex;align-items:center;gap:12px}.brand svg{color:var(--accent)}.brand-logo{width:48px;height:48px;flex:0 0 auto;border:2px solid transparent;border-radius:13px;object-fit:cover}.brand h1{margin:0;font-size:1.55rem;letter-spacing:0}.tabs{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px;gap:4px;min-width:295px;padding:5px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.tabs button{min-height:40px;border:0;border-radius:6px;background:transparent;color:var(--muted)}.tabs button.active{background:var(--ink);color:#fff}.workspace{display:grid;grid-gap:18px;gap:18px}.project-create,.project-header,.randomizer-panel{border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:var(--shadow)}.project-create,.project-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px}.project-create{box-shadow:none}.project-title{display:flex;min-width:min(420px,100%);align-items:center;gap:10px}.project-title svg{color:var(--accent);flex:0 0 auto}.project-title input{width:100%;min-width:120px;border:0;border-bottom:1px solid transparent;background:transparent;color:var(--ink);font-size:1.18rem;font-weight:700;outline:none}.project-title input:focus{border-bottom-color:var(--accent)}.controls,.picker,.project-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:20px}.picker select{min-height:40px;max-width:230px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);padding:0 34px 0 12px}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:12px;gap:12px}.overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.overview-card{display:flex;min-height:86px;flex-direction:column;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);padding:14px;text-align:left;box-shadow:var(--shadow)}.overview-card span{color:var(--muted);font-size:.92rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.overview-card strong{color:var(--ink);font-size:1.7rem;font-weight:900;line-height:1}.project-card{display:grid;grid-gap:8px;gap:8px;min-height:104px;align-content:space-between;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);padding:14px;text-align:left;box-shadow:0 10px 28px rgba(24,38,62,.08)}.project-card:hover{border-color:rgba(31,122,140,.38);box-shadow:0 14px 34px rgba(31,122,140,.12)}.project-card span{overflow-wrap:anywhere;font-size:1.02rem;font-weight:850}.project-card small{color:var(--muted);font-weight:750}.button,.icon-button,.small-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);padding:0 13px;font-weight:700}.icon-button{width:40px;padding:0}.button.primary{border-color:transparent;background:var(--accent);color:#fff}.button.draw:hover,.button.primary:hover{background:var(--accent-strong)}.import-button.icon-only{width:40px;min-width:40px;padding:0}.button.draw{min-width:112px;align-self:stretch;border-color:transparent;background:var(--accent);color:#fff}.button.subtle{background:var(--soft);border-color:transparent;color:var(--accent-strong)}.icon-button.danger{color:var(--danger)}.small-button{min-height:32px;padding:0 10px;font-size:.88rem}.icon-button.small-icon{width:34px;min-height:34px;padding:0;border-radius:6px;flex:0 0 auto}.row-actions{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.small-button.danger-action{border-color:rgba(180,35,24,.24);color:var(--danger)}.randomizer-panel{min-width:0;padding:16px}html:not([data-theme=dark]) .randomizer-panel{border-color:#c7d5e5;background:#ffffff;box-shadow:0 18px 46px rgba(31,58,88,.14),0 3px 10px rgba(31,58,88,.07)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.panel-heading-actions{display:flex;max-width:100%;gap:8px;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}.panel-heading-actions>*{flex:0 0 auto;white-space:nowrap}.filter-button.active{box-shadow:inset 0 0 0 1px var(--accent)}.panel-name-input{width:100%;min-width:0;margin:0 0 4px;border:0;border-bottom:1px solid transparent;background:transparent;color:var(--accent);font-size:.82rem;font-weight:800;letter-spacing:.06em;outline:none}.panel-name-input:focus{border-bottom-color:var(--accent)}.eyebrow{margin:0 0 4px;color:var(--accent);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.panel-heading h2{margin:0;font-size:1.25rem;letter-spacing:0}.people-count-card{display:grid;min-width:140px;grid-gap:4px;gap:4px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);color:var(--ink);padding:10px 12px;text-align:left;box-shadow:var(--shadow);cursor:pointer}.people-count-card span{color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.people-count-card strong{color:var(--ink);font-size:1.45rem;font-weight:900;line-height:1}.people-count-card:hover{border-color:var(--accent)}.count-stepper{display:flex;align-items:center;gap:12px;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--muted);font-weight:700}.count-stepper-value{display:inline-flex;min-width:62px;align-self:stretch;align-items:center;justify-content:center;margin-block:-8px;border-right:1px solid var(--line);border-left:1px solid var(--line);padding:0 14px;text-align:center;color:var(--ink);font-weight:800}.count-stepper-controls{display:inline-flex;align-items:center;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--panel)}.count-stepper-button{width:40px;min-height:38px;border:0;border-radius:0;background:transparent}.count-stepper-button+.count-stepper-button{border-left:1px solid var(--line)}.stats{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.stats span{display:inline-flex;min-height:30px;align-items:center;border-radius:999px;background:var(--panel-muted);color:var(--muted);padding:0 11px;font-size:.88rem;font-weight:700}.people-list{display:grid;grid-gap:12px;gap:12px}.header-settings-button,.info-button{display:inline-flex;width:52px;height:52px;flex:0 0 52px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;padding:0}.header-settings-button,.info-button{background:var(--panel);color:var(--ink)}.excel-templates-button{min-height:52px;white-space:nowrap}.modal-dialog.excel-templates-modal-dialog{width:min(760px,100%);height:-moz-fit-content;height:fit-content;max-height:min(84vh,720px)}.excel-templates-modal-dialog .modal-content{flex:0 1 auto}.excel-templates-content{display:grid;grid-template-rows:auto auto;align-content:start;grid-gap:12px;gap:12px}.excel-templates-intro{margin:0;color:var(--muted);line-height:1.5}.excel-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.excel-template-card{display:flex;min-width:0;min-height:220px;flex-direction:column;justify-content:space-between;gap:18px;padding:15px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.excel-template-card h4{margin:0 0 7px;color:var(--ink);font-size:1.02rem}.excel-template-card p{margin:0 0 12px;color:var(--muted);line-height:1.45}.excel-template-card small{display:block;color:var(--ink);font-weight:700;line-height:1.4}.excel-template-card .button{width:100%}.modal-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(9,14,24,.56);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-dialog{width:min(760px,100%);height:min(80vh,820px);overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:0 24px 70px rgba(0,0,0,.28);display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 12px;border-bottom:1px solid var(--line)}.modal-header h3{margin:0;font-size:1.1rem}.modal-content{flex:1 1 auto;min-height:0;overflow:auto;padding:16px}.modal-search{display:flex;align-items:center;gap:8px;min-height:42px;margin-bottom:14px;border:1px solid var(--line);border-radius:7px;background:var(--panel-soft);color:var(--muted);padding:0 12px}.modal-search-row{display:flex;align-items:stretch;gap:9px;margin-bottom:14px}.modal-search-row .modal-search{flex:1 1 auto;min-width:0;margin-bottom:0}.modal-search-field-wrap{position:relative;display:inline-flex;width:150px;max-width:150px}.modal-search-field{width:100%;min-height:42px;border:1px solid var(--line);border-radius:7px;background:var(--panel-soft);color:var(--ink);padding:0 34px 0 11px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.modal-search-field-icon{position:absolute;top:50%;right:11px;color:var(--ink);transform:translateY(-50%);pointer-events:none}.modal-search input{width:100%;min-width:0;border:0;background:transparent;color:var(--ink);outline:none}.list-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.list-section-header h3{margin:0}.modal-group{margin-top:4px;padding-top:12px}.modal-group+.modal-group{margin-top:14px;border-top:1px solid var(--line)}.modal-group h4{margin:0 0 10px;color:var(--muted);font-size:.88rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.preferred-draw-summary{display:grid;grid-gap:3px;gap:3px;margin-bottom:14px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--accent) 48%,var(--line));border-radius:8px;background:var(--soft)}.preferred-draw-summary strong{color:var(--accent-strong)}.preferred-draw-summary span{color:var(--muted);font-size:.85rem}.preferred-people .person-row{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:var(--soft)}.small-button.selected-action{border-color:var(--accent);background:var(--accent);color:#ffffff}.settings-modal-dialog{width:min(560px,100%);height:auto;max-height:min(80vh,520px)}.modal-dialog.app-dialog-modal{width:min(460px,100%);height:-moz-fit-content;height:fit-content;max-height:min(80vh,520px)}.app-dialog-modal .modal-content{flex:0 1 auto}.app-dialog-content{display:grid;grid-gap:18px;gap:18px}.app-dialog-content p{margin:0;color:var(--ink);line-height:1.55;white-space:pre-line}.app-dialog-actions{display:flex;justify-content:flex-end;gap:8px}.settings-content{display:grid;grid-gap:14px;gap:14px}.settings-toggle{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);cursor:pointer}.settings-toggle input{width:19px;height:19px;margin:1px 0 0;accent-color:var(--accent);flex:0 0 auto}.settings-toggle span{display:grid;grid-gap:5px;gap:5px}.settings-toggle strong{color:var(--ink)}.settings-toggle small{color:var(--muted);line-height:1.45}.settings-hint{padding:13px 15px;border-left:4px solid var(--accent);border-radius:7px;background:var(--soft)}.settings-hint strong{color:var(--accent-strong)}.settings-hint p{margin:5px 0 0;color:var(--muted);line-height:1.45}.app-theme-setting{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.app-theme-setting>span{display:grid;grid-gap:5px;gap:5px}.app-theme-setting strong{color:var(--ink)}.app-theme-setting small{color:var(--muted)}.filter-modal-dialog{width:min(720px,100%);height:auto;max-height:min(84vh,720px)}.filter-content{display:grid;grid-gap:16px;gap:16px}.filter-intro{display:flex;align-items:center;justify-content:space-between;gap:12px}.filter-intro p{margin:0;color:var(--muted)}.filter-columns{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-gap:14px;gap:14px}.filter-section{min-width:0;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.filter-section h4{margin:0 0 10px;color:var(--ink)}.filter-options{display:grid;grid-gap:7px;gap:7px}.filter-option{display:flex;align-items:flex-start;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:7px;background:var(--panel);cursor:pointer}.filter-option:has(input:checked){border-color:var(--accent);background:var(--soft)}.filter-option input{width:17px;height:17px;margin:2px 0 0;accent-color:var(--accent);flex:0 0 auto}.filter-option span{display:grid;min-width:0;grid-gap:2px;gap:2px}.filter-option strong{color:var(--ink);overflow-wrap:anywhere}.filter-option small,.legend{color:var(--muted)}.legend{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:8px 12px;width:auto;margin:0;padding:0;border:0;background:transparent;cursor:pointer;font-size:.86rem;font-weight:700;text-align:left}.panel-footer{display:flex;align-items:center;gap:10px;width:100%;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.footer-settings-button{display:inline-grid;width:32px;min-width:32px;height:32px;place-items:center;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted);padding:0}.footer-settings-button:hover{border-color:var(--line);background:var(--panel-soft);color:var(--accent)}.active-settings-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent);flex:0 0 auto}.legend span{display:inline-flex;align-items:center;gap:6px}.legend:hover{color:var(--ink)}.legend-modal-dialog{height:auto;max-height:min(80vh,560px)}.info-modal-dialog{height:min(86vh,820px);max-width:820px}.info-modal-title{display:flex;min-width:0;align-items:center;gap:9px}.info-modal-title svg{color:var(--accent);flex:0 0 auto}.info-content{display:grid;grid-gap:14px;gap:14px}.info-intro{margin:0;color:var(--ink);font-size:1.02rem;font-weight:650;line-height:1.55}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.info-section{padding:15px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.info-section-highlight{border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:var(--soft)}.info-section-compact{padding-block:12px}.info-section h4{margin:0 0 8px;color:var(--ink);font-size:.98rem}.info-section p{margin:0;color:var(--muted);line-height:1.55}.info-section p+p{margin-top:8px}.info-section ul{display:grid;grid-gap:6px;gap:6px;margin:0 0 10px;padding-left:20px;color:var(--muted);line-height:1.45}.info-section strong{color:var(--ink)}.legend-details{display:grid;grid-gap:12px;gap:12px}.legend-detail-row{display:grid;grid-template-columns:38px 1fr;grid-gap:12px;gap:12px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.legend-detail-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--panel);color:var(--accent)}.legend-detail-row strong{display:block;margin-bottom:4px}.legend-detail-row p{margin:0;color:var(--muted);line-height:1.45}.person-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;margin-bottom:7px;border:1px solid var(--line);border-radius:7px;background:var(--panel);padding:7px 9px 7px 12px}.people-table-scroll{overflow-x:auto}.people-table{min-width:420px;overflow:hidden;border:1px solid var(--line);border-radius:8px}.people-table-header,.people-table-row{display:grid}.people-table.columns-1 .people-table-header,.people-table.columns-1 .people-table-row{grid-template-columns:1fr}.people-table.columns-2 .people-table-header,.people-table.columns-2 .people-table-row{grid-template-columns:minmax(180px,1.35fr) minmax(160px,1fr)}.people-table.columns-3 .people-table-header,.people-table.columns-3 .people-table-row{grid-template-columns:minmax(180px,1.3fr) minmax(150px,1fr) minmax(150px,1fr)}.people-table-header{border-bottom:1px solid var(--line);background:var(--panel-muted)}.people-table-header button{display:flex;min-width:0;min-height:42px;align-items:center;justify-content:space-between;gap:8px;border:0;background:transparent;color:var(--ink);padding:0 12px;font-weight:800;text-align:left}.people-table-header button+button,.people-table-row span+span{border-left:1px solid var(--line)}.people-table-header button:hover{background:var(--soft);color:var(--accent-strong)}.people-table-row{background:var(--panel)}.people-table-row+.people-table-row{border-top:1px solid var(--line)}.people-table-row span{min-width:0;padding:10px 12px;color:var(--ink);overflow-wrap:anywhere}.people-table-row span:first-child{font-weight:750}.person-row span{flex:1 1 auto;min-width:0;overflow-wrap:anywhere;font-weight:700;text-align:left}.person-row small{display:block;margin-top:2px;color:var(--muted);font-size:.78rem;font-weight:700}.person-row.blocked{border-color:rgba(180,35,24,.34);background:#fff1f0;color:#7a1b13}.person-row.blocked span{text-decoration:line-through;text-decoration-thickness:2px;-webkit-text-decoration-color:rgba(180,35,24,.45);text-decoration-color:rgba(180,35,24,.45)}.person-row.blocked small{color:var(--danger);text-decoration:none}.drawn .person-row{background:var(--panel-soft);color:#576274}.current-drawn{position:relative;overflow:hidden;border:2px solid rgba(240,184,79,.95);border-radius:8px;background:linear-gradient(135deg,#fff7df,#e9f7fb);box-shadow:0 18px 40px rgba(240,184,79,.18);padding:14px}.current-drawn:before{content:"";position:absolute;inset:0 auto 0 0;width:7px;background:var(--warm)}.current-drawn h3{position:relative;color:#8a5b00;font-size:1.12rem}.current-drawn .person-row{position:relative;border-color:rgba(240,184,79,.75);background:var(--panel);box-shadow:0 10px 26px rgba(138,91,0,.12)}.current-drawn .person-row span{color:#102235;font-size:1.02rem;font-weight:900}.current-drawn .person-row:before{content:"";width:10px;align-self:stretch;border-radius:999px;background:var(--accent);flex:0 0 auto}html[data-theme=dark] .tabs button.active{background:var(--accent);color:#06131d}html[data-theme=dark] .tabs{background:var(--panel)}html[data-theme=dark] .update-toast{background:var(--panel-soft);border-color:rgba(85,181,196,.4);box-shadow:0 18px 40px rgba(0,0,0,.34)}html[data-theme=dark] .overview-card{background:var(--panel-soft)}html[data-theme=dark] .overview-card span{color:var(--accent-strong)}html[data-theme=dark] .modal-header h3{color:var(--ink)}html[data-theme=dark] .overview-card strong{color:#f4f8ff}html[data-theme=dark] .modal-overlay{background:rgba(5,8,14,.72)}html[data-theme=dark] .modal-dialog{background:var(--panel)}html[data-theme=dark] .modal-search{background:var(--panel-soft)}html[data-theme=dark] .modal-search input{color:var(--ink)}html[data-theme=dark] .project-card:hover{border-color:rgba(85,181,196,.5);box-shadow:0 14px 34px rgba(0,0,0,.28)}html[data-theme=dark] .project-card small,html[data-theme=dark] .stats span{color:var(--muted)}html[data-theme=dark] .button,html[data-theme=dark] .count-stepper,html[data-theme=dark] .icon-button,html[data-theme=dark] .picker select,html[data-theme=dark] .small-button{background:var(--panel-soft)}html[data-theme=dark] .button.draw,html[data-theme=dark] .button.primary{background:var(--accent);color:#06131d}html[data-theme=dark] .button.draw:hover,html[data-theme=dark] .button.primary:hover{background:var(--accent-strong)}html[data-theme=dark] .button.subtle{background:var(--soft);color:var(--accent-strong)}html[data-theme=dark] .small-button.selected-action{border-color:var(--accent);background:var(--accent);color:#06131d}html[data-theme=dark] .count-stepper-controls{background:var(--panel-soft)}html[data-theme=dark] .person-row.blocked{background:rgba(242,139,130,.12);color:#f6c1bc}html[data-theme=dark] .person-row{background:var(--panel-soft)}html[data-theme=dark] .person-row span{color:var(--ink)}html[data-theme=dark] .person-row small{color:var(--muted)}html[data-theme=dark] .person-row.blocked span{color:#ffd8d2}html[data-theme=dark] .drawn .person-row{background:var(--panel-muted);color:var(--ink)}html[data-theme=dark] .drawn .person-row span{color:var(--ink)}html[data-theme=dark] .current-drawn{background:linear-gradient(135deg,rgba(243,201,104,.18),rgba(85,181,196,.12));box-shadow:0 18px 40px rgba(0,0,0,.3)}html[data-theme=dark] .current-drawn .person-row{background:var(--panel);border-color:rgba(243,201,104,.55);box-shadow:0 10px 26px rgba(0,0,0,.22)}html[data-theme=dark] .current-drawn .person-row span{color:#f4f8ff}html[data-theme=dark] .current-drawn h3{color:#f3d77a}html[data-theme=dark] .header-settings-button,html[data-theme=dark] .info-button{background:var(--panel);color:var(--ink)}html[data-theme=dark] .brand-logo{border-color:rgba(255,255,255,.92);box-shadow:0 0 0 1px rgba(255,255,255,.16)}html[data-theme=dark] .project-create,html[data-theme=dark] .project-header,html[data-theme=dark] .randomizer-panel{background:var(--panel)}html[data-theme=dark] .project-grid{color:var(--ink)}html[data-theme=dark] input::placeholder{color:#9fbbd0;opacity:1}html[data-theme=dark] .empty,html[data-theme=dark] .legend,html[data-theme=dark] .legend-detail-row p,html[data-theme=dark] .person-row small,html[data-theme=dark] .project-card small{color:var(--muted)}html[data-theme=dark] .count-stepper,html[data-theme=dark] .tabs button:not(.active){color:var(--ink)}html[data-theme=dark] .eyebrow,html[data-theme=dark] .panel-name-input{color:var(--accent-strong)}.drawn-divider{height:2px;border-radius:999px;background:linear-gradient(90deg,var(--line),var(--warm),var(--line))}.drawn-divider.strong{background:linear-gradient(90deg,var(--line),var(--accent),var(--line))}.empty{margin:0;border:1px dashed var(--line);border-radius:7px;color:var(--muted);padding:14px}.dual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px;align-items:start}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:1180px){main{width:min(100% - 20px,980px);padding-top:12px}.app-header,.panel-heading,.project-create,.project-header{align-items:stretch;flex-direction:column}.panel-heading-actions{justify-content:flex-start}.brand{align-items:center}.info-grid{grid-template-columns:1fr}.filter-columns{display:flex;align-items:flex-start;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.filter-columns>.filter-section{flex:0 0 min(78vw,330px);height:max-content;scroll-snap-align:start}.excel-template-grid{grid-template-columns:1fr}.excel-template-card{min-height:0}.header-actions{justify-content:flex-start;width:100%}.picker,.picker select,.project-actions,.project-create .button,.tabs{width:100%}.panel-heading-actions{width:100%;overflow:visible}.panel-heading-actions>.button:not(.icon-only){width:auto;min-width:0;flex:1 1;padding-inline:9px;font-size:.86rem}.panel-heading-actions>.import-button.icon-only{width:40px;min-width:40px;flex:0 0 40px}.project-actions{align-items:stretch}.project-actions>*{flex:1 1 auto}.dual-grid{grid-template-columns:1fr}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.randomizer-panel{display:flex;flex-direction:column}.panel-heading{order:0}.people-list{display:contents}.controls{order:2;display:grid;grid-template-columns:1fr auto auto;margin-top:4px;margin-bottom:18px}.count-stepper{min-width:0}.overview-grid{order:1;margin-bottom:14px}.drawn-divider{order:3}.list-section.current-drawn{order:4}.panel-footer{order:5}.dual-grid{display:flex;overflow-x:auto;gap:12px;padding-bottom:6px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.dual-grid>.randomizer-panel{flex:0 0 min(86vw,460px);scroll-snap-align:start}}@media (max-width:460px){.brand h1{font-size:1.32rem}.panel-heading-actions{gap:6px}.modal-search-row{flex-direction:column}.modal-search-field-wrap{width:100%;max-width:none}.panel-heading-actions .button{gap:5px;padding-inline:7px;font-size:.8rem}.panel-heading-actions .button svg{width:15px;height:15px}.brand p{font-size:.88rem}.tabs{min-width:0}.controls{grid-template-columns:1fr;gap:10px}.controls>.button.draw{width:100%}.count-stepper{flex-wrap:wrap;justify-content:space-between;gap:10px}.count-stepper-controls{margin-left:auto}.button.draw{min-width:0}.person-row{align-items:flex-start;flex-direction:column}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.overview-card{min-height:78px;padding:12px 11px}.overview-card strong{font-size:1.45rem}.list-section-header{align-items:flex-start;flex-direction:column}}