.x-shots{display:grid;gap:.6rem}
.x-shot,.x-art,.x-card,.x-portal{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:.75rem;margin-bottom:.6rem;min-width:0;overflow-wrap:anywhere}
.x-shot.x-late{border-color:var(--o)}
.x-sh{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem .6rem}
.x-sh b{color:var(--head)}
.x-chip{margin-left:auto;font-style:normal;font-size:.7rem;padding:.12rem .55rem;border-radius:99px;border:1px solid var(--line);color:var(--muted);white-space:nowrap}
.x-chip.x-rev{border-color:var(--o);color:var(--o)}
.x-chip.x-blk{border:1px dashed var(--head);color:var(--head)}
.x-chip.x-ok{background:var(--bg2)}
.x-pp{display:flex;gap:3px;margin:.5rem 0}
.x-pp i{flex:1 1 0;min-width:0;font-style:normal;font-size:.6rem;text-align:center;padding:.22rem 0;border-radius:4px;background:var(--bg2);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.x-pp .x-on{background:var(--o);color:var(--card);opacity:.5}
.x-pp .x-now{background:var(--o);color:var(--card);font-weight:600}
.x-row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin:.3rem 0}
.x-row select{max-width:100%}
.x-sm.btn{padding:.35rem .7rem;font-size:.78rem}
.x-bad{color:var(--o);font-weight:600}
.x-tag{display:inline-block;font-size:.72rem;padding:.1rem .45rem;margin:.15rem .25rem 0 0;border:1px solid var(--line);border-radius:6px}
.x-task{display:flex;gap:.5rem;align-items:center;justify-content:space-between;border-top:1px dashed var(--line);padding-top:.4rem;margin-top:.4rem;font-size:.8rem}
.x-task span{min-width:0;overflow-wrap:anywhere}
.x-day{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.7rem}
.x-day .dk-prog{flex-basis:100%}
.x-url{display:flex;flex-wrap:wrap;gap:.4rem;font-size:.72rem;color:var(--muted);background:var(--bg2);border-radius:8px;padding:.3rem .6rem;margin-bottom:.5rem;overflow-wrap:anywhere}
.x-url span{color:var(--o)}
.x-url em{margin-left:auto;font-style:normal}
.x-frames{display:grid;gap:.4rem;margin:.5rem 0}
.x-frames.x-two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.x-fr{position:relative;border-radius:8px;overflow:hidden;background:var(--bg2);color:var(--text);cursor:crosshair}
.x-fr svg{display:block;width:100%;height:auto}
.x-wm{position:absolute;right:.4rem;bottom:.25rem;font-size:.6rem;color:var(--muted);letter-spacing:.04em}
.x-pin{position:absolute;width:26px;height:26px;margin:-13px 0 0 -13px;border:2px solid var(--o);border-radius:50%;pointer-events:none}
.x-pin.x-new{border-style:dashed;animation:x-pop .4s}
@keyframes x-pop{from{transform:scale(.3);opacity:0}to{transform:none;opacity:1}}
.x-scrub{display:flex;gap:.5rem;align-items:center;font-size:.8rem}
.x-scrub input{flex:1;min-width:0}
.x-marks{position:relative;height:8px;margin:.2rem 0 .5rem;background:var(--bg2);border-radius:4px}
.x-marks i{position:absolute;top:0;width:4px;height:8px;margin-left:-2px;background:var(--o);border-radius:2px}
.x-note{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.4rem}
.x-note input{flex:1 1 180px;min-width:0}
.x-note input,.x-in,.x-g3 select,.x-row select,.x-q select{font:inherit;font-size:.85rem;padding:.4rem .5rem;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text)}
.x-act{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}
.x-warn{border-left:3px solid var(--o);padding:.4rem .6rem;background:var(--bg2);border-radius:6px;font-size:.8rem;margin:.5rem 0}
.x-ok{font-size:.8rem;color:var(--muted)}
.x-empty{text-align:center}
.x-rounds{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:.35rem;margin-bottom:.8rem}
.x-rounds div{background:var(--bg2);border-radius:8px;padding:.4rem;text-align:center}
.x-rounds b{display:block;color:var(--head)}
.x-rounds span{font-size:.68rem;color:var(--muted)}
.x-rounds .x-over{outline:2px solid var(--o)}
.x-rounds .x-over b{color:var(--o)}
.x-in{width:100%;box-sizing:border-box;margin-bottom:.5rem}
.x-log{display:grid;gap:.4rem;margin-bottom:.6rem}
.x-rec{background:var(--bg2);border-radius:8px;padding:.5rem .6rem;font-size:.8rem;overflow-wrap:anywhere;margin-bottom:.4rem}
.x-rec small{display:block;margin:.15rem 0}
.x-rec .btn{margin-top:.3rem}
.x-q label{display:block;font-size:.8rem;margin-bottom:.5rem}
.x-q select{width:100%;display:block;margin-top:.2rem}
.x-q .x-scrub{display:flex}
.x-g2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.5rem}
.x-ex label{display:flex;gap:.4rem;align-items:baseline;margin-bottom:.3rem}
.x-ql{border-top:1px solid var(--line);margin:.6rem 0;padding-top:.4rem}
.x-ql p{display:flex;justify-content:space-between;gap:.6rem;font-size:.8rem;margin:.2rem 0}
.x-ql p b{white-space:nowrap;color:var(--head)}
.x-ql .x-tot{border-top:1px solid var(--line);padding-top:.4rem;font-size:.92rem}
.x-ql .x-tot b{color:var(--o)}
.x-g3{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,.7fr) auto;gap:.4rem;margin-top:.6rem}
.x-ck label{display:flex;gap:.4rem;font-size:.8rem;margin:.2rem 0}
.x-link{font-size:.78rem;color:var(--o);overflow-wrap:anywhere;margin:.3rem 0}
.x-found{outline:2px solid var(--o);animation:x-pulse 1s 2}
@keyframes x-pulse{50%{transform:scale(1.02)}}
.x-asset{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:.55rem 0}
.x-asset>div:first-child{min-width:0;flex:1 1 180px}
.x-asset b{color:var(--head)}
.x-asset span,.x-asset small{display:block;overflow-wrap:anywhere}
.x-btns{display:flex;gap:.3rem;flex-wrap:wrap}
@media (max-width:560px){
.x-g3{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.x-g2{grid-template-columns:minmax(0,1fr)}
.x-frames.x-two{grid-template-columns:minmax(0,1fr)}
.x-pp i{font-size:.55rem}
.x-task{flex-wrap:wrap}
}