.x-days{display:flex;gap:4px;flex-wrap:wrap;margin:0 0 10px}
.x-days button{flex:1 1 0;min-width:40px;padding:6px 4px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text);font:inherit;font-size:.8rem;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:1px}
.x-days button small{font-size:.68rem;color:var(--muted)}
.x-days button.on{border-color:var(--o);color:var(--o);font-weight:600;box-shadow:inset 0 0 0 1px var(--o)}
.x-pills button{flex:1 1 auto}
.x-tl{background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:8px}
.x-row,.x-ax{display:grid;grid-template-columns:84px minmax(0,1fr);gap:6px;align-items:center}
.x-row{margin:4px 0}
.x-rl{font-size:.74rem;color:var(--muted);overflow-wrap:anywhere}
.x-tr{position:relative;height:30px;background:var(--card);border-radius:6px;background-image:repeating-linear-gradient(90deg,var(--line) 0 1px,transparent 1px calc(100% / 14));overflow:hidden}
.x-ax div{position:relative;height:14px}
.x-ax em{position:absolute;top:0;font-size:.64rem;color:var(--muted);font-style:normal;white-space:nowrap}
.x-b{position:absolute;top:3px;bottom:3px;border-radius:5px;background:color-mix(in srgb,var(--o) 40%,var(--card));border-left:3px solid var(--o);color:var(--head);font-size:.64rem;padding:0 4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;line-height:22px;box-sizing:border-box}
.x-b.ctr{background:color-mix(in srgb,var(--muted) 30%,var(--card));border-left-color:var(--muted)}
.x-b.req{background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--o) 25%,var(--card)) 0 6px,var(--card) 6px 12px);border:1px dashed var(--o)}
.x-b.bad{border:2px solid #d33;background:color-mix(in srgb,#d33 25%,var(--card))}
.x-b.ghost{border:2px dashed var(--head);background:color-mix(in srgb,var(--head) 8%,transparent);z-index:2}
.x-b.ghost.bad{border-color:#d33}
.x-leg{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;font-size:.68rem;color:var(--muted);margin:6px 0 0}
.x-leg i{display:inline-block;width:12px;height:10px;border-radius:3px;margin-right:-6px}
.x-leg i.c{background:color-mix(in srgb,var(--o) 40%,var(--card));border-left:3px solid var(--o)}
.x-leg i.p{background:color-mix(in srgb,var(--muted) 30%,var(--card))}
.x-leg i.r{border:1px dashed var(--o)}
.x-leg i.x{border:2px solid #d33}
.x-dl{list-style:none;margin:8px 0 0;padding:0;font-size:.8rem}
.x-dl li{padding:3px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.x-bk{border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--card);margin-bottom:8px}
.x-bh{display:flex;justify-content:space-between;gap:4px 8px;flex-wrap:wrap;color:var(--head);overflow-wrap:anywhere}
.x-bk p{margin:4px 0}
.x-stg{display:flex;gap:3px;flex-wrap:wrap;margin:6px 0}
.x-stg span{font-size:.64rem;padding:2px 7px;border-radius:20px;border:1px solid var(--line);color:var(--muted)}
.x-stg span.on{border-color:var(--o);color:var(--o)}
.x-warn{font-size:.78rem;color:#d33;overflow-wrap:anywhere}
.x-bf{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.x-form{background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;gap:8px;margin-bottom:12px}
.x-form h4{margin:0;color:var(--head)}
.x-form input,.x-form select,.x-tab input,.x-tab select,.x-ph select,.x-role,.x-bh select,.x-q select{width:100%;min-width:0;box-sizing:border-box;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text);font:inherit;font-size:.85rem}
.x-tab input[type=checkbox]{width:auto;margin-right:4px}
.x-r2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}
.x-r3{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);gap:6px}
.x-q{border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--card);font-size:.84rem;overflow-wrap:anywhere}
.x-q.ok{border-color:#2a8a4a}
.x-q.bad{border-color:#d33}
.x-q .btn{padding:4px 10px;font-size:.78rem}
.x-q dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;margin:8px 0 4px;font-size:.8rem}
.x-q dd{margin:0;text-align:right;font-weight:600;color:var(--head)}
.x-q p{margin:4px 0 0}
.x-chip{display:inline-block;font-size:.68rem;padding:2px 8px;border-radius:20px;border:1px solid var(--line);white-space:nowrap}
.x-chip.ok{color:#2a8a4a;border-color:#2a8a4a}
.x-chip.warn{color:#c77a00;border-color:#c77a00}
.x-chip.bad{color:#d33;border-color:#d33}
.x-ok{color:#2a8a4a;font-size:.8rem;font-weight:600}
.x-regs,.x-sh{list-style:none;margin:0 0 10px;padding:0}
.x-regs li,.x-sh li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:8px 0;border-bottom:1px solid var(--line);font-size:.84rem}
.x-regs li>div,.x-sh li>div{flex:1 1 160px;min-width:0;overflow-wrap:anywhere}
.x-regs small,.x-sh small,.x-os small{display:block;color:var(--muted);font-size:.72rem}
.x-sh li.open>span{color:#d33;font-weight:600}
.x-sh select{max-width:100%;padding:3px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--text);font:inherit;font-size:.75rem}
.x-roll{border:1px dashed var(--o);border-radius:10px;padding:10px}
.x-tw{overflow-x:auto;margin-bottom:10px}
.x-t{width:100%;border-collapse:collapse;font-size:.76rem}
.x-t th,.x-t td{text-align:left;padding:6px;border-bottom:1px solid var(--line);vertical-align:top}
.x-t th{color:var(--muted);font-weight:600}
.x-names{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0}
.x-names span{font-size:.7rem;padding:2px 8px;border-radius:20px;background:var(--bg2);color:var(--text)}
.x-names span.w{background:transparent;border:1px dashed var(--muted);color:var(--muted)}
.x-btns{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.x-col{flex-direction:column}
.x-tab{border:6px solid var(--deep);border-radius:16px;padding:10px;background:var(--bg2);display:grid;gap:8px;margin-bottom:12px}
.x-tabh{font-weight:600;font-size:.82rem;color:var(--head)}
.x-tab p{margin:0}
.x-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:6px}
.x-grid button{padding:8px 4px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text);font:inherit;font-size:.76rem;cursor:pointer;overflow-wrap:anywhere}
.x-grid button.on{border-color:#2a8a4a;color:#2a8a4a;cursor:default}
.x-phone{max-width:300px;margin:0 auto 12px;border:6px solid var(--deep);border-radius:22px;padding:10px;background:var(--card);box-sizing:border-box}
.x-ph{font-weight:600;font-size:.8rem;margin-bottom:6px;color:var(--head);display:grid;gap:4px}
.x-sms{background:var(--bg2);border-radius:14px 14px 14px 4px;padding:8px 10px;font-size:.8rem;overflow-wrap:anywhere;margin-top:6px}
.x-os{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:6px 0;border-bottom:1px solid var(--line);font-size:.8rem}
.x-os.no{opacity:.65}
.x-os em{font-size:.68rem;color:#d33;font-style:normal;text-align:right}
.x-os .btn{padding:4px 12px;font-size:.78rem}
.x-web{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--card)}
.x-wh{background:var(--bg2);font-size:.7rem;padding:5px 8px;color:var(--muted);overflow-wrap:anywhere}
.x-wh span{color:var(--o);margin-right:6px}
.x-web p{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;margin:0;padding:7px 10px;border-top:1px solid var(--line);font-size:.8rem}
.x-web p small{grid-column:1;color:var(--muted)}
.x-web em{grid-row:1/3;grid-column:2;align-self:center;font-style:normal;font-size:.72rem;color:var(--o);font-weight:600}
.x-bar{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:6px;align-items:center;font-size:.76rem;margin:4px 0}
.x-bar span{overflow-wrap:anywhere}
.x-ba{height:8px;background:var(--bg2);border-radius:4px;overflow:hidden}
.x-ba i{display:block;height:100%;background:var(--o)}
@media (max-width:560px){
.x-row,.x-ax{grid-template-columns:62px minmax(0,1fr)}
.x-r3{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.x-r3 select:first-child{grid-column:1/-1}
.x-bar{grid-template-columns:84px minmax(0,1fr) auto}
.x-phone{max-width:100%}
}