:root{--font-base: Inter, Pretendard, system-ui, -apple-system, sans-serif;--text-base: #888888;--text-strong: #B6B6B6;--text-muted: #6F6F6F;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--panel-h: 540px;--border-subtle: #252528;--radius-6: 12px;--radius-4: 8px;--shadow-1: 0 8px 24px rgba(0,0,0,.25);--brand-pink: #FF3DAE;--hover-cyan: #17E1BC;--danger-fg: #FF6B6B;--warn-fg: #EBCB4E;--ok-fg: #17E1BC;--user-el: #A6FF00;--user-ot: #FF835C;--tag-album: #EA6DC9;--tag-track: #8BB4DF;--tag-deadline: #17E1BC;--item-gap: var(--sp-3);--panel-bottom-gap: 56px}:root{--bg: #0C0C0E;--surface-2: #101012;--surface-1: #151517}:root[data-theme=light]{--bg: #F7F3E9;--surface-2: #F3EBDD;--surface-1: #FFF8EF;--border-subtle: #D9CCBC}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-8);align-items:stretch}.card{display:flex;flex-direction:column;min-height:var(--panel-h);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-6);box-shadow:var(--shadow-1);color:var(--text-base)}.card:hover{border-color:var(--hover-cyan)}.card-header{display:grid;grid-template-columns:1fr auto;align-items:center;padding:var(--sp-6) var(--sp-6) var(--sp-4);border-bottom:1px solid var(--border-subtle)}.card-title{font-size:16px;font-weight:700;color:var(--text-strong)}.card-content{position:relative;display:grid;grid-template-rows:auto 0;padding:var(--sp-6);padding-bottom:calc(var(--sp-6) + var(--panel-bottom-gap))}.card-list{display:grid;row-gap:var(--item-gap)}.sr-item{display:grid;grid-template-columns:24px var(--sp-4) 1fr auto;align-items:center;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-4);padding:var(--sp-5) var(--sp-6);min-height:60px;color:var(--text-base);box-sizing:border-box}.sr-item__avatar{width:24px;height:24px;display:grid;place-items:center;color:#888;background:transparent!important;border-radius:0!important}.sr-item__title{grid-column:3/4;font-size:14px;font-weight:600;line-height:1.4;color:var(--text-base);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sr-item__desc{grid-column:3/4;font-size:14px;line-height:1.4;color:var(--text-base);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sr-item__meta{grid-column:4/5;display:grid;grid-auto-flow:row;justify-items:end;align-items:center;row-gap:6px;padding-left:var(--sp-4);white-space:nowrap}.sr-item__time{font-size:12px;color:var(--text-muted);white-space:nowrap}.sr-item--ghost{visibility:hidden;min-height:60px;padding:var(--sp-5) var(--sp-6);border:1px solid transparent;border-radius:var(--radius-4)}.sr-item__badge{display:inline-flex;align-items:center;justify-content:center;height:18px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:600;line-height:1;letter-spacing:.2px;box-sizing:border-box;background:transparent;border:1px solid currentColor;color:currentColor}.user-badge{min-width:28px;text-align:center}.badge-el{color:var(--user-el)}.badge-ot{color:var(--user-ot)}.badge-high,.badge-urgent{color:var(--danger-fg)}.badge-medium,.badge-warning{color:var(--warn-fg)}.badge-low,.badge-normal{color:var(--ok-fg)}.badge-album{color:var(--tag-album)}.badge-track{color:var(--tag-track)}.badge-deadline{color:var(--tag-deadline)}.sr-item__badge.retry-btn{border:none;background:var(--brand-pink);color:#fefdf6;cursor:pointer}.sr-item__badge.retry-btn:hover{background:var(--hover-cyan);color:#000}.sr-item__badge.retry-btn:focus-visible{outline:2px solid var(--hover-cyan);outline-offset:2px}.sr-item__badge.retry-btn:active{transform:translateY(1px)}.sr-item__badge.retry-btn[disabled],.sr-item__badge.retry-btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.card-link{position:absolute;left:0;right:0;bottom:calc(var(--panel-bottom-gap) / 2);display:grid;place-items:center}.card-link a{color:var(--brand-pink);font-weight:700;text-decoration:none}.card-link a:hover{color:var(--hover-cyan)}.sr-container{max-width:1200px;margin:0 auto;padding:0 var(--sp-6)}body{margin:0;padding:0;background:var(--bg);color:var(--text-base);font-family:var(--font-base);line-height:1.5}@media (max-width: 1200px){.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:var(--sp-6)}}@media (max-width: 768px){.dashboard-grid{grid-template-columns:1fr;gap:var(--sp-4)}.sr-container{padding:0 var(--sp-4)}}
