:root{color:#1d1d1f;background:#f5f5f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.shell{width:min(100%,820px);margin:0 auto;padding:18px}.auth-shell{min-height:100vh;display:grid;align-content:center;gap:20px}.brand-panel h1,.topbar h1{margin:0;font-size:34px;line-height:1.04;letter-spacing:0}.eyebrow{margin:0 0 7px;color:#6e6e73;font-size:12px;font-weight:700;letter-spacing:0;text-transform:uppercase}.lede{max-width:520px;color:#6e6e73;font-size:17px;line-height:1.45}.card,.panel{background:#ffffffd1;border:1px solid rgba(0,0,0,.06);border-radius:18px;box-shadow:0 18px 50px #0000000f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.auth-card,.panel{padding:16px}.auth-card,.app-shell,.context-panel,.entry-list,.result-grid,.group-form,.progress-editor,.known-episodes{display:grid;gap:12px}.app-shell{min-height:100vh;align-content:start;grid-auto-rows:max-content;gap:14px}.app-footer{padding:8px 0 2px;color:#8a8a8e;font-size:12px;font-weight:700;text-align:center}.segmented,.view-nav{display:grid;height:48px;align-items:center;gap:4px;padding:4px;border-radius:14px;background:#e9e9ec}.view-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.segmented{grid-template-columns:1fr 1fr}.segmented button,.view-nav button{height:36px;min-height:0;max-height:36px;overflow:hidden;padding:0 4px;border-radius:11px;background:transparent;color:#6e6e73;font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.segmented .active,.view-nav .active{background:#fff;color:#1d1d1f;box-shadow:0 2px 12px #00000014}label{display:grid;gap:7px;color:#3a3a3c;font-size:13px;font-weight:700}input,select,textarea{width:100%;min-height:46px;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:0 13px;background:#fff;color:#1d1d1f;outline:none}input[type=checkbox]{width:18px;min-height:18px;accent-color:#007aff}.checkbox-row{display:flex;grid-template-columns:none;align-items:center;gap:9px}input:focus,select:focus,textarea:focus{border-color:#007aff;box-shadow:0 0 0 4px #007aff1f}.primary,.media-card button,.icon-action,.icon-button{min-height:46px;border-radius:12px;background:#007aff;color:#fff;font-weight:800}@media(pointer:coarse){button,input,select,textarea{font-size:16px}.secondary-action,.next-episode-action,.save-progress,.copy-button,.danger-icon,.small-icon{min-height:44px}}.error{margin:0;color:#ff3b30;font-weight:700}.loading{margin:0 0 12px;color:#6e6e73;font-size:13px;font-weight:700}.error-banner{display:grid;grid-template-columns:minmax(0,1fr) 36px;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(255,59,48,.18);border-radius:14px;background:#fff0f0;color:#b42318;font-size:13px;font-weight:800}.error-banner button{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;background:#ff3b301a;color:#b42318}.topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:4px}.ghost{min-height:38px;padding:0 13px;border-radius:999px;background:#fff;color:#1d1d1f;font-weight:700;box-shadow:inset 0 0 0 1px #00000014}.view-nav{position:sticky;top:10px;z-index:10;flex:none;margin-top:-2px}.hidden-view{display:none}.context-picker{padding:10px 12px;border-radius:14px;box-shadow:none}.context-picker select{min-height:42px}.section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.section-header h2{margin:0;font-size:22px;letter-spacing:0}.section-header span{color:#6e6e73;font-size:13px;font-weight:700}.selection-toolbar,.context-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding:10px 12px;border-radius:14px;background:#f8f8fa}.selection-toolbar span,.context-summary span{color:#6e6e73;font-size:13px;font-weight:800}.context-summary strong{min-width:0;overflow:hidden;color:#1d1d1f;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.watchlist-tools{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:12px}.watchlist-mode-row,.playlist-create-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;margin-bottom:12px}.playlist-create-row{grid-template-columns:minmax(0,1fr) auto auto;margin-bottom:0}.segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;padding:4px;border-radius:14px;background:#f0f0f2}.segmented-control button{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:6px;border-radius:10px;color:#6e6e73;font-size:12px;font-weight:900}.segmented-control button.active{background:#fff;color:#1d1d1f;box-shadow:0 2px 10px #00000012}.playlist-panel{display:grid;gap:10px;margin-bottom:14px;padding:12px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1px #0000000d}.playlist-detail-header{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin-bottom:12px}.playlist-detail-header h3,.playlist-detail-header p{margin:0}.playlist-detail-header h3{overflow:hidden;font-size:20px;text-overflow:ellipsis;white-space:nowrap}.playlist-detail-header p{color:#6e6e73;font-size:13px;font-weight:800}.playlist-entry-list{margin-top:2px}.playlist-list{display:grid;gap:8px}.playlist-item{display:grid;grid-template-columns:minmax(0,1fr) 38px 38px;align-items:center;gap:8px;padding:10px;border-radius:14px;background:#f8f8fa}.playlist-pick-button{min-width:0;padding:0;text-align:left}.playlist-item strong,.playlist-item span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playlist-item span{margin-top:3px;color:#6e6e73;font-size:12px;font-weight:700}.status-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-bottom:14px;padding:4px;border-radius:14px;background:#f0f0f2}.status-tabs button{min-height:36px;border-radius:10px;background:transparent;color:#6e6e73;font-size:12px;font-weight:800}.status-tabs .active{background:#fff;color:#1d1d1f;box-shadow:0 2px 10px #00000012}.entry-card,.media-card{position:relative;display:grid;grid-template-columns:58px 1fr;gap:12px;padding:12px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1px #0000000d}.entry-card:has(.entry-select){grid-template-columns:auto 58px minmax(0,1fr)}.compact-entry{align-items:center;padding:10px}.compact-entry .poster{width:44px}.entry-select{display:grid;min-height:38px;place-items:center}.entry-select input{width:18px;height:18px}.entry-main,.entry-controls,.media-copy{display:grid;gap:9px;min-width:0}.entry-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.entry-top-actions{display:flex;align-items:center;gap:6px}.entry-title-row h3,.media-card h3{margin:0;font-size:16px}.entry-title-row p,.entry p,.media-card p,.empty,.meta{margin:0;color:#6e6e73}.source-line{margin-top:4px;font-size:12px;font-weight:800}.episode-title{color:#3a3a3c;font-size:13px}.poster{width:58px;aspect-ratio:2 / 3;border-radius:12px;object-fit:cover;background:#e5e5ea}.poster-fallback{display:grid;place-items:center;color:#6e6e73;font-size:12px;font-weight:800}.danger-icon,.copy-button,.small-icon{display:grid;min-height:38px;width:38px;place-items:center;border-radius:12px}.danger-icon,.leave-group-button{background:#fff0f0;color:#ff3b30}.progress-meter{height:8px;overflow:hidden;border-radius:999px;background:#e5e5ea}.progress-meter div{height:100%;border-radius:inherit;background:#34c759}.stepper{display:grid;grid-template-columns:62px 38px 1fr 38px;align-items:center;gap:6px}.stepper span{color:#3a3a3c;font-size:13px;font-weight:800}.stepper button,.save-progress,.next-episode-action,.secondary-action{min-height:38px;border-radius:12px;background:#f2f2f7;color:#1d1d1f;font-weight:800}.stepper input{min-height:38px;text-align:center}.save-progress,.next-episode-action,.secondary-action,.media-card button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.next-episode-action{background:#007aff;color:#fff}.entry-meta-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;border-radius:14px;background:#f8f8fa}.notes-field{grid-column:1 / -1}.notes-field textarea{min-height:82px;resize:vertical}.rating-display{display:flex;align-items:center;gap:3px;color:#ff9f0a}.media-card button{grid-column:1 / -1}.media-card .media-detail-button{background:#f2f2f7;color:#1d1d1f}.media-title-row{display:flex;align-items:center;gap:6px}.presence-badges{display:flex;flex-wrap:wrap;gap:6px}.presence-badges span{padding:4px 8px;border-radius:999px;background:#e8f3ff;color:#0057d8;font-size:12px;font-weight:800}.overview{display:-webkit-box;margin:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;color:#3a3a3c;font-size:14px;line-height:1.35}.search-form{margin-bottom:14px}.search-row{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:8px}.icon-button{display:grid;place-items:center}.icon-action{padding:0 12px}.owner-tools{padding-bottom:10px;border-bottom:1px solid rgba(0,0,0,.06)}.group-summary{display:grid;gap:10px}.group-section{display:grid;gap:10px;padding:12px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1px #0000000d}.group-section+.group-section{margin-top:2px}.group-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.group-section-header h3{margin:0;font-size:16px}.group-section-header p{margin:3px 0 0;color:#6e6e73;font-size:13px}.group-summary span,.group-section span{color:#6e6e73;font-size:12px;font-weight:700}.group-summary strong,.group-section strong{display:block;margin-top:3px;color:#1d1d1f;font-size:18px;letter-spacing:0}.invite-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:10px;min-width:0;padding:10px;border-radius:14px;background:#f8f8fa}.invite-link-row{padding-top:10px;border-top:1px solid rgba(0,0,0,.06)}.invite-link-text{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.copy-button{background:#f2f2f7;color:#1d1d1f}.group-card-row{display:grid;gap:8px}.inline-actions{display:flex;flex-wrap:wrap;gap:8px}.compact-action{min-height:34px;padding:0 10px;border-radius:10px}.member-list{display:flex;flex-wrap:wrap;gap:6px}.member-management-list{display:grid;gap:8px}.member-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px;border-radius:14px;background:#f8f8fa}.member-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.member-actions select{min-height:34px;width:auto;padding:0 28px 0 10px;border-radius:10px;font-size:13px}.member-list span{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;background:#f2f2f7;color:#3a3a3c;font-size:13px}.member-list>span>button{display:inline-grid;width:20px;height:20px;place-items:center;border-radius:50%}.member-profile-button{display:inline-grid;justify-items:start;width:auto!important;height:auto!important;min-height:0;padding:0;border-radius:0!important;background:transparent!important;color:inherit!important;font-weight:800}.member-profile-button small{display:inline-flex;align-items:center;gap:4px;margin-top:2px;color:#6e6e73;font-size:12px}.activity-block{display:grid;gap:8px;padding:10px;border-radius:14px;background:#f8f8fa}.activity-title{display:flex;align-items:center;gap:6px;color:#1d1d1f;font-weight:900}.activity-item{display:grid;grid-template-columns:minmax(0,92px) minmax(0,1fr) auto;align-items:center;gap:8px;padding-top:8px;border-top:1px solid rgba(0,0,0,.06)}.activity-item strong{margin:0;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.activity-item small{color:#6e6e73;font-size:12px;font-weight:700}.leave-group-button{min-height:42px;border-radius:12px;font-weight:800}.delete-group-button{min-height:42px;border-radius:12px;background:#ff3b30;color:#fff;font-weight:900}.modal-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:18px;background:#0000002e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.confirm-dialog{width:min(100%,390px);padding:18px;border:1px solid rgba(0,0,0,.08);border-radius:18px;background:#fffffff0;box-shadow:0 24px 70px #0000002e}.confirm-dialog h2{margin:0;font-size:20px}.confirm-dialog p{margin:8px 0 16px;color:#6e6e73;line-height:1.4}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.media-detail-dialog{position:relative;width:min(100%,560px);max-height:min(86vh,760px);overflow:auto;padding:18px;border:1px solid rgba(0,0,0,.08);border-radius:18px;background:#fffffff5;box-shadow:0 24px 70px #0000002e}.detail-close{position:absolute;top:12px;right:12px;display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:#f2f2f7;color:#1d1d1f}.detail-hero{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px;padding-right:42px}.detail-hero .poster{width:86px}.detail-hero h2{margin:0 0 6px;font-size:25px;line-height:1.08}.detail-overview{margin:16px 0 0;color:#3a3a3c;line-height:1.45}.muted{color:#6e6e73}.series-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.summary-stat{padding:12px;border-radius:14px;background:#f2f2f7}.summary-stat span,.attribution,.season-block span{color:#6e6e73;font-size:12px;font-weight:700}.summary-stat strong{display:block;margin-top:3px;font-size:24px}.season-list{display:grid;gap:8px;margin-top:14px}.season-block{display:grid;gap:8px;padding:12px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1px #0000000f}.season-block h3{margin:0;font-size:15px}.season-block ol{display:grid;gap:4px;margin:0;padding-left:18px;color:#3a3a3c;font-size:13px}.attribution{margin:14px 0 0}.profile-layout,.profile-form{display:grid;gap:12px}.profile-card{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:12px;padding:12px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1px #0000000d}.profile-card h2,.profile-card h3,.profile-form h3,.danger-zone h3{margin:0}.profile-card p,.danger-zone p{margin:4px 0 0;color:#6e6e73}.avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;background:#e5e5ea}.avatar-fallback{display:grid;place-items:center;color:#1d1d1f;font-size:20px;font-weight:900}.profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.danger-zone{display:grid;gap:10px;padding:12px;border-radius:16px;background:#fff0f0;color:#1d1d1f}.profile-dialog{position:relative;padding-top:52px}.public-profile-card{padding:0;background:transparent;box-shadow:none}@media(max-width:560px){.watchlist-mode-row,.playlist-create-row{grid-template-columns:1fr}.selection-toolbar,.context-summary{flex-direction:column;align-items:stretch}.playlist-detail-header{grid-template-columns:1fr}.entry-card:has(.entry-select){grid-template-columns:54px minmax(0,1fr);gap:10px;padding-left:40px}.entry-card:has(.entry-select) .entry-select{position:absolute;top:18px;left:12px;min-height:20px}.entry-card:has(.entry-select) .poster{width:54px}.entry-card:has(.entry-select).compact-entry .poster{width:44px}.entry-meta-editor{grid-template-columns:1fr}.entry-top-actions{flex-direction:column}.member-row{grid-template-columns:1fr}.member-actions{justify-content:flex-start}.activity-item{grid-template-columns:1fr;gap:3px}.activity-item strong{white-space:normal}}@media(min-width:720px){.shell{padding:28px}.auth-shell{grid-template-columns:1fr 380px}.brand-panel h1,.topbar h1{font-size:44px}.watchlist-tools{grid-template-columns:1fr 220px}}
