:root{--bg:#f5f6f8;--card:#fff;--text:#16181d;--muted:#5f6673;--soft:#3d4350;--border:#e3e6eb;--border-strong:#c5cbd4;--hover:#eceef2;--empty-bg:#fafbfc;--accent:#3046c9;--accent-text:#fff;--accent-soft:#eef1fb;--danger:#b42318;--danger-border:#f1c6c2;--miss:#b94a0e;--miss-bg:#fff8f3;--ok:#1a6b3c;--radius:14px;--shadow-sm:0 1px 2px #1018280a, 0 1px 3px #1018280f;--shadow-md:0 6px 16px #10182814, 0 2px 4px #1018280a;--shadow-lg:0 24px 48px #1018282e;--p0:#3b5bdb;--p0t:#edf2ff;--p1:#7048e8;--p1t:#f3f0ff;--p2:#0c8599;--p2t:#e3fafc;--p3:#2b8a3e;--p3t:#ebfbee;--p4:#d9480f;--p4t:#fff4e6;--p5:#c2255c;--p5t:#fff0f6;--p6:#9c36b5;--p6t:#f8f0fc;--p7:#b35c00;--p7t:#fff9db;--plan:#2f54c8;--plan-tint:#edf2ff;--art:#7a3fd1;--art-tint:#f4eeff;--qa:#1f7a45;--qa-tint:#e9f6ee;--fb:#b94a0e;--fb-tint:#fff1e8;--store:#0e6e68;--store-tint:#e6f5f3;--etc:#4b5563;--etc-tint:#f0f1f4;--st-plan:#8a93a3;--st-dev:#2f54c8;--st-live:#1f9d55;--st-done:#5f6673}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1115;--card:#171a21;--text:#e6e8ec;--muted:#9aa1ad;--soft:#c3c8d0;--border:#2a2f3a;--border-strong:#3d4452;--hover:#222733;--empty-bg:#13161c;--accent:#7c93ff;--accent-text:#0b1030;--accent-soft:#1d2440;--danger:#f97066;--danger-border:#5c2420;--miss:#f5a46b;--miss-bg:#24170f;--ok:#6ce9a6;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 8px 20px #00000059;--shadow-lg:0 24px 48px #00000080;--p0:#91a7ff;--p0t:#1c2340;--p1:#b197fc;--p1t:#261e45;--p2:#66d9e8;--p2t:#0b2e33;--p3:#8ce99a;--p3t:#13301a;--p4:#ffa94d;--p4t:#36210c;--p5:#faa2c1;--p5t:#3a1426;--p6:#e599f7;--p6t:#331a3b;--p7:#ffd43b;--p7t:#33290a;--plan:#8fa8ff;--plan-tint:#1c2442;--art:#c29bff;--art-tint:#2a1d42;--qa:#6fd49a;--qa-tint:#14301f;--fb:#f5a46b;--fb-tint:#36200f;--store:#5fd1c6;--store-tint:#0f2e2b;--etc:#b3b9c4;--etc-tint:#252a33;--st-plan:#8a93a3;--st-dev:#8fa8ff;--st-live:#4ade80;--st-done:#6b7280}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,system-ui,sans-serif;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.search input:focus,.field input:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}h1,h2,h3,p{margin:0}.muted{color:var(--muted)}.small{font-size:12px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.pc-0{--pc:var(--p0);--pt:var(--p0t)}.pc-1{--pc:var(--p1);--pt:var(--p1t)}.pc-2{--pc:var(--p2);--pt:var(--p2t)}.pc-3{--pc:var(--p3);--pt:var(--p3t)}.pc-4{--pc:var(--p4);--pt:var(--p4t)}.pc-5{--pc:var(--p5);--pt:var(--p5t)}.pc-6{--pc:var(--p6);--pt:var(--p6t)}.pc-7{--pc:var(--p7);--pt:var(--p7t)}.proj-icon{background:var(--pt);width:26px;height:26px;color:var(--pc);border-radius:7px;flex:none;place-items:center;font-size:13px;font-weight:700;line-height:1;display:inline-grid;position:relative}.proj-icon .dot{border:2px solid var(--card);box-sizing:content-box;width:9px;height:9px;position:absolute;bottom:-3px;right:-3px}.proj-icon.big{border:1px solid var(--border);background:var(--card);width:64px;height:64px;box-shadow:var(--shadow-sm);border-radius:18px;font-size:28px}.proj-icon.big .dot{border-width:3px;width:12px;height:12px}.ring{flex:none}.ring-track{stroke:var(--hover)}.ring-fill{stroke:var(--accent);transition:stroke-dasharray .4s}.ring.full .ring-fill{stroke:var(--ok)}.app{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.loading{text-align:center;color:var(--muted);grid-column:1/-1;padding:48px}.main{flex-direction:column;gap:20px;min-width:0;padding:32px 40px 56px;display:flex}@media (width<=760px){.app{grid-template-columns:1fr}.main{padding:24px 16px 40px}}.side{background:var(--card);border-right:1px solid var(--border);flex-direction:column;gap:16px;height:100vh;padding:24px 16px 16px;display:flex;position:sticky;top:0}.side-scroll{scrollbar-width:thin;flex-direction:column;flex:1;gap:16px;min-height:0;margin:-4px -8px 0;padding:0 8px 8px;display:flex;overflow-y:auto}@media (width<=760px){.side{border-right:0;border-bottom:1px solid var(--border);height:auto;position:static}.side-scroll{flex:none;max-height:45vh}}.brand{letter-spacing:-.2px;align-items:center;gap:10px;padding:0 8px;font-size:17px;font-weight:700;display:flex}.brand b{color:var(--accent)}.brand-mark{background:var(--accent);width:32px;height:32px;color:var(--accent-text);border-radius:8px;place-items:center;display:grid}.side-section{flex-direction:column;gap:2px;display:flex}.side-label{color:var(--muted);padding:0 10px 8px;font-size:12px;font-weight:600}.side-head{z-index:2;justify-content:space-between;align-items:center;gap:8px;margin-bottom:-8px;display:flex;position:relative}.side-head .side-label{padding-bottom:0}.side-filter{min-width:0;position:relative}.side-filter-btn{max-width:150px;height:32px;color:var(--muted);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:0 8px;font-size:12px;font-weight:600;list-style:none;display:flex}.side-filter-btn::-webkit-details-marker{display:none}.side-filter-btn:hover,.side-filter[open] .side-filter-btn{background:var(--hover);color:var(--text)}.side-filter-btn.on{background:var(--accent-soft);color:var(--accent)}.side-filter-btn svg{flex:none}.side-filter-btn span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.side-menu{z-index:5;border:1px solid var(--border);background:var(--card);width:220px;max-height:60vh;box-shadow:var(--shadow-lg);border-radius:12px;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto}.side-menu-label{color:var(--muted);padding:8px 10px 4px;font-size:11px;font-weight:600}.side-menu-item{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;width:100%;min-height:36px;padding:0 10px;font-size:13px;display:flex}.side-menu-item:hover{background:var(--hover)}.side-menu-item.on{background:var(--accent-soft);color:var(--accent);font-weight:600}.side-menu-item .avatar{width:22px;height:22px;font-size:11px}.side-menu-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.side-menu-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.side-menu-empty{color:var(--muted);padding:8px 10px;font-size:12px}summary.side-label{cursor:pointer;align-items:center;min-height:32px;display:flex}.side-empty{color:var(--muted);padding:4px 10px 8px;font-size:13px}.proj,.side-btn{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;width:100%;min-height:40px;padding:0 10px;transition:background .12s;display:flex}.proj:hover,.side-btn:hover{background:var(--hover)}.proj.active,.side-btn.active{background:var(--accent-soft);font-weight:600}.proj-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.proj-count{color:var(--muted);font-size:12px;font-weight:400}.side-btn{color:var(--muted)}.side-btn.active{color:var(--text)}.side-foot{border-top:1px solid var(--border);flex:none;margin-top:-16px;padding-top:12px}.side-foot .side-btn{color:var(--text);font-weight:500}.side-user{align-items:center;gap:8px;margin-top:8px;padding-left:10px;display:flex}.side-user-name{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;overflow:hidden}.login{text-align:center;flex-direction:column;grid-column:1/-1;place-self:center;align-items:center;gap:14px;width:min(400px,100vw - 32px);margin:48px 0;padding:40px 32px;display:flex}.login h1{letter-spacing:-.3px;font-size:24px;font-weight:700}.login h1 b{color:var(--accent)}.brand-mark.big{border-radius:12px;width:48px;height:48px}.gsi-button{min-height:44px;margin-top:8px}.login-error{color:var(--danger);font-size:13px}.dot{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.dot.st-plan{background:var(--st-plan)}.dot.st-dev{background:var(--st-dev)}.dot.st-live{background:var(--st-live)}.dot.st-done{background:var(--st-done)}.pill{background:var(--etc-tint);color:var(--soft);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.pill.st-dev{background:var(--plan-tint);color:var(--plan)}.pill.st-live{background:var(--qa-tint);color:var(--qa)}.hero{background:linear-gradient(120deg, var(--pt) 0%, var(--card) 60%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:24px;display:flex}.hero-main{align-items:flex-start;gap:18px;min-width:0;display:flex}.hero-text{flex-direction:column;gap:8px;min-width:0;display:flex}.hero h1{letter-spacing:-.5px;overflow-wrap:anywhere;font-size:28px;font-weight:700;line-height:1.25}.hero-meta{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.hero-progress{align-items:center;gap:16px;display:flex}.ring-wrap{place-items:center;display:grid;position:relative}.ring-wrap .ring-fill{stroke:var(--pc)}.ring-wrap .ring.full .ring-fill{stroke:var(--ok)}.ring-wrap span{font-size:16px;font-weight:700;position:absolute}.hero-progress-text{flex-direction:column;gap:2px;max-width:260px;display:flex}.hero-progress-text b{font-size:15px}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar-gap{flex:1}@media (width<=760px){.hero{padding:20px}.hero-main{gap:14px}.proj-icon.big{border-radius:14px;width:48px;height:48px;font-size:22px}.hero h1{font-size:22px}.toolbar-gap{display:none}.toolbar .search,.toolbar .search input{width:100%}.toolbar .btn{flex:1}}.head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.head-title{flex-direction:column;gap:6px;min-width:0;display:flex}.title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.head h1{letter-spacing:-.4px;overflow-wrap:anywhere;font-size:28px;font-weight:700;line-height:1.25}.head-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.search{color:var(--muted);align-items:center;display:flex;position:relative}.search svg{position:absolute;left:12px}.search input{border:1px solid var(--border-strong);background:var(--card);width:220px;height:44px;color:var(--text);border-radius:10px;padding:0 12px 0 36px}@media (width<=760px){.head-tools,.search,.search input{width:100%}.head-tools .btn{flex:1}}.btn{border:1px solid var(--border-strong);background:var(--card);cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:6px;height:44px;padding:0 16px;font-weight:500;display:inline-flex}.btn:hover{background:var(--hover)}.btn:disabled{opacity:.6;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text);box-shadow:0 1px 2px #3046c94d}.btn.primary:hover{filter:brightness(1.08)}.btn.danger{color:var(--danger);border-color:var(--danger-border);margin-right:auto}.btn.toggle[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--bg)}.icon-btn{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:grid}.icon-btn:hover{background:var(--hover);color:var(--text)}.progress{flex-wrap:wrap;align-items:center;gap:20px;padding:16px 20px;display:flex}.progress-num{white-space:nowrap}.progress-num b{font-size:20px}.bar{background:var(--hover);border-radius:999px;flex:200px;height:8px;overflow:hidden}.bar div{background:var(--accent);border-radius:999px;height:100%;transition:width .3s}.progress-missing{color:var(--miss);font-size:13px}.progress-done{color:var(--ok);font-size:13px}.groups{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:start;gap:16px;display:grid}@media (width<=760px){.groups{grid-template-columns:1fr}}.group{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:18px;display:flex}.group-icon{background:var(--gt);width:28px;height:28px;color:var(--gc);border-radius:8px;place-items:center;display:grid}.group-icon svg{width:16px;height:16px}.group-bar{background:var(--hover);border-radius:999px;height:4px;margin:-2px 4px 4px;overflow:hidden}.group-bar div{background:var(--gc);border-radius:999px;height:100%;transition:width .3s}.g-plan{--gc:var(--plan);--gt:var(--plan-tint)}.g-art{--gc:var(--art);--gt:var(--art-tint)}.g-qa{--gc:var(--qa);--gt:var(--qa-tint)}.g-fb{--gc:var(--fb);--gt:var(--fb-tint)}.g-store{--gc:var(--store);--gt:var(--store-tint)}.g-etc{--gc:var(--etc);--gt:var(--etc-tint)}.group-head{justify-content:space-between;align-items:center;padding:0 4px;display:flex}.group-head h2{align-items:center;gap:10px;font-size:15px;font-weight:700;display:flex}.swatch{background:var(--gc);border-radius:3px;width:10px;height:10px}.group-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.slot{border:1px solid var(--border);background:var(--card);border-radius:12px;align-items:center;gap:6px;padding:8px 6px 8px 10px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.slot:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.slot-open{vertical-align:-2px;color:var(--muted);opacity:0;margin-left:6px;transition:opacity .15s;display:inline-flex}.slot:hover .slot-open{opacity:1}.slot-link{flex:1;align-items:center;gap:12px;min-width:0;min-height:44px;display:flex}.slot-link:hover .slot-name{color:var(--accent)}.chip{background:var(--gt);width:38px;height:38px;color:var(--gc);border-radius:10px;flex:none;place-items:center;display:grid}.slot-text{flex-direction:column;gap:1px;min-width:0;display:flex}.slot-name{font-weight:600}.slot-meta,.slot-memo{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.slot-memo{color:var(--soft)}.slot-empty,.slot-add{border:1.5px dashed var(--border-strong);background:var(--empty-bg);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:62px;padding:8px 10px;display:flex}.slot-empty:hover,.slot-add:hover{border-color:var(--gc,var(--muted));background:var(--card)}.slot-empty .chip{background:var(--hover);color:var(--muted);transition:background .15s,color .15s}.slot-empty:hover .chip{background:var(--gt);color:var(--gc)}.slot-empty .slot-name{color:var(--soft);font-weight:500}.slot-add{min-height:48px;color:var(--soft);justify-content:center;gap:8px;font-size:13px;font-weight:500}.none,.empty-board,.load-error{text-align:center;color:var(--muted);padding:40px}.empty-board,.load-error{max-width:520px;color:var(--text);flex-direction:column;align-items:center;gap:14px;margin:64px auto;display:flex}.empty-board h1,.load-error h1{font-size:22px}.load-error{grid-column:1/-1}.legend{color:var(--soft);gap:16px;font-size:13px;display:flex}.legend>span{align-items:center;gap:6px;display:inline-flex}.legend-ok{color:var(--accent);display:inline-flex}.legend-miss{border:1.6px dashed var(--miss);background:var(--miss-bg);border-radius:50%;width:14px;height:14px}.matrix-wrap{max-height:calc(100vh - 200px);overflow:auto}.matrix{border-collapse:collapse;width:100%;min-width:1100px;font-size:13px}.matrix th,.matrix td{border-bottom:1px solid var(--border);text-align:center;padding:0}.matrix thead th{z-index:2;background:var(--card);font-weight:700;position:sticky;top:0}.matrix thead tr:nth-child(2) th{top:34px}.matrix .pcol{z-index:1;background:var(--card);box-shadow:inset -1px 0 var(--border);text-align:left;width:280px;min-width:240px;padding:12px 16px;font-weight:700;position:sticky;left:0}.matrix thead .pcol{z-index:3}.pcol-inner{align-items:center;gap:10px;display:flex}.pcol-text{flex-direction:column;flex:1;min-width:0;display:flex}.matrix tbody .pcol a{text-overflow:ellipsis;white-space:nowrap;font-size:14px;display:block;overflow:hidden}.avatar-stack{flex:none;display:flex}@media (width<=760px){.matrix .pcol{width:150px;min-width:150px;padding:10px 12px}.matrix .avatar-stack,.matrix .pcol .proj-icon{display:none}}.avatar-stack .avatar{border:2px solid var(--card);box-sizing:content-box;width:24px;height:24px;font-size:11px}.avatar-stack .avatar+.avatar{margin-left:-8px}.matrix tbody .pcol a:hover{color:var(--accent);text-decoration:underline}.pmeta{color:var(--muted);align-items:center;gap:6px;margin-top:2px;font-size:12px;font-weight:400;display:inline-flex}.ghead{height:34px;color:var(--gc);font-size:12px;border-bottom:0!important;padding:10px 8px 2px!important}.sname{color:var(--soft);min-width:76px;font-size:12px;line-height:1.35;padding:4px 6px 12px!important;font-weight:500!important}.group-start{border-left:1px solid var(--border)}.matrix .count{border-left:1px solid var(--border);width:88px;font-weight:700}.count-num{font-variant-numeric:tabular-nums;display:block}.count-bar{background:var(--hover);border-radius:999px;width:48px;height:4px;margin:4px auto 0;display:block;overflow:hidden}.count-bar span{background:var(--accent);height:100%;display:block}.matrix td.count.full{color:var(--ok)}.matrix td.count.full .count-bar span{background:var(--ok)}.cell.miss{background:var(--miss-bg)}.cell-ok,.cell-empty{width:44px;height:44px;color:var(--gc,var(--accent));border-radius:8px;place-items:center;margin:4px auto;display:grid}.cell-ok:hover,.cell-empty:hover{background:var(--hover)}.cell-empty{cursor:pointer;background:0 0;border:0}.cell-empty:before{content:"";border:1.6px dashed var(--miss);background:var(--card);border-radius:50%;width:14px;height:14px}.matrix tbody tr:hover,.matrix tbody tr:hover .pcol{background:var(--empty-bg)}.rc-store{--rc:var(--store);--rt:var(--store-tint)}.rc-plan{--rc:var(--plan);--rt:var(--plan-tint)}.rc-art{--rc:var(--art);--rt:var(--art-tint)}.avatar{background:var(--rt,var(--accent-soft));width:24px;height:24px;color:var(--rc,var(--accent));border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:700;display:inline-grid}.project-people{flex-wrap:wrap;gap:8px 16px;display:flex}.role-group{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.role-tag{color:var(--rc);font-size:12px;font-weight:600}.person-chip{border:1px solid var(--border);background:var(--card);border-radius:999px;align-items:center;gap:6px;min-height:32px;padding:0 12px 0 4px;font-size:13px;font-weight:500;display:inline-flex}.person-chip:hover{border-color:var(--border-strong)}.person-chip.none{border-style:dashed;border-color:var(--border-strong);color:var(--muted);cursor:pointer;padding:0 12px 0 8px}.role-section{flex-direction:column;gap:12px;display:flex}.role-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.role-head h2{align-items:center;gap:8px;font-size:17px;font-weight:700;display:flex}.role-head .swatch{background:var(--rc)}.role-head .btn{margin-left:auto}.btn.small-btn{height:36px;padding:0 12px;font-size:13px}.role-empty{font-size:13px}.person-card .group-head h2,.person-card .group-head h3{overflow-wrap:anywhere;align-items:center;gap:10px;min-width:0;font-size:15px;font-weight:700;display:flex}.person-card h3 .avatar{width:38px;height:38px;font-size:16px}.person-name{flex-direction:column;line-height:1.3;display:flex}.person-name small{color:var(--rc,var(--muted));font-size:12px;font-weight:500}.person-card-tools{flex:none;align-items:center;gap:4px;display:flex}.person-projects{flex-direction:column;gap:2px;display:flex}.person-projects details .proj{color:var(--muted)}.person-projects-list{border-radius:10px;flex-direction:column;gap:2px;min-height:40px;display:flex}.person-projects-list:not(.gap-list):empty:before{content:"진행 중인 담당 프로젝트가 없어요. 여기로 끌어다 놓을 수 있어요.";border:1.5px dashed var(--border);min-height:40px;color:var(--muted);border-radius:10px;align-items:center;padding:0 10px;font-size:13px;display:flex}.drag-handle{cursor:grab;touch-action:none}.drag-ghost{opacity:.35}.person-card.drag-ghost{box-shadow:none;border-style:dashed}.drag-mirror{box-shadow:var(--shadow-lg);background:var(--card);cursor:grabbing;border-radius:12px;opacity:.95!important}.person-card.unassigned{border-style:dashed;border-color:var(--miss);background:var(--miss-bg)}.person-card.unassigned h2,.person-card.unassigned .proj-count{color:var(--miss)}dialog{background:var(--card);width:min(460px,100vw - 32px);color:var(--text);box-shadow:var(--shadow-lg);border:0;border-radius:18px;padding:0}dialog[open]{animation:.16s ease-out pop}dialog::backdrop{background:#10141c73}@keyframes pop{0%{transform:translateY(6px)scale(.98)}}@media (prefers-reduced-motion:reduce){dialog[open]{animation:none}.slot:hover{transform:none}}.dlg{flex-direction:column;gap:16px;padding:24px;display:flex}.dlg h2{font-size:18px;font-weight:700}.dlg>.muted{margin-top:-10px;font-size:13px}.dlg-body{flex-direction:column;gap:12px;display:flex}.field{flex-direction:column;gap:6px;font-size:13px;font-weight:500;display:flex}.field input,.field select{border:1px solid var(--border-strong);background:var(--card);width:100%;height:44px;color:var(--text);border-radius:10px;padding:0 12px;font-weight:400}.hint{color:var(--muted);margin-top:-4px;font-size:12px}.hint:empty{display:none}.checks{border:0;min-width:0;margin:0;padding:0}.checks legend{margin-bottom:6px;padding:0}.check-list{border:1px solid var(--border-strong);border-radius:8px;flex-direction:column;max-height:220px;padding:4px;display:flex;overflow-y:auto}.check{cursor:pointer;border-radius:6px;align-items:center;gap:10px;min-height:40px;padding:0 8px;font-weight:400;display:flex}.check:hover{background:var(--hover)}.check input{width:16px;height:16px;accent-color:var(--accent);margin:0}.check span:first-of-type{overflow-wrap:anywhere;flex:1;min-width:0}.check-note{color:var(--muted);font-size:12px}.checks .hint{margin-top:0}:is(.dlg:has(.checks),.dlg:has(.auto-results),.dlg:has([name^=src-])){max-height:calc(100vh - 64px);overflow-y:auto}.auto-results{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.auto-results li{background:var(--empty-bg);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;font-size:13px;display:flex}.auto-results li span{color:var(--muted)}.auto-results li.ok span{color:var(--ok)}.auto-results li.miss span,.auto-results li.error span{color:var(--miss)}.dlg-error{color:var(--danger);font-size:13px}.dlg-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.toast{z-index:10;background:var(--text);max-width:calc(100vw - 32px);color:var(--bg);box-shadow:var(--shadow-md);opacity:0;pointer-events:none;border-radius:999px;padding:10px 18px;font-size:13px;font-weight:600;transition:opacity .2s,transform .2s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,8px)}.toast.show{opacity:1;transform:translate(-50%)}
