:root{color-scheme:dark;--bg:#0b0c12;--panel:#111325;--card:#15183a;--text:#f3f4ff;--muted:#c4c6e4;--border:rgba(255,255,255,.1);--accent:#6b5cff;--danger:#e0565b;--ok:#56d29b;--warn:#f2c94c;--radius:16px;--radius-sm:12px;--shadow: 0 10px 30px rgba(0,0,0,.3);--tap: 44px;--topbar-h: calc(96px + env(safe-area-inset-top)) ;--ctrl-min-h: calc(var(--tap) + 22px);--act-min-h: 96px}*{box-sizing:border-box}html,body{height:100%;overflow-x:hidden}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}::placeholder{color:#b7b9d8b3}.srOnly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0;white-space:normal}.topbar{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;padding:calc(14px + env(safe-area-inset-top)) 16px 14px;border-bottom:1px solid var(--border);position:fixed;top:0;left:0;right:0;background:var(--bg);z-index:100;box-shadow:var(--shadow);min-height:var(--topbar-h);box-sizing:border-box}.brand{display:flex;gap:12px;align-items:center;min-width:240px}.logoLink{display:inline-flex;align-items:center;justify-content:center;color:inherit;text-decoration:none}.logoLink:focus-visible{outline:none;box-shadow:0 0 0 3px #6b5cff40;border-radius:12px}.brandText{display:flex;flex-direction:column;gap:2px}.logo{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#6b5cff2e;border:1px solid rgba(107,92,255,.35);font-weight:900}.title{font-weight:900;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subtitle{font-size:12px;color:var(--muted);max-width:520px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.7em}.controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:stretch;justify-content:flex-end;padding:8px;border:1px solid var(--border);border-radius:14px;background:#ffffff08}.controlsCard{padding:10px}.controlsCard .controls{grid-template-columns:1fr;padding:0;border:0;background:transparent}.controlsCard .ctrl{gap:6px}#lastCheckedRow{min-height:var(--tap)}#lastCheckedRow[hidden]{display:flex;visibility:hidden}.ctrl{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted);position:relative;min-width:0;min-height:var(--ctrl-min-h)}select,input{min-height:var(--tap);background:#ffffff0f;border:1px solid var(--border);color:var(--text);border-radius:12px;padding:10px 12px;outline:none}select:focus,input:focus,button:focus,a:focus,.daySummary:focus,.stageSummary:focus{outline:none;box-shadow:0 0 0 3px #6b5cff40;border-color:#6b5cff8c}select:focus-visible,input:focus-visible,button:focus-visible,a:focus-visible,.selectTrigger:focus-visible,.menuItem:focus-visible,.menuClose:focus-visible{outline:none;box-shadow:0 0 0 3px #6b5cff40;border-color:#6b5cff8c}button{min-height:var(--tap)}.selectNative{position:relative;width:100%;height:auto;opacity:1;pointer-events:auto}.selectNative.isHidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0;opacity:0;pointer-events:none}.selectWrap{position:relative;min-width:92px;width:100%}.selectTrigger{min-height:var(--tap);padding:10px 34px 10px 12px;border-radius:12px;border:1px solid var(--border);background:#ffffff0f;color:var(--text);font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:space-between;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selectTrigger:after{content:"";position:absolute;right:12px;width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg)}.selectWrap.isOpen .selectTrigger:after{transform:rotate(-135deg)}.selectList{position:absolute;top:calc(100% + 6px);right:0;min-width:100%;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:6px;display:none;box-shadow:var(--shadow);z-index:50;max-height:240px;overflow:auto}.selectWrap.isOpen .selectList{display:flex;flex-direction:column;gap:4px}.selectOption{padding:8px 10px;border-radius:10px;font-size:12px;color:var(--text);cursor:pointer;background:transparent}.selectList:focus{outline:none;box-shadow:0 0 0 3px #6b5cff40;border-color:#6b5cff8c}.selectOption:hover{background:#ffffff14}.selectOption.isActive,.selectOption[aria-selected=true]{background:#6b5cff38;color:var(--text)}.pill{border:1px solid var(--border);background:#ffffff0d;padding:8px 10px;border-radius:12px;font-size:12px;color:var(--muted);line-height:1.2;min-height:var(--tap);max-width:100%;text-align:left;display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.pillLink{color:inherit;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.layout{display:grid;grid-template-columns:1.35fr .65fr;gap:14px;padding:calc(14px + var(--topbar-h, 72px)) calc(14px + env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom)) calc(14px + env(safe-area-inset-left))}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:14px}.side{display:flex;flex-direction:column;gap:12px}.panel.side{min-height:980px}.side .card{padding:12px}.side .cardTitle{margin-bottom:8px}.introCard{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:14px;border:1px solid var(--border);background:linear-gradient(180deg,#6b5cff1a,#ffffff05);margin-bottom:12px;min-height:190px}.introContent{min-height:150px}#mobileControlsAnchor,#mobileExportAnchor{min-height:0}#controlsCard,#plannerExportBox{min-height:220px}.menuBtn{width:44px;height:44px;border-radius:12px;border:1px solid var(--border);background:#ffffff0f;color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;align-self:center}.menuIcon{width:18px;height:2px;background:currentColor;position:relative;display:block;border-radius:2px}.menuIcon:before,.menuIcon:after{content:"";position:absolute;left:0;width:18px;height:2px;background:currentColor;border-radius:2px}.menuIcon:before{top:-6px}.menuIcon:after{top:6px}.introIcon{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#6b5cff2e;border:1px solid rgba(107,92,255,.35);font-weight:900;font-size:14px}.introContent{display:flex;flex-direction:column;gap:6px;max-width:900px}.introTitle{font-size:16px;font-weight:900;letter-spacing:.2px}.introTitle{min-height:22px}.introSubtitle{color:var(--text);font-size:13px;line-height:1.5;min-height:40px}.introOnboarding{font-size:12px;min-height:28px}.toolbar{display:flex;gap:10px;align-items:flex-end;margin:10px 0 14px;flex-wrap:wrap}.toolbar{min-height:calc(var(--ctrl-min-h) + 18px)}.toolbar .ctrl{min-width:140px}.toolbar .searchCtrl{flex:1 1 260px}.toolbar .searchCtrl input{width:100%}.onboardingHint{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--border);background:#ffffff0a;border-radius:12px;font-size:13px;margin:6px 0 12px}.onboardingHint[hidden]{display:none}.onboardingHintText{color:var(--muted);line-height:1.4}.onboardingHintDismiss{border:1px solid var(--border);background:#ffffff0f;color:var(--text);border-radius:10px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.onboardingHintDismiss:hover{background:#ffffff1a}.onboardingHintDismiss:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.activeFilters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:#ffffff08;margin-bottom:12px;min-height:var(--tap)}.activeFilters[hidden]{display:flex;visibility:hidden}.activeFiltersLabel{font-size:12px;color:var(--muted);font-weight:700}.filterChip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:#ffffff0f;font-size:12px;color:var(--text)}.filterChip button{width:var(--tap);height:var(--tap);min-width:var(--tap);min-height:var(--tap);border-radius:999px;border:1px solid var(--border);background:#ffffff14;color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;line-height:1}.changesBox{margin:10px 0 14px}#changesBox{min-height:300px}#changesBox[hidden]{display:block;visibility:hidden}.changesSummary{font-size:13px;color:var(--muted)}.changesSummary strong{color:var(--text)}.changesDetails{margin-top:8px}.changesDetails summary{cursor:pointer;color:var(--text);font-weight:700}.changesDetailsBody{margin-top:8px;display:flex;flex-direction:column;gap:10px;font-size:12px;color:var(--muted);background:#ffffff08;border:1px solid var(--border);border-radius:12px;padding:10px}.changesDetailSection{display:flex;flex-direction:column;gap:6px}.changesDetailTitle{font-size:12px;color:var(--muted)}.changesDetailList{display:flex;flex-direction:column;gap:6px;max-height:280px;overflow:auto;padding-right:2px}.changesDetailItem{background:#ffffff0a;border:1px solid var(--border);border-radius:10px;padding:6px 8px;display:flex;flex-direction:column;gap:2px}.changesDetailName{font-weight:700;color:var(--text);line-height:1.2}.changesDetailNameText{color:var(--text)}.changesDetailMeta{font-size:12px;color:var(--muted)}.changesDetailLink{color:inherit;text-decoration:none}.changesDetailLink:hover{color:var(--text);text-decoration:underline}.changesHistory{margin-top:10px}.changesHistoryTitle{font-size:12px;color:var(--muted);margin-bottom:6px}.changesHistoryList{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted);max-height:200px;overflow:auto;padding-right:2px}.changesHistoryItem{display:flex;justify-content:space-between;gap:8px;align-items:center}.changesHistoryItem.isActive .changesHistoryBtn{color:var(--text);font-weight:700}.changesHistoryBtn{background:none;border:0;color:inherit;padding:0;font:inherit;cursor:pointer;text-align:left}.changesHistoryItem strong{color:var(--text)}.changesHistoryBtn:hover{color:var(--text);text-decoration:underline}.changesNoteBody{margin-top:0;font-size:12px;color:var(--muted)}.changesNoteBody p{margin:0 0 8px}.changesNoteBody ul{margin:6px 0 0 16px;padding:0}.changesNoteBody li{margin:4px 0}.exportRow{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.exportRow .btn{flex:1 1 auto;line-height:1.2}.errorBox{margin:10px 0 14px;padding:10px 12px;border-radius:12px;border:1px solid rgba(224,86,91,.35);background:#e0565b1a;color:var(--danger);font-size:13px;min-height:var(--tap)}.errorBox[hidden]{display:block;visibility:hidden}.searchResults{border:1px solid var(--border);border-radius:12px;background:#ffffff08;padding:6px;margin-bottom:12px;max-height:220px;overflow:auto;min-height:var(--tap)}.searchResults[hidden]{display:block;visibility:hidden}.lineupAnchor{height:0;scroll-margin-top:90px}.searchItem{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:10px;cursor:pointer;font-size:13px}.searchItem:hover{background:#ffffff14}.searchMeta{color:var(--muted);font-size:12px}.weekendTabs{display:flex;gap:8px;margin:6px 0 12px}.tabBtn{border:1px solid var(--border);border-radius:999px;padding:8px 12px;font-weight:900;font-size:12px;background:#ffffff0a;color:var(--muted);cursor:pointer;min-height:var(--tap);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tabBtn.isActive{background:#6b5cff33;border-color:#6b5cff73;color:var(--text)}.weekendPanel{display:none}.weekendPanel.isActive{display:block;content-visibility:auto;contain-intrinsic-size:1200px 800px}.weekendHeader{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:8px 0 10px}.weekendHeader .ctrl{min-height:var(--ctrl-min-h);min-width:220px}.weekendTitle{font-weight:900;font-size:18px}.weekendMeta{color:var(--muted);font-size:12px;margin-bottom:8px}.dayGroup{border:1px solid var(--border);border-radius:16px;background:#ffffff08;position:relative}.dayGroup+.dayGroup{margin-top:10px}.dayGroup summary{list-style:none}.dayGroup summary::-webkit-details-marker{display:none}.daySummary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;min-height:44px;background:#6b5cff14;border-bottom:1px solid var(--border)}.daySummaryMain{display:flex;align-items:baseline;gap:10px;flex-wrap:nowrap}.dayTitle{font-weight:900;font-size:15px}.dayTitle,.dayLinkPseudo{white-space:nowrap}.dayCount{font-size:12px;color:var(--muted);min-width:42px;text-align:right;display:inline-block}.daySummaryMeta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;min-width:140px}.dayLink{font-size:12px;color:#a8b3ff;font-weight:600}.dayLinkPseudo{font-size:12px;color:#a8b3ff;font-weight:600;cursor:pointer;text-decoration:none}.dayLinkPseudo:hover{text-decoration:underline}.ratingBreakdown{display:inline-grid;grid-auto-flow:column;grid-auto-columns:minmax(58px,1fr);align-items:center;gap:6px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.ratingBreakdownItem{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:2px 6px;border:1px solid var(--border);border-radius:999px;background:#ffffff0a;line-height:1;min-width:58px;min-height:22px}.ratingBreakdownIcon{display:inline-flex;align-items:center;justify-content:center;width:1.2em;height:1.2em;line-height:1;font-size:12px;font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif;transform:translateY(1px)}.ratingBreakdownCount{display:inline-flex;align-items:center;min-width:2ch;text-align:center;line-height:1}.stageSummary .ratingBreakdown{font-size:10px}@media (max-width: 720px){.ratingBreakdown{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(58px,1fr));row-gap:6px}.daySummaryMeta{min-width:120px}}#lastCheckedPill{overflow-wrap:anywhere}.dayChevron{width:10px;height:10px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform .2s ease}.dayGroup[open] .dayChevron{transform:rotate(-135deg)}.dayBody{padding:12px 12px 14px;display:grid;gap:10px}.dayBodyHeader{display:flex;align-items:center;justify-content:flex-start;margin-bottom:2px}.stageGroup{border:1px solid var(--border);border-radius:12px;background:#ffffff05}.stageGroup summary{list-style:none}.stageGroup summary::-webkit-details-marker{display:none}.stageSummary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;cursor:pointer;min-height:44px}.stageSummaryMain{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stageTitle{font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);font-weight:700}.stageGenre{font-size:11px;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:2px 8px;background:#ffffff0a}.stageCount{font-size:12px;color:var(--muted);min-width:36px;text-align:right;display:inline-block}.stageChevron{width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform .2s ease}.stageGroup[open] .stageChevron{transform:rotate(-135deg)}.stageBody{padding:12px 10px}.slotList{display:flex;flex-direction:column}.slot.isTarget{outline:2px solid rgba(107,92,255,.7);box-shadow:0 0 0 4px #6b5cff40}.list{display:flex;flex-direction:column;gap:10px;content-visibility:auto;contain-intrinsic-size:1200px 800px}.list.isSkeleton{gap:12px}.act{display:flex;justify-content:space-between;gap:12px;padding:12px;margin-bottom:16px;border-radius:14px;border:1px solid var(--border);background:#ffffff0a;min-height:var(--act-min-h)}.act.skeleton{background:#ffffff08}.skeletonMain{flex:1 1 auto;display:flex;flex-direction:column;gap:10px;padding:4px 0}.skeletonLine{height:12px;border-radius:8px;background:#ffffff1a}.skeletonTitle{width:60%}.skeletonMeta{width:40%}.skeletonBadges{min-width:0}.skeletonPill{height:22px;width:88px;border-radius:999px;background:#ffffff1a}.act:hover{background:#ffffff0f}.actName{font-weight:900;font-size:18px}.actNameText{display:inline-block}.actNameLink{color:var(--text);text-decoration:none;display:inline-block;padding:4px 0;min-height:24px}.actNameLink:hover{text-decoration:underline}.actNameLink:focus-visible{outline:2px solid rgba(107,92,255,.7);outline-offset:2px;border-radius:4px}.tmlLink{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a;color:var(--muted);font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.tmlLink:hover{color:var(--text);border-color:#ffffff40;background:#ffffff14}.tmlLink:focus-visible{outline:2px solid rgba(107,92,255,.7);outline-offset:2px;border-radius:999px}.tmlLinkRow{margin:8px 0 2px}.artistHeaderActions{display:flex;align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}.actMeta{color:var(--muted);font-size:12px;margin-top:4px}.badges{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:180px}.badge{grid-area:badge;font-size:11px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:#ffffff0d;color:var(--muted);font-weight:900;white-space:nowrap;min-width:0;text-align:center}.badge.ok{border-color:#56d29b59;color:var(--ok);background:#56d29b1a}.badge.warn{border-color:#f2c94c59;color:var(--warn);background:#f2c94c1a}.badge.bad{border-color:#e0565b59;color:var(--danger);background:#e0565b1a}.inlineFavoritesBar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 12px;padding:8px 10px;border:1px solid var(--border);border-radius:12px;background:#ffffff0a;min-height:56px}.inlineToggle{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.inlineToggleBtn{min-height:40px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a;color:var(--text);font-weight:800;font-size:12px;cursor:pointer;white-space:nowrap}.inlineToggleBtn.isActive{background:#6b5cff40;border-color:#6b5cff73}.inlineProgress{color:var(--muted);font-size:12px;font-weight:700}#ratingProgress{min-height:14px;min-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}#ratingProgress[hidden]{display:inline-block;visibility:hidden}.ratingSelect{grid-area:rating;display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ratingSegmented{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.ratingSegBtn{min-height:40px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a;color:var(--text);font-weight:900;font-size:11px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.ratingSegBtn:hover{background:#ffffff14}.ratingSegBtn .ratingEmoji{font-size:15px;line-height:1}.ratingEmoji{width:1.2em;height:1.2em;display:inline-flex;align-items:center;justify-content:center;line-height:1;font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif}.ratingSegBtn .segLabel{font-size:11px;color:var(--muted)}.ratingSegBtn.isActive{border-color:#6b5cff99;background:#6b5cff2e;box-shadow:0 0 0 2px #6b5cff33,0 0 14px #6b5cff59}.ratingSegBtn[data-rate=liked].isActive{border-color:#56d29b99;background:#56d29b29;box-shadow:0 0 0 2px #56d29b33,0 0 14px #56d29b59}.ratingSegBtn[data-rate=maybe].isActive{border-color:#f2c94cb3;background:#f2c94c29;box-shadow:0 0 0 2px #f2c94c33,0 0 14px #f2c94c59}.ratingSegBtn[data-rate=disliked].isActive{border-color:#e0565bb3;background:#e0565b29;box-shadow:0 0 0 2px #e0565b33,0 0 14px #e0565b59}.ratingSegBtn[data-rate=unrated].isActive{border-color:#fff6;background:#ffffff1f;box-shadow:0 0 0 2px #ffffff1f,0 0 10px #fff3}.playRow{display:flex;justify-content:flex-end;align-items:center;gap:6px}.playBtn{min-height:var(--tap);padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:#ffffff0f;color:var(--text);font-weight:900;font-size:11px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.playBtn:hover{background:#ffffff1a}.playIcon{font-size:12px;line-height:1}.playMoreBtn{min-height:var(--tap);width:var(--tap);border-radius:999px;border:1px solid var(--border);background:#ffffff0f;color:var(--text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-weight:900}.playMoreBtn:hover{background:#ffffff1a}.playMoreIcon{font-size:18px;line-height:1}.playMenu{position:relative;display:flex;flex-direction:column;gap:6px;min-width:220px;padding:10px;border-radius:12px;background:#0c0e18f5;border:1px solid var(--border);box-shadow:0 18px 40px #00000059;margin-left:8px}.playMenuTitle{font-size:12px;color:var(--muted);margin-bottom:4px}.playMenuLink,.playMenuDefault{font-size:12px;text-decoration:none;color:var(--text);background:#ffffff0a;border:1px solid var(--border);border-radius:10px;padding:6px 10px;text-align:left}.playMenuLink:hover,.playMenuDefault:hover{background:#ffffff14}.ratingChip{min-height:var(--tap);padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a;color:var(--text);font-weight:900;font-size:11px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.ratingChip .ratingEmoji{font-size:15px;line-height:1}.ratingChip .ratingLabel{font-size:11px;color:var(--muted)}.ratingChip:hover{background:#ffffff14}.ratingChip.isActive{border-color:#6b5cff99;background:#6b5cff2e;box-shadow:0 0 0 2px #6b5cff33,0 0 14px #6b5cff59}.ratingChip[data-rate=liked].isActive{border-color:#56d29b99;background:#56d29b29;box-shadow:0 0 0 2px #56d29b33,0 0 14px #56d29b59}.ratingChip[data-rate=maybe].isActive{border-color:#f2c94cb3;background:#f2c94c29;box-shadow:0 0 0 2px #f2c94c33,0 0 14px #f2c94c59}.ratingChip[data-rate=disliked].isActive{border-color:#e0565bb3;background:#e0565b29;box-shadow:0 0 0 2px #e0565b33,0 0 14px #e0565b59}.ratingChip[data-rate=unrated].isActive{border-color:#fff6;background:#ffffff1f;box-shadow:0 0 0 2px #ffffff1f,0 0 10px #fff3}.rbtn:active,.btn:active{transform:translateY(1px)}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px;content-visibility:auto;contain-intrinsic-size:260px 180px}.cardTitle{font-weight:900;margin-bottom:10px}.muted{color:var(--muted);font-size:13px;line-height:1.4}.seoBlock{margin-top:16px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--panel);grid-column:1 / -1}.seoTitle{margin:0 0 4px;font-size:14px;font-weight:800;color:var(--text)}.seoSubtitle{margin:0 0 8px;font-size:12px;font-weight:700;color:var(--muted)}.seoIntro{margin:0 0 10px;font-size:13px;color:var(--text)}.seoLinks{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.seoLinks a{color:var(--text);font-size:13px;text-decoration:none}.seoLinks a:hover{color:var(--accent);text-decoration:underline}.seoCopy{margin:0;font-size:13px;color:var(--muted);line-height:1.5}.favHeader{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.favHeader .cardTitle{margin-bottom:0}.favHelper{margin-bottom:6px}.favCountPill{border:1px solid var(--border);background:#ffffff0f;color:var(--text);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;cursor:pointer;line-height:1.1;min-width:160px;min-height:var(--tap);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.favCountPill.isActive{background:#6b5cff40;border-color:#6b5cff73}.favPlanNote{margin-bottom:10px}.favEmpty{border:1px solid var(--border);border-radius:14px;padding:12px;background:#ffffff08;display:flex;flex-direction:column;gap:10px}.favEmptyText{font-size:13px;line-height:1.5}.favEmptyTip{font-size:12px}.favEmptyLink{background:none;border:0;padding:0;margin:0;color:var(--muted);text-align:left;cursor:pointer;display:inline-flex;align-items:center;min-height:var(--tap);font:inherit}.favEmptyLink:hover{color:var(--accent);text-decoration:underline}.favEmptyLink:focus-visible{outline:none;color:var(--accent);text-decoration:underline;box-shadow:0 0 0 3px #6b5cff40;border-radius:10px;padding:0 6px}.favEmptyPreview{border:1px dashed var(--border);border-radius:12px;padding:10px;background:#ffffff05;color:var(--muted);font-size:12px;display:flex;flex-direction:column;gap:6px}.favEmptyPreviewTitle{color:var(--text);font-weight:700}.favEmptyPreviewDay{color:var(--muted);font-weight:600}.favEmptyPreviewList{display:flex;flex-direction:column;gap:4px}#favoritesList{min-height:420px}#favoritesPlanNote[hidden]{display:block;visibility:hidden}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:var(--tap);padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#ffffff0d;color:var(--text);font-weight:900}.btn.small{min-height:32px;padding:6px 10px;border-radius:10px;font-size:12px;font-weight:800}.btn.isDisabled{opacity:.6;pointer-events:none}.btn.primary{background:#6b5cff38;border-color:#6b5cff59}.side .card .btn{width:100%}.side .card .btn,.side .card .btn.primary{font-size:13px;font-weight:800;letter-spacing:.2px;background:#ffffff0f;border-color:var(--border)}.favList{display:flex;flex-direction:column;gap:10px}.favItem{border:1px solid var(--border);border-radius:14px;padding:12px;background:#ffffff0a;cursor:pointer;user-select:none;-webkit-user-select:none;caret-color:transparent}.favItem:focus-visible{outline:none;box-shadow:0 0 0 3px #6b5cff40;border-color:#6b5cff8c}.favItemTop{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.favRemoveBtn{min-height:var(--tap);padding:6px 8px;border-radius:10px;border:1px solid var(--border);background:#ffffff0a;color:var(--muted);font-size:11px;font-weight:700;cursor:pointer;white-space:nowrap}.favRemoveBtn:hover{color:var(--text);background:#ffffff14}.favRemoveBtn:focus-visible{outline:none;box-shadow:0 0 0 3px #6b5cff40;border-color:#6b5cff8c}.footerLinks{display:flex;gap:12px;justify-content:flex-start;color:var(--muted);font-size:13px;flex-wrap:wrap}.privacyNote{margin-top:8px;font-size:12px;line-height:1.5}.buildStamp{margin-top:6px;font-size:11px;letter-spacing:.02em;min-height:14px}.buildStamp:empty{visibility:hidden}.menuOverlay{position:fixed;top:var(--topbar-h);left:0;right:0;bottom:0;background:#00000059;z-index:95;touch-action:none}.menuSheet{position:fixed;left:0;right:0;top:var(--topbar-h);bottom:0;background:var(--panel);border-top-left-radius:18px;border-top-right-radius:18px;border:1px solid var(--border);border-bottom:none;padding:10px 14px calc(16px + env(safe-area-inset-bottom));max-height:calc(100dvh - var(--topbar-h));overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;transform:translateY(100%);transition:transform .25s ease;z-index:96;box-shadow:var(--shadow)}.menuSheet.isOpen{transform:translateY(0)}.menuHandle{width:44px;height:4px;border-radius:999px;background:#ffffff26;margin:2px auto 10px}.menuHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.menuTitle{font-weight:900}.menuClose{width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:#ffffff0f;color:var(--text);font-size:20px;line-height:1;cursor:pointer}.menuGroup{margin:10px 0}.menuGroupTitle{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.menuSubTitle{font-size:12px;color:var(--muted);margin:8px 0 6px}.menuDayLinks{display:flex;flex-direction:column;gap:6px}.menuItem{display:flex;align-items:center;width:100%;box-sizing:border-box;min-height:44px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#ffffff0d;color:var(--text);font-weight:800;font-size:13px;font-family:inherit;text-align:left;line-height:1.2;cursor:pointer}.menuItem.isSub{font-weight:700}.menuEmpty{color:var(--muted);font-size:12px}.toast{position:fixed;left:50%;bottom:16px;transform:translate(-50%) translateY(6px);padding:8px 12px;border-radius:999px;border:1px solid var(--border);background:#141628f2;color:var(--text);font-size:12px;font-weight:700;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;box-shadow:var(--shadow);z-index:50}.toast.isVisible{opacity:1;transform:translate(-50%) translateY(0)}.groupPage .layout{display:block;max-width:1200px;margin:0 auto}.groupTopActions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.groupTopActions .btn{white-space:nowrap}.groupPage [hidden]{display:none!important}.groupPanel{display:flex;flex-direction:column;gap:16px}.groupHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.groupTitleRow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.groupHeader h1{margin:0;font-size:24px}.groupBeta{font-size:11px;text-transform:uppercase;letter-spacing:.08em;padding:4px 8px;border-radius:999px;border:1px solid rgba(242,201,76,.4);background:#f2c94c1f;color:var(--warn);font-weight:800}.groupNote{margin:6px 0 0;color:var(--muted)}.groupContext{font-size:12px;color:var(--muted);padding:6px 10px;border:1px solid var(--border);border-radius:999px;background:#ffffff0a}.tableWrap{width:100%;overflow-x:auto}.groupDropzone{border:2px dashed var(--border);border-radius:18px;padding:24px;text-align:center;background:#ffffff08;cursor:pointer;transition:border-color .2s ease,background .2s ease}.groupDropzone.isDragOver{border-color:var(--accent);background:#6b5cff1f}.groupDropTitle{font-size:18px;font-weight:800}.groupDropSubtitle{margin:6px 0 12px;color:var(--muted)}.groupFileList{display:flex;flex-direction:column;gap:12px}.groupFileRow{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(160px,1fr) minmax(140px,.8fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:14px;background:#ffffff0a}.groupFileField{display:flex;flex-direction:column;gap:6px}.groupFileLabel{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.groupFileInput{width:100%;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:#0003;color:var(--text)}.groupFileValue{font-weight:700;font-size:14px;word-break:break-word}.groupFileStatus{display:flex;flex-direction:column;gap:4px}.groupStatusBadge{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800;background:#ffffff14;cursor:default}.groupStatusBadge.ok{background:#56d29b2e;color:var(--ok)}.groupStatusBadge.mismatch{background:#f2c94c2e;color:var(--warn)}.groupStatusBadge.invalid{background:#e0565b2e;color:var(--danger)}.groupStatusBadge.pending{background:#ffffff1f}.groupFileMessage{font-size:12px;color:var(--muted)}.groupLimit{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px dashed var(--border);border-radius:12px;background:#ffffff0a}.groupToggle{display:flex;align-items:center;gap:10px;font-size:14px}.groupToggleInline{align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a;font-size:12px}.groupActions{display:flex;flex-wrap:wrap;gap:8px}.groupResults{display:flex;flex-direction:column;gap:16px}.groupResultsHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.groupResultsMeta{color:var(--muted);font-size:13px}.groupFilterInput{max-width:260px;width:100%}.groupFilters{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.groupFilterLabel{font-size:11px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.groupPersonFilter{display:flex;flex-direction:column;gap:6px;min-width:180px}.groupFilterSelect{min-height:36px}.groupAdvancedFilters{width:100%;flex-basis:100%;padding:10px 12px;border-radius:12px;border:1px dashed rgba(255,255,255,.15);background:#ffffff05}.groupAdvancedFilters summary{list-style:none;cursor:pointer;font-weight:700;display:inline-flex;align-items:center;color:var(--muted)}.groupAdvancedFilters summary::-webkit-details-marker{display:none}.groupAdvancedFilters summary:after{content:"\25be";margin-left:6px;transition:transform .2s ease}.groupAdvancedFilters[open] summary:after{transform:rotate(180deg)}.groupAdvancedGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:10px;align-items:end}.groupAdvancedGrid .groupToggleInline{min-height:44px;justify-content:flex-start}.groupToggleInline input{appearance:none;width:16px;height:16px;border-radius:4px;border:1px solid rgba(255,255,255,.25);background:#ffffff08;display:inline-block;position:relative}.groupToggleInline input:checked{background:#6b5cff59;border-color:#6b5cffa6}.groupToggleInline input:checked:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg)}.groupParticipantsBar{display:flex;flex-direction:column;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#ffffff0a;font-size:13px}.groupParticipantsText{font-weight:700}.groupParticipantsChips{display:flex;flex-wrap:wrap;gap:8px}.groupParticipantChip{border-radius:999px;border:1px solid rgba(255,255,255,.2);background:#ffffff0a;color:inherit;font-size:12px;padding:6px 10px;cursor:pointer}.groupParticipantChip:hover{border-color:#ffffff73}.groupParticipantChip.isActive{background:#7878ff2e;border-color:#7878ff8c;color:#eef0ff}.groupZone{display:flex;flex-direction:column;gap:10px}.groupZoneHeader{display:flex;align-items:center;justify-content:space-between;gap:8px}.groupCardGrid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.groupZoneEmpty{padding:14px;border-radius:12px;border:1px dashed var(--border);color:var(--muted);font-size:13px}.groupItemCard{border:1px solid var(--border);border-radius:14px;padding:12px;background:#ffffff08;display:flex;flex-direction:column;gap:8px}.groupItemCard.is-recommended{border-color:#3fc47866;background:#3fc47814}.groupItemCard.is-discussion{border-color:#f5c04e66;background:#f5c04e14}.groupItemCard.is-avoid{border-color:#ef5b5b66;background:#ef5b5b14}.groupItemHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.groupItemTitle{font-weight:800;font-size:15px}.groupItemMeta{color:var(--muted);font-size:12px;margin-top:4px}.groupItemBadge{font-size:18px}.groupItemChips{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.groupVoteChip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700;background:#ffffff14}.groupVoteChip.like{color:#3bd36b}.groupVoteChip.maybe{color:#f5c04e}.groupVoteChip.dislike{color:#ef5b5b}.groupBorderline{padding:3px 8px;border-radius:999px;font-size:11px;background:#ffffff1f;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.groupPersonFocus{font-size:12px;color:var(--muted);font-weight:600}.groupItemHint{font-size:13px;font-weight:700}.groupOpposeLine{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}.groupOpposeHint{font-weight:600}.groupItemDetails summary{list-style:none;cursor:pointer;color:var(--muted);font-size:12px;display:inline-flex;align-items:center}.groupItemDetails summary::-webkit-details-marker{display:none}.groupItemDetails summary:after{content:"\25be";margin-left:6px;transition:transform .2s ease}.groupItemDetails[open] summary:after{transform:rotate(180deg)}.groupItemBreakdown{margin-top:8px;display:flex;flex-direction:column;gap:6px;font-size:12px}.groupDetailIcon{display:inline-flex;min-width:20px}.groupDetailEmpty{color:var(--muted)}.groupAllDetails{border:1px solid var(--border);border-radius:14px;padding:10px;background:#ffffff05}.groupAllDetails summary{list-style:none;cursor:pointer;font-weight:700;display:inline-flex;align-items:center}.groupAllDetails summary::-webkit-details-marker{display:none}.groupAllDetails summary:after{content:"\25be";margin-left:6px;transition:transform .2s ease}.groupAllDetails[open] summary:after{transform:rotate(180deg)}.groupTable{width:100%;border-collapse:collapse}.groupTable th,.groupTable td{padding:10px 8px;border-bottom:1px solid var(--border);font-size:13px;vertical-align:top}.groupTable th{color:var(--muted);text-align:left}.groupTable th.num,.groupTable td.num{text-align:right;width:70px}.groupArtist{font-weight:700;display:block}.groupMeta{font-size:12px;color:var(--muted);margin-top:4px}.groupBar{margin-top:6px;height:6px;border-radius:999px;background:#ffffff14;overflow:hidden;display:flex}.groupBarLike{background:#3bd36b}.groupBarMaybe{background:#f5c04e}.groupBarDislike{background:#ef5b5b}.groupEmpty{text-align:center;color:var(--muted)}.groupStatusNote{font-size:12px;color:var(--warn)}@media (max-width: 980px){.groupFileRow{grid-template-columns:1fr;align-items:flex-start}.groupFileRow .btn.ghost{width:100%}}@media (max-width: 720px){.groupTopActions{flex-direction:column;align-items:flex-end;width:100%}.groupTopActions .btn,.groupTopActions select{width:100%}.groupContext{width:100%;text-align:center}}.updateBanner{position:fixed;left:50%;bottom:16px;transform:translate(-50%) translateY(6px);display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#141628f2;color:var(--text);font-size:12px;font-weight:700;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;box-shadow:var(--shadow);z-index:80}.updateBanner.isVisible{opacity:1;transform:translate(-50%) translateY(0);pointer-events:auto}.updateBannerText{color:var(--text)}.playOverlay{position:fixed;inset:0;background:#00000059;display:none;z-index:90}.playOverlay.isOpen{display:block}.playPanel{position:fixed;min-width:220px;max-width:280px;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:10px;box-shadow:var(--shadow)}.playOverlay.isSheet .playPanel{inset:auto 0 0;max-width:none;border-radius:16px 16px 0 0;padding:14px}.playPanelTitle{font-size:12px;color:var(--muted);margin-bottom:8px}.playPanelList{display:flex;flex-direction:column;gap:8px}.playRowItem{display:flex;align-items:center;gap:8px}.playLink{flex:1 1 auto;min-height:var(--tap);padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#ffffff0d;color:var(--text);font-weight:800;text-decoration:none}.playLink:hover{background:#ffffff1a}.playDefaultBtn{min-height:var(--tap);padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:#ffffff0a;color:var(--muted);font-weight:800;cursor:pointer;white-space:nowrap;font-size:11px}.playDefaultBtn.isActive{border-color:#6b5cff99;color:var(--text);background:#6b5cff2e}body.menuOpen{overflow:hidden;position:fixed;width:100%;touch-action:none}body.simplePage .topbar{position:static;height:auto}body.simplePage .layout{padding:14px}.legalLayout{max-width:980px;margin:18px auto 28px;padding:0 16px}.legalPanel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:16px;line-height:1.6}.legalPanel h1{margin-top:0}@media (max-width: 980px){.layout{grid-template-columns:1fr}.subtitle{max-width:unset}.toolbar{min-height:calc((var(--ctrl-min-h) * 4) + 36px)}#mobileControlsAnchor{min-height:240px}#mobileExportAnchor{min-height:300px}.introCard{min-height:220px}.introContent{min-height:190px}.introTitle{min-height:28px}.introSubtitle{min-height:72px}.introOnboarding{min-height:40px}:root{--topbar-h: calc(112px + env(safe-area-inset-top)) ;--act-min-h: 140px}.topbar{align-items:flex-start}.brand{min-width:unset}.controls{gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.toolbar .ctrl{min-width:unset;width:100%}.toolbar select,.toolbar input{width:100%}.toolbar{min-height:unset}.act{flex-direction:column;align-items:flex-start;min-height:unset}.badges{align-items:flex-start;min-width:unset;width:100%;flex-wrap:wrap}.badge{min-width:0;white-space:normal;overflow-wrap:anywhere}.daySummaryMeta{flex-wrap:wrap;min-width:0}.dayLink{white-space:normal;overflow-wrap:anywhere}.inlineFavoritesBar{min-height:unset}.weekendPanel.isActive,.list,.card{content-visibility:visible;contain-intrinsic-size:auto}.skeletonBadges{width:100%}.skeletonPill{width:110px}.inlineFavoritesBar{flex-direction:column;align-items:flex-start}.ratingBar,.ratingSegmented{justify-content:flex-start}.pill{max-width:100%;white-space:normal;overflow-wrap:anywhere;overflow:visible;text-overflow:clip}.pillLink{white-space:normal;overflow-wrap:anywhere}.panel.side{min-height:780px}#changesBox{min-height:240px}#favoritesList{min-height:320px}}@media (max-width: 720px){:root{--topbar-h: calc(128px + env(safe-area-inset-top)) }.topbar{padding:calc(12px + env(safe-area-inset-top)) 12px 12px;gap:10px}.controls{width:100%;grid-template-columns:1fr;justify-content:flex-start}.controls .ctrl{width:100%}.layout{padding:calc(10px + var(--topbar-h, 72px)) calc(10px + env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) calc(10px + env(safe-area-inset-left))}.panel{padding:12px}.weekendHeader{flex-direction:column;align-items:flex-start}.weekendHeader .ctrl{width:100%}.weekendTabs{flex-wrap:wrap}.tabBtn{flex:1 1 auto;text-align:center}.onboardingHint{flex-direction:column;align-items:flex-start}.onboardingHintDismiss{align-self:flex-end}.ratingSelect{width:100%}.ratingChip{padding:6px}.ratingLabel{display:none}.ratingSegmented{width:100%}.ratingSegBtn{flex:1 1 auto;justify-content:center}.ratingSegBtn .segLabel{display:none}}:focus-visible{outline:2px solid #7aa2ff;outline-offset:2px}.btn:focus-visible,.menuItem:focus-visible,.ratingSegBtn:focus-visible,.playBtn:focus-visible,.playMoreBtn:focus-visible,.selectTrigger:focus-visible,a:focus-visible{box-shadow:0 0 0 2px #7aa2ff59}
