/* ===== PROFILE VIEW ===== */
  #profileView main {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    padding: 50px clamp(20px, 4vw, 48px) 80px;
  }

  .auth-wrap {
    max-width: 420px;
    margin: 40px auto;
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 36px;
  }

  .auth-tabs {
    display: flex;
    margin-bottom: 28px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
  }

  .auth-tab {
    flex: 1;
    text-align: center;
    padding: 12px 0;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-dim);
    cursor: pointer;
    border-bottom: 2px solid transparent;
    transition: all 0.2s ease;
  }
  .auth-tab.active { color: var(--text); border-color: var(--accent); }

  .auth-form { display: none; flex-direction: column; gap: 16px; }
  .auth-form.active { display: flex; }

  .field { display: flex; flex-direction: column; gap: 6px; }
  .field label { font-size: 12px; color: var(--text-dim); letter-spacing: 0.3px; }

  .field input {
    background: var(--panel-light);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 8px;
    padding: 12px 14px;
    color: var(--text);
    font-size: 14px;
    font-family: inherit;
    outline: none;
    transition: border-color 0.2s ease;
  }
  .field input:focus { border-color: var(--accent); }

  .form-error { font-size: 12px; color: var(--danger); min-height: 16px; }

  .submit-btn {
    margin-top: 6px;
    padding: 13px;
    border-radius: 8px;
    border: none;
    background: var(--accent);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s ease;
    font-family: inherit;
  }
  .submit-btn:hover { background: #ff7033; }

  .auth-title {
    font-family: 'Oswald', sans-serif;
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 6px;
    text-align: center;
  }

  .auth-sub { text-align: center; color: var(--text-dim); font-size: 13px; margin-bottom: 26px; }

  .dashboard { display: none; flex-direction: column; gap: 32px; }
  .dashboard.active { display: flex; }

  .profile-head {
    display: flex;
    align-items: center;
    gap: 24px;
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 28px;
    flex-wrap: wrap;
  }

  .avatar-big {
    width: 72px; height: 72px;
    border-radius: 50%;
    background: var(--accent);
    display: flex; align-items: center; justify-content: center;
    font-family: 'Oswald', sans-serif;
    font-size: 28px; font-weight: 700; color: #fff;
    flex-shrink: 0;
  }

  .profile-info h2 { font-family: 'Oswald', sans-serif; font-size: 22px; margin-bottom: 4px; }
  .profile-info p { color: var(--text-dim); font-size: 13px; }

  .profile-stats { display: flex; gap: 30px; margin-left: auto; }
  .stat { text-align: center; }
  .stat b { display: block; font-size: 22px; font-family: 'Oswald', sans-serif; color: var(--accent); }
  .stat span { font-size: 11px; color: var(--text-dim); text-transform: uppercase; letter-spacing: 0.5px; }

  .dash-tabs { display: flex; gap: 8px; border-bottom: 1px solid rgba(255,255,255,0.08); flex-wrap: wrap; }

  .dash-tab {
    padding: 12px 18px;
    font-size: 13px;
    font-weight: 600;
    color: var(--text-dim);
    cursor: pointer;
    border-bottom: 2px solid transparent;
    transition: all 0.2s ease;
  }
  .dash-tab.active { color: var(--text); border-color: var(--accent); }

  .dash-panel { display: none; }
  .dash-panel.active { display: block; }

  .fav-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 18px;
  }

  .fav-card {
    background: var(--panel);
    border: 1px solid transparent;
    border-radius: 10px;
    overflow: hidden;
    transition: border-color 0.2s ease;
  }
  .fav-card:hover { border-color: var(--border); }

  .fav-poster { width: 100%; aspect-ratio: 2/3; background: var(--panel-light); overflow: hidden; }
  .fav-poster img { width: 100%; height: 100%; object-fit: cover; }

  .fav-info { padding: 12px; }
  .fav-info h4 {
    font-size: 13px; font-weight: 600; margin-bottom: 4px;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  }
  .fav-info p { font-size: 11px; color: var(--text-dim); margin-bottom: 10px; }

  .remove-btn {
    width: 100%;
    padding: 7px;
    border-radius: 6px;
    border: 1px solid rgba(226,59,59,0.4);
    background: transparent;
    color: var(--danger);
    font-size: 11px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-family: inherit;
  }
  .remove-btn:hover { background: rgba(226,59,59,0.1); }

  /* ===== ЗАКЛАДКИ НА КАРТОЧКАХ ===== */

  .tab-badge {
    display: inline-block;
    margin-left: 7px;
    padding: 1px 7px;
    border-radius: 10px;
    background: rgba(255,94,26,0.15);
    color: var(--accent);
    font-size: 10px;
    font-weight: 700;
    vertical-align: 1px;
  }

  /* ===== «Я СМОТРЮ» — ИСТОРИЯ СЕРИЙ ===== */
  .watch-hint {
    font-size: 13px;
    color: var(--text-dim);
    line-height: 1.5;
    margin-bottom: 16px;
  }

  .watch-hint b { color: var(--text); font-weight: 600; }

  .series-list { display: flex; flex-direction: column; gap: 14px; }

  .series-group {
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
  }

  .series-head {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    border-bottom: 1px solid rgba(255,255,255,0.06);
  }

  .series-avatar {
    width: 40px; height: 40px;
    border-radius: 8px;
    background: rgba(255,94,26,0.14);
    color: var(--accent);
    display: flex; align-items: center; justify-content: center;
    font-family: 'Oswald', sans-serif;
    font-size: 18px; font-weight: 700;
    flex-shrink: 0;
  }

  .series-meta { flex: 1; min-width: 0; }
  .series-meta h4 {
    font-size: 14px; font-weight: 600; margin-bottom: 3px;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  }
  .series-meta p { font-size: 11px; color: var(--text-dim); }

  .series-remove {
    width: auto;
    flex-shrink: 0;
    padding: 7px 12px;
  }

  .episode-list { display: flex; flex-direction: column; }

  .episode-row {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    font-size: 13px;
    border-top: 1px solid rgba(255,255,255,0.04);
  }
  .episode-row:first-child { border-top: none; }
  .episode-row:hover { background: rgba(255,255,255,0.02); }

  .ep-badge.is-done {
    color: #57c98a;
    border-color: rgba(87,201,138,0.35);
    background: rgba(87,201,138,0.1);
  }

  .ep-badge {
    font-family: 'Oswald', sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.4px;
    color: var(--accent);
    background: rgba(255,94,26,0.12);
    border: 1px solid rgba(255,94,26,0.25);
    border-radius: 5px;
    padding: 3px 8px;
    flex-shrink: 0;
    white-space: nowrap;
  }

  .ep-text {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--text);
  }

  .ep-date { font-size: 11px; color: var(--text-dim); white-space: nowrap; }

  .ep-del {
    width: 26px; height: 26px;
    border-radius: 6px;
    border: 1px solid transparent;
    background: transparent;
    color: var(--text-dim);
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
    flex-shrink: 0;
    font-family: inherit;
    transition: all 0.2s ease;
  }
  .ep-del:hover {
    color: var(--danger);
    border-color: rgba(226,59,59,0.4);
    background: rgba(226,59,59,0.08);
  }

  @media (max-width: 560px) {
    .episode-row { gap: 8px; padding: 10px 12px; }
    .ep-text { display: none; }
    .series-head { gap: 10px; padding: 12px; }
  }

  .fav-poster.no-img {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Oswald', sans-serif;
    font-size: 42px;
    font-weight: 700;
    color: var(--accent);
    background: linear-gradient(135deg, #1d1d22, #131316);
    letter-spacing: 1px;
  }

  .btn-secondary.is-added { border-color: var(--accent); color: var(--accent); }

  @media (hover: none) { .poster-overlay { display: none; } }

  .empty-state {
    padding: 50px 20px;
    text-align: center;
    color: var(--text-dim);
    font-size: 14px;
    border: 1px dashed rgba(255,255,255,0.1);
    border-radius: 10px;
  }

  .history-list { display: flex; flex-direction: column; gap: 10px; }

  .history-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    background: var(--panel);
    border: 1px solid transparent;
    border-radius: 10px;
    flex-wrap: wrap;
    gap: 6px;
  }
  .history-item:hover { border-color: var(--border); }
  .history-item .h-title { font-size: 14px; font-weight: 600; }
  .history-item .h-meta { font-size: 12px; color: var(--text-dim); }

  [data-fav-open], [data-history-title], [data-watch-title], [data-watch-episode] { cursor: pointer; }
  [data-fav-open]:focus-visible, [data-history-title]:focus-visible,
  [data-watch-title]:focus-visible, [data-watch-episode]:focus-visible {
    outline: 2px solid var(--accent); outline-offset: 3px;
  }
  [data-history-title]:hover, [data-watch-title]:hover, [data-watch-episode]:hover {
    border-color: var(--border); background: rgba(255,94,26,0.045);
  }

  .clear-btn {
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.12);
    background: transparent;
    color: var(--text-dim);
    font-size: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-family: inherit;
  }
  .clear-btn:hover { border-color: var(--accent); color: var(--text); }

  .settings-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }

  .settings-card {
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px;
  }
  .settings-card h3 { font-size: 15px; margin-bottom: 18px; font-family: 'Oswald', sans-serif; }

  .danger-card { border-color: rgba(226,59,59,0.35); }
  .danger-card h3 { color: var(--danger); }

  .danger-btn {
    padding: 11px 18px;
    border-radius: 8px;
    border: 1px solid var(--danger);
    background: transparent;
    color: var(--danger);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    font-family: inherit;
  }
  .danger-btn:hover { background: rgba(226,59,59,0.12); }

  .save-msg { font-size: 12px; color: var(--accent); min-height: 16px; margin-top: 10px; }

  /* ===== КОРОНКА АДМИНА ===== */
  .crown-ico {
    width: 17px; height: 17px;
    color: #ffb020;
    vertical-align: -2px;
    filter: drop-shadow(0 0 7px rgba(255,176,32,0.45));
  }
  .profile-info h2 { display: flex; align-items: center; gap: 7px; }
  .text-btn #profileCrown { width: 12px; height: 12px; margin-left: 6px; vertical-align: -1px; }

  /* ===== ПОДПИСКА ===== */
  .sub-status { font-size: 13px; color: var(--text-dim); margin-bottom: 14px; line-height: 1.5; }
  .sub-status b { color: #3ddc84; }
  .sub-status b.off { color: var(--text-dim); }

  /* ===== АДМИН-ПАНЕЛЬ ===== */
  .admin-card { grid-column: 1 / -1; border-color: rgba(255,176,32,0.35); }
  .admin-card > h3 { display: flex; align-items: center; gap: 9px; color: #ffb020; }
  .admin-lead { font-size: 12.5px; color: var(--text-dim); line-height: 1.55; margin: -6px 0 16px; }

  .admin-tabs { display: flex; gap: 6px; flex-wrap: wrap; border-bottom: 1px solid rgba(255,255,255,0.08); margin-bottom: 18px; }
  .admin-tab {
    padding: 10px 14px; font-size: 12.5px; font-weight: 600; font-family: inherit;
    color: var(--text-dim); background: none; border: none;
    border-bottom: 2px solid transparent; cursor: pointer; transition: all 0.2s ease;
  }
  .admin-tab:hover { color: var(--text); }
  .admin-tab.active { color: #ffb020; border-color: #ffb020; }

  .admin-panel { display: none; }
  .admin-panel.active { display: block; }

  .admin-form { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 22px; }
  .admin-form .full { grid-column: 1 / -1; }
  .lookup-row { display: flex; gap: 10px; align-items: stretch; }
  .lookup-row input { flex: 1; min-width: 0; }
  .lookup-row .mini-btn { flex: 0 0 auto; padding: 0 16px; white-space: nowrap; }
  .lookup-hint { font-size: 11.5px; color: var(--text-dim); line-height: 1.5; margin-top: 7px; }
  .lookup-hint.ok { color: #3ddc84; }
  .mini-select { background: var(--panel-light); color: var(--text); border: 1px solid rgba(255,255,255,0.12); border-radius: 8px; padding: 7px 9px; font-size: 12px; font-family: inherit; cursor: pointer; }
  .mini-select:focus { outline: none; border-color: var(--accent); }
  .row1-head { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 6px; }
  .section-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 18px; }
  .views-badge { position: absolute; left: 10px; bottom: 10px; background: rgba(12,10,9,0.78); color: #fff; font-size: 11px; font-weight: 600; padding: 3px 8px; border-radius: 6px; letter-spacing: 0.2px; }
  .row1-note { font-size: 12px; color: var(--text-dim); margin: -14px 0 16px; }
  .row-strip { display: grid; grid-auto-flow: column; grid-template-columns: none; grid-template-rows: none; grid-auto-columns: 44%; gap: 16px; overflow-x: auto; overflow-y: hidden; padding-bottom: 10px; scroll-snap-type: x proximity; scrollbar-width: thin; }
  .row-strip .movie-card { scroll-snap-align: start; }
  .row-strip::-webkit-scrollbar { height: 6px; }
  .row-strip::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.16); border-radius: 6px; }
  @media (min-width: 640px) { .row-strip { grid-auto-columns: 30%; } }
  @media (min-width: 900px) { .row-strip { grid-auto-columns: calc((100% - 5 * 16px) / 6); } }
  @media (min-width: 1180px) { .row-strip { grid-auto-columns: calc((100% - 7 * 16px) / 8); } }
  .seg-btn { background: none; border: 0; color: var(--text-dim); font-family: inherit; font-size: 12.5px; padding: 7px 14px; border-radius: 999px; cursor: pointer; transition: background 0.2s, color 0.2s; }
  .seg-btn:hover { color: var(--text); }
  .seg-btn.active { background: var(--accent); color: #14100e; font-weight: 600; }
  .src-box { background: var(--panel-light); border: 1px solid rgba(255,255,255,0.08); border-radius: 10px; padding: 14px; }
  .src-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
  .src-title { font-size: 12px; font-weight: 700; letter-spacing: 0.5px; text-transform: uppercase; color: var(--text-dim); }
  .src-state { font-size: 11.5px; color: #3ddc84; }
  .src-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
  .src-foot { display: flex; align-items: center; gap: 12px; margin-top: 12px; flex-wrap: wrap; }
  .src-foot .mini-btn { padding: 8px 14px; }
  .lookup-links { margin-top: 6px; display: flex; gap: 14px; flex-wrap: wrap; }
  .lookup-link { color: var(--accent); font-size: 12px; text-decoration: none; border-bottom: 1px dashed rgba(255,138,61,0.5); }
  .lookup-link:hover { border-bottom-style: solid; }
  .lookup-src { opacity: 0.85; }
  .spin { display: inline-block; width: 11px; height: 11px; border: 2px solid rgba(255,255,255,0.25); border-top-color: var(--accent); border-radius: 50%; margin-right: 7px; vertical-align: -1px; animation: spin 0.8s linear infinite; }
  @keyframes spin { to { transform: rotate(360deg); } }
  @media (max-width: 700px) { .src-grid { grid-template-columns: 1fr; } }
  .lookup-hint.warn { color: #ffb020; }
  .af-ratings { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 6px; }
  .admin-form input, .admin-form select, .admin-form textarea,
  .admin-search, .admin-inline input, .admin-inline select,
  .admin-inline .uses-input {
    background: var(--panel-light);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 8px;
    padding: 11px 13px;
    color: var(--text);
    font-size: 13px;
    font-family: inherit;
    outline: none;
    width: 100%;
  }
  .admin-form input:focus, .admin-form select:focus, .admin-search:focus, .admin-inline input:focus { border-color: var(--accent); }
  .admin-form select { cursor: pointer; }

  .series-episode-box {
    padding: 16px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: rgba(255, 94, 26, 0.045);
  }
  .series-episode-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
  .series-episode-title { font-size: 14px; font-weight: 600; margin-bottom: 4px; }
  .series-episode-subtitle { color: var(--text-dim); font-size: 12px; line-height: 1.5; }
  .series-episode-count {
    flex-shrink: 0; padding: 4px 8px; border-radius: 999px;
    background: rgba(255,94,26,0.1); color: var(--accent);
    font-size: 11px; font-weight: 600; white-space: nowrap;
  }
  .series-episode-picker { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 12px; }
  .series-episode-actions { display: flex; align-items: center; gap: 12px; margin-top: 12px; flex-wrap: wrap; }
  .series-episode-list { display: grid; gap: 8px; margin-top: 14px; }
  .series-episode-list[hidden] { display: none; }
  .series-episode-row {
    display: flex; align-items: center; gap: 10px; min-width: 0;
    padding: 9px 10px; border: 1px solid rgba(255,255,255,0.08);
    border-radius: 8px; background: var(--panel);
  }
  .series-episode-key { color: var(--accent); font-size: 12px; font-weight: 700; white-space: nowrap; }
  .series-episode-link {
    flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    color: var(--text-dim); font-size: 11.5px;
  }
  .series-episode-remove {
    flex-shrink: 0; border: 0; background: none; color: var(--text-dim);
    font-family: inherit; font-size: 11.5px; cursor: pointer; padding: 4px;
  }
  .series-episode-remove:hover { color: var(--danger); }
  @media (max-width: 560px) {
    .series-episode-head { flex-direction: column; }
    .series-episode-row { flex-wrap: wrap; }
    .series-episode-link { flex-basis: calc(100% - 80px); }
  }

  .admin-sub-head { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; flex-wrap: wrap; }
  .admin-count { font-size: 12px; color: var(--text-dim); white-space: nowrap; }
  .admin-search { max-width: 260px; margin-left: auto; padding: 9px 12px; }

  .admin-inline { display: flex; gap: 10px; margin-bottom: 16px; flex-wrap: wrap; }
  .admin-inline input { max-width: 320px; flex: 1 1 220px; }
  .admin-inline select { flex: 0 0 auto; max-width: 190px; }
  .admin-inline .uses-input { flex: 0 0 110px; max-width: 110px; }
  .admin-inline .mini-btn { flex: 0 0 auto; }

  .admin-list { display: flex; flex-direction: column; gap: 8px; max-height: 380px; overflow-y: auto; padding-right: 4px; }
  .admin-row {
    display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
    background: var(--panel-light);
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 9px; padding: 11px 13px;
  }
  .admin-row .ar-main { min-width: 0; flex: 1 1 200px; }
  .admin-row .ar-title { font-size: 13px; font-weight: 600; display: flex; align-items: center; gap: 6px; }
  .admin-row .ar-sub { font-size: 11.5px; color: var(--text-dim); margin-top: 2px; }
  .admin-row .ar-actions { margin-left: auto; display: flex; gap: 7px; align-items: center; flex-wrap: wrap; }

  .mini-btn {
    padding: 7px 12px; border-radius: 7px; font-size: 11.5px; font-weight: 600; font-family: inherit;
    background: transparent; color: var(--text-dim);
    border: 1px solid rgba(255,255,255,0.16); cursor: pointer; transition: all 0.18s ease;
  }
  .mini-btn:hover { color: var(--text); border-color: var(--accent); }
  .mini-btn.accent { color: var(--accent); border-color: var(--accent); }
  .mini-btn.accent:hover { background: rgba(255,94,26,0.12); }
  .mini-btn.danger { color: var(--danger); border-color: rgba(226,59,59,0.5); }
  .mini-btn.danger:hover { background: rgba(226,59,59,0.12); }
  .mini-btn:disabled { opacity: 0.45; cursor: default; }

  .badge-sub { font-size: 10.5px; font-weight: 600; padding: 3px 8px; border-radius: 20px; border: 1px solid rgba(255,255,255,0.14); color: var(--text-dim); white-space: nowrap; }
  .badge-sub.on { color: #3ddc84; border-color: rgba(61,220,132,0.45); background: rgba(61,220,132,0.08); }
  .badge-sub.admin { color: #ffb020; border-color: rgba(255,176,32,0.45); background: rgba(255,176,32,0.08); }
  .badge-sub.blocked { color: var(--danger); border-color: rgba(226,59,59,0.5); background: rgba(226,59,59,0.09); }
  .admin-row.is-blocked { border-color: rgba(226,59,59,0.28); }
  .account-editor {
    margin: 0 0 14px; padding: 15px;
    border: 1px solid rgba(255,94,26,0.28); border-radius: 10px;
    background: rgba(255,94,26,0.045);
  }
  .account-editor[hidden] { display: none; }
  .account-editor-title { font-size: 13px; font-weight: 700; margin-bottom: 12px; }
  .account-editor-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
  .account-editor input {
    width: 100%; padding: 10px 12px; border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.12); background: var(--panel-light);
    color: var(--text); font: inherit; font-size: 13px; outline: none;
  }
  .account-editor input:focus { border-color: var(--accent); }
  .account-password-field { margin-top: 12px; }
  .account-password-row { display: flex; gap: 8px; align-items: stretch; }
  .account-password-row input { flex: 1; min-width: 0; }
  .account-password-row .mini-btn { flex: 0 0 auto; min-width: 88px; }
  .account-editor-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
  @media (max-width: 560px) { .account-editor-grid { grid-template-columns: 1fr; } }

  .auth-hint { text-align: center; font-size: 11.5px; color: var(--text-dim); margin-top: 16px; }
  .auth-hint b { color: #ffb020; font-weight: 600; }
