.spinner-overlay{background-color:var(--color-bg-primary);z-index:9999;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.spinner{border-radius:var(--radius-full);border:2px solid var(--color-border);border-top-color:var(--color-accent);animation:.7s linear infinite spin}.spinner--sm{border-width:2px;width:18px;height:18px}.spinner--md{border-width:3px;width:36px;height:36px}.spinner--lg{border-width:4px;width:52px;height:52px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-page{min-height:100vh;padding:var(--space-6);background-color:var(--color-bg-primary);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.auth-glow{border-radius:var(--radius-full);filter:blur(120px);pointer-events:none;opacity:.12;width:480px;height:480px;position:absolute}.auth-glow--left{background:var(--color-accent);top:-120px;left:-160px}.auth-glow--right{background:#46f;bottom:-160px;right:-120px}.auth-card{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);width:100%;max-width:420px;padding:var(--space-10) var(--space-8);box-shadow:var(--shadow-lg);animation:.4s cubic-bezier(.16,1,.3,1) both auth-card-in;position:relative}@keyframes auth-card-in{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.auth-logo{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:-.5px;margin-bottom:var(--space-6);align-items:center;gap:2px;display:flex}.auth-logo__mark{color:var(--color-accent)}.auth-logo__word{color:var(--color-text-primary)}.auth-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-2);line-height:1.2}.auth-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-8)}.auth-form{gap:var(--space-5);flex-direction:column;display:flex}.auth-form-error{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);background-color:var(--color-error-bg);border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm);border:1px solid #ff4d4d40;line-height:1.4;display:flex}.auth-form-error svg{flex-shrink:0;margin-top:1px}.auth-submit-btn{width:100%;padding:var(--space-4) var(--space-6);font-size:var(--font-size-base);margin-top:var(--space-2);border-radius:var(--radius-md)}.file-upload-wrapper{position:relative}.file-upload-label{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background-color:var(--color-bg-input);border:1px dashed var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-base), background-color var(--transition-base);font-size:var(--font-size-sm);color:var(--color-text-secondary);min-height:48px;display:flex}.file-upload-label:hover{border-color:var(--color-border-focus);background-color:var(--color-bg-hover);color:var(--color-text-primary)}.file-upload-label.has-file{border-style:solid;border-color:var(--color-accent);color:var(--color-text-primary)}.file-upload-label.has-error{border-color:var(--color-error)}.file-upload-icon{color:var(--color-accent);flex-shrink:0}.file-upload-preview{border-radius:var(--radius-full);object-fit:cover;border:1px solid var(--color-border);width:36px;height:36px}.file-upload-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.auth-redirect{margin-top:var(--space-6);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.auth-redirect__link{color:var(--color-accent);font-weight:var(--font-weight-medium);transition:color var(--transition-fast)}.auth-redirect__link:hover{color:var(--color-accent-hover);text-decoration:underline}@media (width<=480px){.auth-card{padding:var(--space-8) var(--space-6)}}.auth-card--wide{max-width:520px}.register-row{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}@media (width<=480px){.register-row{grid-template-columns:1fr}}.register-required{color:var(--color-error);font-size:var(--font-size-xs);margin-left:2px}.register-optional{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);margin-left:var(--space-1)}.header{height:var(--header-height);background-color:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);align-items:center;gap:var(--space-4);padding:0 var(--space-4);z-index:100;display:flex;position:fixed;top:0;left:0;right:0}.header__left{align-items:center;gap:var(--space-3);flex-shrink:0;min-width:200px;display:flex}.header__logo{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:-.5px;-webkit-user-select:none;user-select:none;transition:opacity var(--transition-fast);align-items:center;display:flex}.header__logo:hover{opacity:.85}.header__logo-mark{color:var(--color-accent)}.header__logo-word{color:var(--color-text-primary)}.header__center{flex:1;max-width:560px;margin:0 auto}.header__search{background-color:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-full);transition:border-color var(--transition-base), box-shadow var(--transition-base);align-items:center;gap:0;display:flex;overflow:hidden}.header__search:focus-within{border-color:var(--color-border-focus);box-shadow:0 0 0 3px #ffffff0a}.header__search-icon{padding:0 var(--space-4);color:var(--color-text-muted);pointer-events:none;align-items:center;display:flex}.header__search-input{color:var(--color-text-primary);font-size:var(--font-size-sm);padding:var(--space-3) 0;background:0 0;border:none;outline:none;flex:1;min-width:0}.header__search-input::placeholder{color:var(--color-text-muted)}.header__search-input::-webkit-search-cancel-button{display:none}.header__search-btn{width:44px;height:100%;padding:var(--space-2);background-color:var(--color-bg-hover);border-left:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.header__search-btn:hover{background-color:var(--color-bg-card);color:var(--color-text-primary)}.header__right{align-items:center;gap:var(--space-2);flex-shrink:0;margin-left:auto;display:flex}.header__icon-btn{border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-text-secondary);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.header__icon-btn:hover:not(:disabled){background-color:var(--color-bg-hover);color:var(--color-text-primary)}.header__icon-btn:disabled{cursor:not-allowed;opacity:.4}.header__upload-wrapper{position:relative}.header__create-btn{color:var(--color-text-primary);cursor:pointer;background:#ffffff12;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:.5rem;padding:.45rem .95rem;font-size:.88rem;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.header__create-btn:hover,.header__create-btn--active{background:#ffffff24;border-color:#ffffff40;box-shadow:0 2px 12px #00000040}.header__create-label{display:inline}@media (width<=600px){.header__create-label{display:none}.header__create-btn{border-radius:var(--radius-md);padding:.45rem}}.header__create-dropdown{width:250px;top:calc(100% + 8px)}.header__create-menu-item{text-align:left;align-items:center;gap:.85rem;width:100%;padding:.75rem 1rem;display:flex}.create-menu-icon{flex-shrink:0;font-size:1.35rem;line-height:1}.create-menu-info{flex-direction:column;display:flex}.create-menu-title{color:var(--color-text-primary);font-size:.9rem;font-weight:600}.create-menu-desc{color:var(--color-text-muted);font-size:.74rem}.header__user{position:relative}.header__avatar-btn{border-radius:var(--radius-full);cursor:pointer;width:36px;height:36px;transition:border-color var(--transition-base);background:0 0;border:2px solid #0000;justify-content:center;align-items:center;padding:0;display:flex}.header__avatar-btn:hover,.header__avatar-btn[aria-expanded=true]{border-color:var(--color-accent)}.header__avatar-img{border-radius:var(--radius-full);object-fit:cover;width:100%;height:100%}.header__avatar-fallback{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-accent), #84e);width:36px;height:36px;color:var(--color-text-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:.5px;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;display:flex}.header__avatar-fallback--lg{width:48px;height:48px;font-size:var(--font-size-base);flex-shrink:0}.header__dropdown{top:calc(100% + var(--space-3));background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:260px;box-shadow:var(--shadow-dropdown);z-index:200;animation:.18s cubic-bezier(.16,1,.3,1) both dropdown-in;position:absolute;right:0;overflow:hidden}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.header__dropdown-info{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);display:flex}.header__dropdown-avatar{border-radius:var(--radius-full);object-fit:cover;flex-shrink:0;width:48px;height:48px}.header__dropdown-text{flex-direction:column;gap:2px;min-width:0;display:flex}.header__dropdown-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.header__dropdown-email{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.header__dropdown-username{font-size:var(--font-size-xs);color:var(--color-text-muted)}.header__dropdown-divider{background-color:var(--color-border);height:1px;margin:0}.header__dropdown-item{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;text-align:left;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:none;display:flex}.header__dropdown-item:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.header__dropdown-item--danger{color:var(--color-error)}.header__dropdown-item--danger:hover{background-color:var(--color-error-bg);color:var(--color-error)}@media (width<=640px){.header__center{display:none}.header__left{min-width:unset}}@media (width<=480px){.header{padding:0 var(--space-3);gap:var(--space-3)}}.sidebar{top:var(--header-height);width:var(--sidebar-width);background-color:var(--color-bg-secondary);border-right:1px solid var(--color-border);padding:var(--space-4) var(--space-3);z-index:90;transition:transform var(--transition-slow);position:fixed;bottom:0;left:0;overflow:hidden auto;transform:translate(-100%)}@media (width<=768px){.sidebar{box-shadow:var(--shadow-lg)}}.sidebar--open{transform:translate(0)}.sidebar-backdrop{display:none}@media (width<=768px){.sidebar-backdrop{inset:0;top:var(--header-height);z-index:80;background-color:#0009;animation:.2s both backdrop-in;display:block;position:fixed}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}#nav-premium{border-radius:var(--radius-md);background:linear-gradient(90deg,#f5c51814 0%,#f5c51805 100%);border:1px solid #f5c51847;margin:2px 0;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;color:#f5c518!important}#nav-premium svg{filter:drop-shadow(0 0 6px #f5c51866);stroke:#f5c518!important}#nav-premium:hover{background:linear-gradient(90deg,#f5c51829 0%,#f5c5180f 100%);border-color:#f5c5188c;box-shadow:0 2px 10px #f5c51826;color:gold!important}#nav-premium.sidebar__nav-item--active{box-shadow:0 0 14px #f5c51833;color:gold!important;background:linear-gradient(90deg,#f5c51838 0%,#f5c5180f 100%)!important;border-color:#f5c518!important}#nav-premium.sidebar__nav-item--active svg{stroke:gold!important}#nav-shorts.sidebar__nav-item--active{color:#f55!important;background-color:#ff444424!important}#nav-shorts.sidebar__nav-item--active svg{stroke:#f55!important}.sidebar__nav{gap:var(--space-1);flex-direction:column;display:flex}.sidebar__nav-item{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--transition-fast), color var(--transition-fast);white-space:nowrap;text-decoration:none;display:flex}.sidebar__nav-item svg{flex-shrink:0}a.sidebar__nav-item:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar__nav-item--active{background-color:var(--color-accent-soft);color:var(--color-accent)!important}.sidebar__nav-item--active svg{stroke:var(--color-accent)}.sidebar__nav-item--disabled{opacity:.38;cursor:not-allowed;pointer-events:none}.sidebar::-webkit-scrollbar{width:4px}.sidebar__subs-section{margin-top:var(--space-2);flex-direction:column;display:flex}.sidebar__subs-header{align-items:center;gap:0;display:flex}.sidebar__subs-label{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);padding-right:var(--space-2);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);white-space:nowrap;transition:background-color var(--transition-fast), color var(--transition-fast);flex:1;text-decoration:none;display:flex}.sidebar__subs-label:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar__subs-label--active{background-color:var(--color-accent-soft);color:var(--color-accent)!important}.sidebar__subs-label--active svg{stroke:var(--color-accent)}.sidebar__subs-chevron{padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text-muted);transition:background-color var(--transition-fast), color var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:flex}.sidebar__subs-chevron:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar__subs-list{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.sidebar__sub-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap;transition:background-color var(--transition-fast), color var(--transition-fast);text-decoration:none;display:flex}.sidebar__sub-item:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar__sub-avatar-wrap{flex-shrink:0;display:inline-flex;position:relative}.sidebar__sub-avatar{object-fit:cover;border:1px solid var(--color-border);background:var(--color-bg-elevated);border-radius:50%;width:28px;height:28px}.sidebar__sub-avatar--fallback{border:1px solid var(--color-border);background:var(--color-bg-elevated);width:28px;height:28px;color:var(--color-text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:flex}.sidebar__sub-dot{border:1.5px solid var(--color-bg-secondary);pointer-events:none;background-color:#e53935;border-radius:50%;width:9px;height:9px;position:absolute;bottom:-1px;right:-1px;box-shadow:0 0 5px #e5393599}.sidebar__sub-name{text-overflow:ellipsis;white-space:nowrap;max-width:110px;overflow:hidden}.sidebar__subs-toggle{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;text-align:left;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:none;display:flex}.sidebar__subs-toggle:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar__subs-toggle svg{flex-shrink:0}.video-card{gap:var(--space-3);border-radius:var(--radius-lg);background:0 0;flex-direction:column;display:flex;overflow:hidden}.video-card:hover{transition:transform var(--transition-base);transform:translateY(-2px)}.video-card:hover .video-card__thumbnail{filter:brightness(.85)}.video-card__video-link{border-radius:var(--radius-md);outline:none;text-decoration:none;display:block;overflow:hidden}.video-card__video-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.video-card__thumb-wrapper{aspect-ratio:16/9;background-color:var(--color-bg-card);width:100%;position:relative}.video-card__thumbnail{object-fit:cover;width:100%;height:100%;transition:filter var(--transition-base);display:block}.video-card__duration{bottom:var(--space-2);right:var(--space-2);color:#fff;font-size:11px;font-weight:var(--font-weight-semibold);border-radius:var(--radius-sm);letter-spacing:.02em;pointer-events:none;background:#000000d9;padding:2px 6px;line-height:1.5;position:absolute}.video-card__meta{gap:var(--space-3);padding:0 var(--space-1);display:flex}.video-card__owner-avatar{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-accent), #84e);width:36px;height:36px;transition:opacity var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:flex;overflow:hidden}.video-card__owner-avatar:hover{opacity:.8}.video-card__owner-img{object-fit:cover;width:100%;height:100%}.video-card__owner-initials{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:#fff;letter-spacing:.5px;-webkit-user-select:none;user-select:none}.video-card__info{flex-direction:column;gap:2px;min-width:0;display:flex}.video-card__title-link{color:inherit;text-decoration:none;display:block}.video-card__title-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.video-card__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);-webkit-line-clamp:2;transition:color var(--transition-fast);-webkit-box-orient:vertical;margin:0;line-height:1.4;display:-webkit-box;overflow:hidden}.video-card__title-link:hover .video-card__title{color:var(--color-text-secondary)}.video-card__channel{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.video-card__channel-link{color:inherit;transition:color var(--transition-fast);text-decoration:none;display:block}.video-card__channel-link:hover{color:var(--color-text-primary)}.video-card__stats{font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@keyframes shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--color-bg-card) 25%, var(--color-bg-hover) 50%, var(--color-bg-card) 75%);background-size:800px 100%;animation:1.4s ease-in-out infinite shimmer}.skeleton-card{gap:var(--space-3);flex-direction:column;display:flex}.skeleton--thumb{aspect-ratio:16/9;border-radius:var(--radius-md);width:100%}.skeleton-card__meta{gap:var(--space-3);padding:0 var(--space-1);display:flex}.skeleton--avatar{border-radius:var(--radius-full);flex-shrink:0;width:36px;height:36px}.skeleton-card__info{gap:var(--space-2);flex-direction:column;flex:1;padding-top:2px;display:flex}.skeleton--title{border-radius:var(--radius-sm);width:90%;height:14px}.skeleton--title-short{width:60%}.skeleton--text{border-radius:var(--radius-sm);width:45%;height:12px}.video-grid{gap:var(--space-6) var(--space-5);grid-template-columns:repeat(4,1fr);display:grid}.video-grid-wrapper{gap:var(--space-10);flex-direction:column;display:flex}.video-grid__load-more{padding:var(--space-4) 0 var(--space-8);justify-content:center;display:flex}.video-grid__load-more-btn{padding:var(--space-3) var(--space-8);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);letter-spacing:.02em;transition:background-color var(--transition-base), transform var(--transition-fast), border-color var(--transition-base)}.video-grid__load-more-btn:hover{transform:translateY(-1px)}.video-grid__empty{justify-content:center;align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;min-height:320px;display:flex}.video-grid__empty-icon{font-size:3rem;line-height:1}.video-grid__empty-text{font-size:var(--font-size-base);color:var(--color-text-muted);max-width:320px;line-height:1.6}@media (width<=640px){.video-grid{gap:var(--space-6);grid-template-columns:1fr}}@media (width>=641px) and (width<=900px){.video-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=901px) and (width<=1200px){.video-grid{grid-template-columns:repeat(3,1fr)}}.home-root{background-color:var(--color-bg-primary);min-height:100vh}.home-layout{padding-top:var(--header-height);min-height:100vh;display:flex}.content-area{padding:var(--space-8);min-height:calc(100vh - var(--header-height));transition:margin-left var(--transition-slow);flex:1;margin-left:0;overflow-y:auto}.home-layout.sidebar-open .content-area{margin-left:var(--sidebar-width)}@media (width<=768px){.content-area,.home-layout.sidebar-open .content-area{padding:var(--space-5) var(--space-4);margin-left:0}}.home-error{justify-content:center;align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;min-height:320px;display:flex}.home-error__icon{font-size:2.5rem}.home-error__text{font-size:var(--font-size-base);color:var(--color-text-secondary);max-width:360px;line-height:1.6}.search-root{background-color:var(--color-bg-primary);min-height:100vh}.search-layout{padding-top:var(--header-height);min-height:100vh;display:flex}.search-content{margin-left:var(--sidebar-width);padding:var(--space-8);min-height:calc(100vh - var(--header-height));flex:1}@media (width<=768px){.search-content{padding:var(--space-5) var(--space-4);margin-left:0}}.search-heading{margin-bottom:var(--space-6);gap:var(--space-1);flex-direction:column;display:flex}.search-heading__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:1.3}.search-heading__query{color:var(--color-accent)}.search-heading__count{font-size:var(--font-size-sm);color:var(--color-text-muted)}.search-error{align-items:center;gap:var(--space-3);color:var(--color-text-secondary);font-size:var(--font-size-base);padding:var(--space-6);display:flex}.search-empty{justify-content:center;align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;min-height:320px;display:flex}.search-empty__icon{font-size:3rem}.search-empty__text{font-size:var(--font-size-base);color:var(--color-text-muted);max-width:360px;line-height:1.6}.subscribe-btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-6);border-radius:var(--radius-full);min-width:110px;height:36px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--transition-base), color var(--transition-base), opacity var(--transition-base), transform var(--transition-fast);background-color:var(--color-text-primary);color:var(--color-bg-primary);border:none;display:inline-flex}.subscribe-btn:hover:not(:disabled){opacity:.88;transform:translateY(-1px)}.subscribe-btn:active:not(:disabled){transform:translateY(0)}.subscribe-btn:disabled{cursor:not-allowed;opacity:.6}.subscribe-btn--subscribed{background-color:var(--color-bg-hover);color:var(--color-text-secondary);border:1px solid var(--color-border)}.subscribe-btn--subscribed:hover:not(:disabled){background-color:var(--color-error-bg);color:var(--color-error);border-color:var(--color-error)}@keyframes sub-spin{to{transform:rotate(360deg)}}.subscribe-btn__spinner{border:2px solid;border-top-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite sub-spin;display:inline-block}.confirm-dialog-backdrop{z-index:1000;padding:var(--space-4);background-color:#000000b8;justify-content:center;align-items:center;animation:.15s both backdrop-fade-in;display:flex;position:fixed;inset:0}@keyframes backdrop-fade-in{0%{opacity:0}to{opacity:1}}.confirm-dialog{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--space-8);align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;width:100%;max-width:400px;animation:.2s cubic-bezier(.16,1,.3,1) both dialog-pop-in;display:flex}@keyframes dialog-pop-in{0%{opacity:0;transform:scale(.94)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.confirm-dialog__icon{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.confirm-dialog__icon--danger{background-color:var(--color-error-bg);color:var(--color-error)}.confirm-dialog__icon--warning{color:#ffb400;background-color:#ffb4001f}.confirm-dialog__icon--info{color:#63b3ed;background-color:#63b3ed1f}.confirm-dialog__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:1.3}.confirm-dialog__message{font-size:var(--font-size-sm);color:var(--color-text-secondary);max-width:320px;line-height:1.6}.confirm-dialog__actions{gap:var(--space-3);width:100%;margin-top:var(--space-2);display:flex}.confirm-dialog__actions .btn{flex:1}.confirm-dialog__confirm-btn--danger{background-color:var(--color-error);color:var(--color-text-primary)}.confirm-dialog__confirm-btn--danger:hover:not(:disabled){background-color:#e03333;transform:translateY(-1px)}.confirm-dialog__confirm-btn--danger:active:not(:disabled){transform:translateY(0)}.confirm-dialog__confirm-btn--warning{color:#0c0c0c;background-color:#ffb400}.confirm-dialog__confirm-btn--warning:hover:not(:disabled){background-color:#e6a200;transform:translateY(-1px)}.confirm-dialog__confirm-btn--info{background-color:var(--color-accent);color:var(--color-text-primary)}.confirm-dialog__confirm-btn--info:hover:not(:disabled){background-color:var(--color-accent-hover);transform:translateY(-1px)}.confirm-dialog__spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spinner-spin;display:inline-block}@keyframes spinner-spin{to{transform:rotate(360deg)}}.comment-item{gap:1rem;margin-bottom:1.5rem;transition:opacity .2s;display:flex}.comment-item--deleting{opacity:.5;pointer-events:none}.comment-avatar{background-color:var(--surface-light);width:40px;height:40px;color:var(--text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;text-decoration:none;display:flex;overflow:hidden}.comment-avatar img{object-fit:cover;width:100%;height:100%}.comment-body{flex:1;min-width:0}.comment-header{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.comment-author{color:var(--text-primary);font-size:.875rem;font-weight:600;text-decoration:none}.comment-author:hover{text-decoration:underline}.comment-time{color:var(--text-secondary);font-size:.75rem}.comment-text{color:var(--text-primary);white-space:pre-wrap;word-break:break-word;margin:0 0 .5rem;font-size:.875rem;line-height:1.4}.comment-actions{align-items:center;gap:1rem;display:flex}.comment-action-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:.375rem;margin-left:-.5rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;transition:all .2s;display:flex}.comment-action-btn:hover{background-color:var(--surface-light);color:var(--text-primary)}.comment-action-btn.active{color:var(--primary)}.comment-owner-actions{gap:.5rem;display:flex}.comment-delete-btn:hover{color:var(--error);background-color:#ef44441a}.comment-edit-box{margin-bottom:.75rem}.comment-edit-input{background:var(--surface-light);border:1px solid var(--border);width:100%;color:var(--text-primary);resize:vertical;border-radius:8px;margin-bottom:.5rem;padding:.75rem;font-family:inherit;font-size:.875rem}.comment-edit-input:focus{border-color:var(--primary);outline:none}.comment-edit-actions{justify-content:flex-end;gap:.5rem;display:flex}.watch-comments{margin-top:1.5rem}.watch-comments__heading{margin-bottom:1.5rem;font-size:1.25rem}.watch-comment-form{align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.watch-comment-form__avatar{background-color:var(--surface-light);width:40px;height:40px;color:var(--text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex;overflow:hidden}.watch-comment-form__avatar img{object-fit:cover;width:100%;height:100%}.watch-comment-form__input-wrap{flex-direction:column;flex:1;gap:.5rem;display:flex}.watch-comment-input{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--text-primary);background:0 0;padding:.5rem 0;font-size:.875rem;transition:border-color .2s}.watch-comment-input:focus{border-bottom-color:var(--text-primary);outline:none}.watch-comment-submit-wrap{justify-content:flex-end;display:flex}.watch-comment-login-prompt{background-color:var(--surface-light);text-align:center;border-radius:8px;margin-bottom:2rem;padding:1rem}.watch-comments-empty,.watch-comments-loading{text-align:center;color:var(--text-secondary);padding:2rem 0}.watch-comments-load-more{background:var(--surface-light);width:100%;color:var(--text-primary);cursor:pointer;border:none;border-radius:8px;margin-top:1rem;padding:.75rem;font-weight:600;transition:background-color .2s}.watch-comments-load-more:hover{background:var(--surface-hover)}.save-modal-backdrop{z-index:1000;padding:var(--space-4);background-color:#000000b8;justify-content:center;align-items:center;animation:.15s both backdrop-fade-in;display:flex;position:fixed;inset:0}.save-modal{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);flex-direction:column;width:100%;max-width:360px;animation:.2s cubic-bezier(.16,1,.3,1) both dialog-pop-in;display:flex}.save-modal__header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.save-modal__title{font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.save-modal__close{color:var(--color-text-secondary);font-size:var(--font-size-lg);border-radius:var(--radius-full);width:32px;height:32px;transition:background-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.save-modal__close:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.save-modal__body{padding:var(--space-2) 0;max-height:50vh;overflow-y:auto}.save-modal__loading,.save-modal__empty{padding:var(--space-5);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.save-modal__list{flex-direction:column;display:flex}.save-modal__item{display:flex}.save-modal__label{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);cursor:pointer;width:100%;transition:background-color var(--transition-fast);display:flex}.save-modal__label:hover{background-color:var(--color-bg-hover)}.save-modal__label--disabled{opacity:.5;cursor:not-allowed}.save-modal__checkbox{width:18px;height:18px;accent-color:var(--color-accent)}.save-modal__name{font-size:var(--font-size-sm);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.save-modal__badge{opacity:.7;font-size:10px}.save-modal__new-btn{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-5);font-size:var(--font-size-sm);color:var(--color-accent);font-weight:var(--font-weight-medium);text-align:left;transition:background-color var(--transition-fast);display:flex}.save-modal__new-btn:hover{background-color:var(--color-bg-hover)}.save-modal__new-icon{font-size:1.1rem;line-height:1}.save-modal__create-form{gap:var(--space-3);padding:var(--space-3) var(--space-5) var(--space-4);border-top:1px solid var(--color-border);flex-direction:column;display:flex}.save-modal__input{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-primary);color:var(--color-text-primary);font-size:var(--font-size-sm);transition:border-color var(--transition-fast)}.save-modal__input:focus{border-color:var(--color-accent);outline:none}.save-modal__privacy-toggle{align-items:center;gap:var(--space-2);cursor:pointer;display:flex}.save-modal__error{font-size:var(--font-size-xs);color:var(--color-error)}.save-modal__create-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.watch-root{background-color:var(--color-bg-primary);min-height:100vh}.watch-layout{padding-top:var(--header-height);min-height:100vh;display:flex}.watch-main{padding:var(--space-6) var(--space-8);min-height:calc(100vh - var(--header-height));transition:margin-left var(--transition-slow);flex:1;margin-left:0}.watch-layout.sidebar-open .watch-main{margin-left:var(--sidebar-width)}@media (width<=768px){.watch-main,.watch-layout.sidebar-open .watch-main{padding:var(--space-4);margin-left:0}}.watch-content{gap:var(--space-6);grid-template-columns:1fr 360px;max-width:1400px;display:grid}@media (width<=1100px){.watch-content{grid-template-columns:1fr}.watch-related{order:2}}.watch-player-col{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.watch-player-wrapper{aspect-ratio:16/9;border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-lg);background:#000;overflow:hidden}.watch-player{object-fit:contain;background:#000;width:100%;height:100%;display:block}.watch-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;line-height:1.35;display:flex}.watch-premium-badge{color:#1a1200;letter-spacing:.08em;white-space:nowrap;vertical-align:middle;background:linear-gradient(135deg,#f5c518,#e6a800);border-radius:999px;flex-shrink:0;align-items:center;gap:.25rem;padding:.2rem .6rem;font-size:.72rem;font-weight:700;display:inline-flex}.watch-meta-row{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.watch-stats{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.watch-views,.watch-date,.watch-dur{font-size:var(--font-size-sm);color:var(--color-text-muted)}.watch-dot{color:var(--color-text-muted)}.watch-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.watch-action-btn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);background-color:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);display:inline-flex}.watch-action-btn:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-border-focus);transform:translateY(-1px)}.watch-action-btn:active{transform:translateY(0)}.watch-action-btn--active{color:var(--color-primary,#6c63ff);border-color:var(--color-primary,#6c63ff);background-color:#6c63ff1a}.watch-action-btn--active:hover{background-color:#6c63ff2e}.watch-divider{background:var(--color-border);height:1px;margin:var(--space-1) 0}.watch-channel-row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.watch-channel-avatar{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-accent), #84e);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;overflow:hidden}.watch-channel-avatar__img{object-fit:cover;width:100%;height:100%}.watch-channel-avatar__initials{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:#fff;letter-spacing:.5px;-webkit-user-select:none;user-select:none}.watch-channel-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.watch-channel-name{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;transition:opacity var(--transition-fast);text-decoration:none;overflow:hidden}.watch-channel-name-link:hover{opacity:.75}.watch-channel-username{font-size:var(--font-size-xs);color:var(--color-text-muted)}.watch-channel-row>.subscribe-btn{flex-shrink:0;margin-left:auto}.watch-description{gap:var(--space-2);flex-direction:column;display:flex}.watch-description__text{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-word;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.7;transition:none;display:-webkit-box;overflow:hidden}.watch-description__text--expanded{-webkit-line-clamp:unset;display:block;overflow:visible}.watch-description__toggle{align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;width:fit-content;padding:0;display:inline-flex}.watch-description__toggle:hover{color:var(--color-text-primary)}.watch-comments{gap:var(--space-5);flex-direction:column;display:flex}.watch-comments__heading{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.watch-comment-form{align-items:center;gap:var(--space-3);display:flex}.watch-comment-form__avatar{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-accent), #84e);width:36px;height:36px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:#fff;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.watch-comment-form__input-wrap{flex:1}.watch-comment-input{border:none;border-bottom:1px solid var(--color-border);width:100%;padding:var(--space-2) 0;color:var(--color-text-primary);font-size:var(--font-size-sm);transition:border-color var(--transition-base);background:0 0;outline:none}.watch-comment-input::placeholder{color:var(--color-text-muted)}.watch-comment-input:focus{border-bottom-color:var(--color-border-focus)}.watch-comments__list{gap:var(--space-5);flex-direction:column;display:flex}.watch-comment{gap:var(--space-3);display:flex}.watch-comment__avatar{border-radius:var(--radius-full);background:var(--color-bg-card);border:1px solid var(--color-border);width:36px;height:36px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.watch-comment__body{gap:var(--space-1);flex-direction:column;flex:1;display:flex}.watch-comment__header{align-items:center;gap:var(--space-2);display:flex}.watch-comment__name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.watch-comment__time{font-size:var(--font-size-xs);color:var(--color-text-muted)}.watch-comment__text{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:1.6}.watch-related{gap:var(--space-4);flex-direction:column;display:flex}.watch-related__heading{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.watch-related__list{gap:var(--space-4);flex-direction:column;display:flex}.watch-related__empty{font-size:var(--font-size-sm);color:var(--color-text-muted)}.watch-toast{bottom:var(--space-6);background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-primary);font-size:var(--font-size-sm);padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);z-index:500;white-space:nowrap;animation:.2s both toast-in;position:fixed;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.watch-404{justify-content:center;align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;min-height:400px;display:flex}.watch-404__icon{font-size:3.5rem}.watch-404__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.watch-404__text{font-size:var(--font-size-base);color:var(--color-text-secondary);max-width:380px;line-height:1.6}.skeleton-shimmer{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-bg-card) 25%, var(--color-bg-hover) 50%, var(--color-bg-card) 75%);background-size:1200px 100%;animation:1.4s ease-in-out infinite shimmer}.watch-skeleton{gap:var(--space-4);flex-direction:column;max-width:900px;display:flex}.watch-skeleton__player{aspect-ratio:16/9;border-radius:var(--radius-lg);width:100%}.watch-skeleton__title{border-radius:var(--radius-sm);width:80%;height:24px}.watch-skeleton__title--short{width:50%}.watch-skeleton__meta{align-items:center;gap:var(--space-3);margin-top:var(--space-2);display:flex}.watch-skeleton__avatar{border-radius:var(--radius-full);flex-shrink:0;width:48px;height:48px}.watch-skeleton__channel{gap:var(--space-2);flex-direction:column;flex:1;display:flex}.watch-skeleton__channel-name{border-radius:var(--radius-sm);width:160px;height:16px}.watch-skeleton__channel-sub{border-radius:var(--radius-sm);width:100px;height:12px}.upload-root{background-color:var(--color-bg-primary);min-height:100vh}.upload-layout{padding-top:var(--header-height);min-height:100vh;display:flex}.upload-main{margin-left:var(--sidebar-width);padding:var(--space-8);min-height:calc(100vh - var(--header-height));flex-direction:column;flex:1;align-items:center;display:flex}@media (width<=768px){.upload-main{padding:var(--space-5) var(--space-4);margin-left:0}}.upload-container{gap:var(--space-8);flex-direction:column;width:100%;max-width:760px;display:flex}.upload-heading{gap:var(--space-1);flex-direction:column;display:flex}.upload-heading__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;line-height:1.2}.upload-heading__sub{font-size:var(--font-size-sm);color:var(--color-text-muted)}.upload-form{gap:var(--space-6);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);flex-direction:column;display:flex}.upload-type-selector{border:1px solid var(--color-border);background:#00000059;border-radius:14px;grid-template-columns:1fr 1fr;gap:.9rem;padding:.45rem;display:grid}.upload-type-btn{cursor:pointer;color:var(--color-text-secondary);text-align:left;background:0 0;border:1.5px solid #0000;border-radius:10px;align-items:center;gap:.9rem;padding:.85rem 1.25rem;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.upload-type-btn:hover:not(:disabled){color:var(--color-text-primary);background:#ffffff0a}.upload-type-btn--active{color:#fff;background:linear-gradient(135deg,#ff444426 0%,#ff44440a 100%);border-color:#f449;box-shadow:0 4px 16px #0000004d}.upload-type-btn__icon{font-size:1.6rem;line-height:1}.upload-type-btn__text{flex-direction:column;display:flex}.upload-type-btn__label{letter-spacing:.01em;font-size:.96rem;font-weight:700}.upload-type-btn__hint{opacity:.7;font-size:.74rem;font-weight:500}.upload-required{color:var(--color-accent);margin-left:2px}.upload-textarea{resize:vertical;min-height:100px;line-height:1.6}.upload-error-banner{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--color-error-bg);border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm);border:1px solid #ff4d4d40;line-height:1.5;animation:.2s both banner-in;display:flex}@keyframes banner-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.upload-files-row{gap:var(--space-5);grid-template-columns:1fr 1fr;display:grid}@media (width<=560px){.upload-files-row{grid-template-columns:1fr}}.upload-file-group{gap:var(--space-2)}.upload-dropzone{aspect-ratio:16/9;border-radius:var(--radius-md);border:2px dashed var(--color-border);background:var(--color-bg-input);width:100%;color:var(--color-text-muted);cursor:pointer;transition:border-color var(--transition-base), background-color var(--transition-base), color var(--transition-fast), transform var(--transition-fast);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.upload-dropzone:hover:not(:disabled){border-color:var(--color-border-focus);color:var(--color-text-secondary);background:var(--color-bg-hover);transform:translateY(-1px)}.upload-dropzone:disabled{cursor:not-allowed;opacity:.55}.upload-dropzone--error{border-color:var(--color-error);background:var(--color-error-bg)}.upload-dropzone--filled{border-style:solid;border-color:var(--color-border-focus)}.upload-dropzone--thumb{aspect-ratio:16/9}.upload-dropzone__prompt{align-items:center;gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex}.upload-dropzone__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.upload-dropzone__hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.upload-dropzone__file-info{align-items:center;gap:var(--space-3);padding:0 var(--space-4);pointer-events:none;width:100%;display:flex}.upload-dropzone__file-text{text-align:left;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.upload-dropzone__file-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.upload-dropzone__file-size{font-size:var(--font-size-xs);color:var(--color-text-muted)}.upload-dropzone__change{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-accent);flex-shrink:0}.upload-thumb-preview-wrap{width:100%;height:100%;position:relative}.upload-thumb-preview{object-fit:cover;width:100%;height:100%;display:block}.upload-thumb-change{bottom:var(--space-2);right:var(--space-2);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);pointer-events:none;background:#000000b8;padding:3px 8px;position:absolute}.upload-progress-block{gap:var(--space-2);flex-direction:column;animation:.2s both banner-in;display:flex}.upload-progress-header{justify-content:space-between;align-items:center;display:flex}.upload-progress-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.upload-progress-pct{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-accent);text-align:right;min-width:40px}.upload-progress-track{background:var(--color-bg-hover);border-radius:var(--radius-full);width:100%;height:6px;overflow:hidden}.upload-progress-fill{background:linear-gradient(90deg, var(--color-accent), #f84);border-radius:var(--radius-full);height:100%;transition:width .3s}@keyframes progress-pulse{0%,to{opacity:1}50%{opacity:.55}}.upload-progress-fill--pulse{animation:1.2s ease-in-out infinite progress-pulse;width:100%!important}.upload-progress-note{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.5}.upload-actions{justify-content:flex-end;align-items:center;gap:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--color-border);display:flex}.upload-submit-btn{padding:var(--space-3) var(--space-8);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:var(--space-2)}.upload-spinner{flex-shrink:0;animation:.8s linear infinite spin}.playlist-card{gap:var(--space-3);color:inherit;background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:transform var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base);cursor:pointer;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.playlist-card:hover{border-color:var(--color-border-focus);box-shadow:var(--shadow-md);transform:translateY(-3px)}.playlist-card__thumb{aspect-ratio:16/9;background-color:var(--color-bg-hover);width:100%;position:relative;overflow:hidden}.playlist-card__img{object-fit:cover;width:100%;height:100%}.playlist-card__empty-thumb{width:100%;height:100%;color:var(--color-text-muted);justify-content:center;align-items:center;display:flex}.playlist-card__count{bottom:var(--space-2);right:var(--space-2);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);background-color:#000000c7;padding:2px 6px;position:absolute}.playlist-card__info{padding:0 var(--space-3) var(--space-3);gap:var(--space-1);flex-direction:column;display:flex}.playlist-card__name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.playlist-card__desc{font-size:var(--font-size-xs);color:var(--color-text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.playlist-card__badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-full);margin-top:var(--space-1);align-self:flex-start;padding:2px 8px}.playlist-card__badge--public{color:var(--color-success);background-color:#4dff911f}.playlist-card__badge--private{color:var(--color-error);background-color:#ff44441f}.tweet-item{gap:var(--space-4);padding:var(--space-4);background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:opacity var(--transition-base);display:flex}.tweet-item--deleting{opacity:.5;pointer-events:none}.tweet-avatar{border-radius:var(--radius-full);background-color:var(--color-bg-hover);width:48px;height:48px;color:var(--color-text-secondary);font-weight:var(--font-weight-medium);font-size:var(--font-size-lg);flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:flex;overflow:hidden}.tweet-avatar img{object-fit:cover;width:100%;height:100%}.tweet-body{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.tweet-header{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.tweet-name{font-weight:var(--font-weight-medium);color:var(--color-text-primary);text-decoration:none}.tweet-name:hover{text-decoration:underline}.tweet-time,.tweet-edited{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.tweet-text{color:var(--color-text-primary);white-space:pre-wrap;word-break:break-word;line-height:1.5}.tweet-actions{align-items:center;gap:var(--space-4);margin-top:var(--space-2);display:flex}.tweet-action-btn{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2);margin-left:calc(var(--space-2) * -1);border-radius:var(--radius-full);transition:color var(--transition-fast), background-color var(--transition-fast);display:flex}.tweet-action-btn:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.tweet-action-btn.active{color:var(--color-accent)}.tweet-owner-actions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.tweet-delete-btn:hover{color:var(--color-error);background-color:var(--color-error-bg)}.tweet-edit-form{gap:var(--space-3);margin:var(--space-2) 0;flex-direction:column;display:flex}.tweet-edit-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.playlist-modal-backdrop{z-index:1000;padding:var(--space-4);background-color:#000000b8;justify-content:center;align-items:center;animation:.15s both backdrop-fade-in;display:flex;position:fixed;inset:0}.playlist-modal{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);flex-direction:column;width:100%;max-width:480px;animation:.2s cubic-bezier(.16,1,.3,1) both dialog-pop-in;display:flex}.playlist-modal__header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.playlist-modal__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.playlist-modal__close{color:var(--color-text-secondary);font-size:var(--font-size-lg);border-radius:var(--radius-full);width:32px;height:32px;transition:background-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.playlist-modal__close:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.playlist-modal__form{padding:var(--space-6);gap:var(--space-5);flex-direction:column;display:flex}.playlist-modal__toggle{margin-top:var(--space-2)}.playlist-modal__toggle-label{align-items:flex-start;gap:var(--space-3);cursor:pointer;display:flex}.playlist-modal__checkbox{width:18px;height:18px;accent-color:var(--color-accent);margin-top:4px}.playlist-modal__toggle-text{flex-direction:column;gap:2px;display:flex}.playlist-modal__toggle-text strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.playlist-modal__toggle-text span{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.playlist-modal__actions{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-4);display:flex}.channel-tabs{gap:var(--space-6);border-bottom:1px solid var(--color-border);margin-top:var(--space-4);padding:0 var(--space-6);scrollbar-width:none;display:flex;overflow-x:auto}.channel-tabs::-webkit-scrollbar{display:none}.channel-tab{padding:var(--space-4) 0;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);transition:color var(--transition-fast), border-color var(--transition-fast);white-space:nowrap;border-bottom:2px solid #0000}.channel-tab:hover{color:var(--color-text-primary)}.channel-tab--active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.channel-tab-content{padding:var(--space-6)}.channel-loading{text-align:center;color:var(--color-text-secondary);padding:var(--space-8) 0}.channel-empty{text-align:center;color:var(--color-text-secondary);padding:var(--space-8) 0;background-color:var(--color-bg-card);border-radius:var(--radius-lg);border:1px dashed var(--color-border)}.channel-playlists{gap:var(--space-6);flex-direction:column;display:flex}.channel-playlists__actions{justify-content:flex-end;display:flex}.channel-playlists__grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.channel-community{gap:var(--space-6);flex-direction:column;max-width:800px;margin:0 auto;display:flex}.channel-tweet-form{gap:var(--space-3);background-color:var(--color-bg-card);padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border);flex-direction:column;display:flex}.channel-tweet-form__actions{justify-content:flex-end;display:flex}.channel-community__list{gap:var(--space-4);flex-direction:column;display:flex}.channel-root{background-color:var(--color-bg-primary);min-height:100vh}.channel-layout{padding-top:var(--header-height);min-height:100vh;display:flex}.channel-main{min-width:0;transition:margin-left var(--transition-slow);flex:1;margin-left:0}.channel-layout.sidebar-open .channel-main{margin-left:var(--sidebar-width)}@media (width<=768px){.channel-main,.channel-layout.sidebar-open .channel-main{margin-left:0}}.channel-page-container{width:100%;max-width:1280px;padding-top:var(--space-4);margin:0 auto}@media (width<=768px){.channel-page-container{padding-top:0}}.channel-cover{width:100%;height:200px;position:relative;overflow:hidden}@media (width>=768px){.channel-cover{border-radius:var(--radius-xl);height:260px}}.channel-cover__img{object-fit:cover;width:100%;height:100%;display:block}.channel-cover__fallback{background:linear-gradient(135deg,#1a1a1a 0%,#2a1a2e 50%,#1a1a2a 100%);width:100%;height:100%}.channel-profile{padding:var(--space-6) var(--space-8)}.channel-profile__inner{align-items:center;gap:var(--space-6);display:flex}@media (width<=560px){.channel-profile{padding:var(--space-4) var(--space-4) var(--space-6)}.channel-profile__inner{align-items:flex-start;gap:var(--space-3);flex-direction:column}}.channel-avatar{border:4px solid var(--color-bg-primary);background-color:var(--color-bg-card);width:160px;height:160px;box-shadow:var(--shadow-md);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}@media (width<=560px){.channel-avatar{width:100px;height:100px}}.channel-avatar__img{object-fit:cover;width:100%;height:100%}.channel-avatar__initials{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);line-height:1}.channel-info{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.channel-info__name{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;line-height:1.2}.channel-info__username{font-size:var(--font-size-sm);color:var(--color-text-muted)}.channel-info__stats{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex}.channel-info__dot{color:var(--color-text-muted)}.channel-info__actions{margin-top:var(--space-3)}.channel-edit-btn{border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--space-2) var(--space-6);height:36px}.channel-divider{background:var(--color-border);height:1px;margin:0 var(--space-8);margin-bottom:var(--space-6)}@media (width<=560px){.channel-divider{margin:0 var(--space-4);margin-bottom:var(--space-5)}}.channel-videos{padding:0 var(--space-8) var(--space-8)}@media (width<=560px){.channel-videos{padding:0 var(--space-4) var(--space-6)}}.channel-videos__heading{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-5)}.channel-error-state{justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-16) var(--space-8);text-align:center;flex-direction:column;display:flex}.channel-error-state__icon{font-size:3rem;line-height:1}.channel-error-state__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.channel-error-state__text{font-size:var(--font-size-sm);color:var(--color-text-muted);max-width:360px;line-height:1.6}.channel-skeleton{flex-direction:column;display:flex}.channel-skeleton__cover{width:100%;height:200px}@media (width>=768px){.channel-skeleton__cover{border-radius:var(--radius-xl);height:260px}}.channel-skeleton__profile{align-items:center;gap:var(--space-6);padding:var(--space-6) var(--space-8);display:flex}.channel-skeleton__avatar{border-radius:50%;flex-shrink:0;width:160px;height:160px}@media (width<=560px){.channel-skeleton__avatar{width:100px;height:100px}}.channel-skeleton__info{gap:var(--space-2);flex-direction:column;flex:1;display:flex}.channel-skeleton__name{border-radius:var(--radius-sm);width:220px;height:28px}.channel-skeleton__sub{border-radius:var(--radius-sm);width:120px;height:16px}.channel-skeleton__stats{border-radius:var(--radius-sm);width:180px;height:14px}.liked-root{background:var(--color-bg,#0f0f0f);min-height:100vh;color:var(--color-text-primary,#fff);flex-direction:column;display:flex}.liked-layout{flex:1;padding-top:64px;display:flex}.liked-main{transition:margin-left var(--transition-slow);flex:1;margin-left:0;padding:2rem;overflow-y:auto}.liked-layout.sidebar-open .liked-main{margin-left:var(--sidebar-width)}@media (width<=768px){.liked-main,.liked-layout.sidebar-open .liked-main{margin-left:0;padding:1.5rem 1rem}}.liked-title{margin-bottom:1.5rem;font-size:1.75rem;font-weight:700}.liked-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.liked-empty{text-align:center;color:var(--color-text-secondary,#aaa);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:4rem 1rem;display:flex}.liked-empty__icon{font-size:3rem}.liked-empty h2{color:var(--color-text-primary,#fff);margin:0;font-size:1.25rem}.liked-empty p{margin:0;font-size:.875rem}.liked-error{color:var(--color-error,#ef4444);text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:4rem;display:flex}.playlist-root{background-color:var(--color-bg-primary);min-height:100vh}.playlist-layout{padding-top:var(--header-height);min-height:100vh;display:flex}.playlist-main{min-width:0;transition:margin-left var(--transition-slow);padding:var(--space-6);flex:1;margin-left:0}.playlist-layout.sidebar-open .playlist-main{margin-left:var(--sidebar-width)}@media (width<=768px){.playlist-main,.playlist-layout.sidebar-open .playlist-main{margin-left:0}}.playlist-loading,.playlist-error{justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-16) var(--space-6);text-align:center;color:var(--color-text-secondary);flex-direction:column;display:flex}.playlist-error h2{color:var(--color-text-primary);font-size:var(--font-size-xl)}.playlist-content{gap:var(--space-6);max-width:1280px;margin:0 auto;display:flex}@media (width<=1024px){.playlist-content{flex-direction:column}}.playlist-info-col{flex:0 0 280px}@media (width<=1024px){.playlist-info-col{flex:none;width:100%}}.playlist-info-card{background:var(--color-bg-card);border-radius:var(--radius-xl);padding:var(--space-5);gap:var(--space-4);top:calc(var(--header-height) + var(--space-6));flex-direction:column;display:flex;position:sticky}.playlist-cover{aspect-ratio:16/9;border-radius:var(--radius-lg);background-color:var(--color-bg-hover);width:100%;max-height:160px;overflow:hidden}.playlist-cover__img{object-fit:cover;width:100%;height:100%}.playlist-cover__fallback{width:100%;height:100%;color:var(--color-text-secondary);font-size:var(--font-size-sm);justify-content:center;align-items:center;display:flex}.playlist-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1.2}.playlist-meta{align-items:center;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-secondary);flex-wrap:wrap;display:flex}.playlist-owner{color:var(--color-text-primary);font-weight:var(--font-weight-medium);text-decoration:none}.playlist-owner:hover{text-decoration:underline}.playlist-desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:pre-wrap;line-height:1.5}.playlist-play-btn{width:100%;font-size:var(--font-size-base);padding:var(--space-3);justify-content:center}.playlist-actions{gap:var(--space-2);display:flex}.playlist-actions .btn{flex:1;justify-content:center}.playlist-btn-danger:hover{color:var(--color-error);border-color:var(--color-error);background-color:var(--color-error-bg)}.playlist-videos-col{flex:1;min-width:0}.playlist-empty{text-align:center;padding:var(--space-12) var(--space-6);color:var(--color-text-secondary);background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px dashed var(--color-border)}.playlist-videos-list{gap:var(--space-2);flex-direction:column;display:flex}.playlist-video-item{align-items:stretch;gap:var(--space-3);padding:var(--space-2);border-radius:var(--radius-lg);transition:background-color var(--transition-fast);display:flex}.playlist-video-item:hover{background-color:var(--color-bg-hover)}.playlist-video-index{width:24px;font-size:var(--font-size-sm);color:var(--color-text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.playlist-video-card-wrap{flex:1;min-width:0}.playlist-video-card-wrap .video-card{background:0 0;border:none;flex-direction:row;align-items:flex-start}.playlist-video-card-wrap .video-card:hover{box-shadow:none;transform:none}.playlist-video-card-wrap .video-card__video-link{flex-shrink:0;width:160px}.playlist-video-card-wrap .video-card__meta{padding:var(--space-1) 0;flex:1}.playlist-video-card-wrap .video-card__owner-avatar{display:none}@media (width<=600px){.playlist-video-card-wrap .video-card{flex-direction:column}.playlist-video-card-wrap .video-card__video-link{width:100%}}.playlist-video-menu-wrap{align-items:center;display:flex;position:relative}.playlist-menu-btn{border-radius:var(--radius-full);width:32px;height:32px;color:var(--color-text-muted);transition:background-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.playlist-menu-btn:hover,.playlist-menu-btn[aria-expanded=true]{background-color:var(--color-bg-hover);color:var(--color-text)}.playlist-video-dropdown{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);z-index:50;min-width:200px;padding:var(--space-2) 0;flex-direction:column;margin-top:4px;display:flex;position:absolute;top:100%;right:0;box-shadow:0 4px 20px #0006}.playlist-dropdown-item{text-align:left;width:100%;padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);color:var(--color-text);transition:background-color var(--transition-fast)}.playlist-dropdown-item:hover{background-color:var(--color-bg-hover)}.playlist-dropdown-item.text-danger{color:var(--color-error)}.playlist-add-panel{margin-top:var(--space-4);background:var(--color-bg-card);border-radius:var(--radius-xl);border:1px solid var(--color-border);overflow:hidden}.playlist-add-panel__header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.playlist-add-panel__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.playlist-add-panel__search{width:100%;padding:var(--space-3) var(--space-4);background:var(--color-bg-primary);border:none;border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-size:var(--font-size-sm)}.playlist-add-panel__search:focus{border-bottom-color:var(--color-accent);outline:none}.playlist-add-panel__results{flex-direction:column;max-height:300px;display:flex;overflow-y:auto}.playlist-add-panel__msg{padding:var(--space-4);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.playlist-add-panel__item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);transition:background-color var(--transition-fast);display:flex}.playlist-add-panel__item:hover{background-color:var(--color-bg-hover)}.playlist-add-panel__thumb{object-fit:cover;border-radius:var(--radius-sm);background-color:var(--color-bg-hover);flex-shrink:0;width:72px;height:40px}.playlist-add-panel__vtitle{min-width:0;font-size:var(--font-size-sm);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.stat-card{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);align-items:center;gap:var(--space-4);transition:transform var(--transition-base), border-color var(--transition-base);display:flex}.stat-card:hover{border-color:var(--color-border-focus);transform:translateY(-2px)}.stat-card__icon-wrap{border-radius:var(--radius-full);width:56px;height:56px;color:var(--color-accent);background-color:#ffffff0d;flex-shrink:0;justify-content:center;align-items:center;display:flex}.stat-card__icon-wrap svg{width:28px;height:28px}.stat-card__info{gap:var(--space-1);flex-direction:column;display:flex}.stat-card__label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.stat-card__value{font-size:var(--font-size-2xl);color:var(--color-text-primary);font-weight:var(--font-weight-bold);line-height:1.2}.edit-video-modal-backdrop{z-index:1000;background-color:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.edit-video-modal{background-color:var(--color-bg-elevated,#1f1f1f);border-radius:var(--radius-lg,8px);flex-direction:column;width:100%;max-width:500px;animation:.2s ease-out modal-in;display:flex;box-shadow:0 10px 25px #00000080}@keyframes modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.edit-video-modal__header{border-bottom:1px solid var(--color-border,#333);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.edit-video-modal__header h2{color:var(--color-text-primary,#fff);margin:0;font-size:1.25rem;font-weight:600}.edit-video-modal__close{color:var(--color-text-muted,#aaa);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.25rem;font-size:1.25rem;display:flex}.edit-video-modal__close:hover{color:var(--color-text-primary,#fff);background-color:var(--color-bg-hover,#2a2a2a)}.edit-video-form{flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex}.edit-video-form__error{color:var(--color-error,#ef4444);text-align:center;background-color:#ef44441a;border-radius:4px;padding:.75rem;font-size:.875rem}.edit-video-form__group{flex-direction:column;gap:.5rem;display:flex}.edit-video-form__group label{color:var(--color-text-secondary,#ccc);font-size:.875rem;font-weight:500}.edit-video-form__group input,.edit-video-form__group textarea{background-color:var(--color-bg,#0f0f0f);border:1px solid var(--color-border,#333);width:100%;color:var(--color-text-primary,#fff);border-radius:4px;padding:.75rem;font-family:inherit;font-size:.9375rem}.edit-video-form__group input:focus,.edit-video-form__group textarea:focus{border-color:var(--color-primary,#3ea6ff);outline:none}.edit-video-form__thumbnail-preview{aspect-ratio:16/9;background-color:var(--color-bg,#0f0f0f);border:1px dashed var(--color-border,#333);border-radius:4px;justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.edit-video-form__thumbnail-preview img{object-fit:cover;width:100%;height:100%}.edit-video-form__thumbnail-placeholder{color:var(--color-text-muted,#aaa);font-size:.875rem}.edit-video-modal__actions{justify-content:flex-end;gap:1rem;margin-top:.5rem;display:flex}.dashboard-root{background-color:var(--color-bg-primary);min-height:100vh}.dashboard-layout{padding-top:var(--header-height);min-height:100vh;display:flex}.dashboard-main{min-width:0;transition:margin-left var(--transition-slow);padding:var(--space-6) var(--space-8);gap:var(--space-8);flex-direction:column;flex:1;margin-left:0;display:flex}.dashboard-layout.sidebar-open .dashboard-main{margin-left:var(--sidebar-width)}@media (width<=768px){.dashboard-main,.dashboard-layout.sidebar-open .dashboard-main{padding:var(--space-4);margin-left:0}}.dashboard-header{justify-content:space-between;align-items:center;display:flex}.dashboard-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.dashboard-loading{padding:var(--space-12) 0;text-align:center;color:var(--color-text-secondary)}.dashboard-stats-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.dashboard-videos-section{gap:var(--space-4);flex-direction:column;display:flex}.dashboard-section-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.dashboard-empty{text-align:center;padding:var(--space-12) var(--space-6);color:var(--color-text-secondary);background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px dashed var(--color-border)}.dashboard-table-container{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow-x:auto}.dashboard-table{border-collapse:collapse;width:100%;min-width:800px}.dashboard-table th,.dashboard-table td{padding:var(--space-4);text-align:left;border-bottom:1px solid var(--color-border)}.dashboard-table th{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:var(--font-size-sm);background-color:#ffffff05}.dashboard-table tbody tr{transition:background-color var(--transition-fast)}.dashboard-table tbody tr:hover{background-color:var(--color-bg-hover)}.dashboard-table tbody tr:last-child td{border-bottom:none}.dashboard-table-video{align-items:center;gap:var(--space-3);max-width:300px;display:flex}.dashboard-table-thumb{border-radius:var(--radius-sm);object-fit:cover;background-color:var(--color-bg-hover);flex-shrink:0;width:96px;height:54px}.dashboard-table-vtitle{font-weight:var(--font-weight-medium);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dashboard-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-full);padding:2px 8px;display:inline-block}.dashboard-badge--public{color:var(--color-success);background-color:#4dff911f}.dashboard-badge--private{color:var(--color-error);background-color:#ff44441f}.dashboard-premium-badge{vertical-align:middle;margin-right:.25rem;font-size:.8rem;line-height:1;display:inline-block}.dashboard-table-actions{justify-content:center;gap:var(--space-2);display:flex}.dashboard-table th:last-child,.dashboard-table td:last-child{text-align:center}.mt-4{margin-top:var(--space-4)}.history-root{flex-direction:column;min-height:100vh;display:flex}.history-layout{flex:1;padding-top:64px;display:flex}.history-main{padding:var(--space-6) var(--space-6);background-color:var(--color-bg);background:radial-gradient(circle at 100% 0,#8844ee08 0%,#0000 60%),radial-gradient(circle at 0 100%,#ee444408 0%,#0000 60%);background-color:var(--color-bg);transition:margin-left var(--transition-slow);flex:1;margin-left:0;overflow-y:auto}.history-layout.sidebar-open .history-main{margin-left:var(--sidebar-width)}@media (width<=1024px){.history-layout.sidebar-open .history-main{margin-left:0}}.history-header{margin-bottom:var(--space-6);align-items:center;gap:var(--space-4);display:flex}.history-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);letter-spacing:-.02em}.history-error{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-10) var(--space-4);text-align:center;color:var(--color-error);flex-direction:column;display:flex}@media (width<=768px){.history-main{padding:var(--space-4)}}.subs-root{flex-direction:column;min-height:100vh;display:flex}.subs-layout{flex:1;padding-top:64px;display:flex}.subs-main{transition:margin-left var(--transition-slow);flex:1;margin-left:0;padding:2rem 2.5rem;overflow-y:auto}.subs-layout.sidebar-open .subs-main{margin-left:var(--sidebar-width)}@media (width<=768px){.subs-main,.subs-layout.sidebar-open .subs-main{margin-left:0;padding:1.5rem 1rem}}.subs-title{letter-spacing:-.02em;margin-bottom:2rem;font-size:1.75rem;font-weight:700}.subs-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1.5rem 1rem;display:grid}.subs-card{color:var(--color-text);border-radius:var(--radius-lg);transition:background-color var(--transition-fast), transform var(--transition-fast);flex-direction:column;align-items:center;gap:.6rem;padding:1rem .5rem;text-decoration:none;display:flex}.subs-card:hover{background-color:var(--color-bg-hover);transform:translateY(-2px)}.subs-card__avatar-wrap{display:inline-flex;position:relative}.subs-card__avatar{object-fit:cover;border:2px solid var(--color-border);width:72px;height:72px;transition:border-color var(--transition-fast);background:var(--color-bg-elevated);color:var(--color-text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:1.75rem;font-weight:700;display:flex}.subs-card:hover .subs-card__avatar{border-color:var(--color-primary)}.subs-card__avatar--fallback{border:2px solid var(--color-border);background:var(--color-bg-elevated);width:72px;height:72px;color:var(--color-text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:1.75rem;font-weight:700;display:flex}.subs-card__new-dot{border:2px solid var(--color-bg,#0f0f0f);pointer-events:none;background-color:#e53935;border-radius:50%;width:13px;height:13px;position:absolute;bottom:2px;right:2px;box-shadow:0 0 6px #e53935b3}.subs-card__name{text-align:center;color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;max-width:100px;margin:0;font-size:.8125rem;font-weight:600;overflow:hidden}.subs-card__username{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;text-align:center;max-width:100px;margin:0;font-size:.75rem;overflow:hidden}.subs-card--skeleton{pointer-events:none}.subs-card__avatar-skeleton{background:linear-gradient(90deg, var(--color-bg-elevated) 25%, var(--color-bg-hover) 50%, var(--color-bg-elevated) 75%);background-size:200% 100%;border-radius:50%;width:72px;height:72px;animation:1.4s infinite skeleton-shimmer}.subs-card__name-skeleton{background:linear-gradient(90deg, var(--color-bg-elevated) 25%, var(--color-bg-hover) 50%, var(--color-bg-elevated) 75%);background-size:200% 100%;border-radius:6px;width:70px;height:12px;animation:1.4s infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.subs-empty{text-align:center;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:5rem 1rem;display:flex}.subs-empty__icon{font-size:3rem}.subs-empty h2{color:var(--color-text);margin:0;font-size:1.25rem}.subs-empty p{margin:0;font-size:.875rem}.subs-error{color:var(--color-error);text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:4rem;display:flex}.premium-root{background-color:var(--color-bg,#0b0b0d);min-height:100vh;color:var(--color-text-primary,#f1f1f1);flex-direction:column;display:flex}.premium-layout{padding-top:var(--header-height);min-height:100vh;display:flex}.premium-content{padding:var(--space-8);min-height:calc(100vh - var(--header-height));width:100%;max-width:1600px;transition:margin-left var(--transition-slow);flex:1;margin-left:0;overflow-y:auto}.premium-layout.sidebar-open .premium-content{margin-left:var(--sidebar-width)}@media (width<=768px){.premium-content,.premium-layout.sidebar-open .premium-content{padding:var(--space-5) var(--space-4);margin-left:0}}.premium-hero{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:radial-gradient(circle at 0 0,#d4af371f 0%,#121216f2 70%);border:1px solid #d4af3747;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:2.2rem;padding:2.2rem 2.8rem;display:flex;box-shadow:0 12px 40px #00000080,inset 0 1px #f5c51826}.premium-hero__badge{color:#f5c518;text-transform:uppercase;letter-spacing:.08em;background:#d4af3726;border:1px solid #d4af3759;border-radius:999px;align-items:center;gap:.45rem;margin-bottom:.85rem;padding:.3rem .85rem;font-size:.8rem;font-weight:700;display:inline-flex}.premium-hero__title{letter-spacing:-.02em;background:linear-gradient(90deg,#fff 0%,#f7d358 60%,#e6a817 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0 0 .5rem;font-size:2.3rem;font-weight:800}.premium-hero__subtitle{color:#9c9ca4;max-width:620px;margin:0;font-size:.96rem;line-height:1.55}.premium-hero__actions,.premium-hero__action-bar{flex-wrap:wrap;align-items:center;gap:.9rem;display:flex}.btn-vault-action{border-radius:14px;align-items:center;gap:.85rem;padding:.75rem 1.4rem;text-decoration:none;transition:all .22s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 20px #0006}.btn-vault-action--video{color:#0b0b0d;background:linear-gradient(135deg,#f5c518 0%,#c89510 100%);border:1px solid #f5c51899}.btn-vault-action--video:hover{filter:brightness(1.06);transform:translateY(-2px);box-shadow:0 6px 26px #f5c51873}.btn-vault-action--short{color:#fff;background:linear-gradient(135deg,#ff44442e 0%,#141418e6 100%);border:1.5px solid #ff44448c}.btn-vault-action--short:hover{background:linear-gradient(135deg,#ff44444d 0%,#19191ef2 100%);border-color:#f55;transform:translateY(-2px);box-shadow:0 6px 26px #ff444459}.btn-vault-action__icon{font-size:1.45rem;line-height:1}.btn-vault-action__text{text-align:left;flex-direction:column;display:flex}.btn-vault-action__title{letter-spacing:.02em;font-size:.92rem;font-weight:700}.btn-vault-action__sub{opacity:.8;font-size:.72rem;font-weight:500}.btn-vault-lock{color:#aaa;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff24;border-radius:12px;margin-left:.25rem;padding:.75rem 1.15rem;font-size:.88rem;font-weight:600;transition:all .2s}.btn-vault-lock:hover{color:#fff;background:#ffffff1f;border-color:#ffffff4d}.btn-premium-upload{color:#0b0b0d;cursor:pointer;letter-spacing:.02em;background:linear-gradient(135deg,#f5c518 0%,#d4a017 100%);border:none;border-radius:12px;align-items:center;gap:.55rem;padding:.85rem 1.6rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 4px 18px #f5c51852}.btn-premium-upload:hover{filter:brightness(1.05);transform:translateY(-2px);box-shadow:0 6px 24px #f5c51880}.btn-lock{color:#bbb;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:12px;padding:.85rem 1.3rem;font-size:.9rem;font-weight:500;transition:all .2s}.btn-lock:hover{color:#fff;background:#ffffff1f;border-color:#ffffff40}.premium-lock-wrapper{justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:2rem;display:flex}.premium-lock-card{text-align:center;background:linear-gradient(145deg,#131317 0%,#0d0d10 100%);border:1px solid #d4af3747;border-radius:22px;width:100%;max-width:460px;padding:3.2rem 2.8rem;animation:.35s cubic-bezier(.16,1,.3,1) vaultFadeIn;position:relative;overflow:hidden;box-shadow:0 24px 60px #000000bf,0 0 40px #d4af3714}.premium-lock-card:before{content:"";background:linear-gradient(90deg,#0000,#f5c518,#0000);height:1px;position:absolute;top:0;left:20%;right:20%}@keyframes vaultFadeIn{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.premium-lock__icon-wrap{background:radial-gradient(circle,#f5c51833 0%,#141418cc 100%);border:1.5px solid #f5c51873;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;margin:0 auto 1.6rem;font-size:2.1rem;display:flex;box-shadow:0 0 28px #f5c51833}.premium-lock__title{letter-spacing:-.01em;color:#fff;margin:0 0 .6rem;font-size:1.85rem;font-weight:800}.premium-lock__desc{color:#8c8c96;margin:0 0 2.2rem;font-size:.94rem;line-height:1.55}.premium-lock__form{flex-direction:column;gap:1.25rem;display:flex}.premium-input-wrap{position:relative}.premium-input{color:#fff;letter-spacing:.2em;text-align:center;background:#070709;border:1.5px solid #ffffff24;border-radius:12px;outline:none;width:100%;padding:.95rem 1.2rem;font-size:1.15rem;font-weight:700;transition:all .2s}.premium-input:focus{background:#0c0c0f;border-color:#f5c518;box-shadow:0 0 16px #f5c51840}.premium-lock__error{color:#ff5252;justify-content:center;align-items:center;gap:.4rem;margin:-.3rem 0 0;font-size:.88rem;display:flex}.btn-unlock{color:#0b0b0d;letter-spacing:.03em;cursor:pointer;background:linear-gradient(135deg,#f5c518 0%,#d4a017 100%);border:none;border-radius:12px;padding:1rem;font-size:1rem;font-weight:800;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 18px #f5c51847}.btn-unlock:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-2px);box-shadow:0 6px 24px #f5c51873}.btn-unlock:disabled{opacity:.6;cursor:not-allowed}.premium-nav-bar{background:#121216a6;border:1px solid #ffffff14;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;padding:.6rem .8rem;display:flex}.premium-tabs-pills{background:#0006;border:1px solid #ffffff0f;border-radius:12px;align-items:center;gap:.5rem;padding:.3rem;display:flex}.premium-pill-btn{color:#9c9ca4;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:.55rem;padding:.65rem 1.4rem;font-size:.92rem;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.premium-pill-btn:hover{color:#fff;background:#ffffff0d}.premium-pill-btn--active{color:#f5c518;background:linear-gradient(135deg,#f5c5182e 0%,#c8961014 100%);border-color:#f5c51866;box-shadow:0 2px 10px #0000004d}.pill-icon{font-size:1.1rem}.premium-tab-label{color:#888;padding-right:.8rem;font-size:.84rem;font-weight:500}.premium-shorts-section{width:100%}.premium-shorts-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.4rem;display:grid}.premium-short-card{color:inherit;background:#141418;border:1px solid #d4af3733;border-radius:14px;flex-direction:column;text-decoration:none;transition:all .22s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden;box-shadow:0 4px 18px #0006}.premium-short-card:hover{border-color:#f5c518b3;transform:translateY(-5px);box-shadow:0 10px 30px #f5c51833}.premium-short-card__thumb-wrap{aspect-ratio:9/16;background:#0d0d10;position:relative;overflow:hidden}.premium-short-card__thumb{object-fit:cover;width:100%;height:100%;transition:transform .35s}.premium-short-card:hover .premium-short-card__thumb{transform:scale(1.05)}.premium-short-card__badge{color:#f5c518;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0a0ccc;border:1px solid #f5c5188c;border-radius:6px;padding:3px 8px;font-size:.72rem;font-weight:700;position:absolute;top:10px;left:10px}.premium-short-card__play{color:#f5c518;opacity:0;filter:drop-shadow(0 2px 8px #000c);font-size:2.2rem;transition:opacity .2s,transform .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.premium-short-card:hover .premium-short-card__play{opacity:1;transform:translate(-50%,-50%)scale(1.1)}.premium-short-card__duration{color:#fff;background:#000000d1;border-radius:4px;padding:2px 7px;font-size:.72rem;font-weight:600;position:absolute;bottom:8px;right:8px}.premium-short-card__info{align-items:flex-start;gap:.65rem;padding:.9rem;display:flex}.premium-short-card__avatar-wrap{flex-shrink:0}.premium-short-card__avatar{object-fit:cover;border:1.5px solid #f5c51880;border-radius:50%;width:32px;height:32px}.premium-short-card__avatar-fallback{color:#000;background:#f5c518;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.78rem;font-weight:700;display:flex}.premium-short-card__details{flex:1;min-width:0}.premium-short-card__title{color:#eee;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .25rem;font-size:.86rem;font-weight:600;display:-webkit-box;overflow:hidden}.premium-short-card__owner{color:#999;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.76rem;overflow:hidden}.premium-short-skeleton{aspect-ratio:9/16;background:linear-gradient(90deg,#15151a 25%,#202028 50%,#15151a 75%) 0 0/200% 100%;border-radius:14px;animation:1.4s infinite shimmer}.premium-empty-box{text-align:center;background:#12121680;border:1px dashed #d4af3740;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;padding:5rem 2rem;display:flex}.premium-empty-box .empty-icon{font-size:3.2rem}.premium-empty-box h3{color:#fff;margin:0;font-size:1.4rem}.premium-empty-box p{color:#888;max-width:420px;margin:0 0 .8rem;font-size:.92rem}.premium-load-more{justify-content:center;margin-top:2.5rem;display:flex}.btn-vault-load-more{color:#f5c518;cursor:pointer;background:#f5c51814;border:1.5px solid #f5c51859;border-radius:10px;padding:.75rem 2.2rem;font-size:.9rem;font-weight:600;transition:all .2s}.btn-vault-load-more:hover:not(:disabled){background:#f5c51833;border-color:#f5c518;transform:translateY(-2px)}@media (width<=768px){.premium-hero__action-bar{flex-direction:column;align-items:stretch;width:100%}.btn-vault-action{justify-content:center}.premium-shorts-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.9rem}}.shorts-page-root{color:#fff;background:#000;flex-direction:column;min-height:100vh;display:flex;overflow:hidden}.shorts-page-root--vip{background:radial-gradient(circle at 50% 20%,#17140b 0%,#08080a 100%)}.shorts-page-layout{padding-top:var(--header-height,56px);flex:1;height:100vh;display:flex;overflow:hidden}.shorts-page-main{height:calc(100vh - var(--header-height,56px));background:#000;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.shorts-top-bar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;background:#0c0c0fd9;border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;padding:.6rem 1.6rem;display:flex}.shorts-top-bar__left{align-items:center;gap:.6rem;display:flex}.shorts-badge-icon{font-size:1.3rem}.shorts-top-title{color:#fff;letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:700}.shorts-top-bar__actions{align-items:center;gap:.6rem;display:flex}.shorts-mode-pill{color:#aaa;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:.4rem;padding:.42rem .9rem;font-size:.82rem;font-weight:600;transition:all .2s;display:inline-flex}.shorts-mode-pill:hover{color:#fff;background:#ffffff1f}.shorts-mode-pill--active{color:#f55;background:#ff44442e;border-color:#ff444480}.shorts-mode-pill--vip-active{color:#f5c518;background:#f5c5182e;border-color:#f5c51899}.btn-shorts-upload{color:#fff;background:linear-gradient(135deg,#f44 0%,#c22 100%);border-radius:999px;align-items:center;gap:.35rem;padding:.42rem 1.05rem;font-size:.82rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 2px 10px #ff444459}.btn-shorts-upload:hover{filter:brightness(1.08);transform:translateY(-1px)}.btn-shorts-upload--lg{border-radius:12px;padding:.8rem 2rem;font-size:1rem}.shorts-player-container{flex:1;justify-content:center;align-items:center;height:100%;display:flex;position:relative;overflow:hidden}.shorts-feed-viewport{scroll-snap-type:y mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;width:100%;height:100%;overflow-y:scroll}.shorts-feed-viewport::-webkit-scrollbar{display:none}.shorts-reel-item{scroll-snap-align:center;scroll-snap-stop:always;box-sizing:border-box;justify-content:center;align-items:center;width:100%;height:100%;padding:.6rem 0;display:flex;position:relative}.shorts-video-wrapper{aspect-ratio:9/16;background:#000;border-radius:20px;justify-content:center;align-items:center;width:auto;max-width:min(405px,56.25vh - 73.125px);height:min(720px,100vh - 130px);display:flex;position:relative;overflow:hidden;box-shadow:0 16px 50px #000000e6,0 0 0 1px #ffffff1a}.shorts-video-wrapper:after{content:"";pointer-events:none;z-index:4;background:linear-gradient(#00000040 0%,#0000 20% 55%,#0000008c 75%,#000000eb 100%);position:absolute;inset:0}.shorts-video-element{object-fit:cover;cursor:pointer;z-index:1;background:#000;width:100%;height:100%}.shorts-play-indicator{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;pointer-events:none;z-index:8;background:#000000a6;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:1.8rem;animation:.25s pulseIndicator;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes pulseIndicator{0%{opacity:0;transform:translate(-50%,-50%)scale(.8)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.shorts-video-progress-bar{z-index:10;background:#fff3;height:3px;position:absolute;bottom:0;left:0;right:0}.shorts-video-progress-fill{background:#f44;height:100%;transition:width .1s linear}.shorts-info-overlay{z-index:6;pointer-events:auto;flex-direction:column;gap:.4rem;display:flex;position:absolute;bottom:16px;left:14px;right:56px}.shorts-creator-row{align-items:center;gap:.55rem;display:flex}.shorts-creator-avatar-link{flex-shrink:0;text-decoration:none}.shorts-creator-avatar{object-fit:cover;border:1.5px solid #ffffffe6;border-radius:50%;width:34px;height:34px;box-shadow:0 2px 8px #00000080}.shorts-creator-avatar-fallback{color:#fff;background:#f44;border:1.5px solid #ffffffe6;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:.82rem;font-weight:700;display:flex}.shorts-creator-handle{color:#fff;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 4px #000c;max-width:140px;font-size:.88rem;font-weight:700;text-decoration:none;overflow:hidden}.shorts-btn-follow{color:#0b0b0d;cursor:pointer;background:#fffffff2;border:none;border-radius:999px;padding:.22rem .75rem;font-size:.74rem;font-weight:700;transition:all .18s;box-shadow:0 2px 8px #00000059}.shorts-btn-follow:hover{background:#fff;transform:scale(1.05)}.shorts-btn-follow--active{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff2e;border:1px solid #ffffff59}.shorts-caption-title{color:#fff;-webkit-line-clamp:2;text-shadow:0 1px 4px #000000e6;-webkit-box-orient:vertical;margin:0;font-size:.88rem;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.shorts-caption-desc{color:#fffc;-webkit-line-clamp:1;text-shadow:0 1px 3px #000c;-webkit-box-orient:vertical;margin:0;font-size:.78rem;line-height:1.3;display:-webkit-box;overflow:hidden}.shorts-vip-tag{color:#f5c518;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#f5c51840;border:1px solid #f5c518b3;border-radius:5px;align-self:flex-start;align-items:center;margin-top:2px;padding:2px 7px;font-size:.7rem;font-weight:700;display:inline-flex}.shorts-sound-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;z-index:6;background:#0f0f14a6;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;transition:all .2s;display:flex;position:absolute;bottom:14px;right:14px}.shorts-sound-btn:hover{background:#141419e6;transform:scale(1.08)}.shorts-actions-stack{z-index:10;flex-direction:column;align-items:center;gap:.85rem;margin-left:.9rem;display:flex}.shorts-action-btn{color:#fff;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:.2rem;padding:0;text-decoration:none;transition:transform .18s;display:flex}.shorts-action-btn:hover{transform:scale(1.1)}.shorts-action-icon{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;background:#ffffff14;border:1px solid #ffffff1f;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;transition:all .2s;display:flex;box-shadow:0 4px 16px #00000059}.shorts-action-btn:hover .shorts-action-icon{background:#ffffff2e;border-color:#ffffff40}.shorts-action-btn--liked .shorts-action-icon{color:#f44;background:#f443;border-color:#ff444473}.shorts-action-btn--disliked .shorts-action-icon{color:#bbb;background:#ffffff38}.shorts-action-count{color:#ddd;text-shadow:0 1px 3px #000000e6;font-size:.72rem;font-weight:600}.shorts-floating-nav{z-index:15;flex-direction:column;gap:.65rem;display:flex;position:absolute;right:2rem}.shorts-nav-arrow{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#19191ecc;border:1px solid #ffffff24;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;transition:all .2s;display:flex}.shorts-nav-arrow:hover:not(:disabled){background:#fff3;transform:scale(1.08)}.shorts-nav-arrow:disabled{opacity:.25;cursor:not-allowed}.shorts-toast{color:#fff;z-index:100;background:#121216f2;border:1px solid #fff3;border-radius:999px;align-items:center;gap:.5rem;padding:.65rem 1.4rem;font-size:.88rem;font-weight:600;animation:.25s slideToastDown;display:flex;position:absolute;top:70px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #000000b3}@keyframes slideToastDown{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}.shorts-comments-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50;background:#000000a6;justify-content:center;align-items:flex-end;animation:.2s fadeIn;display:flex;position:absolute;inset:0}.shorts-comments-drawer{background:#141418;border-top:1px solid #ffffff26;border-radius:20px 20px 0 0;flex-direction:column;width:100%;max-width:520px;max-height:75vh;animation:.28s cubic-bezier(.16,1,.3,1) slideUpDrawer;display:flex;box-shadow:0 -10px 40px #000000e6}@keyframes slideUpDrawer{0%{transform:translateY(100%)}to{transform:translateY(0)}}.shorts-comments-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:1.1rem 1.5rem;display:flex}.shorts-comments-header h3{color:#fff;margin:0;font-size:1.1rem;font-weight:700}.btn-close-comments{color:#aaa;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.2rem .5rem;font-size:1.2rem;transition:all .2s}.btn-close-comments:hover{color:#fff;background:#ffffff1a}.shorts-comments-body{flex:1;padding:1rem 1.5rem 2rem;overflow-y:auto}.shorts-loading-screen{flex:1;justify-content:center;align-items:center;display:flex}.shorts-reel-skeleton{aspect-ratio:9/16;background:linear-gradient(90deg,#121216 25%,#1a1a22 50%,#121216 75%) 0 0/200% 100%;border-radius:18px;width:100%;max-width:420px;height:calc(100vh - 120px);animation:1.4s infinite shimmer}.shorts-empty-screen{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;padding:2rem;display:flex}.shorts-empty-icon{font-size:3.5rem}.shorts-empty-screen h2{color:#fff;margin:0;font-size:1.6rem}.shorts-empty-screen p{color:#888;max-width:440px;margin:0 0 1rem;font-size:.95rem}@media (width<=768px){.shorts-top-bar{padding:.5rem 1rem}.shorts-top-title{display:none}.shorts-video-wrapper{border-radius:0;max-width:100%;max-height:100%}.shorts-floating-nav{display:none}.shorts-actions-stack{margin-left:0;position:absolute;bottom:80px;right:12px}.shorts-info-overlay{bottom:16px;right:65px}}:root{--color-bg-primary:#0c0c0c;--color-bg-secondary:#111;--color-bg-card:#1a1a1a;--color-bg-hover:#222;--color-bg-input:#161616;--color-accent:#f44;--color-accent-hover:#f22;--color-accent-soft:#ff44441f;--color-text-primary:#fff;--color-text-secondary:#aaa;--color-text-muted:#666;--color-border:#2a2a2a;--color-border-focus:#555;--color-error:#ff4d4d;--color-error-bg:#ff4d4d14;--color-success:#4dff91;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--shadow-sm:0 1px 3px #00000080;--shadow-md:0 4px 16px #0009;--shadow-lg:0 8px 32px #000000b3;--shadow-dropdown:0 8px 24px #000c;--transition-fast:.12s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--header-height:64px;--sidebar-width:240px;--sidebar-width-collapsed:0px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);color:var(--color-text-primary);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;overflow-x:hidden}img,video{max-width:100%;display:block}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit}a{color:inherit;text-decoration:none}ul,ol{list-style:none}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:background-color var(--transition-base), color var(--transition-base), opacity var(--transition-base), transform var(--transition-fast);white-space:nowrap;cursor:pointer;border:none;line-height:1;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-primary{background-color:var(--color-accent);color:var(--color-text-primary)}.btn-primary:hover:not(:disabled){background-color:var(--color-accent-hover);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background-color:var(--color-bg-card);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background-color:var(--color-bg-hover);border-color:var(--color-border-focus)}.btn-ghost{color:var(--color-text-secondary);background:0 0}.btn-ghost:hover:not(:disabled){background-color:var(--color-bg-hover);color:var(--color-text-primary)}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);letter-spacing:.01em}.form-input{width:100%;padding:var(--space-3) var(--space-4);background-color:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);transition:border-color var(--transition-base), box-shadow var(--transition-base);outline:none}.form-input::placeholder{color:var(--color-text-muted)}.form-input:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px #ffffff0a}.form-input.has-error{border-color:var(--color-error);box-shadow:0 0 0 3px var(--color-error-bg)}.form-error{font-size:var(--font-size-xs);color:var(--color-error);align-items:center;gap:var(--space-1);display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-border-focus)}
