.x-board{display:grid;grid-template-columns:minmax(70px,1.1fr) repeat(5,minmax(0,1fr));gap:4px;margin:.4rem 0 1rem}
.x-bh{font-size:.72rem;font-weight:600;color:var(--muted);text-align:center;text-transform:uppercase}
.x-cr{background:var(--bg2);border-radius:8px;padding:.35rem .45rem;display:flex;flex-direction:column;min-width:0}
.x-cr b{color:var(--head);font-size:.82rem}
.x-cr small{font-size:.66rem;color:var(--muted);overflow-wrap:anywhere;line-height:1.2}
.x-cell{border:1px dashed var(--line);border-radius:8px;min-height:50px;padding:3px;display:flex;min-width:0}
.x-cell.x-over{border-color:var(--o);background:var(--bg2)}
.x-lk{opacity:.6;background:repeating-linear-gradient(45deg,transparent 0 6px,var(--bg2) 6px 12px)}
.x-chip{flex:1;min-width:0;border:1px solid var(--line);border-left:4px solid var(--o);background:var(--card);color:var(--text);border-radius:6px;padding:3px 5px;text-align:left;cursor:grab;font:inherit;font-size:.74rem;line-height:1.25;display:flex;flex-direction:column;overflow:hidden}
.x-chip b{color:var(--head)}
.x-chip small{color:var(--muted);font-size:.66rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.x-chip.x-req{border-style:dashed;border-left:4px solid var(--muted)}
.x-chip.x-bad{border-left-color:#d9443a;background:rgba(217,68,58,.12)}
.x-chip.x-dn{border-left-color:#2e9e5b;opacity:.75}
.x-chip.x-on{outline:2px solid var(--o);outline-offset:1px}
.x-reqs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:.3rem 0}
.x-reqs .x-chip{flex:0 0 auto;min-width:92px}
.x-card,.x-portal,.x-phone,.x-inv,.x-sheet{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:.9rem;margin-bottom:1rem;min-width:0;overflow-wrap:anywhere;color:var(--text)}
.x-dh{display:flex;justify-content:space-between;gap:.5rem;flex-wrap:wrap;align-items:center;margin-bottom:.3rem}
.x-dh b{color:var(--head)}
.x-st{font-size:.72rem;padding:2px 8px;border-radius:99px;background:var(--bg2);color:var(--muted);font-weight:600}
.x-fit{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:8px;align-items:center;padding:.45rem 0;border-top:1px solid var(--line);font-size:.82rem}
.x-fit b{color:var(--head)}
.x-fit span{color:var(--muted);font-size:.74rem;display:block}
.x-fit em,.x-pr em{font-style:normal;font-size:.76rem;display:block}
.x-fit u{text-decoration:none;font-size:.74rem;color:var(--o);font-weight:600}
.x-ok em{color:#2e9e5b}.x-amb em{color:#c98a12}.x-no em{color:#d9443a}
.x-pr{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.6fr) auto;gap:4px 10px;align-items:center;padding:.45rem 0;border-top:1px solid var(--line);font-size:.82rem}
.x-pr b{color:var(--head)}
.x-acts{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}
.x-acts .btn,.x-fit .btn,.x-pr .btn{font-size:.8rem}
.x-form{display:grid;gap:.5rem}
.x-form label,.x-sel{display:flex;flex-direction:column;font-size:.75rem;color:var(--muted);gap:2px;min-width:0}
.x-sel{margin-bottom:.7rem}
.x-form input,.x-form select,.x-sel select{width:100%;min-width:0;box-sizing:border-box;padding:.45rem .55rem;border:1px solid var(--line);border-radius:8px;background:var(--bg2);color:var(--text);font:inherit;font-size:.85rem}
.x-g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}
.x-g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}
.x-live{font-size:.82rem;padding:.55rem .7rem;border-radius:8px;background:var(--bg2);color:var(--text)}
.x-kv{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,2fr);gap:5px 10px;font-size:.82rem;margin:.5rem 0}
.x-kv dt{color:var(--muted)}
.x-kv dd{margin:0;color:var(--text)}
.x-h4{margin:.6rem 0 .2rem;font-size:.85rem;color:var(--head)}
.x-sheet ul{margin:.2rem 0 .5rem 1.1rem;padding:0;font-size:.82rem}
.x-signs{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.6rem}
.x-signs span{font-size:.74rem;padding:3px 9px;border-radius:99px;border:1px dashed var(--line);color:var(--muted)}
.x-signs .x-y{border-style:solid;border-color:#2e9e5b;color:#2e9e5b}
.x-pm{border-top:1px solid var(--line);padding:.6rem 0;font-size:.82rem;overflow-wrap:anywhere}
.x-pm b{display:block;color:var(--head)}
.x-cc{padding:.55rem 0;border-top:1px solid var(--line)}
.x-cc:first-child{border-top:0}
.x-cc .dk-cap{margin:.35rem 0 .2rem}
.x-tix{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.x-tix span{font-size:.7rem;font-weight:600;padding:2px 7px;border-radius:6px;background:var(--bg2);color:var(--text)}
.x-tix .x-soon{background:rgba(201,138,18,.18);color:#c98a12}
.x-tix .x-exp{background:rgba(217,68,58,.15);color:#d9443a}
.x-tix .btn{font-size:.72rem;padding:.2rem .6rem}
.x-fl{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;gap:.6rem;align-items:center;padding:.6rem;border-top:1px solid var(--line);border-radius:8px}
.x-fl:first-child{border-top:0}
.x-fl b{color:var(--head);display:block}
.x-fl small{display:block;font-size:.72rem}
.x-fl .x-acts{margin:0}
.x-red{color:#d9443a}
.x-dlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem;margin-bottom:1rem}
.x-dl{display:block;text-align:left;font:inherit;background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:.55rem .7rem;cursor:pointer;min-width:0}
.x-dl b{display:block;color:var(--head);font-size:.82rem}
.x-dl small{color:var(--muted);font-size:.72rem}
.x-dl.x-on{border-color:var(--o);box-shadow:0 0 0 1px var(--o)}
.x-phone{max-width:360px;border:6px solid var(--deep);border-radius:24px}
.x-pt{display:flex;justify-content:space-between;gap:.5rem;font-weight:600;color:var(--head);font-size:.85rem;padding-bottom:.5rem;margin-bottom:.6rem;border-bottom:1px solid var(--line)}
.x-pt span{color:var(--muted);font-weight:400}
.x-sig{min-height:70px;border:1px dashed var(--line);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:.6rem 0;color:var(--muted);background:var(--bg2)}
.x-sig svg{width:140px;height:40px;stroke:var(--head)}
.x-row{display:flex;gap:.5rem;grid-template-columns:none}
.x-row input{flex:1}
.x-inv table{width:100%;border-collapse:collapse;font-size:.8rem}
.x-inv td{padding:.35rem .2rem;border-top:1px solid var(--line);vertical-align:top}
.x-inv td:last-child{text-align:right;white-space:nowrap}
.x-inv .x-tot td{font-weight:700;color:var(--head);border-top:2px solid var(--line)}
@media (max-width:560px){
.x-board{grid-template-columns:48px repeat(5,minmax(0,1fr));gap:3px}
.x-cr{padding:.3rem}
.x-cr small,.x-chip small{display:none}
.x-chip{font-size:.66rem;padding:2px 3px;border-left-width:3px}
.x-cell{min-height:40px;padding:2px}
.x-g3{grid-template-columns:repeat(2,minmax(0,1fr))}
.x-fit{grid-template-columns:44px minmax(0,1fr) auto;gap:6px}
.x-pr{grid-template-columns:minmax(0,1fr) auto}
.x-pr em{grid-column:1}
.x-pr .btn{grid-column:2;grid-row:1/3}
.x-fl{grid-template-columns:minmax(0,1fr)}
.x-kv{grid-template-columns:minmax(0,1fr)}
.x-kv dd{margin-bottom:.3rem}
.x-phone{border-width:4px}
}