:root{
  --bg:#eef3f8; --panel:#ffffff; --panel2:#f8fafc; --text:#111827; --muted:#64748b; --line:#e2e8f0;
  --primary:#155eef; --primary-dark:#0f47b8; --success:#16a34a; --danger:#dc2626; --warning:#f59e0b;
  --shadow:0 14px 35px rgba(15,23,42,.08); --radius:18px;
}
*{box-sizing:border-box} body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:linear-gradient(135deg,#eaf2ff 0%,#f8fafc 45%,#eef3f8 100%);color:var(--text)}
a{color:var(--primary);text-decoration:none} a:hover{text-decoration:underline}.wrap{max-width:1220px;margin:0 auto;padding:28px 20px 50px}.narrow{max-width:560px}.top,.app-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.brand h1{margin:0;font-size:30px;letter-spacing:-.04em}.brand p{margin:5px 0 0;color:var(--muted)}.top h1{margin:0}.logout{color:#475569;font-weight:700}.hero{background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;border-radius:26px;padding:28px;box-shadow:var(--shadow);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-80px;top:-80px;width:220px;height:220px;background:rgba(255,255,255,.12);border-radius:50%}.hero h1{margin:0 0 7px;font-size:34px;letter-spacing:-.045em}.hero p{margin:0;color:#dbeafe}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.button,button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--primary);color:#fff;border:0;border-radius:12px;padding:11px 15px;text-decoration:none;margin:0;cursor:pointer;font-weight:800;box-shadow:0 8px 18px rgba(21,94,239,.18)}.button:hover,button:hover{background:var(--primary-dark);text-decoration:none}.secondary{background:#475569;box-shadow:none}.secondary:hover{background:#334155}.danger{background:var(--danger)}.ghost{background:#fff;color:#334155;border:1px solid var(--line);box-shadow:none}.ghost:hover{background:#f8fafc;color:#111827}.card,.panel{background:rgba(255,255,255,.92);border:1px solid rgba(226,232,240,.9);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);margin:18px 0}.section-title{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:28px 0 12px}.section-title h2{margin:0;font-size:22px;letter-spacing:-.03em}.section-title .muted{font-size:14px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.stat-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 10px 25px rgba(15,23,42,.05)}.stat-label{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.stat-value{font-size:32px;font-weight:900;letter-spacing:-.04em;margin-top:8px}.monitor-grid,.channel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.display-card,.channel-card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 25px rgba(15,23,42,.06);overflow:hidden}.display-card-body,.channel-card-body{padding:18px}.card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.card-title{font-size:18px;font-weight:900;letter-spacing:-.02em;margin:0}.meta-list{display:grid;gap:8px;margin:14px 0;color:#334155;font-size:14px}.meta-row{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #f1f5f9;padding-top:8px}.meta-row span:first-child{color:var(--muted);font-weight:700}.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;color:#fff;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.pill:before{content:"";width:7px;height:7px;border-radius:50%;background:#fff}.online{background:var(--success)}.offline{background:#64748b}.open{background:var(--success)}.closed{background:#334155}.default{background:#2563eb}.card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.mini-button{padding:8px 10px;border-radius:10px;font-size:13px;font-weight:800;background:#eff6ff;color:#1d4ed8}.mini-button:hover{background:#dbeafe;text-decoration:none}.thumb-strip{height:145px;background:#0f172a;display:flex;align-items:center;justify-content:center;gap:0;overflow:hidden;border-bottom:1px solid var(--line)}.thumb{height:100%;flex:1;min-width:0;display:flex;align-items:center;justify-content:center;background:#111827;color:#dbeafe;border-right:1px solid rgba(255,255,255,.08);font-size:12px;text-align:center;padding:10px;position:relative}.thumb:last-child{border-right:0}.thumb img,.thumb video{width:100%;height:100%;object-fit:cover}.thumb iframe{width:100%;height:100%;border:0;background:#fff}.thumb.text-preview{background:linear-gradient(135deg,#111827,#1e293b);font-weight:700}.thumb .badge{position:absolute;right:8px;bottom:8px;background:rgba(15,23,42,.82);color:#fff;border-radius:999px;padding:4px 7px;font-size:11px}.empty-state{background:#fff;border:1px dashed #cbd5e1;border-radius:18px;padding:28px;text-align:center;color:var(--muted)}label{display:block;font-weight:900;margin-top:15px;color:#1f2937}input,select,textarea{width:100%;padding:12px 13px;border:1px solid #cbd5e1;border-radius:12px;margin-top:6px;background:#fff;font:inherit;color:#111827}input:focus,select:focus,textarea:focus{outline:3px solid rgba(21,94,239,.14);border-color:var(--primary)}textarea{min-height:96px;resize:vertical}.form-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.form-header h1{margin:0;letter-spacing:-.04em}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.check,.inline-check{display:flex;align-items:center;gap:9px}.check input,.inline-check input{width:auto;margin:0}.slide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px}.slide-row{border:1px solid var(--line);border-radius:18px;padding:0;margin:0;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.05);overflow:hidden}.slide-preview{height:175px;background:#0f172a;display:flex;align-items:center;justify-content:center;color:#e0f2fe;text-align:center;overflow:hidden}.slide-preview img,.slide-preview video{width:100%;height:100%;object-fit:cover}.slide-preview iframe{width:100%;height:100%;border:0;background:#fff}.slide-fields{padding:16px}.slide-tools{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:12px}.duration-box{display:grid;grid-template-columns:1fr 105px;gap:10px;align-items:end}.notice{padding:14px 16px;border-radius:14px;margin:14px 0;font-weight:700}.notice.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.alert{background:#fff1f2;border:1px solid #fecdd3;padding:14px;border-radius:14px}.muted{color:var(--muted)}table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-bottom:22px;box-shadow:0 8px 20px rgba(15,23,42,.04)}th,td{padding:13px;border-bottom:1px solid #e5e8eb;text-align:left}tr:last-child td{border-bottom:0}th{background:#f8fafc;color:#475569;font-size:13px;text-transform:uppercase;letter-spacing:.06em}code{background:#eef2ff;padding:3px 6px;border-radius:6px}.footer-note{font-size:13px;color:var(--muted);margin-top:14px}
@media(max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}.hero h1{font-size:28px}}
@media(max-width:640px){.wrap{padding:18px 12px}.top,.app-header,.form-header{align-items:flex-start;flex-direction:column}.stats-grid{grid-template-columns:1fr}.slide-grid{grid-template-columns:1fr}.monitor-grid,.channel-grid{grid-template-columns:1fr}.duration-box{grid-template-columns:1fr}table{font-size:13px}}

.slide-search-panel{background:#f8fafc;border:1px solid var(--line);border-radius:16px;padding:16px;margin:0 0 16px}.slide-search-panel label{margin-top:0}.slide-search-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.slide-search-row input{margin-top:0}.slide-search-row button{height:45px;box-shadow:none}.slide-row[style*="display: none"]{display:none!important}@media(max-width:640px){.slide-search-row{grid-template-columns:1fr}.slide-search-row button{width:100%}}

.notice{padding:14px 16px;border-radius:12px;margin:14px 0;font-weight:700}.notice.success{background:#dcfce7;color:#166534;border:1px solid #86efac}.button.danger,button.danger{background:#dc2626;color:#fff;border-color:#dc2626}.button.danger:hover,button.danger:hover{background:#b91c1c}

.slide-preview{position:relative}.slide-status-badge{position:absolute;left:10px;top:10px;background:rgba(220,38,38,.92);color:#fff;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.slide-row.inactive-slide{opacity:.72;border-style:dashed}.slide-row.inactive-slide .slide-preview:after{content:"";position:absolute;inset:0;background:rgba(15,23,42,.48);pointer-events:none}.slide-active-toggle{margin-top:0;background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:10px 12px}


.dashboard-search-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;margin:0 0 16px;box-shadow:0 8px 22px rgba(15,23,42,.04)}
.dashboard-search-panel label{margin-top:0;font-size:14px;text-transform:uppercase;letter-spacing:.06em;color:#475569}
.dashboard-search-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin:8px 0 8px}
.dashboard-search-row input{margin-top:0}
.dashboard-search-row button{height:45px;box-shadow:none}
@media(max-width:640px){.dashboard-search-row{grid-template-columns:1fr}.dashboard-search-row button{width:100%}}


body.modal-open{overflow:hidden}
.pdd-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:24px}
.pdd-modal.show{display:flex}
.pdd-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.62);backdrop-filter:blur(4px)}
.pdd-modal-panel{position:relative;width:min(760px,96vw);max-height:88vh;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 30px 80px rgba(15,23,42,.35);padding:22px}
.pdd-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:16px}
.pdd-modal-head h2{margin:0;font-size:24px;letter-spacing:-.03em}
.pdd-modal-head p{margin:4px 0 0}
.modal-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.modal-meta-row{background:#f8fafc;border:1px solid var(--line);border-radius:14px;padding:12px;min-width:0}
.modal-meta-row span{display:block;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}
.modal-meta-row strong{display:block;color:var(--text);font-size:14px;line-height:1.35;overflow-wrap:anywhere}
.modal-meta-row:nth-last-child(-n+2){grid-column:1 / -1}
@media(max-width:720px){.modal-meta-grid{grid-template-columns:1fr}.pdd-modal{padding:12px}.pdd-modal-panel{border-radius:18px}.pdd-modal-head{flex-direction:column}.pdd-modal-head .mini-button{width:100%}}
.web-mode-box{margin:10px 0 14px;padding:12px;border:1px solid rgba(15,23,42,.12);border-radius:14px;background:rgba(15,23,42,.035)}
.web-mode-box label{margin-top:0}.web-mode-box select{margin-bottom:8px}

.empty-slides-note{
  grid-column:1/-1;
  border:1px dashed #cbd5e1;
  border-radius:18px;
  padding:28px;
  text-align:center;
  color:#64748b;
  background:#f8fafc;
}
.empty-slides-note strong{color:#0f172a;font-size:18px;}

.pdd-slide-modal-panel{width:min(920px,96vw)}
.pdd-slide-modal-panel .slide-row{box-shadow:none;margin:0}
.pdd-slide-modal-panel .slide-grid{display:block}
.pdd-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px;border-top:1px solid var(--line);padding-top:16px}
.pdd-modal-actions button{margin:0}
@media(max-width:640px){.pdd-modal-actions{flex-direction:column}.pdd-modal-actions button{width:100%}}

.admin-review-preview{background:#fff;color:#111827;border-radius:18px;padding:16px;box-shadow:0 12px 30px rgba(15,23,42,.18);position:relative;max-width:100%;font-size:13px;line-height:1.25}
.admin-review-preview:after{content:"";position:absolute;bottom:-10px;left:28px;width:0;height:0;border:10px solid transparent;border-top-color:#fff;border-bottom:0}
.admin-review-preview small{color:#475569}

/* Compact slide cards: show read-only details by default, edit in a modal. */
#slides > .slide-row > .slide-fields{display:none}
.slide-summary{padding:16px;background:#fff;border-top:1px solid var(--line)}
.slide-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.slide-summary-title{font-size:17px;font-weight:900;line-height:1.25;color:#0f172a;overflow-wrap:anywhere}
.slide-summary-sub{font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:3px}
.summary-pills{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.summary-pill{display:inline-flex;align-items:center;border:1px solid #dbeafe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:900;line-height:1}
.slide-summary-content{color:#475569;font-size:13px;line-height:1.4;min-height:18px;overflow-wrap:anywhere;margin-top:8px}
.slide-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.slide-card-actions .mini-button{border:0}.slide-card-actions .danger.mini-button{background:#fee2e2;color:#b91c1c}.slide-card-actions .danger.mini-button:hover{background:#dc2626;color:#fff}.pdd-slide-modal-panel .slide-fields{display:block!important;padding:0}.pdd-slide-modal-panel #pddEditSlideModalBody .slide-fields{padding:0}
.media-caption-box{margin:10px 0 14px;padding:12px;border:1px solid rgba(15,23,42,.12);border-radius:14px;background:rgba(15,23,42,.035)}
.media-caption-box label{margin-top:0}.media-caption-box textarea{min-height:72px}


/* Fix dashboard header actions/logout clickability: keep decorative hero overlay behind controls. */
.hero::after,.hero:after{pointer-events:none;z-index:0;}
.hero > *{position:relative;z-index:2;}
.app-header .actions,.app-header .actions a,.app-header .actions button{position:relative;z-index:3;pointer-events:auto;}

.impersonation-banner{position:sticky;top:0;z-index:2000;background:#fff3cd;border:1px solid #f0d36a;color:#5c4500;padding:12px 18px;border-radius:14px;margin:0 0 16px 0;box-shadow:0 10px 25px rgba(0,0,0,.12);display:flex;gap:10px;align-items:center;flex-wrap:wrap}.impersonation-banner .button.small{padding:7px 12px;font-size:13px;margin-left:auto}

/* Admin users page account cards and search */
.users-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
.users-card-head h2{margin:0 0 4px;font-size:24px;letter-spacing:-.03em}
.user-total-pill{display:inline-flex;align-items:center;justify-content:center;background:#eef2ff;color:#1d4ed8;border:1px solid #c7d2fe;border-radius:999px;padding:8px 12px;font-weight:900;white-space:nowrap}
.user-search-panel{margin-top:14px}
.user-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(315px,1fr));gap:16px;margin-top:16px}
.user-card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 10px 28px rgba(15,23,42,.06);padding:18px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.user-card:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(15,23,42,.10);border-color:#cbd5e1}
.user-card-top{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:start}
.user-avatar{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,#1d4ed8,#0f172a);color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:950;box-shadow:0 10px 24px rgba(29,78,216,.22)}
.user-main h3{margin:2px 0 6px;font-size:18px;letter-spacing:-.025em;line-height:1.2;overflow-wrap:anywhere}
.user-sub code{font-size:13px}
.user-badges{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.role-badge,.status-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.admin-role{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.user-role{background:#e0f2fe;color:#075985;border:1px solid #bae6fd}.active-status{background:#dcfce7;color:#166534;border:1px solid #86efac}.disabled-status{background:#f1f5f9;color:#64748b;border:1px solid #cbd5e1}
.user-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}
/* Compact user plan/limit tiles */
.user-stat{
  background:linear-gradient(180deg,#f8fafc,#fff);
  border:1px solid var(--line);
  border-radius:14px;
  padding:10px 8px;
  text-align:center;
  min-width:0;
}
.user-stat span{
  display:block;
  color:var(--muted);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
  margin-bottom:4px;
  white-space:nowrap;
}
.user-stat strong{
  display:block;
  color:#0f172a;
  font-size:15px;
  line-height:1.15;
  font-weight:850;
  letter-spacing:-.02em;
  white-space:nowrap;
}
.user-folder{background:#f8fafc;border:1px solid var(--line);border-radius:14px;padding:11px;margin-top:6px}.user-folder span{display:block;color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px}.user-folder code{display:inline-block;max-width:100%;overflow-wrap:anywhere}
.user-actions{margin-top:14px}.user-actions form{margin:0}.user-actions button.mini-button{border:0;box-shadow:none}.mini-note{display:inline-flex;align-items:center;color:var(--muted);font-size:13px;font-weight:800;padding:8px 10px}
@media(max-width:720px){.users-card-head{flex-direction:column}.user-card-top{grid-template-columns:48px 1fr}.user-badges{grid-column:1/-1;flex-direction:row;align-items:flex-start}.user-stats-row{grid-template-columns:1fr 1fr 1fr;gap:7px}.user-stat{padding:8px 5px;border-radius:12px}.user-stat span{font-size:9px}.user-stat strong{font-size:13px}.user-grid{grid-template-columns:1fr}}

/* Drag-and-drop slide ordering */
#slides.is-dragging-over{outline:2px dashed rgba(29,78,216,.35);outline-offset:6px;border-radius:18px}
.slide-row[draggable="true"]{cursor:grab}
.slide-row.is-dragging{opacity:.45;transform:scale(.985);box-shadow:0 24px 60px rgba(15,23,42,.22);cursor:grabbing}
.slide-drag-handle{width:38px;height:38px;min-width:38px;border-radius:12px;background:#f1f5f9;border:1px solid #cbd5e1;color:#475569;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:950;line-height:1;cursor:grab;user-select:none}
.slide-drag-handle:hover{background:#e0f2fe;color:#1d4ed8;border-color:#93c5fd}
.slide-summary-main{min-width:0;flex:1}
.slide-summary-head{align-items:center}
@media(max-width:640px){.slide-drag-handle{width:34px;height:34px;min-width:34px}.slide-summary-head{gap:8px}}

.review-char-count{font-size:12px;font-weight:700;color:#64748b;text-align:right;margin-top:-8px;margin-bottom:10px}
.review-char-count.near-limit{color:#b45309}
.review-char-count.over-limit{color:#dc2626}


/* PremierDigitalDisplays upload loading overlay */
.pdd-upload-loading {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(15, 23, 42, 0.72);
    backdrop-filter: blur(4px);
}
.pdd-upload-loading.is-active {
    display: flex;
}
.pdd-upload-loading-card {
    background: #ffffff;
    color: #0f172a;
    border-radius: 18px;
    padding: 28px 34px;
    min-width: 320px;
    max-width: 90vw;
    text-align: center;
    box-shadow: 0 24px 70px rgba(0,0,0,.35);
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.pdd-upload-spinner {
    width: 54px;
    height: 54px;
    border: 6px solid #e5e7eb;
    border-top-color: #2563eb;
    border-radius: 50%;
    margin: 0 auto 18px;
    animation: pddUploadSpin .85s linear infinite;
}
.pdd-upload-loading-card strong {
    display: block;
    font-size: 20px;
    margin-bottom: 8px;
}
.pdd-upload-loading-card span {
    display: block;
    font-size: 14px;
    color: #64748b;
}
@keyframes pddUploadSpin {
    to { transform: rotate(360deg); }
}



/* Safari video optimization warning */
/* Browser video optimization availability notice */
.pdd-video-opt-availability {
    display: none;
    margin: 12px 0;
    padding: 14px 16px;
    border-radius: 14px;
    font-size: 14px;
    line-height: 1.45;
}
.pdd-video-opt-availability.is-available {
    display: block;
    background: #ecfdf5;
    border: 1px solid #bbf7d0;
    color: #166534;
}
.pdd-video-opt-availability.is-unavailable {
    display: block;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #9a3412;
}
.pdd-video-opt-availability strong {
    display: block;
    margin-bottom: 4px;
}



/* PDD media-only slide fields */
.pdd-force-hidden,
[data-pdd-media-only="1"].pdd-force-hidden {
    display: none !important;
}

/* PDD media fields visibility */
.pdd-media-fields-hidden {
    display: none !important;
}

/* Channel background music controls */
.background-audio-panel{margin:18px 0 22px;padding:18px;border:1px solid #dbe4ef;border-radius:18px;background:#f8fafc;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
.background-audio-panel .section-title.compact{margin:0 0 10px;padding:0;border:0;display:flex;align-items:center;justify-content:space-between}
.background-audio-panel .section-title.compact h2{margin:0;font-size:18px}
.current-audio-box{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0 12px;padding:10px 12px;border-radius:12px;background:#fff;border:1px solid #e2e8f0}
.current-audio-box audio{height:34px;max-width:100%}
.background-audio-panel input[type="range"]{width:100%;margin-top:8px}
.current-audio-track {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 8px;
}
.current-audio-track audio {
  max-width: 360px;
  width: 100%;
}


.current-audio-name { font-weight: 700; min-width: 180px; }
.single-audio-delete { display: inline-flex; align-items: center; gap: 6px; padding: 7px 10px; border: 1px solid #fecaca; border-radius: 999px; background: #fff1f2; color: #991b1b; font-size: 13px; font-weight: 700; white-space: nowrap; }
.single-audio-delete input { margin: 0; }
.remove-all-audio { margin-top: 10px; color: #991b1b; font-weight: 700; }
.current-audio-box { align-items: stretch; }
.current-audio-track { width: 100%; padding: 8px 0; border-top: 1px solid #eef2f7; }
.current-audio-track:first-of-type { border-top: 0; }

/* Dashboard collapsible sections */
.dashboard-accordion-wrap {
    display: grid;
    gap: 16px;
    margin: 22px 0;
}
.dashboard-accordion {
    border: 1px solid #dbe4ef;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 12px 34px rgba(15, 23, 42, 0.06);
    overflow: hidden;
}
.dashboard-accordion-summary {
    cursor: pointer;
    list-style: none;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    border-bottom: 1px solid transparent;
}
.dashboard-accordion[open] .dashboard-accordion-summary {
    border-bottom-color: #e2e8f0;
}
.dashboard-accordion-summary::-webkit-details-marker {
    display: none;
}
.dashboard-accordion-summary::before {
    content: '+';
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 22px;
    font-weight: 800;
}
.dashboard-accordion[open] .dashboard-accordion-summary::before {
    content: '–';
}
.dashboard-accordion-summary > span:first-child {
    flex: 1;
    min-width: 0;
}
.dashboard-accordion-summary strong {
    display: block;
    font-size: 20px;
    color: #0f172a;
    line-height: 1.2;
}
.dashboard-accordion-summary small {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 14px;
    line-height: 1.35;
}
.accordion-count {
    white-space: nowrap;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    padding: 7px 12px;
    font-size: 13px;
    font-weight: 800;
}
.dashboard-accordion-body {
    padding: 18px;
}
.dashboard-accordion-body > .actions:first-child {
    margin-top: 0;
}
@media (max-width: 700px) {
    .dashboard-accordion-summary {
        align-items: flex-start;
        padding: 16px;
    }
    .dashboard-accordion-summary small {
        font-size: 13px;
    }
    .accordion-count {
        font-size: 12px;
        padding: 6px 9px;
    }
    .dashboard-accordion-body {
        padding: 14px;
    }
}

/* Separate dashboard management pages */
.management-links-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 18px;
    margin: 26px 0;
}
.management-link-card {
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.10);
    border-radius: 18px;
    padding: 22px;
    box-shadow: 0 12px 32px rgba(15, 23, 42, 0.08);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 18px;
    min-height: 190px;
}
.management-link-card h2 {
    margin: 0 0 6px;
    font-size: 1.35rem;
}
.management-link-card p {
    margin: 0 0 14px;
    color: #64748b;
}
@media (max-width: 720px) {
    .management-link-card {
        padding: 18px;
        min-height: auto;
    }
    .management-link-card .button {
        width: 100%;
        text-align: center;
    }
}

/* Management page pagination controls */
.management-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 8px;
}
.per-page-control {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.9rem;
  color: var(--muted, #6b7280);
}
.compact-select {
  width: auto;
  min-width: 78px;
  padding: 7px 10px;
  border-radius: 10px;
}
.pdd-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
  margin: 24px 0 8px;
}
.pdd-pagination-label {
  font-weight: 700;
  color: var(--muted, #6b7280);
  min-width: 120px;
  text-align: center;
}
.pdd-pagination button:disabled {
  opacity: .45;
  cursor: not-allowed;
}
@media (max-width: 640px) {
  .management-toolbar { align-items: stretch; }
  .per-page-control { width: 100%; justify-content: space-between; }
  .compact-select { flex: 0 0 96px; }
  .pdd-pagination { justify-content: stretch; }
  .pdd-pagination .mini-button { flex: 1 1 110px; text-align: center; }
  .pdd-pagination-label { flex: 1 1 100%; order: -1; }
}

/* Clickable dashboard channel links */
.meta-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.meta-link:hover,
.meta-link:focus {
  text-decoration-thickness: 2px;
}

/* User account contact/profile fields */
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.user-contact-line{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:6px;color:#64748b;font-size:.86rem;line-height:1.35}
.user-contact-line span{display:inline-flex;align-items:center;max-width:100%;overflow-wrap:anywhere}
.user-contact-line span:not(:last-child)::after{content:'•';margin-left:10px;color:#cbd5e1}
.user-address code{white-space:normal;overflow-wrap:anywhere}
@media (max-width:720px){.grid3{grid-template-columns:1fr}.user-contact-line{display:block}.user-contact-line span{display:block}.user-contact-line span:not(:last-child)::after{content:'';margin:0}}

/* Sleek dashboard + login visual refresh */
:root{
  --pds-ink:#0b1220;
  --pds-surface:#ffffff;
  --pds-soft:#f6f8fb;
  --pds-green:#16a34a;
  --pds-green-dark:#0f7a38;
  --pds-blue:#2563eb;
}
body{
  background:
    radial-gradient(circle at top left, rgba(34,197,94,.16), transparent 32rem),
    radial-gradient(circle at top right, rgba(37,99,235,.12), transparent 30rem),
    linear-gradient(180deg,#f7fafc 0%,#eef4f8 100%);
}
.wrap{max-width:1320px;padding-top:24px}.app-header.hero{
  background:
    linear-gradient(135deg,rgba(8,47,73,.96),rgba(15,118,110,.94) 52%,rgba(22,101,52,.92)),
    radial-gradient(circle at 88% 18%,rgba(255,255,255,.28),transparent 13rem);
  border:1px solid rgba(255,255,255,.24);
  border-radius:30px;
  padding:30px;
  box-shadow:0 26px 70px rgba(15,23,42,.18);
}
.app-header.hero:after{width:310px;height:310px;right:-120px;top:-130px;background:rgba(255,255,255,.11)}
.app-header .brand h1{font-size:clamp(30px,3vw,42px);font-weight:950;letter-spacing:-.06em}.app-header .brand p{color:rgba(255,255,255,.82);font-weight:600}.app-header .actions{align-items:center;justify-content:flex-end}.app-header .actions .muted{color:rgba(255,255,255,.78);font-weight:800}.app-header .button.ghost{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.28);backdrop-filter:blur(10px)}.app-header .button.ghost:hover{background:rgba(255,255,255,.22);color:#fff}
.actions:first-of-type:not(.app-header .actions){background:rgba(255,255,255,.72);border:1px solid rgba(226,232,240,.85);border-radius:22px;padding:12px;box-shadow:0 14px 40px rgba(15,23,42,.08);backdrop-filter:blur(14px)}
.button,button{border-radius:13px;box-shadow:0 12px 26px rgba(37,99,235,.16);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.button:hover,button:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(37,99,235,.22)}.ghost{box-shadow:0 8px 18px rgba(15,23,42,.05)}.ghost:hover{transform:translateY(-1px);box-shadow:0 12px 25px rgba(15,23,42,.08)}
.stats-grid{gap:18px;margin:22px 0 26px}.stat-card{position:relative;overflow:hidden;border:1px solid rgba(15,23,42,.08);border-radius:24px;padding:22px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 18px 45px rgba(15,23,42,.08)}.stat-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--pds-green),var(--pds-blue))}.stat-label{font-size:12px;color:#64748b}.stat-value{font-size:42px;color:#0f172a}.section-title{align-items:center;background:rgba(255,255,255,.68);border:1px solid rgba(226,232,240,.8);border-radius:20px;padding:16px 18px;box-shadow:0 12px 34px rgba(15,23,42,.06)}.section-title h2{font-size:25px;font-weight:950}
.dashboard-search-panel{border-radius:22px;border:1px solid rgba(15,23,42,.08);background:rgba(255,255,255,.86);box-shadow:0 16px 42px rgba(15,23,42,.07);backdrop-filter:blur(14px);padding:18px}.dashboard-search-row input{border-radius:14px;background:#fff;border-color:#dbe4ef}.monitor-grid{grid-template-columns:repeat(auto-fill,minmax(315px,1fr));gap:20px}.display-card{border:1px solid rgba(15,23,42,.08);border-radius:26px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);box-shadow:0 18px 45px rgba(15,23,42,.08);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.display-card:hover{transform:translateY(-4px);box-shadow:0 28px 65px rgba(15,23,42,.13);border-color:rgba(37,99,235,.22)}.display-card-body{padding:22px}.card-title{font-size:20px;letter-spacing:-.035em}.pill{box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}.pill.online{background:linear-gradient(135deg,#16a34a,#059669)}.pill.offline{background:linear-gradient(135deg,#64748b,#334155)}.meta-list{background:#f8fafc;border:1px solid #edf2f7;border-radius:18px;padding:6px 12px;margin:16px 0}.meta-row{align-items:center}.meta-link{font-weight:950}.card-actions{gap:9px}.mini-button{border-radius:999px;background:#eef6ff;color:#1d4ed8;border:1px solid #dbeafe}.mini-button.ghost{background:#fff;color:#334155}.mini-button.danger{background:#fff1f2!important;color:#be123c!important;border:1px solid #fecdd3!important}.mini-button.danger:hover{background:#e11d48!important;color:#fff!important}
.management-links-grid{gap:20px;margin-top:30px}.management-link-card{border-radius:26px;border:1px solid rgba(15,23,42,.08);background:linear-gradient(145deg,#fff,#f7fbff);box-shadow:0 18px 45px rgba(15,23,42,.08);position:relative;overflow:hidden}.management-link-card:before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,var(--pds-green),var(--pds-blue))}.management-link-card h2{font-weight:950;letter-spacing:-.04em}.management-link-card .button{align-self:flex-start}
.pdd-pagination button,.pdd-pagination .button{box-shadow:none}
@media(max-width:760px){.app-header.hero{padding:24px;border-radius:24px}.app-header .actions{justify-content:flex-start}.actions:first-of-type:not(.app-header .actions){display:grid;grid-template-columns:1fr;gap:9px}.actions:first-of-type:not(.app-header .actions) .button,.actions:first-of-type:not(.app-header .actions) button{width:100%}.monitor-grid{grid-template-columns:1fr}.section-title{align-items:flex-start;flex-direction:column}.stat-value{font-size:36px}}

/* Professional login / public admin screen */
body.login-page{min-height:100vh;background:
  radial-gradient(circle at 16% 18%,rgba(34,197,94,.22),transparent 28rem),
  radial-gradient(circle at 88% 12%,rgba(20,184,166,.16),transparent 26rem),
  linear-gradient(135deg,#07111f 0%,#0f2f2b 48%,#082f49 100%);color:#fff}
.login-shell{min-height:100vh;width:min(1180px,94vw);margin:0 auto;display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:center;padding:42px 0}.login-brand-panel{padding:38px}.login-logo-mark{width:78px;height:78px;border-radius:24px;background:linear-gradient(135deg,#22c55e,#14b8a6);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:950;letter-spacing:-.06em;box-shadow:0 24px 55px rgba(34,197,94,.25);margin-bottom:24px}.login-kicker{display:inline-flex;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:8px 12px;color:#bbf7d0;background:rgba(255,255,255,.08);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.login-brand-panel h1{font-size:clamp(42px,6vw,72px);line-height:.98;margin:18px 0 20px;letter-spacing:-.075em}.login-lead{font-size:18px;line-height:1.75;color:rgba(255,255,255,.78);max-width:760px}.login-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:28px}.login-feature-grid div{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:16px;backdrop-filter:blur(14px)}.login-feature-grid strong{display:block;margin-bottom:6px}.login-feature-grid span{display:block;color:rgba(255,255,255,.72);font-size:14px;line-height:1.45}.login-card-panel{display:flex;justify-content:center}.login-card{width:min(440px,100%);background:rgba(255,255,255,.96);color:#0f172a;border:1px solid rgba(255,255,255,.5);border-radius:30px;padding:30px;box-shadow:0 35px 90px rgba(0,0,0,.35)}.login-card-head h2{margin:14px 0 6px;font-size:34px;letter-spacing:-.055em}.login-card-head p{margin:0;color:#64748b}.secure-pill{display:inline-flex;align-items:center;border-radius:999px;background:#ecfdf5;color:#166534;border:1px solid #bbf7d0;padding:7px 11px;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}.login-form label{margin-top:18px}.login-form input{padding:14px 15px;border-radius:15px}.login-submit{width:100%;margin-top:22px;padding:15px 18px;background:linear-gradient(135deg,#16a34a,#059669);box-shadow:0 18px 38px rgba(22,163,74,.22)}.login-submit:hover{background:linear-gradient(135deg,#15803d,#047857)}.login-help{margin:18px 0 0;color:#64748b;font-size:13px;line-height:1.5}.login-alert{margin:16px 0 0}.login-card code{background:#f1f5f9;color:#0f172a}
@media(max-width:920px){.login-shell{grid-template-columns:1fr;padding:28px 0}.login-brand-panel{padding:18px 6px}.login-card-panel{justify-content:flex-start}.login-card{width:100%}.login-feature-grid{grid-template-columns:1fr}.login-brand-panel h1{font-size:42px}}


/* Shared authenticated app header */
.pdd-shared-hero{
  background:
    radial-gradient(circle at 12% 12%, rgba(34,197,94,.38), transparent 28%),
    radial-gradient(circle at 92% 18%, rgba(20,184,166,.26), transparent 28%),
    linear-gradient(135deg,#052e1b 0%,#064e3b 48%,#0f766e 100%);
  color:#fff;
  border-radius:28px;
  padding:22px;
  margin:0 0 24px;
  box-shadow:0 22px 55px rgba(6,78,59,.22);
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
  gap:22px;
  align-items:stretch;
  position:relative;
  overflow:hidden;
}
.pdd-shared-hero:after{
  content:"";
  position:absolute;
  right:-90px;
  top:-90px;
  width:260px;
  height:260px;
  border-radius:50%;
  background:rgba(255,255,255,.11);
  pointer-events:none;
}
.pdd-hero-main,.pdd-hero-side{position:relative;z-index:1}
.pdd-hero-main{display:flex;flex-direction:column;gap:24px;justify-content:space-between}
.pdd-brand-lockup{display:inline-flex;align-items:center;gap:12px;color:#fff;text-decoration:none;width:max-content;max-width:100%}
.pdd-brand-lockup:hover{text-decoration:none}
.pdd-brand-mark{
  width:46px;height:46px;border-radius:15px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,#dcfce7,#86efac);
  color:#064e3b;
  font-weight:950;
  letter-spacing:-.08em;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.45),0 12px 25px rgba(0,0,0,.18);
}
.pdd-brand-lockup strong{display:block;font-size:17px;letter-spacing:-.02em;line-height:1.1;color:#fff}
.pdd-brand-lockup small{display:block;font-size:12px;color:#bbf7d0;margin-top:2px}
.pdd-page-title h1{font-size:clamp(29px,4vw,46px);line-height:1;margin:0 0 8px;letter-spacing:-.055em}
.pdd-page-title p{margin:0;color:#dcfce7;font-size:16px;line-height:1.55;max-width:760px}
.pdd-hero-side{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
  border-radius:22px;
  padding:16px;
  backdrop-filter:blur(10px);
}
.pdd-main-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pdd-main-nav a{
  color:#ecfdf5;
  text-decoration:none;
  padding:10px 12px;
  border-radius:13px;
  font-weight:850;
  text-align:center;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
}
.pdd-main-nav a:hover{background:rgba(255,255,255,.16);text-decoration:none}
.pdd-main-nav a.active{
  background:#ecfdf5;
  color:#065f46;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
}
.pdd-user-strip{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  color:#bbf7d0;
  font-size:13px;
  border-top:1px solid rgba(255,255,255,.14);
  padding-top:14px;
}
.pdd-user-strip strong{color:#fff}
.pdd-user-strip a{
  color:#052e1b;
  background:#bbf7d0;
  border-radius:999px;
  padding:8px 12px;
  font-weight:900;
  text-decoration:none;
  white-space:nowrap;
}
.pdd-user-strip a:hover{background:#dcfce7;text-decoration:none}
@media(max-width:900px){
  .pdd-shared-hero{grid-template-columns:1fr;padding:18px;border-radius:22px}
  .pdd-hero-main{gap:18px}
  .pdd-main-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .pdd-shared-hero{margin-left:-4px;margin-right:-4px}
  .pdd-brand-lockup{width:100%}
  .pdd-main-nav{grid-template-columns:1fr}
  .pdd-user-strip{flex-direction:column;align-items:flex-start}
  .pdd-user-strip a{width:100%;text-align:center}
}


/* User account modal polish */
.users-head-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.pdd-user-modal-panel{width:min(920px,96vw)}
.pdd-user-modal-form .grid2,.pdd-user-modal-form .grid3{margin-bottom:12px}
.pdd-user-modal-actions{position:sticky;bottom:-22px;background:linear-gradient(180deg,rgba(255,255,255,.88),#fff 55%);padding-top:14px;margin-bottom:0;border-top:1px solid var(--line)}
.user-actions button.mini-button{box-shadow:none;padding:8px 11px;font-size:13px}
@media(max-width:720px){
  .users-card-head{align-items:flex-start}
  .users-head-actions{width:100%;justify-content:stretch}
  .users-head-actions .button,.users-head-actions .user-total-pill{width:100%;justify-content:center;text-align:center}
  .pdd-user-modal{padding:12px}
  .pdd-user-modal-panel{border-radius:18px;padding:16px;max-height:92vh}
  .pdd-modal-head{gap:10px}
  .pdd-modal-head h2{font-size:21px}
}

/* Display notes */
.display-notes{
  margin-top:12px;
  padding:12px 14px;
  border-radius:14px;
  background:linear-gradient(180deg,#f8fafc,#eef2ff);
  border:1px solid rgba(99,102,241,.18);
  color:#334155;
  font-size:.92rem;
  line-height:1.45;
  word-break:break-word;
}
.display-notes strong{color:#0f172a;}

/* Embed code modal */
.embed-code-box { display: grid; gap: 14px; }
.embed-code-textarea {
  width: 100%;
  min-height: 150px;
  resize: vertical;
  border-radius: 14px;
  border: 1px solid rgba(148,163,184,.35);
  background: rgba(15,23,42,.92);
  color: #e5e7eb;
  padding: 14px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 13px;
  line-height: 1.55;
}
.embed-code-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.embed-code-warning { margin-top: 4px; }
@media (max-width: 640px) {
  .embed-code-textarea { min-height: 190px; font-size: 12px; }
  .embed-code-actions .button { width: 100%; text-align: center; }
}

/* Support video library */
.pdd-support-admin-card{background:linear-gradient(180deg,#ffffff,#f8fbff)}
.pdd-support-form label{font-weight:800;color:var(--text)}
.pdd-support-video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:18px;margin-top:18px}
.pdd-support-video-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(15,23,42,.09);border-radius:24px;background:#fff;box-shadow:0 14px 34px rgba(15,23,42,.07)}
.pdd-support-video-thumb{position:relative;aspect-ratio:16/9;background:linear-gradient(135deg,#0f172a,#334155);overflow:hidden}
.pdd-support-video-thumb video{width:100%;height:100%;object-fit:cover;display:block;opacity:.82}
.pdd-support-play-badge{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:rgba(255,255,255,.92);color:#0f172a;font-weight:950;box-shadow:0 14px 30px rgba(15,23,42,.28)}
.pdd-support-video-body{padding:18px;flex:1}
.pdd-support-video-body h3{margin:0 0 9px;font-size:19px;letter-spacing:-.035em;color:var(--text)}
.pdd-support-video-body p{margin:0;color:var(--muted);line-height:1.55}
.pdd-support-video-actions{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:0 18px 18px;flex-wrap:wrap}
.pdd-support-video-actions form{margin:0}
.pdd-support-preview-panel{width:min(980px,96vw)}
.pdd-support-preview-panel video{width:100%;max-height:70vh;background:#000;border-radius:18px;display:block}
@media(max-width:640px){.pdd-support-video-grid{grid-template-columns:1fr}.pdd-support-video-actions .mini-button,.pdd-support-video-actions form,.pdd-support-video-actions form button{width:100%}}

/* Support page professional layout polish */
.support-page-shell .card,
.pdd-support-admin-card,
.pdd-support-library-card{
  border-radius:24px;
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 16px 45px rgba(15,23,42,.07);
}
.support-page-shell .section-heading-row,
.pdd-support-admin-card .section-heading-row,
.pdd-support-library-card .section-heading-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
  padding-bottom:14px;
  border-bottom:1px solid rgba(226,232,240,.9);
}
.support-page-shell .section-heading-row h2,
.pdd-support-admin-card .section-heading-row h2,
.pdd-support-library-card .section-heading-row h2{
  margin:0 0 5px;
  font-size:24px;
  letter-spacing:-.04em;
  color:#0f172a;
}
.pdd-support-admin-card{
  background:linear-gradient(135deg,#ffffff 0%,#f8fffb 50%,#ecfdf5 100%);
}
.pdd-support-admin-card .actions{margin-top:18px;justify-content:flex-end;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
.pdd-support-admin-card button[type="submit"]{
  background:linear-gradient(135deg,#059669,#16a34a);
  box-shadow:0 12px 26px rgba(22,163,74,.22);
}
.pdd-support-form textarea{min-height:110px}
.pdd-support-library-card{background:rgba(255,255,255,.94)}
.pdd-support-video-grid{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:20px}
.pdd-support-video-card{
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 14px 32px rgba(15,23,42,.07);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.pdd-support-video-card:hover{
  transform:translateY(-3px);
  box-shadow:0 22px 42px rgba(15,23,42,.11);
  border-color:rgba(22,163,74,.26);
}
.pdd-support-video-thumb{background:radial-gradient(circle at 30% 20%,#065f46,#0f172a 62%)}
.pdd-support-video-body h3{font-size:20px;line-height:1.22}
.pdd-support-video-actions{border-top:1px solid rgba(226,232,240,.85);padding-top:14px;margin-top:auto}
.pdd-support-video-actions .mini-button:first-child{background:#ecfdf5;color:#047857;border:1px solid #bbf7d0;box-shadow:none}
.pdd-support-video-actions .mini-button:first-child:hover{background:#d1fae5;text-decoration:none}
.pdd-support-video-actions .mini-button.danger{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;box-shadow:none}
.pdd-support-video-actions .mini-button.danger:hover{background:#dc2626;color:#fff}
.pdd-support-preview-modal{z-index:1000000}
.pdd-support-preview-panel{padding:0;overflow:hidden;background:#fff}
.pdd-support-preview-panel .pdd-modal-head{margin:0;padding:18px 20px;background:linear-gradient(135deg,#f8fafc,#ecfdf5);border-bottom:1px solid rgba(226,232,240,.95)}
.pdd-support-preview-panel video{border-radius:0;max-height:72vh}
@media(max-width:700px){
  .support-page-shell .section-heading-row,
  .pdd-support-admin-card .section-heading-row,
  .pdd-support-library-card .section-heading-row{flex-direction:column;align-items:stretch}
  .pdd-support-video-grid{grid-template-columns:1fr}
  .pdd-support-admin-card .actions button{width:100%}
}

/* Support video search */
.pdd-support-search-row{margin:18px 0 8px;padding:16px;border:1px solid rgba(16,185,129,.18);border-radius:18px;background:linear-gradient(135deg,rgba(236,253,245,.92),rgba(255,255,255,.96))}
.pdd-support-search-label{display:block;font-weight:900;color:var(--text);margin-bottom:8px}
.pdd-support-search-wrap{display:flex;gap:10px;align-items:center}
.pdd-support-search-wrap input[type="search"]{flex:1;min-width:0;border:1px solid rgba(148,163,184,.45);border-radius:14px;padding:12px 14px;font-weight:700;background:#fff;color:var(--text)}
.pdd-support-search-wrap input[type="search"]:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.13)}
@media(max-width:640px){.pdd-support-search-wrap{flex-direction:column;align-items:stretch}.pdd-support-search-wrap .mini-button{width:100%}}

/* Support video thumbnail click/play polish */
.pdd-support-video-thumb-button{
  border:0;
  padding:0;
  width:100%;
  display:block;
  text-align:left;
  cursor:pointer;
  color:inherit;
}
.pdd-support-video-thumb-button:hover .pdd-support-play-badge,
.pdd-support-video-thumb-button:focus-visible .pdd-support-play-badge{
  transform:translate(-50%,-50%) scale(1.08);
  background:#ffffff;
}
.pdd-support-video-thumb-button:focus-visible{
  outline:4px solid rgba(16,185,129,.35);
  outline-offset:3px;
}
.pdd-support-video-thumb video{
  pointer-events:none;
}
.button.disabled,
.button[aria-disabled="true"]{
  opacity:.55;
  cursor:not-allowed;
  pointer-events:none;
  filter:grayscale(.25);
}
.plan-status{background:#ecfdf5!important;color:#047857!important;border:1px solid #a7f3d0!important}


/* Cloudflare Turnstile on login */
.turnstile-wrap {
  margin: 16px 0 6px;
  display: flex;
  justify-content: center;
}
.turnstile-wrap iframe {
  max-width: 100%;
}

/* Self-service account page */
.account-card{max-width:1040px;margin-left:auto;margin-right:auto}
.account-title-row{align-items:flex-start;gap:16px}
.account-readonly-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.account-readonly-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 24px}
.account-readonly-grid>div{border:1px solid var(--line);background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-radius:16px;padding:14px}
.account-readonly-grid span{display:block;color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.account-readonly-grid code{font-size:14px;color:#0f172a;background:transparent;padding:0;white-space:normal;word-break:break-word}
.account-password-panel{margin-top:24px;padding:18px;border:1px solid rgba(34,197,94,.18);background:linear-gradient(180deg,#f0fdf4,#ecfeff);border-radius:20px}
.account-password-panel h3{margin:0 0 6px;font-size:20px;letter-spacing:-.03em}
.account-actions{margin-top:20px;justify-content:flex-end}
@media(max-width:760px){
  .account-readonly-grid{grid-template-columns:1fr}
  .account-title-row{flex-direction:column}
  .account-readonly-badges,.account-actions{width:100%;justify-content:stretch}
  .account-actions .button{width:100%;text-align:center;justify-content:center}
}

/* Account page layout alignment with shared app pages */
.account-page-wrap .account-card{
  background:rgba(255,255,255,.94);
  border:1px solid rgba(15,23,42,.08);
  border-radius:26px;
  box-shadow:0 18px 48px rgba(15,23,42,.08);
  padding:24px;
}
.account-page-wrap .account-title-row{
  margin:0 0 18px;
  padding:0 0 16px;
  background:transparent;
  border:0;
  border-bottom:1px solid rgba(226,232,240,.9);
  border-radius:0;
  box-shadow:none;
}
.account-page-wrap .account-title-row h2{
  font-size:26px;
  font-weight:950;
  letter-spacing:-.045em;
  color:#0f172a;
}
.account-page-wrap .account-form label{
  color:#0f172a;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.055em;
}
.account-page-wrap .account-form input,
.account-page-wrap .account-form select,
.account-page-wrap .account-form textarea{
  border-radius:14px;
  background:#fff;
  border-color:#dbe4ef;
}
.account-page-wrap .account-readonly-grid>div{
  background:linear-gradient(180deg,#ffffff,#f8fafc);
  border-color:rgba(15,23,42,.08);
  box-shadow:0 8px 20px rgba(15,23,42,.04);
}
.account-page-wrap .account-password-panel{
  background:linear-gradient(135deg,#f0fdf4,#ffffff 54%,#ecfeff);
  border:1px solid rgba(16,185,129,.22);
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}
.account-page-wrap .account-actions{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}


.login-check-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 10px 0 16px;
  color: #14532d;
  font-weight: 700;
  font-size: 0.95rem;
  text-shadow: none;
}
.login-check-row input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: #16a34a;
  flex: 0 0 auto;
}

/* High-tech Review Image preview/admin */
.review-image-thumb{position:relative;overflow:hidden;background:#020617!important}
.review-image-thumb img{width:100%;height:100%;object-fit:cover}
.review-thumb-overlay{position:absolute;left:8px;right:8px;bottom:8px;background:rgba(0,0,0,.62);color:#fff;border-radius:10px;padding:7px 8px;line-height:1.1}
.review-thumb-overlay strong{display:block;color:#facc15;font-size:15px;letter-spacing:.05em}
.review-thumb-overlay small{color:#e5e7eb;font-weight:800}
.review-image-thumb-fallback strong{color:#facc15;font-size:24px;letter-spacing:.05em}
.pdd-slide-preview-stage .review-image-slide{width:100%;height:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 80% 20%,rgba(34,197,94,.28),transparent 34%),linear-gradient(135deg,#020617 0%,#07111f 48%,#020617 100%);overflow:hidden;padding:18px}
.pdd-slide-preview-stage .review-image-card{position:relative;width:100%;height:100%;border:3px solid var(--pdd-review-accent,#55e52f);border-radius:22px;box-shadow:0 0 24px rgba(85,229,47,.34);background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.72) 48%,rgba(0,0,0,.30) 100%);display:grid;grid-template-columns:.92fr 1.08fr;overflow:hidden}
.pdd-slide-preview-stage .review-image-photo-wrap{position:relative;min-width:0;margin:14px;border:2px solid var(--pdd-review-accent,#55e52f);border-radius:18px;overflow:hidden;background:#020617}
.pdd-slide-preview-stage .review-image-photo{height:100%;width:100%;min-width:100%;min-height:100%;object-fit:cover;object-position:center top;display:block}
.pdd-slide-preview-stage .review-image-photo-wrap:after{display:none;content:none}
.pdd-slide-preview-stage .review-image-person-overlay{position:absolute;z-index:3;top:26px;right:20px;max-width:60%;padding:8px 12px;border-radius:12px;background:linear-gradient(90deg,rgba(0,0,0,.22),rgba(0,0,0,.58));text-align:right;text-shadow:0 2px 10px rgba(0,0,0,.9)}
.pdd-slide-preview-stage .review-image-copy{padding:24px 34px 30px 20px;display:flex;flex-direction:column;justify-content:center;min-width:0;overflow:hidden}
.pdd-slide-preview-stage .review-image-stars{color:#facc15;font-size:24px;letter-spacing:.08em;line-height:1;margin-bottom:14px;white-space:nowrap}
.pdd-slide-preview-stage .review-image-quote{color:#fff;font-weight:900;line-height:1.18;letter-spacing:-.025em;font-size:clamp(18px,2.8vw,38px);max-height:72%;overflow:hidden;overflow-wrap:break-word;word-break:normal}
.pdd-slide-preview-stage .review-image-open-quote,.pdd-slide-preview-stage .review-image-close-quote{color:var(--pdd-review-accent,#55e52f);font-weight:950;font-size:1.35em;line-height:0;vertical-align:-.16em}
.pdd-slide-preview-stage .review-image-name{color:var(--pdd-review-accent,#67e83b);font-weight:950;font-size:24px;line-height:1;white-space:normal;overflow-wrap:break-word}
.pdd-slide-preview-stage .review-image-business{color:#fff;font-weight:800;font-size:15px;margin-top:4px;line-height:1.05;white-space:normal;overflow-wrap:break-word}
.pdd-slide-preview-stage .review-image-photo-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:80px;color:#facc15;background:#020617}

@media(max-width:760px){.pdd-slide-preview-stage .review-image-card{grid-template-columns:.92fr 1.08fr}.pdd-slide-preview-stage .review-image-photo-wrap{margin:12px}.pdd-slide-preview-stage .review-image-copy{padding:18px}.pdd-slide-preview-stage .review-image-stars{font-size:22px;margin-bottom:14px}.pdd-slide-preview-stage .review-image-quote{font-size:22px}.pdd-slide-preview-stage .review-image-name{font-size:16px}.pdd-slide-preview-stage .review-image-business{font-size:12px}.pdd-slide-preview-stage .review-image-person-overlay{top:12px;right:10px;max-width:70%}}


/* Review Image preview tuning: match player behavior. */
.pdd-slide-preview-stage .review-image-photo-wrap{align-self:stretch;height:auto;}
.pdd-slide-preview-stage .review-image-photo{width:100%;height:100%;object-fit:cover;object-position:center top;max-width:none;}

/* Review Image photo alignment: fill height, preserve ratio, crop overflow from the sides, anchor image to top */
.review-image-photo,
.pdd-slide-preview-stage .review-image-photo{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center top !important;
  max-width:none !important;
  max-height:none !important;
  display:block !important;
}
.review-image-photo-wrap,
.pdd-slide-preview-stage .review-image-photo-wrap{
  overflow:hidden !important;
}


/* Text/Review preview light and dark mode */
.pdd-slide-preview-stage .review-slide-light{background:#fff!important;}
.pdd-slide-preview-stage .review-slide-light .review-bubble{background:#fff!important;color:#050505!important;box-shadow:none!important;}
.pdd-slide-preview-stage .review-slide-light .review-bubble-content{color:#050505!important;}
.pdd-slide-preview-stage .review-slide-light .reviewer-name{color:#111827!important;}
.pdd-slide-preview-stage .review-slide-dark{background:#000!important;}
.pdd-slide-preview-stage .review-slide-dark .review-bubble{background:#000!important;color:#fff!important;box-shadow:none!important;}
.pdd-slide-preview-stage .review-slide-dark .review-bubble-content{color:#fff!important;}
.pdd-slide-preview-stage .review-slide-dark .reviewer-name{color:#fff!important;}

/* Review Image accent colors: keep main review text white; only accents use selected color. */
.review-image-quote,
.pdd-slide-preview-stage .review-image-quote{
  color:#fff !important;
}
.review-image-open-quote,
.review-image-close-quote,
.pdd-slide-preview-stage .review-image-open-quote,
.pdd-slide-preview-stage .review-image-close-quote,
.review-image-name,
.pdd-slide-preview-stage .review-image-name{
  color:var(--pdd-review-accent,#55e52f) !important;
}

.login-help a{color:#166534;font-weight:800;text-decoration:none}.login-help a:hover{text-decoration:underline}
