.x-app p{margin:4px 0}
.x-app input:not([type=checkbox]):not([type=radio]):not([type=range]),.x-app select{width:100%;min-width:0;box-sizing:border-box;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text);font:inherit;font-size:.88rem}
.x-form{display:flex;flex-direction:column;gap:8px;margin:0 0 12px}
.x-form label{display:flex;flex-direction:column;gap:4px;font-size:.82rem;color:var(--muted);min-width:0}
.x-app label.x-chk{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:.85rem;color:var(--text);cursor:pointer}
.x-chk input{accent-color:var(--o);flex:none}
.x-inl{flex-direction:row;flex-wrap:wrap;align-items:flex-end}
.x-inl label{flex:1 1 180px}
.x-g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.x-g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.x-form label.x-rng{flex-direction:row;align-items:center;gap:10px;color:var(--text)}
.x-rng input{flex:1;accent-color:var(--o)}
.x-rng output{font-weight:600;color:var(--head);min-width:44px}
.x-sizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}
.x-sz{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--text);font:inherit;cursor:pointer;min-width:0}
.x-sz svg{width:54px;height:54px}
.x-sz b{font-size:.82rem;color:var(--head)}
.x-sz small{font-size:.68rem;color:var(--muted)}
.x-sz.x-on{border-color:var(--o);box-shadow:inset 0 0 0 2px var(--o)}
.x-sz .x-mat{fill:var(--bg2);stroke:var(--muted);stroke-width:1}
.x-sz.x-on .x-mat{fill:var(--o);fill-opacity:.25;stroke:var(--o)}
.x-sz .x-pil{fill:var(--card);stroke:var(--muted);stroke-width:.8}
.x-fit{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:12px;background:var(--bg2);border-left:4px solid var(--o);margin-bottom:10px;overflow-wrap:anywhere}
.x-fit b{color:var(--head)}
.x-fit span{font-size:.85rem}
.x-fit u{color:var(--o);font-weight:600}
.x-card{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--card);margin-bottom:10px;overflow-wrap:anywhere}
.x-card > b{color:var(--head)}
.x-off{opacity:.55}
.x-done{opacity:.65}
.x-rh,.x-oh{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.x-rh b,.x-oh b{color:var(--head)}
.x-star{font-style:normal;font-size:.7rem;color:var(--o);border:1px solid var(--o);border-radius:20px;padding:1px 8px;white-space:nowrap}
.x-dots{display:flex;gap:6px;margin:6px 0}
.x-dots i,.x-sw{display:inline-block;width:18px;height:18px;border-radius:50%;background:var(--c);border:1px solid var(--line);position:relative}
.x-dots i.x-gone{opacity:.35}
.x-dots i.x-gone::after{content:'';position:absolute;left:-2px;right:-2px;top:50%;border-top:2px solid var(--muted);transform:rotate(-45deg)}
.x-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.x-row .btn{font-size:.82rem}
.x-cmp,.x-two,.x-ba{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0}
.x-ba ul{margin:6px 0 0;padding-left:18px;font-size:.85rem}
.x-box{display:flex;flex-direction:column;gap:3px;padding:10px;border-radius:10px;background:var(--bg2);min-width:0;overflow-wrap:anywhere}
.x-box > b{color:var(--head)}
.x-two .x-box > b{font-size:1.7rem;line-height:1.1}
.x-bad{box-shadow:inset 0 0 0 2px var(--o)}
.x-rate{display:grid;grid-template-columns:84px minmax(0,1fr);gap:6px;align-items:center;font-size:.72rem;color:var(--muted)}
.x-rate i{display:block;height:6px;border-radius:3px;background:var(--line);overflow:hidden}
.x-rate u{display:block;height:100%;background:var(--o)}
.x-cols{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}
.x-csw{display:flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--line);border-radius:20px;background:var(--card);color:var(--text);font:inherit;font-size:.8rem;cursor:pointer}
.x-csw i{width:14px;height:14px;border-radius:50%;background:var(--c);border:1px solid var(--line)}
.x-csw.x-on{border-color:var(--o);box-shadow:inset 0 0 0 1px var(--o)}
.x-bed{display:block;width:100%;max-width:320px;margin:4px auto 8px}
.x-bed rect{stroke:var(--line);stroke-width:1}
.x-bed .x-head{fill:var(--muted);fill-opacity:.35}
.x-bed .x-ghost{fill:none;stroke:var(--muted);stroke-dasharray:3 3}
.x-pc{display:grid;grid-template-columns:minmax(0,1fr) 130px 72px;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.x-pc label{grid-row:1;grid-column:1;min-width:0}
.x-pc em{font-style:normal;text-align:right;font-weight:600;color:var(--head)}
.x-pc small{display:block;font-size:.7rem;color:var(--muted)}
.x-pc u{color:var(--o)}
.x-pc .btn{grid-column:1/-1;justify-self:start;font-size:.78rem}
.x-dim{opacity:.5}
.x-ln{display:flex;justify-content:space-between;gap:8px;padding:3px 0;font-size:.9rem}
.x-good{color:var(--o);font-weight:600}
.x-big{font-size:1.05rem;border-top:1px solid var(--line);margin-top:8px;padding-top:8px}
.x-big b{color:var(--head)}
.x-ship{display:flex;flex-direction:column;gap:6px;margin:10px 0}
.x-warn{padding:8px 10px;border-radius:8px;border:1px dashed var(--o);font-size:.84rem;margin:8px 0}
.x-tag{font-size:.7rem;padding:2px 8px;border-radius:20px;background:var(--bg2);color:var(--muted);white-space:nowrap}
.x-of{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px}
.x-ok{color:var(--o);font-weight:600;font-size:.84rem}
.x-tw{overflow-x:auto;margin-bottom:10px}
.x-st{border-collapse:collapse;width:100%;font-size:.8rem}
.x-st th{font-weight:600;color:var(--muted);padding:4px;text-align:left;white-space:nowrap}
.x-st th .x-sw{width:12px;height:12px;vertical-align:middle;margin-right:4px}
.x-st td{padding:2px}
.x-st button{width:100%;min-width:34px;padding:6px 2px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text);font:inherit;font-weight:600;line-height:1.1;cursor:pointer}
.x-st button small{display:block;font-size:.6rem;font-weight:400;color:var(--o)}
.x-st .x-lo{border-color:var(--o)}
.x-st .x-z{background:var(--bg2);color:var(--o);border-color:var(--o)}
.x-st .x-on{box-shadow:0 0 0 2px var(--o)}
.x-low{list-style:none;margin:0 0 8px;padding:0}
.x-low li,.x-tl{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--line);font-size:.84rem;overflow-wrap:anywhere}
.x-low small,.x-tl small{display:block;color:var(--muted);font-size:.7rem}
.x-chips{display:flex;flex-wrap:wrap;gap:10px}
.x-prev{background:var(--bg2);border-radius:12px 12px 12px 2px;padding:8px 10px}
.x-flag{font-size:.8rem;color:var(--o);font-weight:600}
.x-qty{display:flex;align-items:center;gap:6px;flex:none}
.x-qty button{width:28px;height:28px;border-radius:50%;border:1px solid var(--line);background:var(--bg2);color:var(--text);font:inherit;cursor:pointer}
.x-qty b{min-width:24px;text-align:center;color:var(--head)}
@media (max-width:560px){
.x-g3,.x-cmp,.x-ba{grid-template-columns:minmax(0,1fr)}
.x-pc{grid-template-columns:minmax(0,1fr) 72px}
.x-pc select{grid-column:1/-1;grid-row:2}
.x-pc em{grid-row:1;grid-column:2}
.x-pc .btn{grid-row:3}
.x-two .x-box > b{font-size:1.4rem}
}