@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/variable/pretendardvariable.min.css";.select-menu{position:relative;display:inline-flex;align-items:center;gap:8px;color:var(--text-2);font-size:13px;font-weight:600}.select-menu-label{flex:0 0 auto;white-space:nowrap}.select-menu-trigger{display:flex;min-width:160px;height:36px;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--line-strong);border-radius:var(--radius);padding:0 10px;background:#fff;color:var(--text);cursor:pointer;transition:border-color var(--ease),background var(--ease)}.select-menu-trigger:hover:not(:disabled){background:var(--gray-50)}.select-menu-trigger[aria-expanded=true]{border-color:var(--accent)}.select-menu-trigger:disabled{background:var(--gray-50);color:var(--text-4);cursor:not-allowed}.select-menu-trigger>svg{width:16px;height:16px;flex:0 0 auto;color:var(--text-3)}.select-menu-trigger[aria-expanded=true]>svg{transform:rotate(180deg)}.select-menu-value,.select-menu-list li>span{display:flex;min-width:0;align-items:center;gap:8px}.select-menu-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-menu-value b,.select-menu-list li b{min-width:0;overflow:hidden;font:inherit;font-weight:inherit;text-overflow:ellipsis;white-space:nowrap}.select-menu-value i,.select-menu-list i{display:inline-grid;width:20px;height:20px;flex:0 0 20px;place-items:center;border-radius:var(--radius-sm);background:var(--gray-100);color:var(--text-2);font-size:12px;font-style:normal}.select-menu-list{position:absolute;z-index:40;top:calc(100% + 4px);right:0;width:max(100%,200px);max-width:min(320px,calc(100vw - 32px));max-height:min(264px,60vh);overflow-y:auto;overscroll-behavior:contain;margin:0;border-radius:var(--radius);padding:4px;background:#fff;box-shadow:var(--shadow-menu),inset 0 0 0 1px var(--line);scrollbar-color:var(--gray-300) transparent;scrollbar-width:thin;list-style:none}.select-menu-list.open-above{top:auto;bottom:calc(100% + 4px)}.select-menu-list::-webkit-scrollbar{width:8px}.select-menu-list::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:var(--radius-full);background:var(--gray-300);background-clip:padding-box}.select-menu-list:focus{outline:0}.select-menu-list li{display:flex;height:32px;align-items:center;justify-content:space-between;gap:8px;border-radius:6px;padding:0 10px;color:var(--text-2);cursor:pointer;font-size:14px;font-weight:500}.select-menu-list li>span{flex:1;overflow:hidden}.select-menu-list li.active{background:var(--gray-100)}.select-menu-list li.selected{background:var(--accent-soft);color:var(--accent-text);font-weight:600}.select-menu-list li.selected.active{background:var(--accent-soft)}.select-menu-list li>svg{width:16px;flex:0 0 auto;fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:2}@media(max-width:768px){.select-menu{min-width:0}.select-menu-trigger{min-width:0;flex:1}.select-menu-list{right:0;left:0;width:100%;max-width:none}}.profile-loading{padding:48px 0;color:var(--text-3);font-size:14px;text-align:center}.profile-empty-actions{display:flex;gap:8px;margin-top:4px}.profile-header{display:flex;align-items:flex-start;gap:16px;padding:4px 0 24px;border-bottom:1px solid var(--line);margin-bottom:24px}.profile-header-body{min-width:0;flex:1}.profile-header-body h1{margin:0;color:var(--text);font-size:20px;font-weight:700}.profile-header-handle{margin:2px 0 0;color:var(--text-3);font-size:13px}.profile-header-bio{margin:6px 0 0;color:var(--text-2);font-size:14px;line-height:1.5}.profile-header-meta{margin:6px 0 0;color:var(--text-3);font-size:13px}.profile-header .button{flex:none}.profile-section-count{color:var(--text-3);font-size:13px}.card.profile-guide-card{padding:0}.profile-guide-card .list-row{padding:12px 20px}@media(max-width:640px){.profile-header{flex-direction:column}.profile-header .button{width:100%}}.account-header{display:flex;align-items:flex-start;gap:16px;padding:4px 0 24px}.account-header-body{min-width:0;flex:1}.account-header-name{margin:0;color:var(--text);font-size:20px;font-weight:700}.account-header-meta{margin:4px 0 0;color:var(--text-3);font-size:13px}.account-stats-card{margin-bottom:20px}.account-stats{flex-wrap:wrap}.account-stat-sub{margin:2px 0 0;color:var(--text-4);font-size:12px}.account-stats-loading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.account-stats-loading .skeleton{height:36px}.account-load-error{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:20px}.account-load-error p{margin:0;color:var(--red);font-size:13px}.account-grid{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:20px}.card.account-library{padding:0}.account-library .tabs{padding:16px 20px 0}.account-library .empty{padding:32px 16px}.account-library-loading{display:flex;flex-direction:column;gap:10px;padding:12px 20px}.account-library-skeleton-row{display:flex;align-items:center;gap:16px;padding:8px 0}.account-library-skeleton-row .skeleton:first-child{width:64px;height:48px;flex:none}.account-library-skeleton-row .skeleton:last-child{width:55%;height:18px}.account-library-skeleton-row .skeleton+.skeleton{margin-top:0}.account-guide-status{flex:none}.account-guide-actions{display:flex;flex:none;align-items:center;gap:6px}.account-save-button.active{color:var(--accent)}.account-more-wrap{display:flex;justify-content:center;padding:12px 20px 16px}@media(max-width:900px){.account-grid{grid-template-columns:1fr}}@media(max-width:640px){.account-header{flex-direction:column}.account-header .page-actions{width:100%}.account-header .page-actions .button{flex:1}.account-stats{flex-direction:column}.account-stats-loading{grid-template-columns:1fr}.account-stats .stat-strip-item{padding:0}.account-stats .stat-strip-item+.stat-strip-item{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);border-left:0}}.settings-layout{display:grid;grid-template-columns:200px minmax(0,1fr);align-items:start;gap:32px;margin-top:8px}.tabs.settings-tabs-mobile{display:none}.settings-nav{display:flex;flex-direction:column;gap:2px}.settings-nav-item{padding:10px 12px;border-radius:var(--radius);color:var(--text-2);font-size:14px;font-weight:500;text-align:left;transition:background var(--ease),color var(--ease)}.settings-nav-item:hover{background:var(--gray-50);color:var(--text)}.settings-nav-item.active{background:var(--gray-100);color:var(--text);font-weight:600}.settings-content{min-width:0}.settings-panel,.settings-panel-form{display:flex;flex-direction:column;gap:24px}.settings-panel-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px}.settings-panel-head h2{margin:0;color:var(--text);font-size:16px;font-weight:600}.settings-panel-head p{margin:4px 0 0;color:var(--text-3);font-size:13px}.settings-profile-heading{display:flex;min-width:0;flex:1;align-items:center;gap:12px}.settings-profile-heading>div{min-width:0}.settings-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.settings-field-wide{grid-column:1 / -1}.settings-field-count{display:flex;align-items:center;justify-content:space-between;gap:8px}.settings-group{padding-top:20px;border-top:1px solid var(--line)}.settings-group h3{margin:0 0 12px;color:var(--text);font-size:14px;font-weight:600}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}.settings-row>div{min-width:0}.settings-row+.settings-row{border-top:1px solid var(--gray-100)}.settings-row-label{display:block;color:var(--text);font-size:14px;font-weight:600}.settings-row-value{display:block;overflow-wrap:anywhere;margin-top:2px;color:var(--text-3);font-size:13px}.settings-provider-hint{margin:8px 0 0;color:var(--text-3);font-size:13px;line-height:1.5}.settings-email-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-top:12px}.settings-email-form .field{min-width:0}.settings-email-actions{display:flex;flex-wrap:wrap;gap:8px}.settings-auth-feedback{margin:12px 0 0;font-size:13px;line-height:1.5}.settings-auth-feedback.success{color:var(--green)}.settings-auth-feedback.error{color:var(--red)}.settings-playback-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:24px;align-items:start}.settings-playback-controls{display:flex;flex-direction:column;gap:16px}.settings-select-label{color:var(--gray-700);font-size:13px;font-weight:600}.settings-lead-menu .select-menu-trigger{width:100%}.settings-lead-menu .select-menu-list{right:auto;left:0;width:100%}.settings-range{min-width:0;margin:0;border:0;padding:0}.settings-range legend{margin-bottom:8px;color:var(--gray-700);font-size:13px;font-weight:600}.settings-range-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;color:var(--text-3);font-size:12px}.settings-range-row output{color:var(--text);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}.settings-range input[type=range]{width:100%;accent-color:var(--accent)}.choice-field{min-width:0;margin:0;border:0;padding:0}.choice-field legend{margin-bottom:8px;color:var(--gray-700);font-size:13px;font-weight:600}.choice-field-options{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.choice-item{height:32px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;color:var(--text-2);font-size:13px;font-weight:600;transition:background var(--ease),border-color var(--ease),color var(--ease)}.choice-item:hover{background:var(--gray-50)}.choice-item.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.settings-preview-wrap{display:flex;flex-direction:column;gap:8px}.settings-preview{position:relative;display:flex;aspect-ratio:16 / 10;flex-direction:column;align-items:center;overflow:hidden;border-radius:var(--radius-lg);background:#0b0b0f}.settings-preview-label{position:absolute;top:12px;left:12px;padding:3px 6px;border-radius:var(--radius-sm);background:#ffffff1f;color:#ffffffb3;font-size:11px}.settings-preview-cue{position:absolute;z-index:1;display:flex;width:92%;flex-direction:column;align-items:center;color:#fff;text-align:center}.position-top .settings-preview-cue{top:22%}.position-middle .settings-preview-cue{top:50%;transform:translateY(-50%)}.position-bottom .settings-preview-cue{bottom:18%}.settings-preview-cue small{margin-bottom:6px;color:#fff9;font-size:11px}.settings-preview-cue strong{font-size:18px;line-height:1.3}.size-small .settings-preview-cue strong{font-size:15px}.size-large .settings-preview-cue strong{font-size:22px}.settings-preview-cue span{margin-top:4px;color:#fff9;font-size:12px}.settings-preview-next{position:absolute;right:10px;bottom:10px;left:10px;overflow:hidden;margin:0;padding:6px 8px;border-radius:var(--radius-sm);background:#ffffff1a;color:#ffffffb3;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.settings-preview-next span{margin-right:4px;color:#ffffffe6;font-weight:600}.settings-preview-hint{margin:0;color:var(--text-3);font-size:12px;text-align:center}.toggle-list{border-top:1px solid var(--gray-100)}.toggle-row{position:relative;display:flex;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid var(--gray-100);cursor:pointer}.toggle-row-text{display:flex;min-width:0;flex:1;flex-direction:column}.toggle-row-text strong{color:var(--text);font-size:14px;font-weight:600}.toggle-row-text small{margin-top:3px;color:var(--text-3);font-size:13px;line-height:1.4}.toggle-row input{position:absolute;width:1px;height:1px;opacity:0}.toggle-switch{position:relative;width:40px;height:24px;flex:none;border-radius:var(--radius-full);background:var(--gray-300);transition:background var(--ease)}.toggle-switch:after{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;content:"";transition:transform var(--ease)}.toggle-row input:checked+.toggle-switch{background:var(--accent)}.toggle-row input:checked+.toggle-switch:after{transform:translate(16px)}.toggle-row input:focus-visible+.toggle-switch{outline:2px solid var(--accent);outline-offset:2px}.settings-playback-skeleton{display:flex;flex-direction:column;gap:12px}.settings-playback-skeleton .skeleton{height:44px;border-radius:var(--radius)}.settings-playback-skeleton .skeleton:nth-of-type(2){height:100px}.settings-load-error{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px;border-radius:var(--radius);background:var(--red-soft);color:var(--red)}.settings-load-error p{margin:0;font-size:13px}.settings-savebar{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:12px 16px;margin-top:8px;padding:14px 0;background:var(--bg);border-top:1px solid var(--line)}.settings-savebar-status{margin:0;color:var(--text-3);font-size:13px}.settings-savebar-error{flex-basis:100%;order:-1;margin:0;color:var(--red);font-size:13px}@media(max-width:768px){.settings-layout{grid-template-columns:1fr;gap:16px}.settings-nav{display:none}.tabs.settings-tabs-mobile{display:flex}.settings-playback-grid,.settings-field-grid{grid-template-columns:1fr}.settings-field-wide{grid-column:auto}.settings-email-form{grid-template-columns:minmax(0,1fr)}.settings-email-actions{justify-content:flex-end}.settings-savebar{bottom:calc(56px + env(safe-area-inset-bottom))}}@media(max-width:420px){.settings-row{align-items:flex-start;gap:8px}}@media(prefers-reduced-motion:reduce){.toggle-switch,.toggle-switch:after{transition:none}}.editor-page{width:min(calc(100% - 40px),1600px);max-width:1600px}.editor-state{display:grid;min-height:320px;place-items:center;align-content:center;border:1px solid var(--line);border-radius:var(--radius-lg);padding:40px 24px;background:var(--surface);text-align:center}.editor-state h1{margin:0 0 8px;color:var(--text);font-size:24px;font-weight:700;letter-spacing:-.01em}.editor-state p{max-width:420px;margin:0 0 20px;color:var(--text-3);font-size:14px;line-height:1.6}.create-guide-card{display:grid;gap:24px}.create-flow{display:flex;flex-wrap:wrap;align-items:center;margin:0;padding:0 0 20px;border-bottom:1px solid var(--line);list-style:none}.create-flow li{display:flex;min-width:0;align-items:center;gap:8px;color:var(--text-3);font-size:13px;font-weight:600}.create-flow li+li:before{margin:0 10px;color:var(--text-4);content:"·"}.create-flow b{display:grid;width:20px;height:20px;flex:none;place-items:center;border-radius:var(--radius-full);background:var(--gray-100);color:var(--text-2);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.create-field{display:flex;flex-direction:column;gap:6px}.create-field>span,.create-field>label{color:var(--gray-700);font-size:13px;font-weight:600}.editor-song-menu{display:block;width:100%}.editor-song-menu .select-menu-list{right:auto;left:0;width:100%;max-width:none;max-height:min(284px,60vh)!important}.create-select-state{margin-top:2px;color:var(--text-3);font-size:12px}.new-song-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px;background:var(--bg-muted)}.new-song-review-note{grid-column:1 / -1;margin:0;color:var(--text-3);font-size:12px;line-height:1.55}.create-song-preview{border:1px solid var(--line);border-radius:var(--radius-lg)}.create-error{margin:0;color:var(--red);font-size:12px}.create-guide-actions{display:flex;justify-content:flex-end;padding-top:20px;border-top:1px solid var(--line)}.page-header.editor-heading h1{font-size:20px}.editor-title-row{display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:8px}.editor-title-row h1{min-width:0}.editor-toast-stack{position:fixed;z-index:900;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:grid;width:min(380px,calc(100vw - 32px));gap:8px;pointer-events:none}.editor-action-message{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:12px;margin:0;border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;background:var(--surface);font-size:13px;box-shadow:var(--shadow-menu);pointer-events:auto}.editor-action-message.error{border-color:var(--red-soft);background:var(--red-soft);color:var(--red)}.editor-action-message.success{border-color:var(--green-soft);background:var(--green-soft);color:var(--green)}.editor-action-message button{display:grid;width:28px;height:28px;flex:none;place-items:center;border:0;border-radius:var(--radius-sm);background:transparent;color:currentColor;cursor:pointer;font-size:16px}.editor-action-message button:hover{background:#0000000f}.song-review-banner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;margin:-4px 0 16px;border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 16px;background:var(--amber-soft);color:var(--gray-700)}.song-review-banner strong{color:var(--text);font-size:14px}.song-review-banner p{margin:4px 0 0;color:var(--text-3);font-size:12px;line-height:1.5}.song-review-banner ul{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin:0;padding:0;list-style:none}.song-review-banner li{display:inline-flex;min-height:28px;align-items:center;gap:5px;border-radius:var(--radius-full);padding:0 9px;background:var(--surface);color:var(--text-2);font-size:11px;font-weight:600}.song-review-banner li i{color:var(--text-4);font-style:normal}.song-review-banner.rejected{background:var(--red-soft)}.song-review-banner.rejected strong{color:var(--red)}.queue-toolbar-actions,.preview-toolbar-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.save-state{display:inline-flex;align-items:center;gap:6px;color:var(--text-3);font-size:12px;font-weight:600}.save-state svg{flex:none}.save-state.unsaved{color:var(--amber)}.editor-button{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;color:var(--gray-800);cursor:pointer;font-size:14px;font-weight:600;transition:background var(--ease),border-color var(--ease),color var(--ease)}.editor-button:hover{background:var(--gray-50)}.editor-button.primary{border-color:var(--accent);background:var(--accent);color:#fff}.editor-button.primary:hover{border-color:var(--accent-hover);background:var(--accent-hover)}.editor-button:disabled{cursor:default;opacity:.5}.editor-button.add{height:32px;padding:0 10px;font-size:13px;color:var(--gray-800)}.editor-grid{display:grid;grid-template-areas:"video inspector" "queue queue";grid-template-columns:minmax(0,1fr) minmax(340px,360px);gap:16px;align-items:start}.editor-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.video-card{grid-area:video;background:#0b0b0f;border-color:#0b0b0f}.queue-card{grid-area:queue}.inspector-card{display:flex;min-height:0;align-self:stretch;flex-direction:column;grid-area:inspector;overflow:hidden;contain:size}.inspector-heading{position:static;z-index:12;flex:none;background:var(--surface)}.inspector-card .inspector-footer{position:static;z-index:12;flex:none}.queue-card:focus-visible{outline:3px solid var(--accent-soft);outline-offset:3px}.card-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;border-bottom:1px solid var(--line)}.card-toolbar.dark{border-color:#ffffff1f;color:#fff}.card-toolbar h2{margin:0;color:var(--text);font-size:16px;font-weight:600}.card-toolbar h2 small{margin-left:6px;color:var(--text-4);font-size:13px;font-weight:500}.card-toolbar.dark h2{color:#fff}.toolbar-kicker{color:var(--text-4);font-size:9px;font-weight:800;letter-spacing:.15em}.editor-shortcut-help{display:flex;min-height:40px;align-items:center;flex-wrap:wrap;gap:6px 16px;margin:0;padding:8px 20px;border-bottom:1px solid var(--line);background:var(--bg-muted);color:var(--text-3);font-size:12px}.editor-shortcut-help>span{display:inline-flex;min-width:0;align-items:center;flex-wrap:wrap;gap:5px}.editor-segment{display:inline-flex;flex-shrink:0;padding:2px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-muted)}.editor-segment button{min-height:28px;border:0;border-radius:6px;padding:0 10px;background:transparent;color:var(--text-2);cursor:pointer;font-size:13px;font-weight:600}.editor-segment button.selected{background:#fff;color:var(--text);box-shadow:0 1px 2px #00000014}.editor-segment button:disabled{cursor:wait;opacity:.55}.editor-history-actions{display:inline-flex;gap:2px}.selection-count{display:inline-flex;align-items:center;height:20px;border-radius:var(--radius-full);padding:0 8px;background:var(--accent-soft);color:var(--accent-text);font-size:11px;font-weight:600;white-space:nowrap}.video-frame{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:16 / 9;background:#0b0b0f}.youtube-player-mount,.youtube-player{position:absolute;z-index:0;inset:0;width:100%;height:100%}.youtube-player{display:block;border:0}.player-ready:before,.player-loading:before{display:none}.player-loading-note,.player-fallback-notice{position:absolute;z-index:3;top:16px;left:16px;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);background:#000000b8;color:#fff}.player-loading-note{padding:8px 10px;font-size:12px;font-weight:600;pointer-events:none}.player-fallback-notice{display:grid;max-width:min(470px,calc(100% - 32px));gap:4px;padding:12px 14px}.player-fallback-notice strong{font-size:13px}.player-fallback-notice span{color:#ffffffb3;font-size:12px;line-height:1.5}.practice-thumbnail{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}.practice-scrim{position:absolute;z-index:1;inset:0;background:#00000073}.stage-play-button{position:absolute;z-index:3;top:50%;left:50%;transform:translate(-50%,-50%)}.cue-overlay{position:absolute;z-index:4;right:7%;bottom:11%;left:7%;display:flex;justify-content:center;pointer-events:none}.cue-overlay.compact{right:auto;bottom:7%;left:3%;justify-content:flex-start}.cue-preview{display:grid;justify-items:center;min-width:min(540px,80%);padding:14px 28px;border-radius:var(--radius);background:#0000008c;color:#fff;text-align:center}.cue-preview>span{margin-bottom:4px;color:#ffffffb3;font-size:12px;font-weight:600}.cue-preview strong{font-size:28px;font-weight:700;letter-spacing:-.02em}.cue-preview small{margin-top:4px;color:#ffffffb3;font-size:13px}.cue-preview>.cue-repeat-tokens{display:flex;max-width:100%;flex-wrap:wrap;justify-content:center;gap:4px;margin:8px 0 0;color:inherit;font-size:11px}.cue-repeat-token{border-radius:var(--radius-sm);padding:3px 6px;background:#ffffff24;font-style:normal;opacity:.6}.cue-repeat-token.current{background:#fff;color:var(--accent-text);opacity:1;box-shadow:0 0 0 2px #fff6}.repeat-token-progress{display:none}.cue-preview.active{box-shadow:0 0 0 1px #ffffff40}.cue-preview.active>span{color:#fff}.cue-preview.done{min-width:auto;opacity:.75}.compact .cue-preview{display:flex;min-width:0;max-width:min(480px,88vw);align-items:center;gap:10px;justify-items:initial;padding:8px 14px;border-radius:var(--radius);text-align:left}.compact .cue-preview>span{margin:0}.compact .cue-preview strong{overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.compact .cue-preview>.cue-repeat-tokens{flex-wrap:nowrap;justify-content:flex-start}.compact .cue-repeat-token:not(.current):not(.preview){display:none}.compact .repeat-token-progress{display:inline;align-self:center;color:#ffffffbf;font-size:11px;white-space:nowrap}.preview-transport{display:flex;align-items:center;gap:11px;padding:10px 16px;background:var(--surface);border-top:1px solid var(--line);color:var(--text)}.timecode{min-width:40px;font-variant-numeric:tabular-nums;color:var(--text-2);font-size:13px;font-weight:600}.muted-time{color:var(--text-3)}.transport-range{display:flex;flex:1}.transport-range input{width:100%;height:4px;margin:0;appearance:none;border-radius:var(--radius-full);background:linear-gradient(to right,var(--accent) var(--progress),var(--gray-200) var(--progress));cursor:pointer}.transport-range input::-webkit-slider-thumb{width:13px;height:13px;appearance:none;border:2px solid white;border-radius:50%;background:var(--accent);box-shadow:0 0 0 1px var(--line-strong)}.transport-range input::-moz-range-thumb{width:10px;height:10px;border:2px solid white;border-radius:50%;background:var(--accent)}.cue-list{max-height:495px;margin:0;padding:0;overflow:auto;list-style:none}.cue-list li+li{border-top:1px solid var(--gray-100)}.cue-row{display:grid;width:100%;min-height:56px;grid-template-columns:20px 44px minmax(0,1fr) auto 16px;align-items:center;gap:12px;border:0;border-radius:0;padding:10px 16px;background:transparent;cursor:pointer;text-align:left;transition:background var(--ease)}.cue-row:hover{background:var(--gray-50)}.cue-row.selected{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.cue-order{color:var(--text-4);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;text-align:center}.cue-row.selected .cue-order{color:var(--accent-text)}.cue-time{color:var(--text-2);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}.cue-copy{display:grid;min-width:0;gap:2px}.cue-copy strong{overflow:hidden;color:var(--text);font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.cue-copy small{overflow:hidden;color:var(--text-3);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.cue-copy .cue-repeat-chip{width:fit-content;max-width:100%;overflow:hidden;border-radius:var(--radius-sm);padding:2px 6px;background:var(--accent-soft);color:var(--accent-text);font-size:11px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.cue-row-arrow{flex:none;color:var(--text-4)}.sequencer-view{background:var(--bg-muted)}.sequencer-controls{display:flex;min-height:62px;align-items:center;flex-wrap:wrap;gap:9px;padding:8px 12px;border-bottom:1px solid var(--line);background:var(--bg-muted)}.sequencer-controls>span{margin-left:auto;color:var(--text-3);font-size:11px;font-weight:600}.sequencer-timecode{min-width:78px;color:var(--text);font-size:21px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.sequencer-play-button,.magnet-toggle{display:inline-flex;min-height:44px;align-items:center;justify-content:center;border:1px solid var(--line-strong);background:#fff;color:var(--gray-700);cursor:pointer}.sequencer-play-button{width:44px;border-radius:50%;border-color:var(--accent);background:var(--accent);color:#fff;font-size:12px}.sequencer-play-button:disabled{cursor:wait;opacity:.5}.magnet-toggle{gap:6px;border-radius:var(--radius);padding:0 11px;font-size:12px;font-weight:600}.magnet-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.magnet-toggle[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text);box-shadow:inset 0 0 0 1px var(--accent)}.sequencer-workspace{display:grid;grid-template-columns:108px minmax(0,1fr);border-bottom:1px solid var(--line);background:var(--bg-muted)}.sequencer-workspace:focus-visible{outline:3px solid var(--accent-soft);outline-offset:-3px}.sequencer-track-labels{position:relative;z-index:10;display:grid;grid-template-rows:34px 78px 78px;border-right:1px solid var(--line);background:var(--gray-50)}.sequencer-track-labels>span{border-bottom:1px solid var(--line)}.sequencer-track-labels>div{display:flex;align-items:center;gap:7px;padding:0 10px;border-bottom:1px solid var(--line);color:var(--gray-700)}.sequencer-track-labels i{color:var(--accent);font-size:12px;font-style:normal}.sequencer-track-labels strong{min-width:0;overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.sequencer-scroll{overflow-x:auto;overscroll-behavior-inline:contain}.sequencer-canvas{position:relative;height:190px;min-width:100%;-webkit-user-select:none;user-select:none}.sequencer-grid{position:absolute;z-index:0;inset:34px 0 0;pointer-events:none}.sequencer-grid i{position:absolute;top:0;bottom:0;width:1px;background:var(--gray-200)}.sequencer-grid i.major{background:var(--gray-300)}.sequencer-ruler{position:absolute;z-index:4;top:0;right:0;left:0;height:34px;touch-action:none;border-bottom:1px solid var(--line);outline:0;cursor:ew-resize;background:var(--gray-100)}.sequencer-ruler:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}.sequencer-ruler.scrubbing{background:var(--accent-soft);cursor:grabbing}.sequencer-ruler>span{position:absolute;bottom:0;width:1px;height:8px;background:var(--gray-300);pointer-events:none}.sequencer-ruler>span.major{height:14px;background:var(--gray-400)}.sequencer-ruler b{position:absolute;bottom:12px;left:4px;color:var(--text-3);font-size:10px;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}.sequencer-ruler>span:last-child b{left:-4px;transform:translate(-100%)}.sequencer-playhead{position:absolute;z-index:8;top:26px;bottom:0;width:2px;transform:translate(-1px);background:var(--red);pointer-events:none}.sequencer-playhead i{position:absolute;top:0;left:50%;width:10px;height:10px;transform:translate(-50%,-50%) rotate(45deg);border-radius:2px;background:var(--red)}.sequencer-snap-guide{position:absolute;z-index:9;top:25px;bottom:0;width:1px;background:var(--accent);pointer-events:none}.sequencer-snap-guide>span{position:absolute;top:5px;left:5px;max-width:min(260px,calc(100vw - 150px));overflow:hidden;border-radius:var(--radius-sm);padding:3px 6px;background:var(--accent-hover);color:#fff;font-size:11px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.sequencer-snap-guide.near-end>span{right:5px;left:auto}.sequencer-track{position:absolute;right:0;left:0;height:78px;overflow:hidden;border-bottom:1px solid var(--line);cursor:crosshair;background:#fff6}.cue-sequencer-track{top:34px}.fanlight-sequencer-track{top:112px}.sequence-clip{position:absolute;z-index:2;top:12px;min-width:0;height:54px}.sequence-clip.selected{z-index:3}.sequence-clip.dragging{z-index:5}.sequence-block{position:relative;display:grid;width:100%;min-width:0;height:54px;align-content:center;gap:3px;overflow:visible;touch-action:none;border:1px solid var(--gray-300);border-radius:var(--radius);padding:7px 4px;background:var(--gray-100);color:var(--gray-700);cursor:grab;text-align:left}.sequence-block:before{position:absolute;z-index:0;top:50%;left:0;width:max(44px,100%);height:54px;transform:translateY(-50%);content:""}.sequence-clip.timeline-end .sequence-block:before{right:0;left:auto}.sequence-block:active{cursor:grabbing}.sequence-clip:hover .sequence-block,.sequence-clip.selected .sequence-block{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.sequence-clip.dragging .sequence-block{cursor:grabbing;opacity:.86;box-shadow:0 0 0 3px var(--accent-soft)}.sequence-block strong,.sequence-block small{position:relative;z-index:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sequence-block strong{font-size:10px}.sequence-block small{color:var(--text-3);font-size:8px}.cue-sequence-clip.active .sequence-block{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.repeat-divisions{position:absolute;z-index:1;inset:0;pointer-events:none}.repeat-divisions i{position:absolute;top:0;bottom:0;width:1px;transform:translate(-50%);background:color-mix(in srgb,var(--accent) 40%,transparent)}.repeat-divisions i:after{position:absolute;top:4px;left:50%;width:4px;height:4px;transform:translate(-50%);border-radius:50%;background:var(--accent);content:""}.repeat-divisions i.current{width:3px;background:var(--red)}.repeat-divisions i.current:after{width:7px;height:7px;background:var(--red)}.fanlight-sequence-block{display:flex;align-items:center;gap:4px;border-color:color-mix(in srgb,var(--fanlight-color) 70%,var(--gray-500));background:color-mix(in srgb,var(--fanlight-color) 68%,white);color:var(--gray-800)}.fanlight-sequence-block>span{font-size:14px}.fanlight-sequence-block.behavior-blink{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--fanlight-color) 72%,white) 0 8px,#fff 8px 13px)}.fanlight-sequence-block.behavior-wave{background:linear-gradient(120deg,color-mix(in srgb,var(--fanlight-color) 85%,white),#fff,color-mix(in srgb,var(--fanlight-color) 68%,white))}.fanlight-sequence-block.behavior-off{border-style:dashed;border-color:var(--gray-400);background:var(--gray-200);color:var(--gray-600)}.fanlight-sequence-clip.active .fanlight-sequence-block{filter:brightness(1.04) saturate(1.08);box-shadow:0 0 0 2px color-mix(in srgb,var(--fanlight-color) 42%,transparent)}.fanlight-resize-handle{position:absolute;z-index:6;top:0;right:-7px;width:14px;height:54px;touch-action:none;cursor:ew-resize}.fanlight-resize-handle:after{position:absolute;top:14px;bottom:14px;left:6px;width:2px;border-radius:var(--radius-sm);background:var(--gray-400);content:""}.fanlight-sequence-clip.timeline-end .fanlight-resize-handle{right:0}.fanlight-sequence-clip.timeline-end .fanlight-resize-handle:after{right:1px;left:auto}.fanlight-sequence-clip.resize .fanlight-resize-handle:after,.fanlight-resize-handle:hover:after{background:var(--accent-hover)}.timeline-help{display:flex;margin:0;color:var(--text-3);font-size:11px;flex-wrap:wrap;gap:5px 16px}.sequencer-view>.timeline-help{padding:10px 12px 12px}.inspector-heading .text-button{min-height:32px;border:0;padding:0;background:transparent;color:var(--accent);cursor:pointer;font-size:13px;font-weight:500}.inspector-heading .text-button:hover{color:var(--accent-hover)}.inspector-form{display:grid;min-height:0;align-content:start;flex:1;gap:20px;padding:20px 18px;overflow-y:auto;scrollbar-gutter:stable}.editor-field{display:grid;gap:6px}.editor-field>span,.editor-field>label{color:var(--gray-700);font-size:13px;font-weight:600}.editor-field>span small,.editor-field>label small{margin-left:4px;color:var(--text-4);font-size:11px;font-weight:500}.editor-field input,.editor-field textarea{width:100%;border:1px solid var(--line-strong);border-radius:var(--radius);padding:0 10px;background:#fff;color:var(--text);outline:0;font-size:14px;resize:vertical}.editor-field input{height:36px}.editor-field textarea{padding:8px 10px;min-height:76px;line-height:1.5}.editor-field input:focus,.editor-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4f46e526}.number-field{position:relative}.number-field input{padding-right:34px;font-variant-numeric:tabular-nums}.number-field i{position:absolute;top:50%;right:10px;transform:translateY(-50%);color:var(--text-4);font-size:12px;font-style:normal}.timing-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.repeat-quick-actions{display:flex;flex-wrap:wrap;gap:8px}.repeat-editor button,.fanlight-behaviors button{min-height:40px;border:1px solid var(--line-strong);border-radius:var(--radius);padding:0 11px;background:#fff;color:var(--gray-700);cursor:pointer;font-size:12px;font-weight:600}.repeat-editor button:hover:not(:disabled),.fanlight-behaviors button:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.repeat-editor{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius-lg);padding:12px;background:var(--bg-muted)}.repeat-editor>header{display:flex;min-height:28px;align-items:center;justify-content:space-between;gap:8px}.repeat-editor>header strong{font-size:13px;font-weight:600}.repeat-editor>header small{color:var(--text-4);font-size:11px;line-height:1.4;text-align:right}.repeat-editor>header button{min-height:32px}.repeat-setting{display:flex;align-items:center;justify-content:space-between;gap:10px}.repeat-setting>span,.fanlight-setting>span{color:var(--gray-700);font-size:13px;font-weight:600}.repeat-stepper{display:grid;grid-template-columns:36px minmax(56px,auto) 36px;align-items:center;overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff}.repeat-stepper button{min-width:36px;border:0;border-radius:0;padding:0;background:transparent;color:var(--gray-700);font-size:16px}.repeat-stepper output{padding:0 7px;color:var(--text);font-size:13px;font-weight:600;text-align:center;font-variant-numeric:tabular-nums}.repeat-stepper button:disabled{cursor:default;opacity:.35}.interval-stepper{grid-template-columns:36px minmax(76px,auto) 36px}.repeat-editor .remove-repeat-button{justify-self:start;border:0;padding-inline:0;background:transparent;color:var(--red);font-size:12px;font-weight:600;cursor:pointer}.fanlight-form{gap:18px}.fanlight-setting{display:grid;gap:8px}.fanlight-behaviors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fanlight-behaviors button{display:flex;align-items:center;justify-content:center;gap:6px}.fanlight-behaviors button.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text);box-shadow:inset 0 0 0 1px var(--accent)}.fanlight-behaviors i{font-style:normal}.fanlight-colors{display:flex;flex-wrap:wrap;gap:8px}.fanlight-colors>button,.custom-color{position:relative;display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;border:2px solid white;border-radius:var(--radius);background:var(--swatch-color);cursor:pointer;box-shadow:0 0 0 1px var(--line-strong)}.fanlight-colors>button.selected{box-shadow:0 0 0 3px var(--accent)}.custom-color{overflow:hidden;background:conic-gradient(#ef4444,#facc15,#22c55e,#3b82f6,#a855f7,#ef4444);color:#fff;font-size:16px;font-weight:700}.custom-color input{position:absolute;inset:0;width:100%;height:100%;cursor:pointer;opacity:0}.custom-color span{pointer-events:none}.inspector-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-top:1px solid var(--line);background:var(--bg-muted)}.delete-button{min-height:32px;border:0;padding:0;background:none;color:var(--red);cursor:pointer;font-size:13px;font-weight:600}.inspector-footer>span{color:var(--text-4);font-size:11px;text-align:right}.inspector-empty{display:grid;min-height:0;flex:1;place-items:center;align-content:center;padding:30px;text-align:center}.inspector-empty>span{display:grid;width:44px;height:44px;place-items:center;border-radius:var(--radius-full);background:var(--gray-100);color:var(--text-4);font-size:22px}.inspector-empty h2{margin:12px 0 6px;font-size:14px;font-weight:600}.inspector-empty p{max-width:260px;margin:0 0 16px;color:var(--text-3);font-size:13px;line-height:1.6}.inspector-empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.timeline-context-menu{position:fixed;z-index:1000;display:grid;width:196px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);padding:5px;background:var(--surface);box-shadow:var(--shadow-menu)}.timeline-context-menu button{display:grid;min-height:40px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:7px;border:0;border-radius:var(--radius-sm);padding:0 9px;background:transparent;color:var(--gray-700);cursor:pointer;font-size:13px;font-weight:500;text-align:left}.timeline-context-menu button:hover,.timeline-context-menu button:focus-visible{outline:0;background:var(--accent-soft);color:var(--accent-text)}.timeline-context-menu button:disabled{cursor:default;opacity:.4}.timeline-context-menu button.danger{color:var(--red)}.timeline-context-menu button.danger:hover,.timeline-context-menu button.danger:focus-visible{background:var(--red-soft);color:var(--red)}.timeline-context-menu button>span{display:grid;width:20px;height:20px;place-items:center;border-radius:var(--radius-sm);background:var(--gray-100);font-size:12px;font-weight:700}.timeline-context-menu kbd{color:var(--text-4);font:inherit;font-size:10px;font-weight:500}.timeline-context-menu>i{height:1px;margin:4px 6px;background:var(--gray-100)}.dev-import-dialog{width:min(620px,calc(100vw - 28px));max-height:min(760px,calc(100vh - 28px));overflow:auto;border:1px solid var(--line);border-radius:var(--radius);padding:0;background:var(--surface);color:var(--text);box-shadow:var(--shadow-modal)}.dev-import-dialog::backdrop{background:#1118277a}.dev-import-dialog>header{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:14px 18px}.dev-import-dialog h2{margin:2px 0 0;font-size:16px;font-weight:600}.dev-import-dialog>header>button{display:grid;width:32px;height:32px;place-items:center;border:0;border-radius:var(--radius-sm);background:var(--gray-100);color:var(--gray-700);cursor:pointer;font-size:16px}.dev-import-dialog>p{margin:16px 18px 0;color:var(--text-3);font-size:13px;line-height:1.55}.dev-import-dialog>label{display:grid;gap:6px;margin:16px 18px;color:var(--gray-700);font-size:13px;font-weight:600}.dev-import-dialog textarea{width:100%;min-height:260px;border:1px solid var(--line-strong);border-radius:var(--radius);padding:12px;outline:0;background:var(--gray-50);color:var(--text);font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;resize:vertical}.dev-import-dialog textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4f46e526}.dev-import-dialog .dev-import-error,.dev-import-dialog .dev-import-preview{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 18px 14px;border-radius:var(--radius);padding:10px 12px}.dev-import-dialog .dev-import-error{background:var(--red-soft);color:var(--red)}.dev-import-dialog .dev-import-preview{background:var(--green-soft);color:var(--green)}.dev-import-dialog .dev-import-preview span{font-variant-numeric:tabular-nums}.dev-import-dialog>footer{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding:14px 18px;background:var(--bg-muted)}@media(max-width:1100px){.editor-grid{grid-template-areas:"video" "queue" "inspector";grid-template-columns:minmax(0,1fr)}.inspector-card{min-height:auto;align-self:auto;overflow:hidden;contain:none}.inspector-card .inspector-form{min-height:auto;flex:none;overflow:visible;scrollbar-gutter:auto}.inspector-empty{min-height:410px;flex:none}}@media(max-width:680px){.editor-page{width:calc(100% - 20px)}.page-header.editor-heading{flex-direction:column;align-items:stretch}.editor-heading-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.new-song-fields{grid-template-columns:minmax(0,1fr);padding:14px}.new-song-review-note{grid-column:auto}.song-review-banner{grid-template-columns:minmax(0,1fr)}.song-review-banner ul{justify-content:flex-start}.create-flow li+li:before{margin:0 6px}.save-state{font-size:11px}.card-toolbar{padding:12px 16px}.editor-shortcut-help{padding-inline:16px}.card-toolbar h2{font-size:14px}.queue-card .card-toolbar,.video-card .card-toolbar{align-items:flex-start;flex-direction:column}.queue-toolbar-actions,.preview-toolbar-actions{width:100%;justify-content:flex-start}.editor-button{height:44px}.editor-segment button{min-height:44px}.video-frame{min-height:220px;aspect-ratio:auto}.player-fallback-notice{top:12px;left:12px;max-width:calc(100% - 24px);padding:9px 10px}.player-fallback-notice span{font-size:11px}.player-loading-note{top:12px;left:12px}.stage-play-button{height:48px}.cue-overlay{right:4%;bottom:10%;left:4%}.cue-preview{min-width:85%;padding:10px 16px}.preview-transport{gap:7px;padding-inline:10px}.play-button{width:44px;height:44px}.transport-range input{height:44px;background-size:100% 4px;background-repeat:no-repeat;background-position:center}.cue-row{grid-template-columns:18px 40px minmax(0,1fr) auto;gap:8px;padding-inline:12px}.cue-row .cue-row-arrow{display:none}.sequencer-workspace{grid-template-columns:84px minmax(0,1fr)}.sequencer-track-labels>div{padding-inline:7px}.sequencer-track-labels strong{font-size:9px}.sequencer-controls{justify-content:space-between}.sequencer-controls>span{margin-left:0}.editor-toast-stack{right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));width:calc(100vw - 20px)}.dev-import-dialog>footer{flex-wrap:wrap}.dev-import-dialog>footer .editor-button{flex:1 1 120px}.inspector-form{padding-inline:14px}.timing-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.timing-actions button:first-child{grid-column:1 / -1}.repeat-setting{align-items:stretch;flex-direction:column}.repeat-stepper{width:100%;grid-template-columns:36px minmax(0,1fr) 36px}}@media(max-width:768px){.stage-play-button{top:12px;left:50%;transform:translate(-50%);height:32px;padding:0 10px;font-size:13px}.cue-overlay,.cue-overlay.compact{right:7%;bottom:10px;left:7%;justify-content:center}.cue-preview,.compact .cue-preview{max-height:70px;padding:8px 12px}.cue-preview strong,.compact .cue-preview strong{font-size:18px;font-weight:700}.cue-preview>span,.compact .cue-preview>span{font-size:11px}.cue-preview small,#editor-shortcut-help{display:none}.editor-heading-actions{flex-wrap:wrap;width:100%}.editor-heading-actions .button.primary{order:-1;flex:1 1 100%}.editor-heading-actions .save-state{flex:1 1 100%}}@media(pointer:coarse){.sequence-block{touch-action:pan-x}.fanlight-resize-handle{display:none}}@media(prefers-reduced-motion:reduce){.cue-row,.editor-button{transition:none}}.discovery-toolbar{margin-bottom:20px}.discovery-filter-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.discovery-segmented-scroll{min-width:0;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.discovery-segmented-scroll::-webkit-scrollbar{display:none}.discovery-segmented-scroll .segmented{flex-wrap:nowrap}.discovery-sort{flex:none;margin-left:auto}.discovery-result-count{margin:0 0 12px;color:var(--text-3);font-size:13px}.card.discovery-results-card{padding:0}.discovery-results-card .list-row-thumb{width:120px}.discovery-row-heading{display:flex;align-items:center;gap:8px;min-width:0}.discovery-row-heading .list-row-title{min-width:0;flex:0 1 auto}.discovery-row-artist,.discovery-row-desc{display:block;overflow:hidden;margin-top:2px;color:var(--text-3);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.discovery-skeleton-row{display:flex;align-items:center;gap:14px;padding:12px 16px}.discovery-skeleton-row+.discovery-skeleton-row{border-top:1px solid var(--gray-100)}.discovery-skeleton-thumb{width:120px;height:68px;flex:none;border-radius:var(--radius-sm)}.discovery-skeleton-lines{flex:1;min-width:0}.discovery-skeleton-lines .skeleton:nth-child(1){width:55%}.discovery-skeleton-lines .skeleton:nth-child(2){width:80%}.discovery-skeleton-lines .skeleton:nth-child(3){width:40%}.directory-chip-icon{width:14px;height:14px;flex:0 0 14px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.75}.song-loading-hero{display:flex;gap:24px;padding:24px 0}.song-loading-thumb{width:100%;max-width:320px;flex:none;aspect-ratio:16 / 9;border-radius:var(--radius-lg)}.song-loading-lines{display:flex;min-width:0;flex:1;flex-direction:column;gap:10px;padding-top:8px}.song-loading-lines .skeleton:nth-child(1){width:40%;height:22px}.song-loading-lines .skeleton:nth-child(2){width:25%}.song-loading-lines .skeleton:nth-child(3){width:55%}.song-hero{display:flex;align-items:flex-start;gap:24px;padding:24px 0 32px;border-bottom:1px solid var(--line)}.song-hero-thumb{position:relative;width:100%;max-width:320px;flex:none;aspect-ratio:16 / 9;overflow:hidden;border-radius:var(--radius-lg);background:var(--gray-100)}.song-hero-thumb img{display:block;width:100%;height:100%;object-fit:cover}.song-hero-body{min-width:0;flex:1;padding-top:4px}.song-hero-body h1{margin:0;color:var(--text);font-size:24px;font-weight:700;letter-spacing:-.01em}.song-hero-artist{margin:4px 0 0;color:var(--text-3);font-size:13px}.song-hero-meta{margin:8px 0 0;color:var(--text-3);font-size:13px;font-variant-numeric:tabular-nums}.song-hero-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.song-guides-note{margin:4px 0 12px;color:var(--text-3);font-size:13px}.card.song-guides-card{padding:0}.list-row.song-guide-row{grid-template-columns:minmax(0,1fr) auto}.song-guide-heading{display:flex;align-items:center;gap:8px;min-width:0}.song-guide-title{min-width:0;flex:0 1 auto}.song-guide-meta{margin-top:4px}.song-guide-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}@media(max-width:768px){.discovery-filter-row{flex-wrap:wrap;row-gap:10px}.discovery-results-card .list-row-thumb{width:72px}.discovery-skeleton-thumb{width:72px;height:40px}.song-loading-hero{flex-direction:column}.song-loading-thumb{max-width:none}.song-hero{flex-direction:column}.song-hero-thumb{max-width:none}.list-row.song-guide-row{grid-template-columns:1fr;row-gap:8px}.song-guide-actions{grid-column:1 / -1;display:flex;gap:8px;justify-content:flex-start}.discovery-results-card .list-row{grid-template-columns:72px minmax(0,1fr) 16px;grid-template-areas:"thumb body chevron" "thumb meta chevron";row-gap:0}.discovery-results-card .list-row-thumb{grid-area:thumb}.discovery-results-card .list-row-body{grid-area:body}.discovery-results-card .list-row-meta{grid-area:meta;margin-top:2px;font-size:12px}.discovery-results-card .list-row-chevron{grid-area:chevron}.discovery-row-desc{display:none}}.home-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);align-items:center;gap:56px;padding:40px 0 48px}.home-hero-text{min-width:0}.home-hero-text h1{margin:0 0 10px;color:var(--text);font-size:32px;font-weight:700;letter-spacing:-.01em}.home-hero-text>p{margin:0 0 20px;color:var(--text-2);font-size:14px}.home-hero-search{max-width:440px}.home-hero-how{margin-top:16px}.home-hero-steps{display:flex;flex-direction:column;gap:20px;margin:0;padding:0;list-style:none;scroll-margin-top:calc(var(--header-h) + 16px)}.home-hero-step{display:flex;align-items:flex-start;gap:12px}.home-hero-step-index{display:flex;flex:none;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--gray-100);color:var(--gray-700);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.home-hero-step-title{margin:0;color:var(--text);font-size:14px;font-weight:600}.home-hero-step-desc{margin:2px 0 0;color:var(--text-3);font-size:13px}.home-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.home-list{margin:0;padding:0;list-style:none}.home-list li+li>.list-row{border-top:1px solid var(--gray-100)}.home-list .list-row{grid-template-columns:20px auto minmax(0,1fr) auto}.home-list-rank{color:var(--text-3);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;text-align:center}.home-list .list-row-body{display:flex;flex-direction:column}.home-list-title-row{display:flex;align-items:center;gap:6px;min-width:0}.home-list-title-row .list-row-title{flex:1 1 auto;min-width:0}.home-list-title-row .badge{flex:none}.home-list-artist{overflow:hidden;margin-top:2px;color:var(--text-3);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.home-list-loading{padding:12px 16px 4px}@media(max-width:900px){.home-lists{grid-template-columns:1fr}}@media(max-width:768px){.home-hero{grid-template-columns:1fr;gap:32px;padding:32px 0 40px}.home-hero-text h1{font-size:26px}.home-hero-search{max-width:none}}.card.leaderboard-card{padding:0}.leaderboard-card .card-header{padding:16px 20px;margin-bottom:0}.leaderboard-card .list-row{padding:12px 20px}.leaderboard-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.list-row.leaderboard-row{grid-template-columns:32px 32px minmax(0,1fr) auto;align-items:center;gap:12px 16px}.list-row.leaderboard-row.song-row{grid-template-columns:32px 96px minmax(0,1fr) 64px auto}.leaderboard-rank{color:var(--text-3);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;text-align:center}.leaderboard-rank.top{color:var(--text)}.leaderboard-row .list-row-title a:hover{color:var(--accent)}.leaderboard-total{color:var(--text);font-size:16px;font-weight:700;font-variant-numeric:tabular-nums;text-align:right}.leaderboard-loading{display:flex;flex-direction:column;gap:10px;padding:20px}@media(max-width:768px){.leaderboard-card .card-header,.leaderboard-card .list-row{padding-inline:16px}.list-row.leaderboard-row{grid-template-columns:28px 32px minmax(0,1fr) auto}.list-row.leaderboard-row.song-row{grid-template-columns:28px 72px minmax(0,1fr) 64px auto}}.viewer-page .page-header h1{font-size:22px}.viewer-page .page-header .page-desc{font-size:13px}.viewer-body{display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px}.viewer-page .viewer-player-card{overflow:hidden;padding:0}.viewer-stage{position:relative;overflow:hidden;aspect-ratio:16 / 9;background:#0b0b0f;color:#fff}.viewer-player-mount,.viewer-youtube-player{position:absolute;inset:0;width:100%;height:100%;border:0}.viewer-stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.viewer-stage-scrim{position:absolute;inset:0;background:#0000008c}.viewer-loading,.viewer-player-notice{position:absolute;z-index:4;top:12px;left:12px;border-radius:var(--radius);padding:8px 12px;background:#0000008c;color:#ffffffe6;font-size:12px}.viewer-player-notice{display:grid;max-width:min(360px,calc(100% - 24px));gap:3px}.viewer-player-notice strong{color:#fff;font-size:13px}.viewer-stage-play{position:absolute;z-index:6;top:50%;left:50%;transform:translate(-50%,-50%)}.viewer-cue-overlay{position:absolute;z-index:5;left:50%;bottom:20px;transform:translate(-50%);display:grid;justify-items:center;gap:6px;max-width:min(420px,calc(100% - 32px));border-radius:var(--radius);padding:14px 20px;background:#0000008c;text-align:center;pointer-events:none}.viewer-cue-overlay>span{color:#ffffffb8;font-size:12px;font-weight:600}.viewer-cue-overlay>strong{font-size:28px;font-weight:700;letter-spacing:-.01em}.viewer-cue-overlay>small{color:#ffffffa3;font-size:13px}.viewer-cue-overlay>p{display:flex;justify-content:center;gap:6px;margin:2px 0 0;color:#ffffffa3;font-size:12px}.viewer-cue-overlay>p span{color:#ffffffe0;font-weight:600}.viewer-cue-overlay.position-top{top:20px;bottom:auto}.viewer-cue-overlay.position-middle{top:50%;bottom:auto;transform:translate(-50%,-50%)}.viewer-cue-overlay.size-small>strong{font-size:22px}.viewer-cue-overlay.size-large>strong{font-size:34px}.viewer-stage.position-middle .viewer-stage-play{top:12px;left:50%;transform:translate(-50%)}.viewer-repeat{display:flex;flex-wrap:wrap;justify-content:center;gap:5px}.viewer-repeat i,.viewer-repeat b{border-radius:var(--radius-full);padding:3px 8px;background:#ffffff1f;font-size:11px;font-style:normal}.viewer-repeat i.current{background:#fff;color:var(--gray-900)}.viewer-repeat b{color:#ffffffd9}.viewer-transport{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding:12px 16px}.viewer-transport output{min-width:32px;color:var(--text-2);font-size:13px;font-variant-numeric:tabular-nums}.viewer-transport>span{min-width:32px;color:var(--text-3);font-size:13px;font-variant-numeric:tabular-nums;text-align:right}.viewer-transport label{display:flex;min-width:0;flex:1}.viewer-transport input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:4px;border-radius:var(--radius-full);background:linear-gradient(to right,var(--accent) var(--viewer-progress),var(--gray-200) var(--viewer-progress));cursor:pointer}.viewer-transport input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:12px;height:12px;margin-top:-4px;border-radius:50%;background:var(--accent);cursor:pointer}.viewer-transport input[type=range]::-moz-range-track{height:4px;border-radius:var(--radius-full);background:var(--gray-200)}.viewer-transport input[type=range]::-moz-range-progress{height:4px;border-radius:var(--radius-full);background:var(--accent)}.viewer-transport input[type=range]::-moz-range-thumb{width:12px;height:12px;border:0;border-radius:50%;background:var(--accent);cursor:pointer}.viewer-fanlight-row{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding:12px 16px}.viewer-fanlight-dot{width:12px;height:12px;flex:none;border-radius:var(--radius-full);background:var(--fanlight)}.viewer-fanlight-text{color:var(--text-3);font-size:13px}.viewer-fanlight-text b{margin-left:6px;color:var(--text-4);font-weight:600}.viewer-page .viewer-queue-card{padding:0}.viewer-page .viewer-queue-card .card-header{padding:16px 20px 12px}.viewer-queue-count{margin-left:6px;color:var(--text-4);font-size:13px;font-weight:500}.viewer-queue-hint{margin:0;padding:0 20px 12px;color:var(--text-4);font-size:12px}.viewer-queue-list{max-height:min(620px,calc(100vh - 220px));margin:0;padding:0;overflow:auto;list-style:none}.viewer-queue-list li+li{border-top:1px solid var(--gray-100)}.viewer-queue-row{display:grid;width:100%;grid-template-columns:20px 44px minmax(0,1fr);align-items:center;gap:10px;padding:10px 20px;background:transparent;text-align:left;transition:background var(--ease)}.viewer-queue-row:hover{background:var(--gray-50)}.viewer-queue-row.active{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.viewer-queue-row-index{color:var(--text-4);font-size:13px;font-variant-numeric:tabular-nums}.viewer-queue-row time{color:var(--text-2);font-size:13px;font-variant-numeric:tabular-nums}.viewer-queue-row-body{display:grid;min-width:0;gap:2px}.viewer-queue-row-body strong{overflow:hidden;color:var(--text);font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.viewer-queue-row-body small{overflow:hidden;color:var(--text-3);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.viewer-skeleton{display:flex;flex-direction:column;gap:10px;max-width:420px;padding:32px 0}@media(max-width:900px){.viewer-body{grid-template-columns:1fr}.viewer-queue-list{max-height:480px}}@media(max-width:768px){.viewer-stage-play{top:12px;left:50%;transform:translate(-50%);height:32px;padding:0 10px;font-size:13px}.viewer-stage-play svg{width:14px;height:14px}.viewer-cue-overlay{bottom:10px;padding:8px 12px;max-height:70px;overflow:hidden}.viewer-cue-overlay>span{font-size:11px}.viewer-cue-overlay>strong{font-size:18px;font-weight:700}.viewer-cue-overlay>small{display:none}.viewer-cue-overlay.position-top{top:52px;bottom:auto}.viewer-cue-overlay.size-small>strong{font-size:15px}.viewer-cue-overlay.size-medium>strong{font-size:18px}.viewer-cue-overlay.size-large>strong{font-size:22px}}@media(max-width:560px){.viewer-cue-overlay>p{display:none}.viewer-transport{gap:8px;padding:10px 12px}.viewer-transport output{display:none}}:root{--font: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Segoe UI", "Noto Sans KR", sans-serif;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--accent: #4f46e5;--accent-hover: #4338ca;--accent-soft: #eef2ff;--accent-text: #3730a3;--green: #059669;--green-soft: #ecfdf5;--amber: #d97706;--amber-soft: #fffbeb;--red: #dc2626;--red-soft: #fef2f2;--bg: #ffffff;--bg-muted: var(--gray-50);--surface: #ffffff;--line: var(--gray-200);--line-strong: var(--gray-300);--text: var(--gray-900);--text-2: var(--gray-600);--text-3: var(--gray-500);--text-4: var(--gray-400);--radius-sm: 6px;--radius: 8px;--radius-lg: 12px;--radius-full: 999px;--shadow-menu: 0 4px 12px rgba(0, 0, 0, .08), 0 0 0 1px rgba(0, 0, 0, .04);--shadow-modal: 0 16px 40px rgba(0, 0, 0, .14);--page-width: 1120px;--page-narrow: 720px;--gutter: 24px;--header-h: 56px;--ease: .15s ease;--accent-strong: var(--accent-hover);--surface-muted: var(--bg-muted);--text-muted: var(--text-3)}*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 var(--font);word-break:keep-all;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{background:none;border:none;margin:0;padding:0;color:inherit;cursor:pointer}button:disabled{cursor:default}button,input,textarea,select{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:100;top:10px;left:10px;transform:translateY(-160%);padding:10px 14px;border-radius:var(--radius);background:var(--gray-900);color:#fff;font-weight:600}.skip-link:focus{transform:none}.app-shell{display:flex;min-height:100vh;flex-direction:column}.site-header{position:sticky;z-index:20;top:0;flex:none;height:var(--header-h);background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;height:100%;max-width:var(--page-width);margin:0 auto;padding:0 var(--gutter);gap:32px}.brand{display:inline-flex;flex:none;align-items:center;gap:8px;color:var(--text);font-size:16px;font-weight:700}.brand-mark{display:block;flex:none;width:24px;height:24px;border-radius:var(--radius-sm)}.primary-nav{display:flex;align-items:stretch;align-self:stretch;gap:28px}.nav-link{position:relative;display:flex;align-items:center;height:100%;color:var(--text-2);font-size:14px;font-weight:500;transition:color var(--ease)}.nav-link:hover{color:var(--text)}.nav-link.active{color:var(--text);font-weight:600}.nav-link.active:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--accent)}.header-actions{display:flex;flex:none;align-items:center;gap:8px;margin-left:auto}.lang-select .select-menu-label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lang-select .select-menu-trigger{min-width:0;height:36px;gap:6px;border-color:transparent;padding:0 10px;background:transparent;color:var(--text-2);font-size:13px;font-weight:600}.lang-select .select-menu-trigger:hover:not(:disabled),.lang-select .select-menu-trigger[aria-expanded=true]{border-color:transparent;background:var(--gray-100);color:var(--text)}.lang-select .select-menu-value b{text-transform:uppercase}.avatar-link:hover{background:var(--gray-200)}#main-content{flex:1 0 auto}.site-footer{flex:none;border-top:1px solid var(--line);padding:24px var(--gutter);color:var(--text-3);font-size:13px}.site-footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;max-width:var(--page-width);margin:0 auto}.site-footer-brand{margin-right:8px;color:var(--text-2);font-weight:600}.mobile-tabbar{display:none}@media(max-width:768px){.primary-nav{display:none}.mobile-tabbar{position:fixed;z-index:30;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));height:calc(56px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--bg);border-top:1px solid var(--line)}.tabbar-item{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--text-3);font-size:10px;font-weight:500}.tabbar-item span{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.tabbar-item.active{color:var(--accent)}#main-content{padding-bottom:calc(56px + env(safe-area-inset-bottom))}}.page{max-width:var(--page-width);margin:0 auto;padding:0 var(--gutter) 64px}.page.narrow{max-width:var(--page-narrow)}.button{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:1px solid transparent;border-radius:var(--radius);background:none;color:var(--text);font-size:14px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background var(--ease),border-color var(--ease),color var(--ease)}.button svg{flex:none}.button.primary{background:var(--accent);color:#fff}.button.primary:hover{background:var(--accent-hover)}.button.secondary{background:#fff;border-color:var(--line-strong);color:var(--gray-800)}.button.secondary:hover{background:var(--gray-50)}.button.ghost{color:var(--text-2)}.button.ghost:hover{background:var(--gray-100)}.button.ghost.on-dark{color:#ffffffd1}.button.ghost.on-dark:hover{background:#ffffff24;color:#fff}.button.danger{color:var(--red)}.button.danger:hover{background:var(--red-soft)}.button.sm{height:32px;padding:0 10px;font-size:13px}.button.lg{height:40px;padding:0 16px}.button.icon{width:36px;padding:0;justify-content:center}.button.icon.sm{width:32px}.button.icon.lg{width:40px}.button:disabled{opacity:.5;cursor:default;pointer-events:none}.input,.textarea,.select{width:100%;height:36px;padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;color:var(--text);font-size:14px}.textarea{height:auto;min-height:88px;padding:8px 10px;line-height:1.5;resize:vertical}.input::placeholder,.textarea::placeholder{color:var(--text-4)}.input:focus,.textarea:focus,.select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #4f46e526}.input:disabled,.textarea:disabled,.select:disabled{background:var(--gray-50);color:var(--text-4);cursor:not-allowed}.field{display:flex;flex-direction:column;gap:6px}.field label{color:var(--gray-700);font-size:13px;font-weight:600}.field-help{margin:0;color:var(--text-3);font-size:12px}.field-error{margin:0;color:var(--red);font-size:12px}.search{position:relative;display:block;width:100%;height:40px}.search svg{position:absolute;top:50%;left:12px;color:var(--text-4);transform:translateY(-50%);pointer-events:none}.search input{width:100%;height:100%;padding:0 12px 0 36px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;color:var(--text);font-size:14px}.search input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #4f46e526}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px}@media(max-width:768px){.card{padding:16px}}.card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.card-header h2{margin:0;color:var(--text);font-size:16px;font-weight:600}.card-header-action,.section-header-action{display:inline-flex;flex:none;align-items:center;gap:2px;color:var(--accent);font-size:13px;font-weight:500;transition:color var(--ease)}.card-header-action:hover,.section-header-action:hover{color:var(--accent-hover)}.card-header-action svg,.section-header-action svg{flex:none}.list{display:flex;flex-direction:column}.list-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:12px 16px;color:inherit;transition:background var(--ease)}.list-row+.list-row{border-top:1px solid var(--gray-100)}.list-row:hover{background:var(--gray-50)}.list-row-thumb{position:relative;display:block;width:96px;flex:none;aspect-ratio:16 / 9;overflow:hidden;border-radius:var(--radius-sm);background:var(--gray-100)}.list-row-thumb img{display:block;width:100%;height:100%;object-fit:cover}.list-row-thumb-duration{position:absolute;right:4px;bottom:4px;padding:1px 4px;border-radius:4px;background:#000000bf;color:#fff;font-size:11px;line-height:1.4}@media(max-width:768px){.list-row-thumb{width:72px}}.list-row-body{min-width:0}.list-row-title{overflow:hidden;color:var(--text);font-size:15px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.list-row-meta{overflow:hidden;margin-top:2px;color:var(--text-3);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.list-row-chevron{flex:none;color:var(--text-4)}.badge{display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:var(--radius-sm);background:var(--gray-100);color:var(--gray-700);font-size:11px;font-weight:600;line-height:1;white-space:nowrap}.badge.accent{background:var(--accent-soft);color:var(--accent-text)}.badge.green{background:var(--green-soft);color:var(--green)}.badge.amber{background:var(--amber-soft);color:var(--amber)}.badge.red{background:var(--red-soft);color:var(--red)}.tabs{display:flex;align-items:flex-end;border-bottom:1px solid var(--line)}.tab{display:inline-flex;align-items:center;gap:4px;margin-right:20px;margin-bottom:-1px;padding:10px 2px;border-bottom:2px solid transparent;color:var(--text-2);font-size:14px;font-weight:500;transition:color var(--ease),border-color var(--ease)}.tab:hover{color:var(--text)}.tab.active{border-bottom-color:var(--accent);color:var(--text);font-weight:600}.tab-count{margin-left:4px;color:var(--text-4);font-size:13px;font-weight:500}.segmented{display:inline-flex;align-items:center;gap:2px;padding:2px;border-radius:var(--radius);background:var(--gray-100)}.segmented-item{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:var(--text-2);font-size:13px;font-weight:600;transition:background var(--ease),color var(--ease),box-shadow var(--ease)}.segmented-item.active{background:#fff;box-shadow:0 1px 2px #00000014;color:var(--text)}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:8px;color:var(--text-3);font-size:13px}.breadcrumb a{color:inherit}.breadcrumb a:hover{color:var(--text)}.breadcrumb svg{flex:none;color:var(--text-4)}.breadcrumb>*:last-child{color:var(--text)}.page>.breadcrumb:first-child{padding-top:20px}.page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px 16px;padding:24px 0 20px}.breadcrumb+.page-header{padding-top:0}.page-header h1{margin:0;color:var(--text);font-size:24px;font-weight:700;letter-spacing:-.01em}.page-header-text{min-width:0}.page-desc{margin:4px 0 0;color:var(--text-3);font-size:14px}.page-actions{display:flex;flex:none;align-items:center;gap:8px}.section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.section-header h2{margin:0;color:var(--text);font-size:16px;font-weight:600}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 16px;text-align:center}.empty-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:12px;border-radius:var(--radius-full);background:var(--gray-100);color:var(--text-4)}.empty-title{margin:0;color:var(--text);font-size:14px;font-weight:600}.empty-desc{margin:4px 0 0;color:var(--text-3);font-size:13px}.empty .button{margin-top:16px}.skeleton{height:14px;border-radius:4px;background:var(--gray-100);animation:skeleton-pulse 1.2s ease-in-out infinite}.skeleton+.skeleton{margin-top:8px}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.stat-strip{display:flex}.stat-strip-item{padding:0 20px}.stat-strip-item:first-child{padding-left:0}.stat-strip-item+.stat-strip-item{border-left:1px solid var(--line)}.stat-strip-label{color:var(--text-3);font-size:12px}.stat-strip-value{margin-top:4px;color:var(--text);font-size:18px;font-weight:700;font-variant-numeric:tabular-nums}kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 5px;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:4px;background:#fff;color:var(--text-2);font:11px/1 var(--font)}.avatar{display:inline-flex;flex:none;align-items:center;justify-content:center;overflow:hidden;width:28px;height:28px;border-radius:50%;background:var(--gray-100);color:var(--gray-700);font-size:12px;font-weight:600;transition:background var(--ease)}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{background:var(--gray-100)}.avatar.md{width:32px;height:32px;font-size:13px}.avatar.lg{width:56px;height:56px;font-size:18px}.modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{position:relative;width:100%;max-width:400px;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-modal);border:1px solid var(--line);overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line)}.modal-header h2{margin:0;font-size:17px;font-weight:700;color:var(--text)}.auth-modal-body{padding:20px}.auth-google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 16px;font-weight:600}.auth-divider{display:flex;align-items:center;text-align:center;margin:16px 0;color:var(--text-3);font-size:12px}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid var(--line)}.auth-divider span{padding:0 10px}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-error-banner{padding:10px 12px;border-radius:var(--radius-sm);background:var(--red-soft);color:var(--red);font-size:13px;line-height:1.4}.auth-submit-btn{width:100%;margin-top:6px;display:flex;align-items:center;justify-content:center;gap:8px}.auth-footer-toggle{margin-top:16px;text-align:center}.text-button{color:var(--accent);font-size:13px;font-weight:500;cursor:pointer}.text-button:hover{text-decoration:underline}
