/* ============================================================
   GEORGE reskin - full design overlay for the REAL clone app (/).
   Loaded last; keeps all functionality, restyles every page.
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700;800;900&family=Abril+Fatface&family=Open+Sans:wght@400;500;600;700&display=swap');

:root{
  --gn:#092b51; --gnd:#061d38; --gr:#d80314; --grd:#b00210;
  --gg:#c9a84c; --gcream:#f6f6f7; --gmut:#7a7a7a; --gline:#e6e7eb; --gink:#141414;
  --gtext:#092b51;   /* heading/body text; --gn stays the navy SURFACE colour */
}

/* ---------- Typography ---------- */
body,.fe,p,span,div,li,td,th,label,input,button,select,textarea,a,small{font-family:'Open Sans',system-ui,-apple-system,sans-serif;}
h1,h2,h3,h4,h5,
.vs-column h3,.vs-column h3 a,.caption h3,.nav-title,.section-title,.page-title,.channel-title,
.title,.video-title,.entry-title,.block-title,.widget-title,.panel-title,.box-title,.modal-title{
  font-family:'Playfair Display',Georgia,serif !important;letter-spacing:-.01em;}
body{background:#fff;color:var(--gink);-webkit-font-smoothing:antialiased;}

/* ---------- Links & accents ---------- */
a{color:var(--gink);}
a:hover{color:var(--gr);}
.text-primary,.text-danger,.red,.link-red{color:var(--gr) !important;}

/* ---------- Buttons ---------- */
.btn,button,input[type="submit"],input[type="button"],.button,.vs-btn{
  border-radius:2px !important;font-family:'Open Sans',sans-serif !important;
  font-weight:700 !important;letter-spacing:.05em;text-transform:uppercase;}
.btn-primary,.btn-danger,.btn-red,.btn.red,.btn-subscribe,.subscribe,.subscribe-btn,.follow-btn,
.btn-success,.bg-primary,.uploadbtn,.btn-upload,.vs-btn-red{
  background:var(--gr) !important;border-color:var(--gr) !important;color:#fff !important;}
.btn-primary:hover,.btn-danger:hover,.subscribe:hover,.btn-success:hover{background:var(--grd) !important;}
.btn-default,.btn-outline,.btn-secondary,.btn-light{
  border:1.5px solid var(--gn) !important;color:var(--gtext) !important;background:#fff !important;}
.btn-default:hover,.btn-secondary:hover{background:var(--gn) !important;color:#fff !important;}
.btn-navy,.btn-info{background:var(--gn) !important;border-color:var(--gn) !important;color:#fff !important;}

/* ---------- Forms / inputs (auth, upload, account, search) ---------- */
input[type="text"],input[type="email"],input[type="password"],input[type="search"],input[type="number"],
input[type="url"],textarea,select,.form-control,.input,.vs-input{
  border:1px solid var(--gline) !important;border-radius:3px !important;background:#fff !important;
  color:var(--gink) !important;font-family:'Open Sans',sans-serif !important;}
input:focus,textarea:focus,select:focus,.form-control:focus{
  border-color:var(--gn) !important;box-shadow:0 0 0 3px rgba(9,43,81,.08) !important;outline:none;}
label,.control-label,.field-label{font-weight:600;color:var(--gtext);}

/* ---------- Header / masthead ---------- */
#main_header{background:#fff !important;border-bottom:none !important;box-shadow:0 1px 0 rgba(9,43,81,.06);position:relative;}
#main_header::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;
  background:linear-gradient(90deg,var(--gn) 0 33%,var(--gr) 33% 66%,var(--gg) 66% 100%);}
#ct-header-top,#ct-header-bottom{background:#fff !important;}
#logo_container{text-align:center;}

/* top / category nav */
#sub-nav-bar,#main-menu,.main-nav,#ct-header-bottom ul,.top-nav{background:transparent !important;}
#sub-nav-bar li a,#main-menu>li>a,.main-nav a,.menu-item a,#ct-header-bottom a,.top-nav a{
  font-family:'Open Sans',sans-serif !important;font-weight:700 !important;
  letter-spacing:.11em;text-transform:uppercase;color:var(--gtext) !important;font-size:12.5px !important;}
#sub-nav-bar li a:hover,#main-menu>li>a:hover,#sub-nav-bar li.active a,#main-menu>li.active>a,.top-nav a.active{color:var(--gr) !important;}

/* search */
.top-search-form-wrap input,.sb-search-input,input.search,.search-input{border-radius:24px !important;}
.top-search-form-wrap button,.search-btn,.sb-icon-search{background:var(--gr) !important;color:#fff !important;}

/* ---------- Left sidebar (member menu) ---------- */
.nav-title,.sidebar h4,.widget-title,.block-title,.side-title{color:var(--gtext) !important;font-family:'Playfair Display',serif !important;}
.sidebar a,.side-menu a,.accordion a,.leftnav a{color:var(--gink) !important;}
.sidebar .active>a,.accordion .active>a,.side-menu .active a,.leftnav .active a{color:var(--gr) !important;font-weight:700;}
.sidebar li:hover>a{color:var(--gr) !important;}

/* ---------- Video / channel cards ---------- */
.thumbs-wrapper figure,.mediaThumb,.thumbs-wrapper img,figure.effect-smallT,.thumb img,.thumbnail img{border-radius:4px !important;}
.vs-column h3,.vs-column h3 a,.file-title,.file-title a,.caption h3 a{
  font-family:'Playfair Display',serif !important;font-weight:800 !important;
  color:var(--gtext) !important;font-size:16px !important;line-height:1.25 !important;}
.vs-column h3 a:hover,.file-title a:hover{color:var(--gr) !important;}
.channel_name,.channel_name a,.caption .by,.uploader,.author,.username{color:var(--gmut) !important;font-weight:600;}
.views-number,.caption span,.time-ago,.date,.meta,.file-meta{color:var(--gmut) !important;}
.caption-more .time-lenght,.duration,.time-lenght,.video-time{background:rgba(6,20,40,.85) !important;border-radius:3px !important;color:#fff !important;}

/* ---------- Watch page ---------- */
.viewpage-title h1,.video-detail h1,.watch-title,.file-view-title{font-family:'Playfair Display',serif !important;color:var(--gtext) !important;}
.video-actions .btn,.viewpage-actions a,.action-buttons a{color:var(--gtext) !important;}
.subscribe-count,.subscriber-count,.view-count{color:var(--gmut) !important;}
.up-next-title,.related-title,.suggested-title{font-family:'Playfair Display',serif !important;color:var(--gtext) !important;}

/* ---------- Tabs / active indicators -> red ---------- */
.tabs-style-topline .tab-current a::after,.nav-tabs .active a,.active-tab,.tab.active,.ui-tabs-active a,.tab-current a{
  border-color:var(--gr) !important;color:var(--gr) !important;}
.nav-tabs>li.active>a{border-top:3px solid var(--gr) !important;color:var(--gr) !important;}

/* ---------- Tables / panels / boxes ---------- */
.panel,.box,.widget,.card,.well,.dashboard-box,.vs-box{border-radius:4px !important;border-color:var(--gline) !important;}
.panel-heading,.box-header,.widget-header{background:#fff !important;border-bottom:1px solid var(--gline) !important;}
table th{color:var(--gtext) !important;}
.table>thead>tr>th{border-bottom:2px solid var(--gn) !important;}

/* ---------- Pagination ---------- */
.pagination>li>a,.pagination>li>span,.pager a,.paging a{color:var(--gtext) !important;border-color:var(--gline) !important;border-radius:2px !important;}
.pagination>.active>a,.pager .active a,.paging .current{background:var(--gr) !important;border-color:var(--gr) !important;color:#fff !important;}

/* ---------- Footer ---------- */
#footer,footer,.footer,#ct-footer,.site-footer,.footer-wrap{background:var(--gn) !important;color:#c7d3e4 !important;}
#footer a,footer a,.footer a{color:#c7d3e4 !important;}
#footer a:hover,footer a:hover{color:#fff !important;}
#footer h4,footer h4,.footer h4{color:var(--gg) !important;font-family:'Playfair Display',serif !important;}

/* ---------- Misc accents ---------- */
.badge,.label-primary,.tag,.pill{background:var(--gr) !important;color:#fff !important;}
.progress-bar,.bar-fill{background:var(--gr) !important;}
::selection{background:var(--gr);color:#fff;}

/* ============================================================
   G3 - deep reskin of the REAL app pages that fall through to
   ViewShark's own templates (register, signin, recovery,
   my-account, upload, messages, tokens). Structure classes:
   #main_header / #ct-header-top / #ct-header-bottom /
   .outer-border-wrapper / .inner-wrapper / .user-form / .row /
   .label-signin / .input-signin / .search-button / #membership-wrapper
   ============================================================ */

/* ---- page ground ---- */
body.fe{background:var(--gcream) !important;color:var(--gink) !important;}
#wrapper,.container.container_wrapper,.inner-block,#siteContent,.content-wrap{background:transparent !important;}

/* ---- masthead: centered logo + tricolor rule (matches magazine header) ---- */
#main_header{background:#fff !important;box-shadow:0 1px 0 rgba(9,43,81,.06) !important;}
#ct-header-top{background:#fff !important;padding:14px 0 10px !important;border:none !important;}
#logo_container{float:none !important;text-align:center !important;margin:0 auto !important;display:block !important;}
#logo_container img{height:64px !important;width:auto !important;display:inline-block !important;}
#ct-header-bottom{background:#fff !important;border-top:1px solid var(--gline) !important;border-bottom:none !important;}
#main_header::after{content:"";display:block;height:3px;
  background:linear-gradient(90deg,var(--gn) 0 33.33%,var(--gr) 33.33% 66.66%,var(--gg) 66.66% 100%);}
#ct-header-bottom nav a,#ct-header-bottom .menu a,#ct-header-bottom li a{
  font-family:'Open Sans',sans-serif !important;font-weight:700 !important;letter-spacing:.11em !important;
  text-transform:uppercase !important;font-size:12px !important;color:var(--gtext) !important;}
#ct-header-bottom a:hover{color:var(--gr) !important;}

/* ---- centered content card (auth / promo / generic panels) ---- */
.content-wrap{max-width:1180px;margin:26px auto !important;padding:0 20px !important;}
.outer-border-wrapper{background:#fff !important;border:1px solid var(--gline) !important;
  border-radius:6px !important;box-shadow:0 10px 40px rgba(9,43,81,.07) !important;
  padding:0 !important;margin:0 0 26px !important;overflow:hidden;}
.outer-border-wrapper .inner-wrapper{padding:30px 34px !important;}
section.content-current{max-width:560px;margin:0 auto !important;}
.tpl_files section.content-current,.tpl_upload section.content-current,
.tpl_account section.content-current,.tpl_messages section.content-current{max-width:none;}

/* section / card titles -> Playfair with red underline */
.content-title{font-family:'Playfair Display',Georgia,serif !important;font-weight:800 !important;
  font-size:26px !important;color:var(--gtext) !important;letter-spacing:-.01em !important;
  margin:0 0 4px !important;padding:0 !important;}
.content-title i{color:var(--gr) !important;}
.outer-border-wrapper .line{height:3px !important;width:52px !important;background:var(--gr) !important;
  border:none !important;margin:8px 0 22px !important;border-radius:2px;}

/* ---- form rows ---- */
.user-form .row,.entry-form-class .row{display:block;margin-bottom:16px !important;}
.user-form .row.no-top-padding{margin-bottom:6px !important;}
.label-signin,.label-signup{display:block !important;float:none !important;width:auto !important;
  font-family:'Open Sans',sans-serif !important;font-weight:700 !important;font-size:11px !important;
  letter-spacing:.09em !important;text-transform:uppercase !important;color:var(--gtext) !important;
  margin-bottom:7px !important;text-align:left !important;}
.input-signin,.input-signup{display:block !important;float:none !important;width:100% !important;}
.user-form input.text-input,.user-form input.login-input,.entry-form-class input.text-input,
.input-signin input,.input-signup input{
  width:100% !important;box-sizing:border-box !important;height:46px !important;
  padding:0 14px !important;font-size:15px !important;border:1px solid var(--gline) !important;
  border-radius:4px !important;background:#fff !important;}
.user-form input:focus,.input-signin input:focus{border-color:var(--gn) !important;
  box-shadow:0 0 0 3px rgba(9,43,81,.08) !important;}
#check-response{font-size:12px;margin-left:8px;}

/* password strength meter */
#pass_meter{height:6px !important;border-radius:3px !important;background:var(--gline) !important;overflow:hidden;}
#pass_meter .pass_meter_base{background:var(--gr) !important;}

/* ---- primary submit ---- */
.row.form-buttons{margin-top:22px !important;}
.search-button.form-button,button.form-button,.apply-button{
  width:100% !important;height:48px !important;background:var(--gr) !important;border:none !important;
  color:#fff !important;font-family:'Open Sans',sans-serif !important;font-weight:700 !important;
  letter-spacing:.09em !important;text-transform:uppercase !important;font-size:13px !important;
  border-radius:4px !important;cursor:pointer !important;}
.search-button.form-button:hover,button.form-button:hover{background:var(--grd) !important;}
.hr{position:relative;text-align:center;margin:20px 0 16px;border-top:1px solid var(--gline);}
.hr .inner{position:relative;top:-11px;background:#fff;padding:0 12px;color:var(--gmut);
  font-size:11px;letter-spacing:.12em;text-transform:uppercase;}

/* ---- social auth buttons (fb / google) ---- */
.fb-login,.gp-login,.fb-register,.gp-register,a.facebook,a.google,.btn-facebook,.btn-google{
  display:inline-flex !important;align-items:center;justify-content:center;gap:8px;
  height:44px;border-radius:4px !important;font-weight:700 !important;margin:5px 0 !important;width:100%;}

/* ---- membership packages (paid signup) as cards ---- */
#membership-wrapper{display:flex !important;flex-wrap:wrap;gap:12px;margin:6px 0 4px;}
#membership-wrapper label,.membership-pack,.pack-item{flex:1 1 150px;border:1px solid var(--gline) !important;
  border-radius:6px !important;padding:14px !important;background:#fff !important;cursor:pointer;transition:.15s;}
#membership-wrapper label:hover,.membership-pack:hover{border-color:var(--gn) !important;box-shadow:0 6px 20px rgba(9,43,81,.08);}
.membership-pack .price,.pack-price{font-family:'Playfair Display',serif !important;color:var(--gr) !important;font-weight:800;}

/* ---- captcha centered ---- */
.captcha-row{margin:14px 0 !important;}
.captcha-row .input-signin,.g-recaptcha{margin:0 auto;}

/* ---- right promo / info box ---- */
.outer-border-wrapper.info-promo{background:var(--gn) !important;color:#dbe4f1 !important;border:none !important;}
.info-promo .content-title,.info-promo h1,.info-promo h2,.info-promo h3{color:#fff !important;}
.info-promo a{color:var(--gg) !important;}

/* ---- account / dashboard panels & tables (my-account, tokens, upload) ---- */
.tpl_account .outer-border-wrapper,.tpl_upload .outer-border-wrapper,.tpl_messages .outer-border-wrapper{max-width:none;}
.dynamic_container .box,.panel,.widget,.dashboard-box{border:1px solid var(--gline) !important;border-radius:6px !important;background:#fff !important;}
.settings-menu a,.account-menu a,.tab-menu a{font-weight:600 !important;color:var(--gtext) !important;}
.settings-menu .active a,.tab-menu .active a{color:var(--gr) !important;}

/* ---- left/right sidebar categories on app pages ---- */
.sidebar-container .categories-container{background:#fff !important;border:1px solid var(--gline) !important;
  border-radius:6px !important;margin-bottom:14px;}
.sidebar-container .categories-container .title,.categories-container h4{
  font-family:'Playfair Display',serif !important;color:var(--gtext) !important;}
.sidebar-container a{color:var(--gink) !important;}
.sidebar-container a:hover{color:var(--gr) !important;}

/* ---- upload dropzone ---- */
.upload-area,.dropzone,#dropzone,.uploader-box,.file-drop{border:2px dashed var(--gn) !important;
  border-radius:8px !important;background:var(--gcream) !important;}
.upload-area:hover,.dropzone:hover{border-color:var(--gr) !important;}

/* ---- notices / errors on app forms ---- */
.notice,.notification,.alert-success,.success-message{background:#eaf5ec !important;border:1px solid #bfe0c6 !important;
  color:#1e6b34 !important;border-radius:4px !important;padding:11px 14px !important;}
.error,.alert-danger,.error-message,.warning{background:#fdecec !important;border:1px solid #f3c2c2 !important;
  color:#a11 !important;border-radius:4px !important;padding:11px 14px !important;}

/* ============================================================
   G11 - Account & member-area content (My Account, Upload, Messages,
   Tokens): restyle ViewShark's own account templates so the pages
   match the new design while keeping every form/handler intact.
   Classes: .categories-container/.accordion/.menu-panel-entry (left tabs),
   #ct-wrapper/.entry-form-class/.overview-form, .vs-column, .statsBox,
   .user-thumb-xlarge, generate_html outputs, .save-entry-button etc.
   ============================================================ */

/* ---- left account/member tab menu ---- */
.categories-container{background:#fff !important;border:1px solid var(--gline) !important;border-radius:6px !important;
  overflow:hidden;margin-bottom:16px}
.categories-container h4,.categories-container .nav-title,.blue .categories-menu-title,.categories-container .categories-menu-title{
  background:var(--gn) !important;color:#fff !important;
  font-family:'Playfair Display',serif !important;font-size:16px !important;font-weight:800 !important;
  margin:0 !important;padding:14px 16px !important;display:flex;align-items:center;gap:8px}
.categories-container h4 i,.categories-container .nav-title i,.categories-container .categories-menu-title i{color:var(--gg) !important;float:none !important}
.categories-container .accordion{margin:0 !important;padding:6px 0 !important;list-style:none}
.menu-panel-entry{list-style:none}
.menu-panel-entry>a{display:flex !important;align-items:center;gap:10px;padding:12px 18px !important;
  font-family:'Open Sans',sans-serif !important;font-weight:600 !important;font-size:13.5px !important;
  color:var(--gink) !important;border-left:3px solid transparent !important;text-decoration:none !important}
.menu-panel-entry>a i{color:var(--gtext) !important;font-size:15px}
.menu-panel-entry>a:hover{background:var(--gcream) !important;color:var(--gr) !important}
.menu-panel-entry-active>a,.menu-panel-entry.active>a{background:#fbeced !important;color:var(--gr) !important;
  border-left-color:var(--gr) !important}
.menu-panel-entry-active>a i,.menu-panel-entry.active>a i{color:var(--gr) !important}

/* ---- content card wrapper ---- */
#ct-wrapper,#siteContent .entry-form-class,.overview-form{background:#fff !important;border:1px solid var(--gline) !important;
  border-radius:6px !important;padding:26px 28px !important;box-shadow:0 6px 24px rgba(9,43,81,.05) !important;margin-bottom:20px}
#ct-wrapper .content-title,.overview-form .content-title{margin-top:0 !important}

/* ---- generated form columns ---- */
.vs-column{box-sizing:border-box}
.vs-column.half{width:50% !important;float:left;padding-right:22px}
.vs-column.half.fit{padding-right:0;padding-left:22px}
.vs-column.fourths{width:26% !important;float:left;padding-right:22px}
.vs-column.three_fourths{width:74% !important;float:left}
.vs-column.full{width:100% !important;float:none}
@media(max-width:760px){.vs-column,.vs-column.half,.vs-column.fourths,.vs-column.three_fourths{width:100% !important;float:none;padding:0}}

/* form rows inside account/settings */
#ct-wrapper .row,.entry-form-class .row{margin-bottom:14px !important}
#ct-wrapper label,.entry-form-class label{font-family:'Open Sans',sans-serif !important;font-weight:700 !important;
  font-size:11px !important;letter-spacing:.08em !important;text-transform:uppercase !important;color:var(--gtext) !important}
.login-input,.ta-input,#ct-wrapper input[type="text"],#ct-wrapper input[type="password"],#ct-wrapper input[type="email"],
#ct-wrapper textarea,.entry-form-class input,.entry-form-class textarea{
  border:1px solid var(--gline) !important;border-radius:4px !important;padding:10px 12px !important;
  font-size:14px !important;background:#fff !important;max-width:100% !important;box-sizing:border-box}
.ta-input,#ct-wrapper textarea{min-height:90px !important;width:100% !important}
.grayText{color:var(--gmut) !important;font-weight:600}
.pinfo{background:var(--gcream) !important;border:1px solid var(--gline) !important;border-left:3px solid var(--gg) !important;
  border-radius:4px !important;padding:12px 14px !important;margin:8px 0 !important}
.pinfo p{font-size:13px !important;color:var(--gmut) !important;line-height:1.6}

/* ---- account buttons ---- */
.save-entry-button,.change-button,.purge-button,.new-image,.usr-delete,.new-upload,.new-contact,.new-message-button,.rename-label{
  background:var(--gr) !important;border:none !important;color:#fff !important;border-radius:4px !important;
  font-family:'Open Sans',sans-serif !important;font-weight:700 !important;letter-spacing:.06em !important;
  text-transform:uppercase !important;font-size:12px !important;padding:11px 20px !important;cursor:pointer !important}
.save-entry-button:hover,.change-button:hover{background:var(--grd) !important}
.purge-button,.usr-delete{background:#8a1a2a !important}
.purge-button:hover,.usr-delete:hover{background:#6f1522 !important}

/* ---- overview profile card ---- */
.statsBox,#overview-userinfo{background:var(--gcream) !important;border:1px solid var(--gline) !important;
  border-radius:6px !important;padding:16px 18px !important}
.statsBox li,#overview-userinfo li{color:var(--gink) !important}
.user-thumb-xlarge,#own-profile-image img{border-radius:8px !important;border:1px solid var(--gline) !important;
  box-shadow:0 6px 20px rgba(9,43,81,.08) !important}
.imageChange a,.new-image{margin-top:10px !important}

/* ---- accordion open/close chevrons cleanup ---- */
.dcjq-icon{filter:none !important}

/* ============================================================
   G12 - Upload (plupload widget) + Message Center reskin.
   Keeps the working plupload chunked uploader and messaging
   handlers intact; only restyles them to the new design.
   ============================================================ */

/* ---- Upload: page wrapper + drop area ---- */
#upload-wrapper,#dobrowse{margin-top:6px}
.plupload_wrapper{font-family:'Open Sans',sans-serif !important;max-width:100% !important}
.plupload_container{background:#fff !important;border:1px solid var(--gline) !important;border-radius:8px !important;
  padding:0 !important;box-shadow:0 6px 24px rgba(9,43,81,.05) !important;overflow:hidden}
.plupload_header{background:var(--gn) !important;border:none !important;border-radius:0 !important;position:relative}
.plupload_header::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;
  background:linear-gradient(90deg,var(--gn) 0 33.33%,var(--gr) 33.33% 66.66%,var(--gg) 66.66% 100%)}
.plupload_header_content{background:none !important;color:#fff !important;padding:16px 20px !important}
.plupload_header_title{font-family:'Playfair Display',serif !important;color:#fff !important;font-size:20px !important;font-weight:800 !important}
.plupload_header_text{color:#c7d3e4 !important}
.plupload_filelist_header,.plupload_filelist_footer{background:var(--gcream) !important;
  border-color:var(--gline) !important;color:var(--gtext) !important;font-weight:700 !important;font-size:12px !important;
  text-transform:uppercase;letter-spacing:.06em}
.plupload_filelist,.plupload_scroll .plupload_filelist{background:#fff !important}
.plupload_filelist li{border-color:var(--gline) !important}
.plupload_file_name{color:var(--gink) !important}
.plupload_file_size,.plupload_total_file_size,.plupload_total_status{color:var(--gmut) !important}

/* drop hint = dashed magazine dropzone */
.plupload_droptext{background:var(--gcream) !important;color:var(--gmut) !important;
  font-family:'Playfair Display',serif !important;font-style:italic !important;font-size:17px !important;
  border:2px dashed var(--gn) !important;border-radius:8px !important;margin:14px !important;
  display:flex !important;align-items:center;justify-content:center}

/* buttons: Add files / Start upload */
.plupload_button,.plupload_add,.plupload_start{background:var(--gr) !important;color:#fff !important;
  border:none !important;border-radius:4px !important;font-family:'Open Sans',sans-serif !important;
  font-weight:700 !important;letter-spacing:.06em !important;text-transform:uppercase !important;
  font-size:12px !important;padding:9px 18px !important;text-shadow:none !important;background-image:none !important}
.plupload_button:hover{background:var(--grd) !important}
.plupload_start,a.plupload_start{background:var(--gn) !important}
.plupload_start:hover{background:var(--gnd) !important}
.plupload_disabled,.plupload_add.plupload_disabled{background:#b9bec7 !important;color:#fff !important}

/* progress bars in red */
.plupload_progress_container{background:var(--gline) !important;border-radius:4px !important}
.plupload_progress_bar{background:var(--gr) !important}
.plupload_file_status .plupload_progress_bar{background:var(--gr) !important}

/* per-file metadata form (title / desc / tags / category after upload) */
.c-entry-form-edit .row,.c-entry-form-edit label{margin-bottom:8px}
.c-entry-form-edit .login-input,.c-entry-form-edit textarea,.c-entry-form-edit input[type="text"]{
  border:1px solid var(--gline) !important;border-radius:4px !important;padding:9px 12px !important;width:100% !important;box-sizing:border-box}

/* upload media-type icons row */
.icon.icon-video,.icon.icon-image,.icon.icon-audio,.icon.icon-file{color:var(--gtext) !important}

/* ---- Message Center ---- */
.entry-list.tpl-messages{background:#fff !important;border:1px solid var(--gline) !important;border-radius:8px !important;overflow:hidden}
.entry-list.tpl-messages li,.entry-list.tpl-messages .entry-row{border-bottom:1px solid var(--gline) !important;
  padding:12px 16px !important;transition:background .12s}
.entry-list.tpl-messages li:hover{background:var(--gcream) !important}
.entry-list.tpl-messages .unread,.entry-list.tpl-messages li.unread{font-weight:700 !important;background:#fbfbfd !important}
.section-top-bar.button-actions{background:var(--gcream) !important;border:1px solid var(--gline) !important;
  border-radius:6px !important;padding:10px 14px !important;margin-bottom:14px}
.compose-right-label,.compose-right-reply{color:var(--gtext) !important;font-weight:600 !important}
.new-message-button{background:var(--gr) !important}
.new-message-button:hover{background:var(--grd) !important}

/* ============================================================
   G13 - Tokens dashboard (buy / donate / earnings). Payment flow
   (PayPal/Stripe handlers) untouched; only the visuals restyled.
   ============================================================ */
.icon-coin{color:var(--gg) !important}
.vs-column.thirds{width:33.33% !important;float:left;padding-right:20px;box-sizing:border-box}
.vs-column.thirds:last-child{padding-right:0}
@media(max-width:760px){.vs-column.thirds{width:100% !important;float:none;padding-right:0}}
/* token amount / coin figures */
.coin,.token-amount,.tk-amount,.state-text{font-family:'Playfair Display',serif !important;color:var(--gtext) !important}
.coin .icon-coin,.token-amount .icon-coin{color:var(--gg) !important}
.stats,.statsBox{background:var(--gcream) !important;border:1px solid var(--gline) !important;border-radius:6px !important;padding:16px 18px !important}
.stats .label,.statsBox .label{font-size:11px !important;letter-spacing:.07em !important;text-transform:uppercase !important;color:var(--gmut) !important;font-weight:700}
/* token level bars / graph legend */
.dm-wrap{border:1px solid var(--gline) !important;border-radius:6px !important;background:#fff !important;padding:14px !important}
.l1{color:var(--gr) !important}.l2{color:var(--gg) !important}.l3{color:var(--gtext) !important}
/* buy / donate buttons + paypal/stripe submit */
.buy-tokens,.donate-tokens,.token-buy,.token-donate,input[type="image"][name="submit"],
.paypal-button,.stripe-button,button.buy,button.donate{
  background:var(--gr) !important;color:#fff !important;border:none !important;border-radius:4px !important;
  font-weight:700 !important;letter-spacing:.06em !important;text-transform:uppercase !important;padding:11px 20px !important}
.buy-tokens:hover,.donate-tokens:hover{background:var(--grd) !important}
/* token graphs container */
#tokengraph,.tokengraph,.token-graph,.chart-wrap{background:#fff !important;border:1px solid var(--gline) !important;border-radius:6px !important;padding:14px !important}

/* ============================================================
   G16 - Edit Video (owner) + Import / "Grab Videos" polish.
   Uses the app's own working save/thumbnail/import handlers;
   only the edit-specific visuals are restyled.
   ============================================================ */
/* back link */
.edit-back{display:inline-flex;align-items:center;gap:6px;color:var(--gr) !important;font-weight:700 !important;
  font-size:12px !important;letter-spacing:.06em;text-transform:uppercase;margin:4px 0 10px}
/* custom select dropdowns (privacy / category) */
.selector,.selector.fe{border:1px solid var(--gline) !important;border-radius:4px !important;background:#fff !important}
.selector .selector-title,.selector .current{color:var(--gink) !important}
/* thumbnail chooser grid */
.mediaThumb{border-radius:4px !important;border:2px solid transparent !important;overflow:hidden;transition:.12s}
.mediaThumb:hover{border-color:var(--gn) !important}
.mediaThumb.active,.mediaThumb.selected,.thumb-selected .mediaThumb{border-color:var(--gr) !important}
.thumb-popup,.thumb-preview{border:1px solid var(--gline) !important;border-radius:6px !important;background:#fff !important}
.save-button.button-blue,.thumb-popup.save-button{background:var(--gn) !important;color:#fff !important;border:none !important}
.save-button.button-blue:hover{background:var(--gnd) !important}
.icon-thumbs,.icon-thumbs-up{color:var(--gg) !important}
/* privacy / toggle switches on edit page */
.on-off-switch .switch-on,.toggle.on{background:var(--gr) !important}
/* ---- Import / Grab Videos feed list ---- */
.import-feed,.feed-list,.yt-feed,.import-results{background:#fff !important;border:1px solid var(--gline) !important;border-radius:6px !important}
.import-feed li,.feed-list li{border-bottom:1px solid var(--gline) !important;padding:10px 14px !important}
.import-button,.grab-button,.feed-import,.btn-import{background:var(--gr) !important;color:#fff !important;border:none !important;
  border-radius:4px !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:.05em !important;padding:9px 16px !important}
.import-button:hover,.grab-button:hover{background:var(--grd) !important}

/* ============================================================
   G42 - App-header parity: make fall-through app pages (Upload,
   Messages, and any other ViewShark template) wear the American
   Pulse masthead instead of the leftover cyan ViewShark logo, and
   drop the app-only header clutter so the chrome matches the
   redesigned custom pages. Cosmetic only; all handlers untouched.
   ============================================================ */

/* American Pulse logo in the app header (override every theme's cyan #logo) */
#logo,
header#main_header a#logo,
header#main_header.smaller a#logo,
a.navbar-brand#logo{
  background:url("../img/logo-header.png") no-repeat center center transparent !important;
  background-size:contain !important;
  width:210px !important;height:54px !important;
  float:none !important;display:inline-block !important;margin:4px auto !important;}
#logo_container{display:flex !important;align-items:center;justify-content:center;gap:10px;}
#logo_container .menu-trigger{color:var(--gtext) !important;}

/* drop app-only header widgets that don't exist in the magazine header */
.theme-switch,#ct-header-top .switch.switch-light,#ct-header-top .switch-label,#ct-header-bottom .switch.switch-light,#ct-header-bottom .switch-label,.top-notif,.top-icon.top-notif{display:none !important;}
/* (was global: it also hid every ON/OFF switch in page content - Channel Modules, account settings; fixed 2026-10-06, G230) */

/* keep the header search compact + on-brand when present */
.top-search-form-wrap{margin:0 !important;}
.top-search-form-wrap input{border:1px solid var(--gline) !important;}

/* generic safety: any remaining app panel/well on fall-through pages */
.well,.dynamic_container,.this-inner{background:#fff !important;border-radius:6px !important;}

/* ============================================================
   G43 - Upload page "Membership Details" + quota bars. This page
   uses the app's custom stats widget (#the-stats / .account-sub /
   .pl / .uProgress / .uBar / .uLabel), NOT plupload, so it was
   unstyled. Restyle it to a clean magazine card with real progress
   bars. (The plupload dropzone itself is styled in G12.)
   ============================================================ */

/* uploader loading placeholder (only while empty / "Loading Upload Panel...") */
#uploader.frontend:empty,#uploader.frontend.loading{min-height:60px;color:var(--gmut) !important;
  font-family:'Playfair Display',serif !important;font-style:italic;font-size:15px;
  display:flex;align-items:center;justify-content:center;
  background:var(--gcream) !important;border:2px dashed var(--gn) !important;border-radius:8px !important;margin-bottom:16px}
/* once the widget has loaded, no wrapping border/box */
#uploader.frontend{border:none !important;background:transparent !important;padding:0 !important;display:block !important}

/* category chooser row */
#upload-category,#options-wrapper{margin:6px 0 14px !important}

/* membership + stats wrapper as one card */
#the-stats{background:#fff !important;border:1px solid var(--gline) !important;border-radius:8px !important;
  padding:22px 24px !important;box-shadow:0 6px 24px rgba(9,43,81,.05) !important;margin-bottom:20px;overflow:hidden}
#the-stats .content-title{margin-top:0 !important}

/* membership headline block */
.account-sub{background:var(--gcream) !important;border:1px solid var(--gline) !important;
  border-left:4px solid var(--gg) !important;border-radius:6px !important;padding:16px 18px !important;margin-bottom:20px !important}
.account-sub>div:first-child{font-family:'Playfair Display',serif !important;font-weight:800 !important;
  font-size:22px !important;color:var(--gtext) !important;letter-spacing:-.01em}
.account-date{margin:8px 0 4px !important;color:var(--gmut) !important;font-size:13px}
.account-date .label{font-weight:700 !important;color:var(--gtext) !important;text-transform:none !important;letter-spacing:0 !important}
.sub-renew,button.sub-renew{background:var(--gn) !important;color:#fff !important;border:none !important;
  border-radius:4px !important;font-family:'Open Sans',sans-serif !important;font-weight:700 !important;
  letter-spacing:.06em !important;text-transform:uppercase !important;font-size:12px !important;padding:11px 20px !important;cursor:pointer}
.sub-renew:hover{background:var(--gnd) !important}

/* quota bars: label + track */
.pl{font-family:'Open Sans',sans-serif !important;font-weight:700 !important;font-size:11px !important;
  letter-spacing:.08em !important;text-transform:uppercase !important;color:var(--gtext) !important;margin:0 0 8px !important;
  display:flex;align-items:center;gap:7px}
.pl i{color:var(--gg) !important;font-size:14px}
.uProgress{position:relative;height:22px !important;background:var(--gline) !important;border-radius:6px !important;
  overflow:hidden;margin-bottom:18px}
.uBar{height:100% !important;background:linear-gradient(90deg,var(--gn),var(--gr)) !important;
  border-radius:6px 0 0 6px !important;min-width:2px;transition:width .4s ease}
.uLabel{position:absolute !important;inset:0;display:flex !important;align-items:center;justify-content:center;
  font-family:'Open Sans',sans-serif !important;font-size:11px !important;font-weight:700 !important;
  color:var(--gink) !important;letter-spacing:.02em;z-index:2}

/* collapse the app's empty spacer half-columns so bars sit together */
.tpl_upload .vs-column.half:empty{display:none !important}

/* "subscription limit reached" notice already covered by .notice/.error; keep it tidy */
#cb-response .notice-message,#notice-message{border-radius:6px !important}

/* ============================================================
   G44 - Upload widget (plupload.queue) full relayout. The stock
   widget is a cramped floated icon-only button column next to a
   small filelist. Stack it full-width: a clean labeled button row
   on top, a progress bar, then a large drop area below.
   ============================================================ */

/* stack every piece full width: kill the .left-float / fixed-width classes inside upload */
.tpl_upload #upload-wrapper,.tpl_upload #upload-wrapper *,
#upload-wrapper .left-float,#upload-wrapper.left-float{float:none !important}
#upload-wrapper,#upload-wrapper.wd960,#upload-wrapper.left-float.wd960{
  width:100% !important;max-width:840px !important;margin:0 auto !important;float:none !important}
#upload-wrapper .left-float.wdmax,.left-float.wdmax{width:100% !important;max-width:100% !important;float:none !important}
.upload-buttons,.upload-buttons.no-categ{float:none !important;margin:0 0 14px !important;
  display:flex !important;gap:10px !important;flex-wrap:wrap;align-items:center;width:100% !important}
#dobrowse{float:none !important;display:flex !important;gap:10px !important;width:auto !important}
.vs-column.half.fit.upload-right-fix,.upload-right-fix,.vs-column.full{width:100% !important;float:none !important;padding:0 !important}
.plupload_wrapper,.plupload_wrapper.plupload_scroll{width:100% !important;float:none !important;clear:both !important}

/* labeled buttons: Add files (red) + Start upload (navy) */
.plupload_button.browse,.plupload_button.plupload_start,a.plupload_button{
  display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:8px !important;
  width:auto !important;min-width:150px !important;height:48px !important;padding:0 22px !important;
  border:none !important;border-radius:6px !important;background-image:none !important;text-shadow:none !important;
  font-family:'Open Sans',sans-serif !important;font-weight:700 !important;letter-spacing:.05em !important;
  text-transform:uppercase !important;font-size:12.5px !important;color:#fff !important;text-decoration:none !important;cursor:pointer !important}
.plupload_button.browse{background:var(--gr) !important}
.plupload_button.browse:hover{background:var(--grd) !important}
.plupload_button.plupload_start{background:var(--gn) !important}
.plupload_button.plupload_start:hover{background:var(--gnd) !important}
.plupload_button.plupload_start.plupload_disabled,.plupload_button.plupload_disabled{
  background:#c3c8d0 !important;color:#fff !important;cursor:not-allowed !important}
.plupload_button i,.plupload_button.browse i,.plupload_button.plupload_start i{
  font-size:16px !important;color:#fff !important;margin:0 !important}
.plupload_button.browse::after{content:"Add files"}
.plupload_button.plupload_start::after{content:"Start upload"}

/* progress bar row */
.plupload_progress,.plupload_progress.left-float{width:100% !important;float:none !important;margin:0 0 16px !important}
.plupload_progress_container{position:relative;height:24px !important;background:var(--gline) !important;
  border-radius:7px !important;overflow:hidden !important;border:none !important}
.plupload_progress_bar{background:linear-gradient(90deg,var(--gn),var(--gr)) !important;height:100% !important;border-radius:7px 0 0 7px !important}
.plupload_total_status,.plupload_total_file_size{position:relative;z-index:2;font-family:'Open Sans',sans-serif !important;
  font-weight:700 !important;font-size:12px !important;color:var(--gtext) !important}

/* container as one clean card */
#uploader_container.plupload_container,.plupload_container{background:#fff !important;padding:0 !important;
  border:1px solid var(--gline) !important;border-radius:10px !important;overflow:hidden !important;
  box-shadow:0 6px 24px rgba(9,43,81,.06) !important}
.plupload,.plupload_view_list{border:none !important;background:#fff !important}

/* filelist header + rows: force a clean horizontal row (float:none above broke it) */
.plupload_filelist_header,.plupload_filelist li,.plupload_scroll .plupload_filelist li{
  display:flex !important;align-items:center !important;gap:14px !important}
.plupload_filelist_header{background:var(--gcream) !important;border-bottom:1px solid var(--gline) !important;
  padding:12px 18px !important;font-family:'Open Sans',sans-serif !important;font-weight:700 !important;
  font-size:11px !important;letter-spacing:.08em !important;text-transform:uppercase !important;color:var(--gtext) !important}
.plupload_filelist li{padding:11px 18px !important}
.plupload_file_name{flex:1 1 auto !important;float:none !important;text-align:left !important}
.plupload_file_size,.plupload_file_status,.plupload_file_action{
  flex:0 0 auto !important;float:none !important;min-width:64px !important;text-align:right !important}
.plupload_content{padding:0 !important}

/* kill stray divider lines inside the upload widget */
#upload-wrapper .line,#uploader.frontend .line,.plupload_container .line{display:none !important}
/* the section-top-bar carries a leftover 3px theme accent line; flatten it
   (the .button-actions variant used on Messages keeps its own card styling) */
#ct-wrapper .section-top-bar,.tpl_upload .section-top-bar:not(.button-actions){
  background:transparent !important;border:none !important;padding:0 !important;margin:0 !important;min-height:0 !important}

/* big, inviting drop area */
.plupload_droptext{min-height:170px !important;margin:18px !important;border:2px dashed var(--gn) !important;
  border-radius:10px !important;background:var(--gcream) !important;color:var(--gtext) !important;
  font-family:'Playfair Display',serif !important;font-style:italic !important;font-size:19px !important;
  display:flex !important;align-items:center !important;justify-content:center !important;text-align:center;line-height:1.4}
.plupload_filelist_content,.plupload_scroll .plupload_filelist{min-height:60px}

/* hide the stock dark (#2a2c2e) ViewShark header bar wherever it appears */
.plupload_header,.plupload_header_content,.plupload_container .plupload_header{display:none !important}

/* ============================================================
   G49 - Real magazine footer on app fall-through pages. The app
   crammed the footer menu + disclaimer + copyright into the narrow
   left sidebar (.sidebar-nav-footer). Hide that and render the same
   full-width navy footer the redesigned custom pages use (injected
   into tpl_footer.tpl as .aptv-footer).
   ============================================================ */

/* hide the old sidebar-crammed footer */
.sidebar-nav-footer,.sidebar-nav-disclaimer,.footer_menu,.copybar{display:none !important}

/* the left sidebar is taller than short pages; give the content block a
   min-height so the full-width footer always clears the sidebar (no overlap) */
.inner-block,.inner-block.with-menu{min-height:780px}

/* footer spans full width below the sidebar + content (theme offsets it left:250px) */
footer,footer.with-menu{clear:both !important;position:relative !important;left:0 !important;right:0 !important;
  width:100% !important;margin:0 !important;padding:0 !important;
  background:transparent !important;float:none !important;display:block !important}
.aptv-footer .wrap{max-width:1240px;margin:0 auto;padding:0 24px}

/* disclaimer band */
.foot-disclaimer.aptv-footer{margin-top:50px !important;background:var(--gnd) !important;
  border-top:3px solid var(--gg) !important;position:relative;overflow:hidden}
.foot-disclaimer.aptv-footer::before{content:"";position:absolute;inset:0;
  background:radial-gradient(120% 140% at 50% -20%, rgba(201,168,76,.10), transparent 60%);pointer-events:none}
.foot-disclaimer.aptv-footer .fd-inner{max-width:820px;margin:0 auto;padding:38px 20px 40px;text-align:center;position:relative}
.foot-disclaimer.aptv-footer .fd-kicker{display:inline-block;font-family:'Open Sans',sans-serif;font-size:11px;font-weight:700;
  letter-spacing:.28em;text-transform:uppercase;color:var(--gg) !important;margin-bottom:16px}
.foot-disclaimer.aptv-footer .fd-text{font-family:'Playfair Display',serif !important;font-style:italic;font-size:15.5px;line-height:1.85;color:#c7d3e4 !important}
.foot-disclaimer.aptv-footer .fd-text b{font-style:normal;font-weight:700;color:#fff !important;text-transform:uppercase;letter-spacing:.03em}

/* navy footer body */
.foot.aptv-footer{background:var(--gn) !important;color:#c7d3e4 !important;margin:0 !important;padding:44px 0 30px !important}
.foot.aptv-footer .top{display:flex;flex-wrap:wrap;gap:30px;align-items:flex-start;justify-content:space-between;
  padding-bottom:26px;border-bottom:1px solid rgba(255,255,255,.12)}
.foot.aptv-footer .cols{display:flex;gap:50px;flex-wrap:wrap}
.foot.aptv-footer .cols h5{font-family:'Open Sans',sans-serif !important;font-size:11px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--gg) !important;margin-bottom:12px}
.foot.aptv-footer .cols a{display:block;color:#c7d3e4 !important;font-size:13.5px;margin-bottom:9px;font-family:'Open Sans',sans-serif !important;font-weight:400 !important;letter-spacing:0 !important;text-transform:none !important}
.foot.aptv-footer .cols a:hover{color:#fff !important}
.foot.aptv-footer .rule{height:3px;background:linear-gradient(90deg,var(--gr) 0 50%,var(--gg) 50% 100%);margin:18px 0;border-radius:2px}
.foot.aptv-footer .bottom{font-size:12.5px;color:#9fb0c9 !important;letter-spacing:.03em;display:flex;align-items:center;
  justify-content:space-between;flex-wrap:wrap;gap:10px}
.foot.aptv-footer .bottom .legal{display:flex;align-items:center;flex-wrap:wrap}
.foot.aptv-footer .bottom .legal a{color:#9fb0c9 !important;font-family:'Open Sans',sans-serif !important;font-weight:400 !important;letter-spacing:0 !important;text-transform:none !important}
.foot.aptv-footer .bottom .legal a:hover{color:#fff !important}
.foot.aptv-footer .bottom .legal a+a{margin-left:22px;position:relative}
.foot.aptv-footer .bottom .legal a+a::before{content:"\00B7";position:absolute;left:-13px;color:#5c6f8a}
@media(max-width:760px){
  .foot.aptv-footer .top{flex-direction:column;gap:22px}
  .foot.aptv-footer .cols{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px;width:100%}
  .foot.aptv-footer .bottom{flex-direction:column;justify-content:center;text-align:center;gap:10px}
  .foot.aptv-footer .bottom .legal{justify-content:center}
}

/* ============================================================
   G52 - App left sidebar re-matched to the custom .msidebar.
   The reskin previously used heavy navy header bars + red circle
   category icons (read as "old"). Replace with the magazine
   sidebar: subtle grey uppercase captions, flat menu rows, cream
   hover, red left-bar active state. Overrides G11.
   ============================================================ */

/* sidebar shell = white column with a hairline right border */
.fixed-width.sidebar-container,.sidebar-container{
  background:#fff !important;border-right:1px solid var(--gline) !important;padding:8px 0 30px !important}

/* each section is a plain group, not a bordered card */
.sidebar-container .categories-container,.categories-container{
  background:transparent !important;border:none !important;border-radius:0 !important;
  box-shadow:none !important;margin:0 !important;overflow:visible !important}
.categories-container + .categories-container{border-top:1px solid var(--gline) !important;margin-top:8px !important;padding-top:2px !important}

/* section headers -> small subtle grey captions (like .msidebar .cap) */
.categories-container h4,.categories-container .nav-title,
.categories-container .categories-menu-title,.blue .categories-menu-title{
  background:transparent !important;color:var(--gmut) !important;
  font-family:'Open Sans',sans-serif !important;font-size:10.5px !important;font-weight:800 !important;
  letter-spacing:.13em !important;text-transform:uppercase !important;line-height:1.4 !important;
  padding:16px 22px 8px !important;margin:0 !important;display:flex !important;align-items:center !important;gap:9px !important}
.categories-container h4 i,.categories-container .nav-title i,.categories-container .categories-menu-title i{
  color:var(--gmut) !important;font-size:13px !important;float:none !important;
  background:none !important;background-color:transparent !important;border-radius:0 !important}

/* menu rows */
.categories-container .accordion{margin:0 !important;padding:0 !important;list-style:none !important}
.menu-panel-entry{list-style:none !important}
.menu-panel-entry>a,.menu-panel-entry a.dcjq-parent{
  display:flex !important;align-items:center !important;gap:14px !important;padding:11px 22px !important;
  font-family:'Open Sans',sans-serif !important;font-size:14px !important;font-weight:600 !important;
  color:var(--gink) !important;background:transparent !important;text-decoration:none !important;
  border-left:3px solid transparent !important}
.menu-panel-entry>a i,.menu-panel-entry a.dcjq-parent i{
  color:var(--gtext) !important;font-size:16px !important;opacity:.85 !important;width:20px !important;
  text-align:center !important;background:none !important;background-color:transparent !important;
  border-radius:0 !important;margin:0 !important}
.menu-panel-entry>a:hover,.menu-panel-entry a.dcjq-parent:hover{background:var(--gcream) !important;color:var(--gink) !important}
.menu-panel-entry>a:hover i{color:var(--gr) !important;opacity:1 !important}
.menu-panel-entry-active>a,.menu-panel-entry.active>a,.menu-panel-entry-active a.dcjq-parent.active{
  background:var(--gcream) !important;color:var(--gr) !important;font-weight:700 !important;border-left-color:var(--gr) !important}
.menu-panel-entry-active>a i,.menu-panel-entry.active>a i,.menu-panel-entry-active a.dcjq-parent.active i{color:var(--gr) !important;opacity:1 !important}

/* right-aligned count chips (Message Center) subtle */
.mm-count,.right-float.mm-count{color:var(--gmut) !important;font-weight:600 !important;font-size:12px !important;background:none !important}

/* kill the red/grey circle category icons + expand chevrons */
#categories-accordion li a i,#session-accordion li a i,#top-session-accordion li a i,
#no-session-accordion li a i,#no-session-accordion2 li a i{
  border-radius:0 !important;background:none !important;background-color:transparent !important;
  color:var(--gtext) !important;width:20px !important;height:auto !important;line-height:normal !important;text-align:center !important}
#categories-accordion a.active i{background:none !important;background-color:transparent !important}
.dcjq-icon,.menu-panel-entry .iconBe-chevron-right,.categories-container .iconBe-chevron-right{display:none !important}

/* ============================================================
   G53 - Embed mode. When an app page (e.g. the uploader) is loaded
   inside an iframe on a custom page, strip ALL app chrome so only
   the working widget shows. The custom page supplies the header,
   sidebar and footer. Triggered by html.aptv-embed (set in head
   when window is framed).
   ============================================================ */
html.aptv-embed,html.aptv-embed body,html.aptv-embed body.fe{
  background:transparent !important;min-height:0 !important;height:auto !important;overflow:visible !important}
html.aptv-embed #main_header,
html.aptv-embed .fixed-width.sidebar-container,
html.aptv-embed .sidebar-container,
html.aptv-embed footer,
html.aptv-embed .aptv-footer,
html.aptv-embed .foot-disclaimer,
html.aptv-embed .tabs,
html.aptv-embed .sp-container > .tabs,
html.aptv-embed #the-stats,
html.aptv-embed .push,
html.aptv-embed .copybar{display:none !important}
/* content goes full width, flush, transparent */
html.aptv-embed .container,html.aptv-embed .container_wrapper,
html.aptv-embed .fluid,html.aptv-embed .inner-spacer,
html.aptv-embed .inner-block,html.aptv-embed .inner-block.with-menu,
html.aptv-embed .sp-container,html.aptv-embed #siteContent,
html.aptv-embed .dynamic_container{
  margin:0 !important;padding:0 !important;width:100% !important;min-height:0 !important;
  left:0 !important;background:transparent !important;box-shadow:none !important;border:none !important}
html.aptv-embed #ct-wrapper,html.aptv-embed #upload-wrapper{margin:0 !important}

/* G54 - embed uploader: collapse the ~130px of stacked top padding/margins
   (container/section/sp-container/upload-wrapper) so the uploader card sits
   at the top of the iframe. No display:none (buttons live in .section-top-bar). */
html.aptv-embed body,html.aptv-embed #wrapper,
html.aptv-embed .container,html.aptv-embed .container_wrapper,
html.aptv-embed .fluid,html.aptv-embed .inner-spacer,
html.aptv-embed .inner-block,html.aptv-embed .inner-block.with-menu,
html.aptv-embed section,html.aptv-embed article,
html.aptv-embed #siteContent,html.aptv-embed .sp-container,
html.aptv-embed #upload-wrapper,html.aptv-embed #uploader.frontend,html.aptv-embed #upload-form{
  padding-top:0 !important;margin-top:0 !important}
/* trim the uploader card's top padding in embed */
html.aptv-embed #ct-wrapper{padding-top:8px !important}
html.aptv-embed .section-top-bar{min-height:0 !important;padding-top:0 !important;margin-top:0 !important}

/* G59 - clickable tabs (edit-video, etc.) get a pointer cursor */
.tabs a,.tabs-style-topline a,.tabs-style-topline li,.tab,.nav-tabs a,
.tabs li,.tabs-style-topline nav a{cursor:pointer !important}

/* G60 - Message Center action buttons: compact inline row (were full-width stacked bars) */
.compose-button{display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:8px !important;
  width:auto !important;min-width:0 !important;height:auto !important;padding:12px 22px !important;
  margin:0 10px 16px 0 !important;border-radius:6px !important;font-family:'Open Sans',sans-serif !important;
  font-weight:700 !important;letter-spacing:.05em !important;text-transform:uppercase !important;font-size:12.5px !important;
  background:var(--gr) !important;color:#fff !important;border:none !important;cursor:pointer !important;vertical-align:top}
.compose-button:hover{background:var(--grd) !important}
.compose-button.label-form-message-menu-entry,.label-form .compose-button,a[onclick*="label"].compose-button{
  background:#fff !important;color:var(--gtext) !important;border:1.5px solid var(--gn) !important}
.compose-button.label-form-message-menu-entry:hover{background:var(--gn) !important;color:#fff !important}

/* G61 - Message Center: the New Private Message / New Label buttons carry
   .search-button.form-button (full-width). Override by id to a compact row. */
#compose-button,#new-label,.new-message-button,.new-label{
  display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:8px !important;
  width:auto !important;min-width:0 !important;max-width:none !important;height:auto !important;
  padding:12px 22px !important;margin:0 10px 16px 0 !important;border-radius:6px !important;
  font-family:'Open Sans',sans-serif !important;font-weight:700 !important;letter-spacing:.05em !important;
  text-transform:uppercase !important;font-size:12.5px !important;cursor:pointer !important;vertical-align:top}
#compose-button,.new-message-button{background:var(--gr) !important;color:#fff !important;border:none !important}
#compose-button:hover,.new-message-button:hover{background:var(--grd) !important}
#new-label,.new-label,#new-label *,.new-label *{background-color:transparent;color:#fff !important}
#new-label,.new-label{background:var(--gn) !important;border:none !important}
#new-label:hover,.new-label:hover{background:var(--gnd) !important}

/* ============================================================
   G63 - Custom member sidebar (.msidebar) for app pages. The app's
   left sidebar is replaced (JS in tpl_footer) with the same emoji
   member sidebar the custom pages use; these styles render it.
   ============================================================ */
.sidebar-container:has(.msidebar),.fixed-width.sidebar-container:has(.msidebar){
  padding:0 !important;border-right:none !important;background:transparent !important}
.msidebar{border-right:1px solid var(--gline);padding:16px 0 40px;background:#fff}
.msidebar .cap{font-size:10.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;
  color:var(--gmut) !important;padding:16px 22px 8px;display:flex;align-items:center;gap:10px;
  font-family:'Open Sans',sans-serif !important;background:transparent !important}
.msidebar a.mi{display:flex !important;align-items:center;gap:14px;padding:11px 22px !important;
  font-size:14px !important;color:var(--gink) !important;font-weight:600 !important;
  font-family:'Open Sans',sans-serif !important;text-decoration:none !important;border:none !important;
  border-left:3px solid transparent !important;background:transparent !important;text-transform:none !important;letter-spacing:0 !important}
.msidebar a.mi .i{width:20px;text-align:center;font-size:16px;opacity:.95;color:inherit !important}
.msidebar a.mi.on{background:var(--gcream) !important;color:var(--gr) !important;border-left-color:var(--gr) !important}
.msidebar a.mi:hover:not(.on){background:var(--gcream) !important;color:var(--gr) !important}
.msidebar .sep{height:1px;background:var(--gline);margin:10px 0}
.msidebar .flinks{padding:16px 22px;display:flex;flex-wrap:wrap;gap:6px 14px;border-top:1px solid var(--gline);margin-top:8px}
.msidebar .flinks a{font-size:12px !important;color:var(--gmut) !important;text-decoration:none !important;
  font-weight:400 !important;text-transform:none !important;letter-spacing:0 !important}
.msidebar .flinks a:hover{color:var(--gr) !important}

/* G64 - emoji icon spans injected into the app member sidebar */
.categories-container li > a .i,.categories-container a .i{width:20px !important;text-align:center;font-size:16px !important;line-height:1;
  display:inline-block;flex:0 0 20px;opacity:1 !important;margin-right:2px}
.categories-container .categories-menu-title .i{font-size:13px !important;line-height:1;display:inline-block;margin-right:2px}
.aptv-mylib .menu-panel-entry > a{display:flex !important;align-items:center;gap:14px}

/* ============================================================
   G66 - Center app pages like the custom pages: max-width 1240
   container with left/right gutters (was full-width edge-to-edge).
   Header background stays full-width; its inner rows center.
   ============================================================ */
html:not(.aptv-embed) #ct-header-top,
html:not(.aptv-embed) #ct-header-bottom,
html:not(.aptv-embed) .container.container_wrapper{
  max-width:1240px !important;margin-left:auto !important;margin-right:auto !important;float:none !important}
html:not(.aptv-embed) #ct-header-top,html:not(.aptv-embed) #ct-header-bottom{padding-left:24px !important;padding-right:24px !important;box-sizing:border-box}

/* ============================================================
   G67 - Full custom header on app pages (vars + header CSS from
   app.css). Injected header is wrapped in <header class="aptv-hdr">.
   tpl_body.tpl sets html.aptv-hdr-on once it is in place; the app
   header is hidden from then on, before it can be painted.
   ============================================================ */
html.aptv-hdr-on #main_header{display:none !important}
:root{--navy:#092b51;--navy-d:#061d38;--red:#d80314;--red-d:#b00210;--gold:#c9a84c;
  --ink:#141414;--mut:#7a7a7a;--paper:#ffffff;--cream:#f6f6f7;--head:#092b51;--line:#e3e3e6;
  --serif:'Playfair Display',Georgia,serif;--display:'Abril Fatface',Georgia,serif;--sans:'Open Sans',system-ui,sans-serif;}
.aptv-hdr .wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.aptv-hdr .util{background:var(--navy);color:#cdd7e6;font-size:12px}
.aptv-hdr .util .wrap{display:flex;align-items:center;gap:18px;height:36px}
.aptv-hdr .date{letter-spacing:.04em}
.aptv-hdr .grow{flex:1}
.aptv-hdr .util a{color:#e9eef6;font-weight:600;letter-spacing:.03em;text-decoration:none}
.aptv-hdr .sep{width:1px;height:14px;background:rgba(255,255,255,.25);display:inline-block}
.aptv-hdr .gold{color:var(--gold)}
.aptv-hdr .masthead{background:var(--paper);border-bottom:1px solid var(--line);text-align:center;padding:22px 24px 0}
.aptv-hdr .masthead .logo{display:inline-flex;flex-direction:column;align-items:center;gap:2px}
.aptv-hdr .masthead .rule{height:3px;background:linear-gradient(90deg,var(--navy) 0 33%,var(--red) 33% 66%,var(--gold) 66% 100%);margin-top:16px;border-radius:2px}
.aptv-hdr .topnav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(9,43,81,.04)}
.aptv-hdr .topnav .wrap{display:flex;align-items:center;gap:4px;height:52px}
.aptv-hdr .topnav a{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--head);padding:16px 14px;white-space:nowrap;border-bottom:3px solid transparent;text-decoration:none}
.aptv-hdr .topnav a:hover{color:var(--red)}
.aptv-hdr .topnav a.on{color:var(--red);border-color:var(--red)}
.aptv-hdr .topnav .navlinks{display:contents}
.aptv-hdr .m-auth{display:none !important}
.aptv-hdr .topnav .grow{flex:1}
.aptv-hdr .topnav .mini-logo{display:none}
.aptv-hdr .topnav .u-btn{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:none;background:var(--navy);color:#fff;font-weight:700;font-size:15px;line-height:1;text-transform:uppercase;text-decoration:none}
.aptv-hdr .topsearch{display:flex;align-items:center;background:var(--cream);border:1px solid var(--line);border-radius:2px;overflow:hidden;height:36px;margin-right:10px}
.aptv-hdr .topsearch:focus-within{border-color:var(--navy)}
.aptv-hdr .topsearch input{border:none !important;background:none !important;border-radius:0 !important;outline:none;padding:0 12px;font-size:13px;width:180px;color:var(--ink);box-shadow:none !important;height:auto !important}
.aptv-hdr .topsearch button{border:none;background:var(--navy);color:#fff;width:40px;height:36px;cursor:pointer;font-size:14px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.aptv-hdr .theme-toggle{display:inline-flex;align-items:center;cursor:pointer;margin-right:12px;flex:none}
.aptv-hdr .theme-toggle input{position:absolute;opacity:0;width:0;height:0}
.aptv-hdr .theme-toggle .tt-track{width:50px;height:26px;border-radius:20px;background:var(--line);position:relative;display:block}
.aptv-hdr .theme-toggle .tt-thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .2s;box-shadow:0 1px 3px rgba(0,0,0,.4);display:grid;place-items:center}
.aptv-hdr .theme-toggle .tt-thumb::after{content:'\2600';font-size:12px;color:#d97706}
.aptv-hdr .theme-toggle input:checked + .tt-track{background:var(--navy)}
.aptv-hdr .theme-toggle input:checked + .tt-track .tt-thumb{left:27px}
.aptv-hdr .hamb,.aptv-hdr .msearch-btn{display:none}
.aptv-hdr .search-overlay{display:none}

/* G68 - grid layout: sidebar (col1) + content (col2), like the custom .member grid */
html:not(.aptv-embed) .container.container_wrapper{
  max-width:1240px !important;margin:0 auto !important;display:grid !important;
  grid-template-columns:266px minmax(0,1fr) !important;align-items:start !important}
html:not(.aptv-embed) .container.container_wrapper > .sidebar-container{
  grid-column:1 !important;grid-row:1 !important;position:static !important;top:auto !important;left:auto !important;
  float:none !important;width:auto !important;min-width:0 !important;max-width:none !important;margin:0 !important}
html:not(.aptv-embed) .container.container_wrapper > .fluid{
  grid-column:2 !important;grid-row:1 !important;float:none !important;width:auto !important;min-width:0 !important;margin:0 !important}
html:not(.aptv-embed) .inner-block.with-menu{margin-left:0 !important;margin-right:0 !important}
html:not(.aptv-embed) #siteContent{margin-left:0 !important;margin-right:0 !important;width:auto !important}

/* G69 - neutralize the JS scrollbar plugin so the sidebar flows in-place
   (keeps the original menu elements + their click handlers) */
html:not(.aptv-embed) .sidebar-container .scroll-bar{display:none !important}
html:not(.aptv-embed) .sidebar-container .viewport{height:auto !important;max-height:none !important;overflow:visible !important;position:static !important;width:auto !important}
html:not(.aptv-embed) .sidebar-container .overview{position:static !important;top:auto !important;left:auto !important;width:auto !important;height:auto !important}
html:not(.aptv-embed) .container_wrapper > .sidebar-container{height:auto !important;overflow:visible !important}

/* G70 - safe fixes: brighter util date + readable active menu text */
.aptv-hdr .util .date{color:#cdd7e6 !important}
html:not(.aptv-embed) .menu-panel-entry-active > a,
html:not(.aptv-embed) .menu-panel-entry-active > a .mm,
html:not(.aptv-embed) .menu-panel-entry.menu-panel-entry-active > a,
html:not(.aptv-embed) .menu-panel-entry.menu-panel-entry-active > a .mm,
html:not(.aptv-embed) .menu-panel-entry-active a.dcjq-parent.active,
html:not(.aptv-embed) .menu-panel-entry-active a.dcjq-parent.active .mm{color:var(--gr) !important;font-weight:700 !important}

/* G71 - header nav: left-align (was right-aligned, leaving a left gap) */
.aptv-hdr .topnav .wrap{justify-content:flex-start !important}
.aptv-hdr .topnav .grow,.aptv-hdr .grow{flex:1 1 auto !important;display:block !important}
.aptv-hdr .util .grow{flex:1 1 auto !important}

/* G72 - force header nav to the left: navlinks as a flex item with margin-right:auto */
.aptv-hdr .topnav .navlinks{display:flex !important;align-items:center !important;flex-wrap:nowrap !important;margin-right:auto !important}
.aptv-hdr .topnav .grow{display:none !important}

/* G73 - topnav bar was rendering at left:494/width:931; force full width */
.aptv-hdr .topnav{width:100% !important;max-width:none !important;margin:0 !important;left:0 !important;right:0 !important;box-sizing:border-box !important;float:none !important}
.aptv-hdr .util,.aptv-hdr .masthead,.aptv-hdr .search-overlay{width:100% !important;max-width:none !important;margin:0 !important;left:0 !important}

/* G74 - sidebar menu text navy (#092b51) like the custom .msidebar; active stays red */
html:not(.aptv-embed) .categories-container li > a:not(.active),
html:not(.aptv-embed) .categories-container li > a:not(.active) .mm,
html:not(.aptv-embed) .menu-panel-entry:not(.menu-panel-entry-active) > a,
html:not(.aptv-embed) .menu-panel-entry:not(.menu-panel-entry-active) > a .mm,
html:not(.aptv-embed) .aptv-mylib .menu-panel-entry > a{color:var(--gtext) !important;font-weight:600 !important}

/* G75 - header avatar profile photo on app pages */
.aptv-hdr .u-btn{overflow:hidden !important;padding:0 !important}
.aptv-hdr .u-btn .u-av,.aptv-hdr .u-btn img{width:100% !important;height:100% !important;object-fit:cover !important;border-radius:50% !important;display:block !important}
/* signed-in user dropdown menu */
.aptv-hdr .u-wrap{position:relative;display:inline-flex}
.aptv-hdr .umenu{position:absolute;top:calc(100% + 12px);right:0;width:300px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 44px rgba(9,43,81,.20);z-index:300;overflow:hidden;padding:0 0 6px}
.aptv-hdr .umenu[hidden]{display:none}
.aptv-hdr .umenu .um-head{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--line);background:var(--cream)}
.aptv-hdr .umenu .um-av{width:46px;height:46px;border-radius:50%;background-size:cover;background-position:center;background-color:#fff;border:2px solid var(--red);flex:none}
.aptv-hdr .umenu .um-htxt{display:flex;flex-direction:column;min-width:0}
.aptv-hdr .umenu .um-htxt b{font-family:var(--serif);color:var(--red);font-size:15.5px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aptv-hdr .umenu .um-htxt small{color:var(--mut);font-size:12px;margin-top:3px}
.aptv-hdr .umenu .um-list{padding:6px 0}
.aptv-hdr .umenu a.um-i{display:flex;align-items:center;gap:13px;padding:11px 16px;color:var(--head);font-size:14px;font-weight:600;text-decoration:none}
.aptv-hdr .umenu a.um-i .i{width:20px;text-align:center;font-size:16px;flex:none}
.aptv-hdr .umenu a.um-i:hover{background:var(--cream);color:var(--red)}
.aptv-hdr .umenu .um-sep{height:1px;background:var(--line);margin:6px 0}

/* G76 - let user dropdown escape nav overflow (app pages) */
.aptv-hdr .topnav .wrap,.aptv-hdr .util .wrap{overflow:visible !important}

/* G77 - dropdown title-case on app pages */
.aptv-hdr .umenu a,.aptv-hdr .umenu .um-i,.aptv-hdr .umenu .um-head,.aptv-hdr .umenu .um-htxt b{text-transform:none !important;letter-spacing:normal !important}
.aptv-hdr .umenu .um-htxt b{white-space:normal !important;font-weight:800 !important}

/* ============================================================
   G78 - Videos/Browse page: full-width (no sidebar) + category chips,
   matching the GEORGE mockup. Uses the app's VBrowse grid + data.
   ============================================================ */
html:not(.aptv-embed) .tpl_browse .container.container_wrapper{display:block !important;max-width:1240px !important;margin:0 auto !important}
html:not(.aptv-embed) .tpl_browse .container.container_wrapper > .sidebar-container{display:none !important}
html:not(.aptv-embed) .tpl_browse .container.container_wrapper > .fluid{width:100% !important;max-width:none !important}
.aptv-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px;padding:0 2px}
.aptv-chips .chip{padding:9px 17px;border:1px solid var(--gline);border-radius:24px;font-family:'Open Sans',sans-serif;
  font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gtext);background:#fff;text-decoration:none;transition:.15s;white-space:nowrap}
.aptv-chips .chip:hover{border-color:var(--gn)}
.aptv-chips .chip.on{background:var(--gr);border-color:var(--gr);color:#fff}

/* G79 - Browse: hide VBrowse's duplicate "Media Library" h3 + single "Recent" tab
   (chips + "Recent Videos" header + grid remain, matching the mockup) */
html:not(.aptv-embed) .tpl_browse:not(.tpl_search) h3.content-title{display:none !important}
html:not(.aptv-embed) .tpl_browse .tabs > nav{display:none !important}
html:not(.aptv-embed) .tpl_browse .haiii{margin-top:0 !important}

/* G80 - video card title: was clipped (h3 height:32px overflow:hidden). Clean 2-line clamp. */
.thumbs-wrapper h3,.vs-column h3:not(.content-title),.caption h3{
  height:auto !important;max-height:none !important;min-height:2.6em !important;
  display:-webkit-box !important;-webkit-line-clamp:2 !important;-webkit-box-orient:vertical !important;
  overflow:hidden !important;line-height:1.3 !important;margin:8px 0 4px !important;white-space:normal !important}
.thumbs-wrapper h3 a,.vs-column h3 a,.caption h3 a{display:inline !important;line-height:1.3 !important}

/* G81 - Browse video grid: clean responsive grid that fills the width
   (cards were .fourths=26% leaving a 4th-column gap). */
html:not(.aptv-embed) .tpl_browse ul.fileThumbs{
  display:grid !important;grid-template-columns:repeat(auto-fill,minmax(300px,1fr)) !important;
  gap:30px 24px !important;list-style:none !important;margin:0 !important;padding:0 !important;width:100% !important}
html:not(.aptv-embed) .tpl_browse ul.fileThumbs > li{
  width:auto !important;max-width:none !important;min-width:0 !important;float:none !important;margin:0 !important;padding:0 !important;display:block !important}
html:not(.aptv-embed) .tpl_browse ul.fileThumbs > li .thumbs-wrapper,
html:not(.aptv-embed) .tpl_browse ul.fileThumbs > li figure,
html:not(.aptv-embed) .tpl_browse ul.fileThumbs > li img{width:100% !important}

/* G82 - remove clearfix ::before/::after so they don't occupy a grid cell (empty first card) */
html:not(.aptv-embed) .tpl_browse ul.fileThumbs::before,
html:not(.aptv-embed) .tpl_browse ul.fileThumbs::after{display:none !important;content:none !important}

/* G83 - Watch/View page: full-width (no left sidebar), like the browse page */
html:not(.aptv-embed) .tpl_view .container.container_wrapper{display:block !important;max-width:1240px !important;margin:0 auto !important}
html:not(.aptv-embed) .tpl_view .container.container_wrapper > .sidebar-container{display:none !important}
html:not(.aptv-embed) .tpl_view .container.container_wrapper > .fluid{width:100% !important;max-width:none !important}

/* G84 channels page -> product cards matching mockup (test1/channels.html) */
.tpl_channels ul.ch-grid:not(.columns){display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:26px;list-style:none;margin:0;padding:0}
.tpl_channels ul.ch-grid:not(.columns)::before,.tpl_channels ul.ch-grid:not(.columns)::after{display:none!important;content:none!important}
.tpl_channels ul.ch-grid:not(.columns) .vs-column{width:auto!important;max-width:none!important;min-width:0!important;float:none!important;margin:0!important;padding:0!important;background:#fff;border:1px solid var(--gline);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px rgba(15,23,48,.06);transition:box-shadow .15s,transform .15s}
.tpl_channels ul.ch-grid:not(.columns) .vs-column:hover{box-shadow:0 8px 24px rgba(15,23,48,.12);transform:translateY(-2px)}
.tpl_channels ul.ch-grid:not(.columns) .vs-column li{list-style:none;display:block;margin:0;padding:0;border:0;background:none}
.tpl_channels .chc-thumb{display:block;width:100%;aspect-ratio:1/1;background-size:cover;background-position:center;background-repeat:no-repeat;background-color:#f2f4f8}
.tpl_channels .ch-info{padding:16px 18px 18px;text-align:center}
.tpl_channels .ch-info h3{font-family:var(--serif),Georgia,serif;font-size:18px;line-height:1.25;margin:0 0 14px;height:auto!important;overflow:visible!important}
.tpl_channels .ch-info h3 a{color:var(--gtext);text-decoration:none}
.tpl_channels .ch-info h3 a:hover{color:var(--gr)}
.tpl_channels .chc-sub{display:block;background:var(--gr);color:#fff!important;padding:11px;border-radius:6px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:12.5px;text-decoration:none;margin-bottom:9px;border:1.5px solid var(--gr);cursor:pointer;text-align:center}
.tpl_channels .chc-sub:hover{filter:brightness(.92)}
.tpl_channels .chc-view{display:block;background:#fff;border:1.5px solid var(--gn);color:var(--gtext)!important;padding:10px;border-radius:6px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:12.5px;text-decoration:none;text-align:center}
.tpl_channels .chc-view:hover{background:var(--gn);color:#fff!important}

/* G85 videos: keep grid ONLY for the card view-mode; real rows for the list view-mode */
html:not(.aptv-embed) .tpl_browse ul.fileThumbs:not(.view-list){display:block!important}
html:not(.aptv-embed) .tpl_browse ul.fileThumbs:not(.view-list) > li.full-thumbs{width:100%!important;max-width:none!important;min-width:0!important;float:none!important;margin:0 0 18px!important;padding:0!important;display:block}
html:not(.aptv-embed) .tpl_browse ul.fileThumbs:not(.view-list) .thumbs-wrapper{display:flex;gap:18px;align-items:flex-start;background:#fff;border:1px solid var(--gline);border-radius:10px;padding:12px;box-shadow:0 1px 3px rgba(15,23,48,.05)}
html:not(.aptv-embed) .tpl_browse ul.fileThumbs:not(.view-list) figure.effect-fullT{flex:0 0 340px;max-width:340px;width:340px;margin:0;border-radius:8px;overflow:hidden}
html:not(.aptv-embed) .tpl_browse ul.fileThumbs:not(.view-list) figure.effect-fullT img.mediaThumb{width:100%;height:auto;display:block}
html:not(.aptv-embed) .tpl_browse ul.fileThumbs:not(.view-list) .full-details-holder{flex:1 1 auto;min-width:0;padding:2px 6px 0 0}
html:not(.aptv-embed) .tpl_browse ul.fileThumbs:not(.view-list) .full-details-holder h2{font-size:18px;line-height:1.3;margin:2px 0 8px;height:auto!important;max-height:none!important;overflow:visible!important;white-space:normal!important;display:block!important}
html:not(.aptv-embed) .tpl_browse ul.fileThumbs:not(.view-list) .full-details-holder h2 a{color:var(--gtext);text-decoration:none}
html:not(.aptv-embed) .tpl_browse ul.fileThumbs:not(.view-list) .full-details-holder h2 a:hover{color:var(--gr)}
html:not(.aptv-embed) .tpl_browse ul.fileThumbs:not(.view-list) .full-details-holder p{font-size:13.5px;color:var(--gmut);line-height:1.55;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:640px){html:not(.aptv-embed) .tpl_browse ul.fileThumbs:not(.view-list) .thumbs-wrapper{flex-direction:column}html:not(.aptv-embed) .tpl_browse ul.fileThumbs:not(.view-list) figure.effect-fullT{flex:none;width:100%;max-width:none}}

/* G86 channels card structural overrides (defeat theme .ch-item/.ch-info overlay + li width) */
.tpl_channels ul.ch-grid:not(.columns) .vs-column > li{width:100%!important;max-width:none!important;min-width:0!important;display:block!important;float:none!important;margin:0!important;padding:0!important;border:0!important;background:none!important;height:auto!important}
.tpl_channels a.chc-thumb{width:100%!important;max-width:none!important;height:auto!important;border-radius:0!important;box-shadow:none!important}
.tpl_channels .ch-info{position:static!important;display:block!important;opacity:1!important;visibility:visible!important;background:none!important;transform:none!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;width:auto!important;height:auto!important;color:var(--gtext)!important}
.tpl_channels .ch-info h3{position:static!important;opacity:1!important}

/* G87 channels LIST view (viewMode2 -> ul.ch-grid.columns): clean full-width rows */
.tpl_channels ul.ch-grid.columns{display:block!important;grid-template-columns:none!important;list-style:none;margin:0;padding:0}
.tpl_channels ul.ch-grid.columns::before,.tpl_channels ul.ch-grid.columns::after{display:none!important;content:none!important}
.tpl_channels ul.ch-grid.columns .vs-column{width:100%!important;max-width:none!important;min-width:0!important;float:none!important;margin:0 0 18px!important;padding:16px!important;display:flex!important;gap:20px;align-items:flex-start;background:#fff;border:1px solid var(--gline);border-radius:12px;box-shadow:0 1px 3px rgba(15,23,48,.06);overflow:hidden}
.tpl_channels ul.ch-grid.columns .list-view-thumb{flex:0 0 200px;max-width:200px;margin:0!important;padding:0!important}
.tpl_channels ul.ch-grid.columns .list-view-thumb .chc-thumb{width:100%!important;aspect-ratio:1/1;border-radius:8px!important;overflow:hidden;margin:0!important;display:block}
.tpl_channels ul.ch-grid.columns .list-view-details{flex:1 1 auto;min-width:0;margin:0!important;padding:0!important;text-align:left!important}
.tpl_channels ul.ch-grid.columns .list-view-details .chc-name{font-family:var(--serif),Georgia,serif;font-size:22px;line-height:1.25;margin:0 0 4px!important;height:auto!important;overflow:visible!important;text-align:left!important}
.tpl_channels ul.ch-grid.columns .list-view-details .chc-name a{color:var(--gtext);text-decoration:none}
.tpl_channels ul.ch-grid.columns .list-view-details .chc-name a:hover{color:var(--gr)}
.tpl_channels ul.ch-grid.columns .list-view-details .ch-views-nr{display:block;font-size:12.5px;color:var(--gmut);margin:0 0 10px}
.tpl_channels ul.ch-grid.columns .list-view-details .ch-descr{font-size:14px;color:var(--gmut);line-height:1.6;margin:0 0 14px;white-space:normal}
.tpl_channels ul.ch-grid.columns .chc-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.tpl_channels ul.ch-grid.columns .chc-actions .chc-sub,.tpl_channels ul.ch-grid.columns .chc-actions .chc-view{display:inline-block!important;width:auto!important;margin:0!important;padding:9px 22px!important}
@media(max-width:640px){.tpl_channels ul.ch-grid.columns .vs-column{flex-direction:column}.tpl_channels ul.ch-grid.columns .list-view-thumb{flex:none;max-width:200px;width:200px!important}}

/* ============================================================
   G88 - /videos listing brought in line with browse.html.
   Section header, chips, card title/category/meta use the same
   values as assets/app.css so the two pages read identically.
   The Grid/List toggle and the "Recent Videos" heading are gone
   (removed in VBrowse, not just hidden).
   ============================================================ */

/* section header: title + rule, exactly like app.css .sec-h */
.aptv-sec-h{display:flex !important;align-items:center;gap:16px;margin:0 0 22px !important;padding:0 !important;border:0 !important;background:none !important}
.aptv-sec-h h2{font-family:'Playfair Display',Georgia,serif !important;font-size:26px !important;line-height:1.2 !important;
  color:var(--gtext) !important;white-space:nowrap;margin:0 !important;padding:0 !important;border:0 !important;text-transform:none !important;letter-spacing:-.01em !important}
.aptv-sec-h h2 i{display:none !important}
.aptv-sec-h .line{flex:1;height:2px;background:var(--gline);display:block !important;margin:0 !important;padding:0 !important;border:0 !important}
.tpl_browse section.filter{min-height:0 !important;margin:0 !important;padding:0 !important;border:0 !important}

/* chips: app.css .chip - square, uppercase, red when active */
.aptv-chips{gap:8px;margin:24px 0 22px;overflow-x:auto;padding-bottom:6px;flex-wrap:nowrap}
.aptv-chips::-webkit-scrollbar{display:none}
.aptv-chips .chip{border-radius:2px;padding:8px 16px;font-size:11.5px;letter-spacing:.08em;color:var(--gtext);border-color:var(--gline)}
.aptv-chips .chip.on{background:var(--gr);border-color:var(--gr);color:#fff}

/* card body: title, then category, then channel · views · age */
.aptv-body{padding-top:14px}
.tpl_browse ul.fileThumbs .aptv-body h3{font-family:'Playfair Display',Georgia,serif !important;font-size:19px !important;font-weight:800 !important;
  color:var(--gtext) !important;line-height:1.22 !important;margin:0 0 7px !important;min-height:0 !important;
  -webkit-line-clamp:3 !important;display:-webkit-box !important}
.tpl_browse ul.fileThumbs .aptv-body h3 a{color:inherit !important}
.tpl_browse ul.fileThumbs .aptv-body h3 a:hover{color:var(--gr) !important}
.aptv-kicker{display:block;font-family:'Open Sans',sans-serif;font-weight:700;font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gr) !important;margin:0 0 4px}
.aptv-meta{font-size:12.5px !important;color:var(--gmut) !important;margin-top:10px !important;padding-top:10px !important;
  border-top:1px solid var(--gline);display:flex !important;flex-wrap:wrap;gap:8px;align-items:center;float:none !important;width:auto !important}
.aptv-meta .profile_image,.aptv-meta .profile_wrap{display:inline !important;margin:0 !important;padding:0 !important;background:none !important;border:0 !important;width:auto !important;height:auto !important;float:none !important}
.aptv-meta .channel_name{color:var(--gtext) !important;font-weight:700 !important;cursor:pointer;font-size:12.5px !important}
.aptv-meta .channel_name:hover{color:var(--gr) !important}
.aptv-meta .views-number{color:var(--gmut) !important;font-size:12.5px !important}
.aptv-meta .i-bullet{width:3px;height:3px;border-radius:50%;background:var(--gmut);display:inline-block;flex:none;opacity:.7}

/* ============================================================
   G89 - Dark mode. The app swaps its #fe-color theme stylesheet, but this
   overlay loads last and painted everything light regardless, so the switch
   appeared to do nothing. f_scripts/fe/js/george.js mirrors that stylesheet
   onto <html class="dark"> - the same hook assets/app.css uses - and the
   palette below is app.css's dark palette, so both halves of the site match.
   ============================================================ */
html.dark{
  /* --gn / --gnd stay the brand navy: they paint the footer, disclaimer, buttons
     and badges, which must not turn pale in dark mode. Only text flips. */
  --gtext:#f2f5fb;
  --gcream:#161c26;
  --gmut:#8b96a8;
  --gline:#242c3a;
  --gink:#e8ebf1;
  --gpaper:#0d1117;
  /* the injected header/footer come from assets/ui.js and are written against
     app.css's token names, so those need the same dark values app.css gives them */
  --paper:#0d1117; --cream:#161c26; --ink:#e8ebf1; --ink-2:#b9c2d0; --mut:#8b96a8;
  --line:#242c3a; --line-2:#1c232f; --head:#f2f5fb; --shadow:0 14px 40px rgba(0,0,0,.6);
}
html.dark body,html.dark .fe{background:#0d1117 !important;color:var(--gink) !important}
html.dark a{color:var(--gink)}
html.dark a:hover{color:var(--gr)}
html.dark h1,html.dark h2,html.dark h3,html.dark h4,html.dark h5{color:var(--gtext) !important}
html.dark p,html.dark span,html.dark li,html.dark td,html.dark label,html.dark small{color:var(--gink)}

/* surfaces */
html.dark .container,html.dark .container_wrapper,html.dark .fluid,html.dark .content-wrap,
html.dark section,html.dark article,html.dark .panel,html.dark .box,html.dark .well{background-color:transparent !important}
html.dark .header,html.dark .navbar,html.dark .topbar,html.dark .main-nav,html.dark .nav-wrap,
html.dark .footer,html.dark .foot,html.dark .sidebar,html.dark .sidebar-container{
  background:#0d1117 !important;border-color:var(--gline) !important;color:var(--gink) !important}
html.dark .dropdown-menu,html.dark .popup,html.dark .modal-content,html.dark .tooltip-inner,
html.dark .dm-wrap,html.dark .headernav-pop{background:var(--gcream) !important;border-color:var(--gline) !important;color:var(--gink) !important}

/* inputs & buttons */
html.dark input[type="text"],html.dark input[type="email"],html.dark input[type="password"],
html.dark input[type="search"],html.dark textarea,html.dark select,html.dark .form-control{
  background:var(--gcream) !important;color:var(--gink) !important;border-color:var(--gline) !important}
html.dark .btn-default,html.dark .btn-outline,html.dark .btn-secondary,html.dark .btn-light{
  border-color:var(--gn) !important;color:var(--gtext) !important;background:transparent !important}

/* the /videos listing */
html.dark .aptv-sec-h h2{color:var(--gtext) !important}
html.dark .aptv-sec-h .line{background:var(--gline)}
html.dark .aptv-chips .chip{background:var(--gcream);border-color:var(--gline);color:var(--gtext)}
html.dark .aptv-chips .chip.on{background:var(--gr);border-color:var(--gr);color:#fff}
html.dark .tpl_browse ul.fileThumbs .aptv-body h3,
html.dark .tpl_browse ul.fileThumbs .aptv-body h3 a{color:var(--gtext) !important}
html.dark .tpl_browse ul.fileThumbs .aptv-body h3 a:hover{color:var(--gr) !important}
html.dark .aptv-meta{border-top-color:var(--gline);color:var(--gmut) !important}
html.dark .aptv-meta .channel_name{color:var(--gtext) !important}
html.dark .aptv-meta .views-number{color:var(--gmut) !important}
html.dark .thumbs-wrapper{background:transparent !important}
html.dark .thumbs-wrapper figure{background:#0c111b !important}
html.dark .caption-more .time-lenght{background:rgba(6,20,40,.9) !important;color:#fff !important}

/* channels/list cards reuse these surfaces */
html.dark .tpl_channels ul.ch-grid.columns .vs-column{background:var(--gcream) !important;border-color:var(--gline) !important;box-shadow:none !important}
html.dark .tpl_channels .ch-info,html.dark .tpl_channels .ch-info h3{color:var(--gtext) !important}

/* ============================================================
   G90 - /videos follow-ups: white page surface in light mode, the card's
   play badge restyled to app.css's .play-ic, and the card body order
   pinned to title -> category -> meta so no legacy rule can flip it.
   ============================================================ */

/* light mode: the page surface is white like app.css --paper (#fff).
   G28's body.fe used --gcream (#f6f6f7), which read as a grey container. */
body.fe{background:#fff !important}
html.dark body.fe{background:#0d1117 !important}

/* card body order - the markup is already title, category, meta; this makes it
   explicit so nothing in the legacy sheets can reorder or float it. */
.aptv-body{display:flex !important;flex-direction:column !important;align-items:stretch}
.tpl_browse ul.fileThumbs .aptv-body h3{order:1 !important;float:none !important}
.aptv-body .aptv-kicker{order:2 !important}
.aptv-body .aptv-meta{order:3 !important}

/* play badge: app.css .acard .thumb .play-ic - 54px red disc, white triangle,
   lifts slightly on card hover. Overrides the legacy 40px disc whose hover
   blew the triangle up (scale(20)) and painted a cyan one underneath. */
.tpl_browse ul.fileThumbs .play-btn{
  width:54px !important;height:54px !important;border-radius:50% !important;
  background:rgba(216,3,20,.92) !important;box-shadow:0 6px 20px rgba(0,0,0,.35) !important;
  transition:transform .18s,background .18s !important;cursor:pointer}
.tpl_browse ul.fileThumbs .play-btn::after{
  border-top:9px solid transparent !important;border-bottom:9px solid transparent !important;
  border-left:16px solid #fff !important;border-right:0 !important;
  transform:translateX(-40%) translateY(-50%) !important;width:0 !important;height:0 !important}
.tpl_browse ul.fileThumbs .play-btn::before{content:none !important;display:none !important}
.tpl_browse ul.fileThumbs .play-btn:hover::after{
  transform:translateX(-40%) translateY(-50%) !important;border-left:16px solid #fff !important}
.tpl_browse ul.fileThumbs li:hover .play-btn{
  transform:scale(1.1);background:var(--gr) !important}

/* G88 channel names: cancel the global 2-line min-height/clamp reserved for video-card titles */
.tpl_channels .ch-info h3,.tpl_channels .list-view-details .chc-name{min-height:0!important;max-height:none!important;height:auto!important;display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important;padding:0!important;width:auto!important;white-space:normal!important;text-shadow:none!important;letter-spacing:normal!important}

/* ============================================================
   G91 - /channels brought in line with test1/channels.html:
   one sec-h title + count line, and the product-card grid
   (square image, centred body, stacked full-width actions).
   The Grid/List controls are hidden, not removed - channels.init.js
   reads the active one to know which list it is paging.
   ============================================================ */

/* one heading, like channels.html - the page-level title is redundant */
.tpl_channels #channel-h3{display:none !important}
.tpl_channels #ct-wrapper > .aptv-sec-h:first-of-type{display:none !important}
.tpl_channels .tabs > nav{display:none !important}
.aptv-subtitle{font-family:var(--serif),Georgia,serif;font-style:italic;color:var(--gmut);
  font-size:16px;margin:-6px 0 26px !important;padding:0}

/* .pcards - three across, collapsing the way channels.html does */
.tpl_channels ul.ch-grid:not(.columns){grid-template-columns:repeat(3,1fr) !important;gap:26px !important}
@media(max-width:820px){.tpl_channels ul.ch-grid:not(.columns){grid-template-columns:1fr 1fr !important}}
@media(max-width:560px){.tpl_channels ul.ch-grid:not(.columns){grid-template-columns:1fr !important}}

/* .pcard - bordered white card that lifts on hover */
.tpl_channels ul.ch-grid:not(.columns) .vs-column{
  border:1px solid var(--gline) !important;border-radius:4px !important;overflow:hidden !important;
  background:#fff !important;display:flex !important;flex-direction:column !important;
  box-shadow:none !important;transition:box-shadow .15s,transform .15s !important}
.tpl_channels ul.ch-grid:not(.columns) .vs-column:hover{
  box-shadow:0 12px 34px rgba(9,43,81,.10) !important;transform:translateY(-3px) !important}

/* .pcard .img - square cover */
.tpl_channels ul.ch-grid:not(.columns) a.chc-thumb{
  display:block !important;aspect-ratio:1/1 !important;height:auto !important;
  background-color:#0b1b3a !important;background-size:cover !important;background-position:center !important;
  margin:0 !important;border:0 !important}

/* .pcard .body - centred, title pinned to the top, actions to the bottom */
.tpl_channels ul.ch-grid:not(.columns) .ch-info{
  padding:18px 16px 20px !important;text-align:center !important;display:flex !important;
  flex-direction:column !important;flex:1 1 auto !important}
.tpl_channels ul.ch-grid:not(.columns) .ch-info h3{
  font-family:'Playfair Display',Georgia,serif !important;font-size:18px !important;font-weight:700 !important;
  color:var(--gtext) !important;line-height:1.3 !important;margin:0 0 auto !important;height:auto !important;overflow:visible !important}
.tpl_channels ul.ch-grid:not(.columns) .ch-info h3 a{color:inherit !important}
.tpl_channels ul.ch-grid:not(.columns) .ch-info h3 a:hover{color:var(--gr) !important}
.tpl_channels ul.ch-grid:not(.columns) .ch-info .cnt,
.tpl_channels ul.ch-grid:not(.columns) .ch-views-nr{color:var(--gmut) !important;font-weight:600 !important;font-size:12.5px !important}

/* .pcard .btns - stacked, full width */
.tpl_channels ul.ch-grid:not(.columns) .ch-info .chc-view,
.tpl_channels ul.ch-grid:not(.columns) .ch-info .chc-sub{
  display:flex !important;align-items:center;justify-content:center !important;width:100% !important;
  margin:9px 0 0 !important;padding:11px 18px !important;border-radius:2px !important;
  font-family:'Open Sans',sans-serif !important;font-weight:700 !important;font-size:12.5px !important;
  letter-spacing:.1em !important;text-transform:uppercase !important;text-decoration:none !important}
.tpl_channels ul.ch-grid:not(.columns) .ch-info .chc-view{
  border:1.5px solid var(--gn) !important;color:var(--gtext) !important;background:#fff !important}
.tpl_channels ul.ch-grid:not(.columns) .ch-info .chc-view:hover{background:var(--gn) !important;color:#fff !important}
.tpl_channels ul.ch-grid:not(.columns) .ch-info .chc-sub{
  background:var(--gr) !important;border:1.5px solid var(--gr) !important;color:#fff !important}
.tpl_channels ul.ch-grid:not(.columns) .ch-info .chc-sub:hover{background:var(--grd) !important;border-color:var(--grd) !important}

/* dark mode for the card surfaces */
html.dark .tpl_channels ul.ch-grid:not(.columns) .vs-column{background:var(--gcream) !important;border-color:var(--gline) !important}
html.dark .tpl_channels ul.ch-grid:not(.columns) .ch-info h3,
html.dark .tpl_channels ul.ch-grid:not(.columns) .ch-info h3 a{color:var(--gtext) !important}
html.dark .tpl_channels ul.ch-grid:not(.columns) .ch-info .chc-view{background:transparent !important;border-color:var(--gn) !important;color:var(--gtext) !important}

/* ============================================================
   G92 - /channels follow-ups: drop the boxed border around the page
   content, match channels.html's heading type and top spacing, and
   style the video count beside the channel name.
   ============================================================ */

/* no outer box - channels.html puts the grid straight on the page */
.tpl_channels #ct-wrapper,.tpl_channel #ct-wrapper{
  background:transparent !important;border:0 !important;border-radius:0 !important;
  padding:0 !important;box-shadow:none !important;margin-bottom:0 !important}

/* heading: channels.html sets margin-top:32px on the .sec-h and 26px serif type */
.tpl_channels #main-content{margin-top:32px !important}
.tpl_channels .aptv-sec-h{margin:0 0 22px !important}
.tpl_channels .aptv-sec-h h2{
  font-family:'Playfair Display',Georgia,serif !important;font-size:26px !important;
  font-weight:700 !important;line-height:1.2 !important;letter-spacing:-.01em !important;
  color:var(--gtext) !important;text-transform:none !important}
.tpl_channels .aptv-subtitle{margin:-6px 0 26px !important}
.tpl_channels .haiii,.tpl_channels .content-wrap > section > article{margin-top:0 !important}

/* video count beside the name, as channels.html shows it */
.tpl_channels ul.ch-grid:not(.columns) .ch-info h3 .cnt{
  color:var(--gmut) !important;font-weight:600 !important;font-family:'Open Sans',sans-serif !important;
  font-size:14px !important}
html.dark .tpl_channels ul.ch-grid:not(.columns) .ch-info h3 .cnt{color:var(--gmut) !important}

/* ============================================================
   G93 - /broadcasts brought in line with test2/broadcasts.php:
   the off-air banner, the "Live Broadcasts" heading with its
   section link, and the latest-uploads fallback underneath.
   ============================================================ */
.live-banner{margin-top:26px;border:1px solid var(--gline);border-radius:6px;background:var(--gcream);
  padding:38px 30px;text-align:center;box-shadow:0 6px 24px rgba(9,43,81,.05)}
.live-banner .dot{display:inline-flex;align-items:center;gap:9px;background:var(--gn);color:#fff;
  font-family:'Open Sans',sans-serif;font-weight:800;font-size:12px;letter-spacing:.14em;
  text-transform:uppercase;padding:7px 14px;border-radius:3px}
.live-banner .dot .d{width:8px;height:8px;border-radius:50%;background:var(--gg)}
.live-banner h1{font-family:'Playfair Display',Georgia,serif !important;color:var(--gtext) !important;
  font-size:28px !important;margin:16px 0 8px !important;line-height:1.2}
.live-banner p{font-family:var(--serif),Georgia,serif;font-style:italic;color:var(--gmut) !important;
  font-size:16px;max-width:520px;margin:0 auto !important}

/* the section link sits at the right-hand end of the rule, as in the mockup */
.aptv-sec-h a{font-family:'Open Sans',sans-serif;font-weight:700;font-size:11px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--gr) !important;white-space:nowrap;text-decoration:none}
.aptv-sec-h a:hover{color:var(--grd) !important}

html.dark .live-banner{background:var(--gcream);border-color:var(--gline)}
html.dark .live-banner h1{color:var(--gtext) !important}
html.dark .live-banner .dot{background:#1b2536;color:#fff}


/* ============================================================
   G94 - the single-channel page (#wrapper.tpl_channel) now runs on the
   real app like the listing pages, so it gets the same treatment: no
   boxed content wrapper and the same heading spacing.
   ============================================================ */
.tpl_channel #main-content{margin-top:32px !important}
.tpl_channel .aptv-sec-h{margin:0 0 22px !important}
.tpl_channel .haiii{margin-top:0 !important}

/* ============================================================
   G95 - single-channel hero in the new format, mapping the app's
   #channel-header / #channel-subscribe markup onto test1/channel.html's
   .chero: cover strip, overlapping round avatar, name + stats, actions.
   ============================================================ */

/* cover strip */
.tpl_channel #channel-header{margin:14px 0 0 !important}
.tpl_channel #channel-header figure{margin:0 !important;padding:0 !important;border:0 !important;background:none !important}
.tpl_channel .crop-height.bg-channel-image{
  height:230px !important;max-height:230px !important;min-height:0 !important;
  border-radius:4px !important;overflow:visible !important;position:relative !important;
  background-color:var(--gn) !important;background-size:cover !important;
  background-position:center !important;background-repeat:no-repeat !important}
.tpl_channel .bg-channel-image > img.transparent{display:none !important}
.tpl_channel .channel-links{display:none !important}

/* avatar, overlapping the bottom-left of the cover */
.tpl_channel .channel-logo{position:absolute !important;left:8px !important;bottom:-60px !important;
  margin:0 !important;padding:0 !important;z-index:3}
.tpl_channel .channel-logo img{
  width:120px !important;height:120px !important;max-width:none !important;max-height:none !important;
  border-radius:50% !important;border:5px solid #fff !important;background:#fff !important;
  object-fit:cover !important;margin:0 !important;display:block !important;
  box-shadow:0 6px 20px rgba(9,43,81,.18) !important}

/* name + stats on the left, subscribe on the right, clearing the avatar */
.tpl_channel #channel-subscribe{
  display:flex !important;align-items:flex-end !important;gap:22px !important;
  padding:0 8px 0 150px !important;margin:-52px 0 0 !important;
  position:relative !important;z-index:2 !important;min-height:78px !important;
  background:none !important;border:0 !important;float:none !important}
.tpl_channel #channel-subscribe::after{content:"";display:block;clear:both}
.tpl_channel .channel-heading{float:none !important;flex:1 1 auto !important;min-width:0 !important;
  margin:0 !important;padding:0 !important;text-align:left !important}
.tpl_channel .channel-heading h1{
  font-family:'Playfair Display',Georgia,serif !important;font-size:32px !important;font-weight:700 !important;
  line-height:1.15 !important;color:var(--gtext) !important;margin:0 !important;padding:0 !important;
  text-transform:none !important;letter-spacing:-.01em !important}
.tpl_channel .chero-st{font-family:'Open Sans',sans-serif !important;color:var(--gmut) !important;
  font-size:13.5px !important;margin-top:5px !important;letter-spacing:.03em !important;
  font-weight:600;text-transform:uppercase}
.tpl_channel .channel-subscribe-button{float:none !important;flex:none !important;margin:0 !important}

/* the channel tab strip (#channel-tabs), styled like .tabs in channel.html */
.tpl_channel #main-content > nav{display:block !important;border-bottom:2px solid var(--gn) !important;margin:22px 0 26px !important}
.tpl_channel #main-content > nav ul{display:flex !important;gap:2px !important;list-style:none !important;margin:0 !important;padding:0 !important}
.tpl_channel #main-content > nav ul li{margin:0 !important;padding:0 !important;background:none !important;border:0 !important}
.tpl_channel #main-content > nav ul li a{
  display:block !important;font-family:'Open Sans',sans-serif !important;font-weight:700 !important;
  font-size:12px !important;letter-spacing:.1em !important;text-transform:uppercase !important;
  color:var(--gmut) !important;padding:13px 18px !important;border-bottom:3px solid transparent !important;
  margin-bottom:-2px !important;background:none !important}
.tpl_channel #main-content > nav ul li a:hover{color:var(--gtext) !important}
.tpl_channel #main-content > nav ul li.tab-current a{color:var(--gr) !important;border-bottom-color:var(--gr) !important}

@media(max-width:640px){
  .tpl_channel .crop-height.bg-channel-image{height:150px !important;max-height:150px !important}
  .tpl_channel .channel-logo{left:50% !important;transform:translateX(-50%) !important;bottom:-52px !important}
  .tpl_channel .channel-logo img{width:104px !important;height:104px !important}
  .tpl_channel #channel-subscribe{flex-direction:column !important;align-items:center !important;
    text-align:center !important;padding:0 !important;margin-top:60px !important}
  .tpl_channel .channel-heading{text-align:center !important}
}

html.dark .tpl_channel .channel-heading h1{color:var(--gtext) !important}
html.dark .tpl_channel .channel-logo img{border-color:var(--gcream) !important;background:var(--gcream) !important}

/* G89 unify header font across app + standalone pages (app pages' theme CSS forces Roboto; the header has no serif, so pin the magazine sans everywhere) */
.aptv-hdr,.aptv-hdr *{font-family:var(--sans) !important}

/* G90 search results page -> clean test1-style layout (full-width grid via tpl_browse; hide filter/tab clutter, keep heading) */
.tpl_search .filter-link,.tpl_search #search-filters-wrap,.tpl_search .top-search-type,.tpl_search select.search-type,.tpl_search .filters-wrapper{display:none !important}
.tpl_search h3.content-title{display:block !important;font-family:var(--serif),Georgia,serif !important;font-size:26px !important;color:var(--gtext) !important;margin:6px 0 4px !important;font-weight:700 !important}
.tpl_search h3.content-title i,.tpl_search h3.content-title .icon-search{color:var(--gr) !important}

/* G91 unify footer spacing across app + standalone pages (app pages' theme CSS inflates line-height); leave the serif disclaimer alone */
.aptv-footer .cols a,.aptv-footer .cols h5,.aptv-footer .top p,.aptv-footer .bottom,.aptv-footer .bottom span,.aptv-footer .bottom a,.aptv-footer .legal a{line-height:1.4 !important}

/* ============================================================
   G96 - dark mode for the injected chrome (assets/ui.js header + footer).
   Most of it follows automatically now that --paper/--line/--head flip,
   so this only covers the places that hard-code a light colour, plus the
   disclaimer/footer, which must STAY navy rather than follow the text tokens.
   ============================================================ */

/* sticky nav bar: light rule hard-codes rgba(255,255,255,.97) */
html.dark .aptv-hdr .topnav{background:rgba(13,17,23,.94) !important;border-bottom-color:var(--line) !important;
  box-shadow:0 1px 0 rgba(255,255,255,.04) !important}
html.dark .aptv-hdr .topnav a{color:var(--head) !important}
html.dark .aptv-hdr .topnav a:hover,html.dark .aptv-hdr .topnav a.on{color:var(--gr) !important}
html.dark .aptv-hdr .masthead{background:var(--paper) !important;border-bottom-color:var(--line) !important}
html.dark .aptv-hdr .masthead .logo img{content:url('https://americanpulsetv.com/f_scripts/fe/img/AmPTV_light_logo.png?v=1') !important;filter:none !important}
html.dark .aptv-hdr .umenu{background:var(--cream) !important;border-color:var(--line) !important;color:var(--ink) !important}
html.dark .aptv-hdr .umenu a{color:var(--ink) !important}
html.dark .aptv-hdr .topsearch input,html.dark .aptv-hdr .search-overlay input{
  background:var(--cream) !important;color:var(--ink) !important;border-color:var(--line) !important}
html.dark .aptv-hdr .search-overlay{background:rgba(13,17,23,.97) !important}
html.dark .aptv-hdr .hamb span{background:var(--head)}

/* Disclaimer + footer keep the deep navy in both modes - they are already dark
   surfaces, so following the text tokens would wash them out. */
html.dark .foot-disclaimer.aptv-footer{background:var(--gnd) !important}
html.dark .foot-disclaimer.aptv-footer .fd-text{color:#c7d3e4 !important}
html.dark .foot-disclaimer.aptv-footer .fd-text b{color:#fff !important}
html.dark .foot.aptv-footer{background:var(--gn) !important;color:#c7d3e4 !important}
html.dark .foot.aptv-footer .cols h5{color:#fff !important}
html.dark .foot.aptv-footer .cols a{color:#c7d3e4 !important}
html.dark .foot.aptv-footer .cols a:hover{color:#fff !important}
html.dark .foot.aptv-footer .bottom,html.dark .foot.aptv-footer .bottom .legal a{color:#9fb0c9 !important}

/* G97 - same dark-mode correction as app.css, so the disclaimer/footer band
   matches on the app pages too (G96 pinned them navy, which inverted against
   the darker page background). */
html.dark .foot-disclaimer.aptv-footer{background:#05090f !important}
html.dark .foot-disclaimer.aptv-footer .fd-text{color:#b9c6d8 !important}
html.dark .foot-disclaimer.aptv-footer .fd-text b{color:#fff !important}
html.dark .foot.aptv-footer{background:#080d14 !important}
html.dark .foot.aptv-footer .cols a,html.dark .foot.aptv-footer .bottom{color:#aab7c9 !important}
html.dark .foot.aptv-footer .cols a:hover{color:#fff !important}

/* ============================================================
   G98 - channel page: the real tab strip is #channel-tabs (.channel-tab-list),
   not the browse nav G95 targeted. Styled as channel.html's .tabs, plus the
   "All channels" back link above the hero.
   ============================================================ */
.aptv-backlink{display:inline-block;margin:24px 0 0;color:var(--gr) !important;font-family:'Open Sans',sans-serif;
  font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}
.aptv-backlink:hover{color:var(--grd) !important}
#channel-tabs .content-wrap{max-width:100% !important; margin: 0px!important; padding: 0px!important;}
.tpl_channel #channel-tabs{margin:22px 0 26px !important;padding:0 !important;background:none !important;border:0 !important}
.tpl_channel #channel-tabs nav{margin:0 !important;padding:0 !important;background:none !important;border:0 !important}
.tpl_channel ul.channel-tab-list{
  display:flex !important;gap:2px !important;list-style:none !important;
  margin:0 !important;padding:0 !important;border-bottom:1px solid var(--gn) !important;
  flex-wrap:wrap;background:none !important}
.tpl_channel ul.channel-tab-list li{margin:0 !important;padding:0 !important;background:none !important;border:0 !important;float:none !important}
.tpl_channel ul.channel-tab-list li a{
  display:block !important;font-family:'Open Sans',sans-serif !important;font-weight:700 !important;
  font-size:12px !important;letter-spacing:.1em !important;text-transform:uppercase !important;
  color:var(--gmut) !important;padding:13px 18px !important;
  border:0 !important;border-bottom:3px solid transparent !important;margin-bottom:-2px !important;
  background:none !important;text-decoration:none !important}
.tpl_channel ul.channel-tab-list li a:hover{color:var(--gtext) !important}
.tpl_channel ul.channel-tab-list li.tab-current a,
.tpl_channel ul.channel-tab-list li.active a{color:var(--gr) !important;border-bottom-color:var(--gr) !important}
/* the app prefixes each tab with an icon font glyph; channel.html has none */
.tpl_channel ul.channel-tab-list li a[class*="icon"]::before{display:none !important}

html.dark .tpl_channel ul.channel-tab-list{border-bottom-color:var(--gline) !important}
html.dark .tpl_channel ul.channel-tab-list li a{color:var(--gmut) !important}
html.dark .tpl_channel ul.channel-tab-list li.tab-current a{color:var(--gr) !important}

/* ============================================================
   G99 - Channel page: full-width, no left sidebar, matching the treatment
   the browse (G78) and watch (G83) pages already get.
   ============================================================ */
html:not(.aptv-embed) .tpl_channel .container.container_wrapper{display:block !important;max-width:1240px !important;margin:0 auto !important}
html:not(.aptv-embed) .tpl_channel .container.container_wrapper > .sidebar-container{display:none !important}
html:not(.aptv-embed) .tpl_channel .container.container_wrapper > .fluid{width:100% !important;max-width:none !important}

/* ============================================================
   G100 - channel page corrections.
   ============================================================ */

/* 1. hero: name/stats row sits directly under the avatar */
.tpl_channel #channel-subscribe{margin-top:0 !important}

/* 2. tab labels were mangled because the anchors carry a bare `icon` class and
   the legacy sheet sets `.icon{width:14%}`, stretching every tab to a
   percentage of the strip. Reset the box and keep the label in the page font. */
.tpl_channel ul.channel-tab-list li a.icon,
.tpl_channel ul.channel-tab-list li a{
  width:auto !important;max-width:none !important;min-width:0 !important;
  float:none !important;height:auto !important;line-height:1.2 !important;
  font-family:'Open Sans',sans-serif !important;speak:normal !important}
.tpl_channel ul.channel-tab-list li a span{
  font-family:'Open Sans',sans-serif !important;font-size:12px !important;
  font-weight:700 !important;letter-spacing:.1em !important;text-transform:uppercase !important;
  line-height:1.2 !important;display:inline !important; padding:0px}
/* the icon-font glyph itself */
.tpl_channel ul.channel-tab-list li a::before,
.tpl_channel ul.channel-tab-list li a::after{content:none !important;display:none !important}

/* 3. Videos tab: just the grid - no "Media Library", no "Recent" strip, no "Videos" heading */
.tpl_channel .ch-mod-videos h3.content-title,
.tpl_channel .ch-mod-videos #main-content > nav,
.tpl_channel .ch-mod-videos .aptv-sec-h{display:none !important}
.tpl_channel .ch-mod-videos #main-content{margin-top:0 !important}
.tpl_channel .ch-mod-videos .haiii{margin-top:0 !important}

/* 4. About tab: the about panel only, like the Live tab */
.tpl_channel .ch-mod-about h2.content-title,
.tpl_channel .ch-mod-about h3.content-title,
.tpl_channel .ch-mod-about > .line,
.tpl_channel .ch-mod-about .content-wrap > section > .vs-column > .line{display:none !important}

/* ============================================================
   G101 - channel page video grid. The browse grid (G81) is scoped to
   .tpl_browse, so the channel page never got it and fell back to the legacy
   .vs-column.fourths{width:26%;padding-right:22px}, which only fits three
   across. Same grid treatment here, pinned to four.
   ============================================================ */
html:not(.aptv-embed) .tpl_channel ul.fileThumbs{
  display:grid !important;grid-template-columns:repeat(4,1fr) !important;
  gap:30px 24px !important;list-style:none !important;margin:0 !important;padding:0 !important;width:100% !important}
html:not(.aptv-embed) .tpl_channel ul.fileThumbs::before,
html:not(.aptv-embed) .tpl_channel ul.fileThumbs::after{display:none !important;content:none !important}
html:not(.aptv-embed) .tpl_channel ul.fileThumbs > li{
  width:auto !important;max-width:none !important;min-width:0 !important;
  float:none !important;margin:0 !important;padding:0 !important;display:block !important}
html:not(.aptv-embed) .tpl_channel ul.fileThumbs > li .thumbs-wrapper,
html:not(.aptv-embed) .tpl_channel ul.fileThumbs > li figure,
html:not(.aptv-embed) .tpl_channel ul.fileThumbs > li img{width:100% !important}
@media(max-width:1100px){html:not(.aptv-embed) .tpl_channel ul.fileThumbs{grid-template-columns:repeat(3,1fr) !important}}
@media(max-width:820px) {html:not(.aptv-embed) .tpl_channel ul.fileThumbs{grid-template-columns:repeat(2,1fr) !important}}
@media(max-width:560px) {html:not(.aptv-embed) .tpl_channel ul.fileThumbs{grid-template-columns:1fr !important}}

/* Live tab: the broadcast list only - no "Media Library", no "Recent" strip,
   no section headings (the "Latest Videos" fallback is suppressed in VBrowse). */
.tpl_channel .ch-mod-broadcasts h3.content-title,
.tpl_channel .ch-mod-broadcasts #main-content > nav,
.tpl_channel .ch-mod-broadcasts .aptv-sec-h{display:none !important}
.tpl_channel .ch-mod-broadcasts #main-content{margin-top:0 !important}
.tpl_channel .ch-mod-broadcasts .haiii{margin-top:0 !important}

/* ============================================================
   G102 - video details page: title type, and a description clamp the
   show more/less toggle can actually drive.
   ============================================================ */

/* title: app.css's article title (34px Playfair) rather than the legacy bold sans */
.tpl_view #title-wrapper{font-weight:400 !important;margin-top:0 !important}
.tpl_view #title-wrapper h1.title-text{
  font-family:'Playfair Display',Georgia,serif !important;
  font-size:34px !important;font-weight:800 !important;line-height:1.14 !important;
  letter-spacing:-.01em !important;color:var(--gtext) !important;
  margin:4px 0 14px !important;padding:0 !important;text-transform:none !important}
@media(max-width:640px){.tpl_view #title-wrapper h1.title-text{font-size:25px !important}}

/* description clamp driven by a class, so the toggle is a class flip rather than
   an inline height animation that the stylesheet can fight */
.tpl_view #div-info .more{max-height:260px;overflow:hidden}
.tpl_view #div-info .more.aptv-info-open{max-height:none !important;height:auto !important}
.tpl_view .info-toggle{font-family:'Open Sans',sans-serif;font-weight:700;font-size:12px;
  letter-spacing:.08em;text-transform:uppercase;color:var(--gr) !important;cursor:pointer}
.tpl_view .info-toggle.no-display{display:none !important}

/* ============================================================
   G103 - video details header, per the reference: a category · age kicker
   above the title, and outlined Subscribe / Share controls.
   Like, dislike and the view counter are deliberately left alone.
   ============================================================ */

/* kicker above the title */
.tpl_view #title-wrapper .aptv-kicker-line{
  font-family:'Open Sans',sans-serif !important;font-weight:700 !important;
  font-size:11px !important;letter-spacing:.16em !important;text-transform:uppercase !important;
  color:var(--gr) !important;margin:20px 0 10px !important;padding:0 !important;line-height:1.4}
.tpl_view #title-wrapper .aptv-kicker-line .sep{color:var(--gmut) !important;margin:0 4px}

/* rule under the title, as in the reference */
.tpl_view #title-wrapper h1.title-text{padding-bottom:18px !important}

/* Share: outlined pill with uppercase label (leaves .like-wrap untouched) */
.tpl_view .act-btn .sh_button.btn_auto[target="share"]{
  width:auto !important;height:auto !important;
  border:1px solid var(--gline) !important;border-radius:3px !important;background:#fff !important;
  padding:10px 16px !important;margin-left:8px !important;
  font-family:'Open Sans',sans-serif !important;font-weight:700 !important;font-size:11.5px !important;
  letter-spacing:.1em !important;text-transform:uppercase !important;color:var(--gtext) !important;
  display:inline-flex !important;align-items:center;gap:7px;box-shadow:none !important}
.tpl_view .act-btn .sh_button.btn_auto[target="share"]:hover{border-color:var(--gn) !important;color:var(--gn) !important}

/* the other icon buttons keep their compact shape but pick up the same border */
.tpl_view .act-btn .sh_button.btn_auto:not([target="share"]){
  border:1px solid var(--gline) !important;border-radius:3px !important;background:#fff !important;
  width:38px !important;height:38px !important;line-height:36px !important;
  color:var(--gtext) !important;box-shadow:none !important;margin-left:8px !important}
.tpl_view .act-btn .sh_button.btn_auto:not([target="share"]):hover{border-color:var(--gn) !important;color:var(--gn) !important}

/* Subscribe control, styled like the reference's outlined button */
.tpl_view .channel_owner .subscribers .count_link{
  display:inline-flex !important;align-items:center;gap:7px;
  border:1px solid var(--gline) !important;border-radius:3px !important;background:#fff !important;
  padding:10px 16px !important;margin-left:8px !important;text-decoration:none !important}
.tpl_view .channel_owner .subscribers .count_link:hover{border-color:var(--gn) !important}
.tpl_view .channel_owner .subscribers .sub-txt,
.tpl_view .channel_owner .subscribers .follow-txt{
  font-family:'Open Sans',sans-serif !important;font-weight:700 !important;font-size:11.5px !important;
  letter-spacing:.1em !important;text-transform:uppercase !important;color:var(--gtext) !important;margin:0 !important}

/* channel name + avatar in the description block, in the reference's type */
.tpl_view #div-info .more .channel_image img{
  width:46px !important;height:46px !important;border-radius:50% !important;object-fit:cover !important}
.tpl_view #div-info .more .p-info > a.place-left{
  font-family:'Playfair Display',Georgia,serif !important;font-weight:700 !important;
  font-size:17px !important;color:var(--gtext) !important;text-decoration:none !important;letter-spacing:-.01em}
.tpl_view #div-info .more .p-info > a.place-left:hover{color:var(--gr) !important}
.tpl_view #div-info .more .p-date{font-size:12.5px !important;color:var(--gmut) !important}

html.dark .tpl_view .act-btn .sh_button.btn_auto,
html.dark .tpl_view .channel_owner .subscribers .count_link{background:var(--gcream) !important;border-color:var(--gline) !important}

/* ============================================================
   G104 - video description header: avatar, channel name and date read as
   one block instead of a full-width floated link with the date stranded
   beside it (.place-left{width:100%} was doing that). Description text and
   the show-more link tidied to match.
   ============================================================ */

/* avatar on the left of the name/date pair */
.tpl_view #div-info .more .channel_image{
  display:block !important;float:left !important;margin:0 14px 0 0 !important;width:46px !important}
.tpl_view #div-info .more .channel_image img{
  width:46px !important;height:46px !important;max-width:46px !important;
  border-radius:50% !important;object-fit:cover !important;display:block !important;background:#fff}

/* name and date stacked, not floated across the row */
.tpl_view #div-info .more .p-info{margin:0 !important;overflow:hidden}
.tpl_view #div-info .more .p-info > a.place-left{
  float:none !important;width:auto !important;display:block !important;
  font-family:'Playfair Display',Georgia,serif !important;font-weight:700 !important;
  font-size:17px !important;line-height:1.3 !important;letter-spacing:-.01em !important;
  color:var(--gtext) !important;text-decoration:none !important;margin:0 !important}
.tpl_view #div-info .more .p-info > a.place-left:hover{color:var(--gr) !important}
.tpl_view #div-info .more .p-date{
  display:block !important;margin:2px 0 0 !important;
  font-family:'Open Sans',sans-serif !important;font-size:12.5px !important;font-weight:400 !important;
  color:var(--gmut) !important;text-align:left !important}

/* description: full width under the byline, comfortable measure */
.tpl_view #div-info .more .p-d-txt{
  display:block !important;margin:18px 0 0 0 !important;clear:both !important;
  font-family:'Open Sans',sans-serif !important;font-size:14.5px !important;
  line-height:1.75 !important;color:var(--gink) !important}
.tpl_view #div-info .more .p-d-txt a{color:var(--gr) !important;text-decoration:none !important;word-break:break-word}
.tpl_view #div-info .more .p-d-txt a:hover{text-decoration:underline !important}

/* rule above the byline + breathing room */
.tpl_view #div-info .more > .line{margin:0 0 18px !important;border-top:1px solid var(--gline) !important;height:0 !important;background:none !important}
.tpl_view #div-info .more{padding-bottom:6px}

/* the FOLLOWERS / SUBSCRIBERS controls sit on the byline's baseline */
.tpl_view .channel_owner{margin-top:0 !important}
.tpl_view .channel_owner .subscribers.profile_count > center{display:flex !important;gap:10px;justify-content:flex-end}

html.dark .tpl_view #div-info .more .p-d-txt{color:var(--gink) !important}
html.dark .tpl_view #div-info .more .channel_image img{background:var(--gcream)}
/* the block carries two .line dividers: the first sits between the avatar and
   the name and should not draw; the second separates byline from description */
.tpl_view #div-info .more .channel_image + .line{display:none !important}
.tpl_view #div-info .more .p-info + .line{
  display:block !important;clear:both !important;margin:16px 0 0 !important;
  border-top:1px solid var(--gline) !important;height:0 !important;background:none !important}

/* ============================================================
   G92 — COMPREHENSIVE DARK MODE: darken every remaining light
   surface / form / dropdown / panel so no white areas or
   unreadable text remain on any page. (design overlay only)
   ============================================================ */
html.dark{--d-surf:#161b22;--d-surf2:#1b232d;--d-line:#2a333f;--d-text:#e6edf3;--d-mut:#9aa7b4}

/* --- content panels / boxes / cards hardcoded white in light mode --- */
html.dark .outer-border-wrapper,
html.dark .dynamic_container,html.dark .dynamic_container .box,
html.dark .widget,html.dark .dashboard-box,
html.dark .categories-container,html.dark .sidebar-container .categories-container,
html.dark #ct-wrapper,html.dark #siteContent .entry-form-class,html.dark .overview-form,
html.dark .plupload_container,html.dark #uploader_container.plupload_container,
html.dark .plupload,html.dark .plupload_view_list,html.dark .plupload_filelist,
html.dark .entry-list.tpl-messages,
html.dark #tokengraph,html.dark .tokengraph,html.dark .token-graph,html.dark .chart-wrap,
html.dark .selector,html.dark .selector.fe,html.dark .thumb-popup,html.dark .thumb-preview,
html.dark .import-feed,html.dark .feed-list,html.dark .yt-feed,html.dark .import-results,
html.dark .this-inner,html.dark #the-stats,
html.dark .lb-margins,html.dark .content,html.dark .comment_h,
html.dark .panel-heading,html.dark .box-header,html.dark .widget-header{
  background:var(--d-surf) !important;border-color:var(--d-line) !important;color:var(--d-text) !important}

/* --- sidebars --- */
html.dark .msidebar,html.dark .sidebar-container,
html.dark .sidebar-container .categories-container{background:var(--d-surf) !important;border-color:var(--d-line) !important}

/* --- headings / titles / text inside panels stay readable --- */
html.dark .content-title,html.dark h3.content-title,
html.dark .lb-margins h1,html.dark .lb-margins h2,html.dark .lb-margins h3,html.dark .lb-margins h4,html.dark .lb-margins h5,
html.dark .dynamic_container h1,html.dark .dynamic_container h2,html.dark .dynamic_container h3,html.dark .dynamic_container h4,
html.dark .dashboard-box h1,html.dark .dashboard-box h2,html.dark .dashboard-box .num,html.dark .dashboard-box span,
html.dark .box h3,html.dark .widget h3,html.dark .comment_h,html.dark .comment_h p,html.dark .comment_h a{color:var(--d-text) !important}

/* --- forms: all inputs / textarea / select --- */
html.dark input[type="text"],html.dark input[type="email"],html.dark input[type="password"],
html.dark input[type="number"],html.dark input[type="url"],html.dark input[type="tel"],
html.dark input[type="date"],html.dark input[type="search"],html.dark textarea,html.dark select,
html.dark .form-control,html.dark .input,html.dark .vs-input,html.dark .field input{
  background:var(--d-surf2) !important;color:var(--d-text) !important;border-color:var(--d-line) !important}
html.dark input::placeholder,html.dark textarea::placeholder{color:var(--d-mut) !important}
html.dark .field input:focus,html.dark input:focus,html.dark textarea:focus{border-color:#3d78c9 !important}

/* --- secondary / outline / grey buttons --- */
html.dark .btn-default,html.dark .btn-outline,html.dark .btn-secondary,html.dark .btn-grey,
html.dark .button-grey,html.dark .search-button.button-grey,html.dark .selector .dnn{
  background:var(--d-surf2) !important;color:var(--d-text) !important;border-color:var(--d-line) !important}

/* --- sidebar active menu item (was pink) --- */
html.dark .menu-panel-entry-active>a,html.dark .menu-panel-entry.active>a{background:rgba(230,20,40,.18) !important;color:#ff6b78 !important}

/* --- dropdowns / modals / fancybox / tooltips --- */
html.dark .fancybox-skin,html.dark .fancybox-inner,html.dark .modal,html.dark .modal-content,
html.dark .dropdown-menu,html.dark .headernav-pop,html.dark .tooltip-inner,
html.dark .uu.arrow_box,html.dark ul.uu,html.dark .arrow_box,html.dark .thumb-popup{
  background:var(--d-surf) !important;color:var(--d-text) !important;border-color:var(--d-line) !important}

/* --- pagination / load-more --- */
html.dark .pagination a,html.dark .pagination span,html.dark .more-button,
html.dark .load-more,html.dark span.load-more{
  background:var(--d-surf2) !important;color:var(--d-text) !important;border-color:var(--d-line) !important}

/* --- rules / dividers --- */
html.dark .hr,html.dark hr{border-color:var(--d-line) !important;background:transparent !important}
html.dark .hr .inner{background:var(--d-surf) !important;color:var(--d-mut) !important}

/* --- alerts --- */
html.dark .error,html.dark .alert-danger,html.dark .error-message,html.dark .warning{
  background:#3a1618 !important;border-color:#5c2327 !important;color:#ffb4b4 !important}

/* --- generic: any icon/border using navy on dark stays visible --- */
html.dark .util-date,html.dark .date{color:var(--d-mut) !important}

/* G93 dark mode — video/single (tpl_view) panels + any bordered wrapper */
html.dark .border-wrapper,html.dark .targetDiv,html.dark .targetDiv.border-wrapper,
html.dark .page_holder_left,html.dark .page_holder_right,
html.dark .page_holder_left.border-wrapper,html.dark .page_holder_right.border-wrapper,
html.dark .related-column,html.dark .playlist_holder,
html.dark .comments-holder,html.dark .comment-list,html.dark .respond-wrap,
html.dark .full-details-holder,html.dark .this-inner{
  background:var(--d-surf) !important;border-color:var(--d-line) !important;color:var(--d-text) !important}

/* tpl_view text: title, meta, description, up-next titles */
html.dark .tpl_view h1,html.dark .tpl_view h1 a,
html.dark .p-d-txt,html.dark .p-info,html.dark .more .p-d-txt,html.dark #div-info,
html.dark .suggested-list h3,html.dark .suggested-list h3 a,
html.dark .related-carousel h3,html.dark .related-carousel h3 a,
html.dark .suggested-list .views-number,html.dark .suggested-list .channel_name,
html.dark .up-next-title,html.dark .related-title{color:var(--d-text) !important}
html.dark .suggested-list .views-number{color:var(--d-mut) !important}

/* G94 watch page: readable tag pills (theme sets line-height:10px causing overlap) */
html:not(.aptv-embed) .tpl_view .tags_h{line-height:1.9 !important}
html:not(.aptv-embed) .tpl_view .tags_h .p-date{display:inline-block;margin-right:6px;vertical-align:middle}
html:not(.aptv-embed) .tpl_view .tags_h a{display:inline-block;margin:0 6px 7px 0;padding:3px 11px;background:var(--gcream);border:1px solid var(--gline);border-radius:14px;font-size:12.5px;line-height:1.5;color:var(--gn);text-decoration:none}
html:not(.aptv-embed) .tpl_view .tags_h a:hover{background:var(--gn);color:#fff}
html.dark .tpl_view .tags_h a{background:var(--d-surf2);border-color:var(--d-line);color:var(--d-text)}
html.dark .tpl_view .tags_h a:hover{background:var(--gr);color:#fff;border-color:var(--gr)}

/* G95 watch page: subscription-management popup was opening off-screen left
   (theme anchors it right:0/left:-400px for a right-side button; our button is on the left) */
html:not(.aptv-embed) .tpl_view .uu.arrow_box,
html:not(.aptv-embed) .tpl_view ul.uu{left:0 !important;right:auto !important;top:calc(100% + 10px) !important}
html:not(.aptv-embed) .tpl_view .uu.arrow_box:before,
html:not(.aptv-embed) .tpl_view .uu.arrow_box:after{left:28px !important;right:auto !important}

/* G96 watch page: align Category / Tags rows (label + content columns) */
html:not(.aptv-embed) .tpl_view .category_h,
html:not(.aptv-embed) .tpl_view .tags_h{display:flex !important;align-items:flex-start;margin:0 0 10px !important;line-height:1.9 !important}
html:not(.aptv-embed) .tpl_view .category_h > .vs-column,
html:not(.aptv-embed) .tpl_view .tags_h > .vs-column{float:none !important;width:auto !important;margin:0 !important;padding:0 !important}
html:not(.aptv-embed) .tpl_view .category_h > .vs-column.sixths,
html:not(.aptv-embed) .tpl_view .tags_h > .vs-column.sixths{flex:0 0 84px;width:84px !important;color:var(--gmut)}
html:not(.aptv-embed) .tpl_view .category_h > .vs-column:not(.sixths),
html:not(.aptv-embed) .tpl_view .tags_h > .vs-column:not(.sixths){flex:1 1 auto;min-width:0}
html:not(.aptv-embed) .tpl_view .category_h .clearfix,
html:not(.aptv-embed) .tpl_view .tags_h .clearfix{display:none !important}
html:not(.aptv-embed) .tpl_view .category_h .p-date,
html:not(.aptv-embed) .tpl_view .tags_h .p-date{line-height:1.9;font-weight:600}

/* G97 subscription tier popup: tab labels (Tier 1/2/3) unreadable in dark (theme uses white/#f9f9f9 tab bg) */
html.dark .tabs-style-topline nav a{background:var(--d-surf2) !important;color:var(--d-mut) !important}
html.dark .tabs-style-topline nav a:hover,html.dark .tabs-style-topline nav a:focus{color:#fff !important}
html.dark .tabs-style-topline nav li.tab-current a{background:var(--d-surf) !important;color:#fff !important;box-shadow:inset 0 3px 0 var(--gr) !important}
html.dark .tabs-style-topline nav li.tab-current{border-top-color:var(--gr) !important}
/* subscription option cards inside popup */
html.dark #sub-wrap .profile_count a,html.dark .sub-plan,html.dark .sub-type,
html.dark .subscription-option,html.dark .sub-price-box{background:var(--d-surf2) !important;border-color:var(--d-line) !important;color:var(--d-text) !important}

/* G98 comment buttons: secondary (Post a video response / Cancel) had light bg; html.dark a made text light -> invisible */
html.dark .comm-cancel-action,
html.dark .js-textareacopybtn,html.dark .js-textareacopybtn-p1,html.dark .js-textareacopybtn-p2,
html.dark a.comm-cancel-action{background:var(--d-surf2) !important;color:var(--d-text) !important;border:1px solid var(--d-line) !important}
html.dark .comm-cancel-action:hover{background:var(--d-line) !important;color:#fff !important}
/* keep light-mode secondary comment buttons legible too (dark text on light bg) */
html:not(.dark) .comm-cancel-action{color:#333 !important}

/* G99 video detail page only: category_h top spacing + flat (transparent) dark panels (per request) */
html:not(.aptv-embed) .tpl_view .category_h{margin-top:32px !important}
html.dark .tpl_view .border-wrapper,
html.dark .tpl_view .targetDiv,
html.dark .tpl_view .targetDiv.border-wrapper,
html.dark .tpl_view .page_holder_left,
html.dark .tpl_view .page_holder_right,
html.dark .tpl_view .page_holder_left.border-wrapper,
html.dark .tpl_view .page_holder_right.border-wrapper,
html.dark .tpl_view .related-column,
html.dark .tpl_view .playlist_holder,
html.dark .tpl_view .comments-holder,
html.dark .tpl_view .comment-list,
html.dark .tpl_view .respond-wrap,
html.dark .tpl_view .full-details-holder,
html.dark .tpl_view .this-inner{background:transparent !important}

/* ============================================================
   G105 - responsive header + footer for the injected chrome.
   .aptv-hdr had 83 rules and no media query at all: the hamburger,
   the mobile nav panel and the mini logo had no styling, so the header
   never collapsed on a phone. This mirrors app.css's mobile header,
   scoped to the injected markup, and tightens the footer further down.
   ============================================================ */

/* desktop defaults for the pieces that only exist for mobile */
.aptv-hdr .hamb{display:none}
.aptv-hdr .mini-logo{display:none}
.aptv-hdr .navlinks{display:contents}

@media(max-width:760px){
  .aptv-hdr .wrap{padding:0 16px}

  /* the date/auth utility strip is desktop-only; its links live in the menu */
  .aptv-hdr .util{display:none !important}

  .aptv-hdr .masthead{padding:16px 16px 0 !important}
  .aptv-hdr .masthead .logo img{height:50px !important}
  .aptv-hdr .masthead .rule{margin-top:12px}

  .aptv-hdr .topnav .wrap{height:52px;gap:0;position:relative;overflow:visible}
  .aptv-hdr .mini-logo{display:inline-block;font-family:'Playfair Display',Georgia,serif;
    font-weight:800;font-size:16px;letter-spacing:.04em;color:var(--gtext);margin-right:auto}
  .aptv-hdr .topsearch{display:none !important}
  .aptv-hdr .msearch-btn{display:inline-flex !important;align-items:center;justify-content:center}
  .aptv-hdr .theme-toggle{margin-right:4px}
  .aptv-hdr .topnav .u-btn{width:34px !important;height:34px !important;font-size:14px !important}

  /* hamburger */
  .aptv-hdr .hamb{display:flex;flex-direction:column;justify-content:center;align-items:center;
    gap:5px;width:42px;height:42px;padding:0;margin-left:4px;background:none;border:none;cursor:pointer;flex:none}
  .aptv-hdr .hamb span{width:23px;height:2px;background:var(--gtext);border-radius:2px;
    transition:transform .22s,opacity .22s;display:block}
  .aptv-hdr .hamb.on span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .aptv-hdr .hamb.on span:nth-child(2){opacity:0}
  .aptv-hdr .hamb.on span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  /* nav becomes a drop-down panel (APTV_toggleMenu adds .open) */
  .aptv-hdr .topnav .navlinks{display:none;position:absolute;top:100%;left:0;right:0;
    background:var(--paper);flex-direction:column;align-items:stretch;
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    box-shadow:0 14px 28px rgba(9,43,81,.12);z-index:60;max-height:calc(100vh - 100px);overflow-y:auto}
  .aptv-hdr .topnav .navlinks.open{display:flex}
  .aptv-hdr .topnav .navlinks a{width:100%;padding:15px 40px !important;font-size:12.5px !important;
    letter-spacing:.09em !important;border:0 !important;border-bottom:1px solid var(--line) !important;
    margin:0 !important; line-height: 20px!important;text-align: center;}
  .aptv-hdr .topnav .navlinks a.on{color:var(--gr) !important}
  

  /* the auth links that the utility strip normally carries */
  .aptv-hdr .m-auth{display:flex !important;flex-direction:column;border-top:1px solid var(--line)}
  .aptv-hdr .m-auth a{width:100%;padding:15px 20px !important;font-size:12.5px !important;
    border-bottom:1px solid var(--line) !important}

  /* full-screen search sheet (APTV_toggleSearch adds .open) */
  .aptv-hdr .search-overlay{display:none;position:fixed;inset:0;z-index:120;
    background:rgba(255,255,255,.98);padding:18px 16px}
  .aptv-hdr .search-overlay.open{display:block}
  .aptv-hdr .search-overlay input{width:100%;font-size:16px;padding:14px;border:1px solid var(--line);
    border-radius:4px;background:var(--cream);color:var(--ink)}

  /* footer: comfortable on a phone */
  .foot.aptv-footer{padding:34px 0 26px !important}
  .foot.aptv-footer .top{gap:20px}
  .foot.aptv-footer .cols{gap:16px 14px}
  .foot-disclaimer.aptv-footer .fd-inner{padding:28px 16px 30px}
  .foot-disclaimer.aptv-footer .fd-text{font-size:14.5px;line-height:1.75}
}

@media(max-width:440px){
  .aptv-hdr .masthead .logo img{height:42px !important}
  .aptv-hdr .mini-logo{font-size:15px}
  .foot.aptv-footer .cols{grid-template-columns:1fr !important}
  .foot.aptv-footer .bottom{flex-direction:column;gap:10px;text-align:center}
  .foot.aptv-footer .bottom .legal{justify-content:center;flex-wrap:wrap;gap:6px 0}
}

html.dark .aptv-hdr .search-overlay{background:rgba(13,17,23,.98)}
html.dark .aptv-hdr .hamb span{background:var(--head)}

/* ============================================================
   G106 - two fixes on the mobile chrome.

   1. The hamburger did nothing because G72 (line ~902) sets
      .aptv-hdr .topnav .navlinks{display:flex !important} at the same
      specificity as the mobile rule, so the panel could never be hidden
      and .open had nothing to reveal. The mobile rules now carry
      !important and also undo G72's nowrap / margin-right:auto.

   2. The search sheet had markup (.so-inner/.so-ic/.so-close) but no
      styling whatsoever. It is now a proper search card.
   ============================================================ */

@media(max-width:760px){
  /* --- hamburger panel, overriding G72 --- */
  .aptv-hdr .topnav .navlinks{
    display:none !important;flex-direction:column !important;flex-wrap:wrap !important;
    margin-right:0 !important;align-items:stretch !important;
    position:absolute !important;top:100% !important;left:0 !important;right:0 !important;
    background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    box-shadow:0 14px 28px rgba(9,43,81,.12);z-index:60;
    max-height:calc(100vh - 100px);overflow-y:auto}
  .aptv-hdr .topnav .navlinks.open{display:flex !important}

  /* --- search sheet --- */
  .aptv-hdr .search-overlay{
    display:none;position:fixed !important;inset:0 !important;z-index:120;
    background:rgba(6,20,40,.55) !important;backdrop-filter:blur(3px);
    padding:0 !important;width:100% !important;height:100%}
  .aptv-hdr .search-overlay.open{display:block !important}
}

/* the search card itself - same at every width, the sheet only positions it */
.aptv-hdr .search-overlay .so-inner{
  display:flex;align-items:center;gap:10px;
  background:var(--paper);margin:0;padding:12px 14px;
  border-bottom:1px solid var(--line);box-shadow:0 10px 30px rgba(9,43,81,.18)}
.aptv-hdr .search-overlay .so-ic{display:inline-flex;align-items:center;flex:none;opacity:.75}
.aptv-hdr .search-overlay input{
  flex:1 1 auto;min-width:0;width:auto !important;
  font-family:'Open Sans',sans-serif;font-size:16px;   /* 16px keeps iOS from zooming */
  padding:12px 4px !important;border:0 !important;outline:none;background:transparent !important;
  color:var(--gink) !important}
.aptv-hdr .search-overlay input::placeholder{color:var(--gmut)}
.aptv-hdr .search-overlay button[type="submit"],
.aptv-hdr .search-overlay .so-inner > button:not(.so-close){
  flex:none;border:0;border-radius:3px;background:var(--gr);color:#fff;cursor:pointer;
  font-family:'Open Sans',sans-serif;font-weight:700;font-size:11.5px;
  letter-spacing:.1em;text-transform:uppercase;padding:11px 16px}
.aptv-hdr .search-overlay .so-inner > button:not(.so-close):hover{background:var(--grd)}
.aptv-hdr .search-overlay .so-close{
  flex:none;width:38px;height:38px;border:0;background:none;cursor:pointer;
  font-size:26px;line-height:1;color:var(--gmut);padding:0}
.aptv-hdr .search-overlay .so-close:hover{color:var(--gtext)}

html.dark .aptv-hdr .search-overlay{background:rgba(0,0,0,.6) !important}
html.dark .aptv-hdr .search-overlay .so-inner{background:var(--gcream);border-bottom-color:var(--gline)}
html.dark .aptv-hdr .search-overlay input{color:var(--gink) !important}

/* ============================================================
   G107 - mobile header control cluster (logo · theme · avatar · search · menu).
   The search button had display rules only - no size, colour or hit area - and
   the avatar's 30px glyph was crammed into a 34px circle. Everything in the row
   now shares one 38px touch target, one icon size and even spacing.
   ============================================================ */

/* search button: proper target, inherits the header text colour via currentColor */
.aptv-hdr .msearch-btn{
  width:38px;height:38px;padding:0;flex:none;border:0;background:none;cursor:pointer;
  border-radius:50%;color:var(--gtext) !important;
  transition:background .15s,color .15s}
.aptv-hdr .msearch-btn svg{width:20px;height:20px;display:block;stroke:currentColor}
.aptv-hdr .msearch-btn:hover,.aptv-hdr .msearch-btn:focus-visible{background:var(--gcream);color:var(--gr) !important}

/* avatar: glyph sized to sit inside the circle rather than fill it */
.aptv-hdr .topnav .u-btn svg{width:18px !important;height:18px !important;display:block}
.aptv-hdr .topnav .u-btn{overflow:hidden}
.aptv-hdr .topnav .u-btn img{width:100% !important;height:100% !important;object-fit:cover;border-radius:50%}

@media(max-width:760px){
  /* even spacing and a common 38px target across the cluster */
  .aptv-hdr .topnav .wrap{gap:2px !important}
  .aptv-hdr .topnav .u-btn{width:36px !important;height:36px !important}
  .aptv-hdr .topnav .u-btn svg{width:17px !important;height:17px !important}
  .aptv-hdr .msearch-btn{width:38px;height:38px}
  .aptv-hdr .hamb{width:38px;height:38px;margin-left:0}

  /* the 50px pill switch is heavy next to three round controls - scale it down */
  .aptv-hdr .theme-toggle{margin:0 2px 0 0 !important}
  .aptv-hdr .theme-toggle .tt-track{width:40px !important;height:22px !important}
  .aptv-hdr .theme-toggle .tt-thumb{width:16px !important;height:16px !important;top:3px !important;left:3px !important}
  .aptv-hdr .theme-toggle .tt-thumb::after{font-size:10px !important}
  .aptv-hdr .theme-toggle input:checked + .tt-track .tt-thumb{left:21px !important}

  /* keep the mini logo from crowding the controls */
  .aptv-hdr .mini-logo{margin-right:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42vw}
}

@media(max-width:380px){
  /* G114 - the toggle used to be hidden below 380px because the bar also
     carried the search button and the avatar and there was no room. G109
     removed both, so the 40x22 mobile switch fits again all the way down to
     320px - and the menu entry alone was too easy to miss. */
  .aptv-hdr .mini-logo{max-width:38vw}
}

html.dark .aptv-hdr .msearch-btn{color:var(--head) !important}
html.dark .aptv-hdr .msearch-btn:hover{background:rgba(255,255,255,.06)}

/* ============================================================
   G108 - mobile bottom tab bar on the app pages. The custom pages get it
   from UI.mount(); the app pages now call UI.mountBottomNav() from the
   chrome script, and george.css had no .botnav rules at all, so these
   mirror app.css's.
   ============================================================ */
.botnav{display:none}

@media(max-width:760px){
  .botnav{
    display:flex;position:fixed;left:0;right:0;bottom:0;z-index:120;
    background:var(--paper);border-top:1px solid var(--line);
    box-shadow:0 -6px 18px rgba(9,43,81,.08)}
  .botnav a{
    flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
    padding:8px 2px calc(7px + env(safe-area-inset-bottom,0px));
    font-family:'Open Sans',sans-serif;font-weight:700;font-size:10px;letter-spacing:.06em;
    text-transform:uppercase;color:var(--gmut) !important;text-decoration:none !important;
    min-width:0}
  .botnav a svg{width:23px;height:23px;display:block;stroke:currentColor}
  .botnav a span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .botnav a.on{color:var(--gr) !important}
  .botnav a:active{background:var(--gcream)}

  /* keep the bar from covering the end of the page / the footer */
  .has-botnav{padding-bottom:58px}
  body.has-botnav .foot.aptv-footer{margin-bottom:0}
}

html.dark .botnav{background:#0f141f;border-top-color:rgba(255,255,255,.10)}
html.dark .botnav a{color:var(--gmut) !important}
html.dark .botnav a.on{color:var(--gr) !important}

/* ============================================================
   G109 - mobile top bar simplified: burger on the left, dark/light switch
   on the right, search and avatar removed. Done with flex `order` so the
   markup (and the JS that drives the burger) stays untouched.
   DOM order in .topnav .wrap is: mini-logo, navlinks, grow, theme-toggle,
   u-btn, msearch-btn, hamb.
   ============================================================ */
@media(max-width:760px){
  .aptv-hdr .topnav .wrap{display:flex !important;align-items:center;gap:8px !important}

  /* burger first */
  .aptv-hdr .hamb{order:1 !important;margin:0 !important}
  /* then the wordmark, then the spacer that pushes the rest right */
  .aptv-hdr .mini-logo{order:2 !important;margin:0 !important}
  .aptv-hdr .topnav .grow{order:3 !important;flex:1 1 auto !important;display:block !important}
  /* and the theme switch on the right */
  .aptv-hdr .theme-toggle{order:4 !important;margin:0 !important}

  /* removed from the bar */
  .aptv-hdr .topnav .u-btn{display:none !important}
  .aptv-hdr .msearch-btn{display:none !important}

  /* the nav panel is absolutely positioned, so its order is irrelevant,
     but keep it out of the flex line */
  .aptv-hdr .topnav .navlinks{order:5 !important}
}

/* The search sheet stays available: the bottom tab bar's Search item opens it
   via APTV_toggleSearch(). Only the header icon was removed, not search. */

/* G100 video detail: description text in the editorial serif (matches the title) */
html:not(.aptv-embed) .tpl_view .p-d-txt,
html:not(.aptv-embed) .tpl_view #div-info .p-d-txt,
html:not(.aptv-embed) .tpl_view .full-details-holder .p-d-txt{
  font-family:var(--serif) !important;font-size:16.5px !important;line-height:1.8 !important}

/* ============================================================
   G110 - burger panel: match the custom pages exactly.
   app.css anchors it with left/right:-16px so it bleeds past the wrap's
   16px gutter to the screen edges; george.css used left/right:0, leaving
   a gap down both sides - which is why the panel looked different on the
   live / channel / videos pages. Same geometry and finish on both now.
   ============================================================ */
@media(max-width:760px){
  .aptv-hdr .topnav .wrap{position:relative !important;overflow:visible !important}

  .aptv-hdr .topnav .navlinks{
    left:-16px !important;right:-16px !important;top:100% !important;
    padding:4px 0 !important;
    border-top:1px solid var(--gline) !important;
    border-bottom:1px solid var(--gline) !important;
    box-shadow:0 16px 32px rgba(9,43,81,.14) !important;
    background:var(--paper) !important;
    max-height:calc(100vh - 110px) !important;overflow-y:auto !important;
    -webkit-overflow-scrolling:touch}

  /* rows: full-width targets, hairline between, no rule under the last one */
  .aptv-hdr .topnav .navlinks > a{
    display:block !important;width:100% !important;
    padding:14px 40px !important;margin:0 !important;
    font-family:'Open Sans',sans-serif !important;font-weight:700 !important;
    font-size:12.5px !important;letter-spacing:.09em !important;text-transform:uppercase !important;
    color:var(--gtext) !important;text-decoration:none !important;
    border:0 !important;border-bottom:1px solid var(--gline) !important; line-height: 20px!important;text-align: center;}
  .aptv-hdr .topnav .navlinks > a:last-child{border-bottom:0 !important}
  .aptv-hdr .topnav .navlinks > a:active{background:var(--gcream) !important}
  .aptv-hdr .topnav .navlinks > a.on{color:var(--gr) !important}

  /* the auth block that sits at the foot of the panel */
  .aptv-hdr .m-auth{display:flex !important;flex-direction:column !important;
    border-top:1px solid var(--gline) !important;margin-top:4px !important}
  .aptv-hdr .m-auth a{padding:14px 20px !important;font-size:12.5px !important;
    letter-spacing:.09em !important;text-transform:uppercase !important;font-weight:700 !important;
    color:var(--gtext) !important;border-bottom:1px solid var(--gline) !important}
  .aptv-hdr .m-auth a:last-child{border-bottom:0 !important}
}

/*
html.dark .aptv-hdr .topnav .navlinks{border-color:var(--gline) !important;box-shadow:0 16px 32px rgba(0,0,0,.5) !important}
html.dark .aptv-hdr .topnav .navlinks > a{color:var(--head) !important;border-bottom-color:var(--gline) !important}
*/
/* G101 dark mode: inline navy-colored links (e.g. media-library "View") are invisible on dark -> light blue */
html.dark [style*="color:var(--navy)"]{color:#7fb0ff !important}
html.dark .dtable .row-media img{border:1px solid var(--d-line, #2a333f)}

/* ===== G102 message center (tpl_messages) + accordion sidebar dark mode ===== */
/* sidebar accordion parent links had light (#f5f5f5) bg */
html.dark .dcjq-parent,html.dark a.dcjq-parent,
html.dark .sidebar-container .accordion a,html.dark .categories-container .accordion a{background:transparent !important;color:var(--d-text) !important}
html.dark .dcjq-parent:hover,html.dark .sidebar-container .accordion a:hover{background:rgba(255,255,255,.04) !important}
html.dark .menu-panel-entry.active>a,html.dark .menu-panel-entry-active>a{background:rgba(230,20,40,.16) !important;color:#ff6b78 !important}

/* message rows / accordion */
html.dark .responsive-accordion-head,
html.dark .responsive-accordion-title,
html.dark .responsive-accordion-content,
html.dark .responsive-accordion-body{background:var(--d-surf) !important;color:var(--d-text) !important;border-color:var(--d-line) !important}
html.dark .responsive-accordion-head:hover{background:var(--d-surf2) !important}
html.dark .responsive-accordion-head b,html.dark .responsive-accordion-title b,
html.dark .responsive-accordion-head a,html.dark .ct-entry b{color:var(--d-text) !important}
html.dark .responsive-accordion-head .greyed-out,
html.dark .entry-type.greyed-out,html.dark .greyed-out,
html.dark .responsive-accordion-title span,html.dark .responsive-accordion-head span,
html.dark .entry-date,html.dark .msg-date{color:var(--d-mut) !important}

/* pagination bar */
html.dark .paging-bg,html.dark .paging-top-border,
html.dark .left-float.paging-top-border,html.dark .paging-bg a,html.dark .pagination-wrap{
  background:var(--d-surf) !important;border-color:var(--d-line) !important;color:var(--d-text) !important}
html.dark .paging-bg a,html.dark .paging-numbers a{color:var(--d-text) !important}

/* label / action dropdown menus */
html.dark .dl-menu,html.dark ul.dl-menu,html.dark .dl-menuwrapper ul,
html.dark .dl-menu li,html.dark .dl-menu li a{background:var(--d-surf) !important;color:var(--d-text) !important;border-color:var(--d-line) !important}
html.dark .dl-menu li a:hover{background:var(--d-surf2) !important}

/* compose / message body panels + toolbar */
html.dark .responsive-accordion,html.dark .entry-list.tpl-messages,
html.dark .message-content,html.dark .msg-body,html.dark .compose-wrap,
html.dark .cke_chrome,html.dark .cke_inner,html.dark .cke_contents{background:var(--d-surf) !important;border-color:var(--d-line) !important;color:var(--d-text) !important}

/* ============================================================
   G111 - mobile footer: keep the group headings, but lay each group's
   links out inline underneath instead of one per row. Stacking every
   link made the footer ~450px tall on a phone; this keeps the labels
   and the grouping while cutting most of that height.

      BROWSE
      Videos · Live · Channels · Playlists
      ACCOUNT
      Dashboard · My Account · Upload · Media Library
      …
   ============================================================ */
@media(max-width:760px){
  .foot.aptv-footer .cols{
    display:flex !important;flex-direction:column !important;
    grid-template-columns:none !important;gap:16px !important;width:100% !important}

  /* one group per block, heading then its links */
  /* plain block, so the links below the heading flow inline.
     A column flex container would put each link on its own line. */
  .foot.aptv-footer .cols > div{
    display:block !important;width:100% !important;margin:0 !important}

  .foot.aptv-footer .cols h5{
    display:block !important;margin:0 0 6px !important;
    font-size:10.5px !important;letter-spacing:.16em !important}

  /* the links of a group, inline and wrapping */
  .foot.aptv-footer .cols > div > a{
    display:inline-block !important;margin:0 !important;padding:4px 0 !important;
    font-size:13px !important;line-height:1.4 !important;white-space:nowrap}
  .foot.aptv-footer .cols > div > a + a{margin-left:14px !important;position:relative}
  .foot.aptv-footer .cols > div > a + a::before{
    content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%);
    width:1px;height:11px;background:rgba(255,255,255,.18)}
}
@media(max-width:440px){
  .foot.aptv-footer .cols{grid-template-columns:none !important;gap:14px !important}
  .foot.aptv-footer .cols > div > a{font-size:12.5px !important}
  .foot.aptv-footer .cols > div > a + a{margin-left:12px !important}
}

/* ============================================================
   G112 - mobile footer centred: logo, tagline, group headings, links
   and the bottom bar all centre-aligned. The logo and tagline carry
   inline styles (display:block / max-width:320px), so those are
   overridden here rather than left half-aligned.
   ============================================================ */
@media(max-width:760px){
  .foot.aptv-footer .top{align-items:center !important;text-align:center !important}
  .foot.aptv-footer .top > div:first-child{display:flex !important;flex-direction:column !important;
    align-items:center !important;width:100%}
  .foot.aptv-footer .top img{margin-left:auto !important;margin-right:auto !important}
  .foot.aptv-footer .top p{max-width:320px !important;margin-left:auto !important;margin-right:auto !important;
    text-align:center !important}

  .foot.aptv-footer .cols{align-items:center !important;text-align:center !important}
  .foot.aptv-footer .cols > div{text-align:center !important}
  .foot.aptv-footer .cols h5{text-align:center !important}

  .foot.aptv-footer .bottom{flex-direction:column !important;align-items:center !important;
    justify-content:center !important;text-align:center !important;gap:10px !important}
  .foot.aptv-footer .bottom .legal{justify-content:center !important;flex-wrap:wrap}

  .foot-disclaimer.aptv-footer .fd-inner{text-align:center !important}
}

/* G103 message center: cancel/trigger buttons + label triggers dark */
html.dark .trigger,html.dark .link.trigger,html.dark .cancel-trigger,
html.dark a.link.cancel-trigger,html.dark .dl-trigger,html.dark .add-label-trigger{
  background:var(--d-surf2) !important;color:var(--d-text) !important;border-color:var(--d-line) !important}
html.dark .trigger:hover,html.dark .cancel-trigger:hover{background:var(--d-line) !important;color:#fff !important}

/* ============================================================
   G113 - the bottom tab bar was merging into the footer's copyright row.
   Two causes. (1) The bar had no height of its own: it came out as the sum
   of border + padding + icon + gap + an INHERITED label line-height, which
   landed on exactly 58px - the same number G108 reserved - so the copyright
   line ended up flush against the bar with nothing between them. (2) That
   bar padding adds env(safe-area-inset-bottom) but the reserve did not, so
   on a notched phone the bar grew ~34px while the page still held back 58px
   and the bar covered the copyright outright.
   Pin the bar to a known height, reserve exactly that (inset included), and
   leave some air under the copyright line.
   ============================================================ */
@media(max-width:760px){
  :root{--botnav-h:56px}

  .botnav{
    height:calc(var(--botnav-h) + env(safe-area-inset-bottom,0px));
    padding-bottom:env(safe-area-inset-bottom,0px);
    box-sizing:border-box}
  /* the inset now lives on the bar, so the links keep a plain fixed box */
  .botnav a{padding:0 2px;line-height:1}
  .botnav a span{line-height:13px}

  /* Reserving the space on <body> only works where <body> can grow. The app
     pages set html,body{height:100%} and scroll on <html>, so there the body
     box stays 844px tall, its content overflows it, and a padding-bottom on
     that short box is buried inside the overflow - the page still ended at
     the footer and the bar covered the copyright. So reserve the space on the
     footer instead: it is the last in-flow block on every page, so its
     padding always lengthens the scroll. Body padding goes to 0 or the two
     would stack and leave a navy strip above the bar on the custom pages. */
  .has-botnav{padding-bottom:0 !important}
  body.has-botnav .foot.aptv-footer{
    padding-bottom:calc(26px + var(--botnav-h) + env(safe-area-inset-bottom,0px)) !important}
}

/* G104 message action buttons (Reply / Delete / Block User): even horizontal spacing
   (each button sits in its own .place-left, so .msg-buttons is the flex row) */
html:not(.aptv-embed) .tpl_messages .msg-buttons{display:flex !important;flex-wrap:wrap;gap:14px;align-items:center;padding-top:10px !important;float:none !important}
html:not(.aptv-embed) .tpl_messages .msg-buttons .place-left{display:inline-flex !important;float:none !important;margin:0 !important;padding:0 !important;width:auto !important}
html:not(.aptv-embed) .tpl_messages .msg-buttons .place-left .left-align{margin:0 !important;padding:0 !important}
html:not(.aptv-embed) .tpl_messages .msg-buttons .reply-msg,
html:not(.aptv-embed) .tpl_messages .msg-buttons .delete-msg,
html:not(.aptv-embed) .tpl_messages .msg-buttons .block-user{margin:0 !important;width:auto !important;flex:0 0 auto !important;white-space:nowrap}

/* G105 dark mode: class-based navy text (my-account stat numbers, 404 code) -> light blue */
html.dark .acct-stats .s b{color:#7fb0ff !important}
html.dark .err-code{color:#7fb0ff !important}

/* ============================================================
   G115 - small-mobile (<=400px) horizontal overflow. Three separate causes,
   all of them in rules added here earlier:
   1. the browse grid's minmax(300px,1fr) floor is wider than the content box
      of a 320px viewport, so every card pushed the page 10px sideways;
   2. .aptv-sec-h is a nowrap flex row, so its trailing link could not fit
      beside the heading and its rule and hung 23px off the edge;
   3. reCAPTCHA is a fixed 304px widget and .auth-wrap is a grid, so the
      card's min-width:auto pinned it at 350px - wider than a 360px phone
      once the gutters are counted. That put a horizontal scroll on login,
      register and recovery at the most common Android width.
   ============================================================ */
html:not(.aptv-embed) .tpl_browse ul.fileThumbs{
  grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr)) !important}

@media(max-width:400px){
  /* let the trailing link drop to its own line instead of overhanging */
  .aptv-sec-h{flex-wrap:wrap}
  .aptv-sec-h h2{min-width:0}
  .aptv-sec-h a{margin-left:auto}

  /* tighter gutters, and a card that is allowed to shrink at all */
  .auth-wrap{padding-left:12px !important;padding-right:12px !important}
  .auth-card{min-width:0;padding-left:16px !important;padding-right:16px !important}
  .auth-card form{min-width:0}
  /* scale the fixed 304x78 widget down and pull its layout box in to match,
     so it stops forcing the card wider than the screen */
  .g-recaptcha{min-width:0;overflow:hidden}
  .g-recaptcha > div{transform:scale(.82);transform-origin:50% 0;margin:0 -27px -14px}
}

/* ===== G106 mobile member sidebar -> clean horizontal pill menu =====
   (G63 .msidebar rules use !important with no media query and were breaking
   the mobile layout: cramped items, visible captions, stray red left-border) */
@media(max-width:900px){
  html:not(.aptv-embed) .member{grid-template-columns:1fr !important}
  html:not(.aptv-embed) .msidebar{display:flex !important;flex-direction:row !important;overflow-x:auto;-webkit-overflow-scrolling:touch;
    border-right:none !important;border-bottom:1px solid var(--gline) !important;padding:9px 10px !important;gap:8px !important;
    white-space:nowrap;background:var(--paper) !important;align-items:center}
  html:not(.aptv-embed) .msidebar .cap,
  html:not(.aptv-embed) .msidebar .sep,
  html:not(.aptv-embed) .msidebar .flinks,
  html:not(.aptv-embed) .msidebar .mchan{display:none !important}
  html:not(.aptv-embed) .msidebar a.mi{flex:0 0 auto !important;display:inline-flex !important;align-items:center;gap:8px;
    padding:8px 14px !important;border-radius:20px !important;background:var(--gcream) !important;border:1px solid var(--gline) !important;
    font-size:13px;font-weight:700;box-shadow:none !important;color:var(--gn) !important}
  html:not(.aptv-embed) .msidebar a.mi.on{background:var(--gr) !important;color:#fff !important;border-color:var(--gr) !important;box-shadow:none !important}
  html:not(.aptv-embed) .msidebar a.mi .i{font-size:14px;opacity:1}
  /* dark mode pills */
  html.dark .msidebar{background:var(--d-surf) !important;border-bottom-color:var(--d-line) !important}
  html.dark .msidebar a.mi{background:var(--d-surf2) !important;border-color:var(--d-line) !important;color:var(--d-text) !important}
  html.dark .msidebar a.mi.on{background:var(--gr) !important;color:#fff !important;border-color:var(--gr) !important}
}

/* G107 header avatar: red circle border on all pages + image fully fills the circle
   (image was 3px shorter than the navy button, leaving a blue arc at the bottom) */
.aptv-hdr .u-btn,.aptv-hdr .topnav .u-btn{border:2px solid var(--gr) !important;box-sizing:border-box !important;position:relative !important;overflow:hidden !important}
.aptv-hdr .u-btn:has(img){background:transparent !important}
.aptv-hdr .u-btn img,.aptv-hdr .u-btn img.u-av,.aptv-hdr .topnav .u-btn img{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;object-fit:cover !important;border-radius:50% !important;display:block !important}

/* ============================================================
   G151 - sign in / register card, rendered by the app's own
   tpl_signin.tpl / tpl_signup.tpl (tpl_auth/tpl_signin_loginbox.tpl,
   tpl_auth/tpl_register.tpl). Same card as the former standalone
   /login + /register pages; everything is scoped to the page class
   #wrapper gets from $page_display, so no other page is affected.
   ============================================================ */
#wrapper.tpl_signin,#wrapper.tpl_signup,#wrapper.tpl_recovery,#wrapper.tpl_recovery{background:#fff !important}
.tpl_signin .sidebar-container,.tpl_signup .sidebar-container,.tpl_recovery .sidebar-container{display:none !important}
.tpl_signin .inner-block,.tpl_signup .inner-block,.tpl_recovery .inner-block{margin:0 !important;padding:0 !important;width:auto !important;float:none !important}
.tpl_signin .inner-spacer,.tpl_signup .inner-spacer,.tpl_recovery .inner-spacer{display:none !important}
html:not(.aptv-embed) .tpl_signin .container.container_wrapper,html:not(.aptv-embed) .tpl_signup .container.container_wrapper,html:not(.aptv-embed) .tpl_recovery .container.container_wrapper{display:block !important;max-width:1240px !important;margin:0 auto !important;padding-top:0 !important}
html:not(.aptv-embed) .tpl_signin .container.container_wrapper > .sidebar-container,html:not(.aptv-embed) .tpl_signup .container.container_wrapper > .sidebar-container,html:not(.aptv-embed) .tpl_recovery .container.container_wrapper > .sidebar-container{display:none !important}
html:not(.aptv-embed) .tpl_signin .container.container_wrapper > .fluid,html:not(.aptv-embed) .tpl_signup .container.container_wrapper > .fluid,html:not(.aptv-embed) .tpl_recovery .container.container_wrapper > .fluid{width:100% !important;max-width:none !important}
.tpl_signin > .spacer,.tpl_signup > .spacer,.tpl_recovery > .spacer{display:none !important}
.tpl_signin #siteContent,.tpl_signup #siteContent,.tpl_recovery #siteContent{padding:0 !important;margin:0 !important}

.tpl_signin .auth-wrap,.tpl_signup .auth-wrap,.tpl_recovery .auth-wrap{min-height:70vh;display:grid;place-items:center;padding:50px 20px}
.tpl_signin .auth-card,.tpl_signup .auth-card,.tpl_recovery .auth-card{width:100%;max-width:430px;box-sizing:border-box;background:#fff;
  border:1px solid #e3e3e6;border-top:4px solid var(--gr);box-shadow:0 8px 30px rgba(9,43,81,.10);padding:38px 36px;text-align:left}
.tpl_signin .auth-card,.tpl_signup .auth-card,.tpl_recovery .auth-card,.auth-card .kicker,.auth-card .sub,.auth-card .field,.auth-card .field label,
.auth-card .field input,.auth-card .hint,.auth-card form{line-height:normal !important}
.auth-card .kicker{display:block;text-align:center;margin-bottom:8px;font-family:'Open Sans',system-ui,sans-serif;
  font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gr)}
.auth-card h1{font-family:'Playfair Display',Georgia,serif !important;font-weight:800;font-size:30px;line-height:1.15;
  letter-spacing:-.01em;text-align:center;color:var(--gtext);margin:0;padding:0}
.auth-card .sub{text-align:center;color:var(--gmut);font-family:'Playfair Display',Georgia,serif;font-style:italic;
  font-size:15px;margin:8px 0 26px;padding:0}
.auth-card .field{margin-bottom:16px}
.auth-card .field label{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--gtext);margin-bottom:7px}
.auth-card .field input,.auth-card .user-form .field input.login-input{width:100% !important;box-sizing:border-box !important;
  height:auto !important;border:1px solid #e3e3e6 !important;border-radius:2px !important;padding:13px 14px !important;
  font-size:14.5px !important;font-family:inherit;outline:none;background:var(--gcream) !important;color:var(--gink);box-shadow:none !important}
.auth-card .field input:focus,.auth-card .user-form .field input:focus{border-color:var(--gn) !important;background:#fff !important;box-shadow:none !important}
.auth-card .field label{font-size:11px !important;letter-spacing:.1em !important;margin:0 0 7px !important;padding:0 !important;width:auto !important;float:none !important}
.auth-card .field input{margin:0 !important;vertical-align:top}
.auth-card .field .hint{display:block;margin-top:6px;font-size:11.5px;color:var(--gmut);font-family:'Playfair Display',Georgia,serif;
  font-style:italic;letter-spacing:0;text-transform:none;font-weight:400}
.auth-card #check-response{float:right;margin:0;font-size:11.5px}
.auth-card #passwdRating{margin-top:8px}
.auth-card #ps-rating{font-size:11.5px;color:var(--gmut);margin-top:4px}

.auth-card .auth-row{display:flex;justify-content:space-between;align-items:center;margin:6px 0 20px}
.auth-card .auth-remember{font-size:13px;color:var(--gmut);font-weight:400;letter-spacing:0;text-transform:none;cursor:pointer}
.auth-card .auth-remember input{width:auto !important;height:auto !important;margin:0 3px 0 0;vertical-align:middle}
.auth-card .auth-forgot{font-size:13px;color:var(--gr);font-weight:700}

.auth-card .btn.red.btn-full{display:flex;width:100%;box-sizing:border-box;justify-content:center;align-items:center;
  padding:15px;border:none;border-radius:2px !important;background:var(--gr);color:#fff;cursor:pointer;
  font-family:'Open Sans',system-ui,sans-serif !important;font-weight:700 !important;font-size:12.5px;letter-spacing:.1em;
  text-transform:uppercase;text-decoration:none;line-height:normal}
.auth-card .btn.red.btn-full:hover{background:var(--grd);color:#fff}
.auth-card .btn.red.btn-full span{color:#fff;font:inherit;letter-spacing:inherit}

.auth-card .captcha-row{margin:0 0 18px !important;display:flex;justify-content:center}
.auth-card .terms{display:flex;align-items:flex-start;gap:9px;font-size:12.5px;color:var(--gmut);line-height:1.5;
  margin:4px 0 18px;font-weight:400;letter-spacing:0;text-transform:none;cursor:pointer}
.auth-card .terms,.auth-card .terms span,.auth-card .auth-remember{font-family:'Open Sans',system-ui,sans-serif !important;font-weight:400 !important;
  font-style:normal !important;letter-spacing:0 !important;text-transform:none !important;color:var(--gmut) !important}
.auth-card .terms{font-size:12.5px !important;line-height:1.5 !important;width:100% !important;max-width:none !important;box-sizing:border-box;padding:0 !important;margin:4px 0 18px !important}
.auth-card .terms span{font-size:12.5px !important;line-height:1.5 !important}
.auth-card .terms input,.auth-card .auth-remember input{padding:0 !important;border-radius:0 !important;border:initial !important;background:initial !important;font-size:inherit !important}
.auth-card .terms input{margin:3px 0 0 !important}
.auth-card .terms input{width:auto !important;height:auto !important;margin-top:3px;flex:none}
.auth-card .terms a,.auth-card .auth-alt a{color:var(--gr);font-weight:700}

.auth-card .divider{display:flex;align-items:center;gap:12px;color:var(--gmut);font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;margin:20px 0}
.auth-card .divider::before,.auth-card .divider::after{content:"";flex:1;height:1px;background:#e3e3e6}
.auth-card .oauth{display:flex;gap:10px;margin:6px 0 20px}
.auth-card .oauth button,.auth-card .oauth a{flex:1 1 0;min-width:0;border:1px solid #e3e3e6;background:#fff;border-radius:3px !important;
  padding:12px 10px;font-weight:700;cursor:pointer;font-family:inherit;font-size:13px;letter-spacing:.02em;text-transform:none;
  color:var(--gtext);display:flex;align-items:center;justify-content:center;gap:8px;height:auto;width:auto;margin:0}
.auth-card .oauth button:hover,.auth-card .oauth a:hover{border-color:var(--gn);box-shadow:0 2px 12px rgba(9,43,81,.1)}
.auth-card .oauth img{height:18px;width:18px;flex:none;object-fit:contain;margin:0;display:block}

.auth-card .auth-alt{text-align:center;font-size:13.5px;color:var(--gmut);margin-top:22px;line-height:1.4}

/* the app's own error / notice box, inside the card */
.auth-card #error-message,.auth-card .error-message,.auth-card #notice-message,.auth-card .notice-message{
  font-size:13px;margin:0 0 16px !important;text-align:center;padding:11px 14px !important;border-radius:3px !important;box-shadow:none !important}
.auth-card #error-message,.auth-card .error-message{color:#a11 !important;background:#fdecec !important;border:1px solid #f3c2c2 !important}
.auth-card #notice-message,.auth-card .notice-message{color:#1e6b34 !important;background:#eaf5ec !important;border:1px solid #bfe0c8 !important}

.auth-card #cb-response{float:none !important;display:block !important;width:100% !important;margin:0 !important;padding:0 !important;clear:both}
.auth-card .error-message-text,.auth-card .notice-message-text{background:none !important;border:none !important;box-shadow:none !important;
  padding:0 !important;margin:0 !important;color:inherit !important;font-size:13px !important;line-height:1.45 !important;text-align:center}
.auth-card .auth-ok #notice-message,.auth-card .auth-ok .notice-message{background:none !important;border:none !important;padding:0 !important;margin:0 0 18px !important}
.auth-card .auth-ok .notice-message-text{font-family:'Playfair Display',Georgia,serif !important;font-size:15px !important;line-height:1.6 !important;color:#3a3d47 !important}
.auth-card .auth-ok .notice-message-text::before,.auth-card .auth-ok .notice-message-text::after,.auth-card .auth-ok .notice-message i{display:none !important}
html.dark .auth-card .auth-ok .notice-message-text{color:var(--gink) !important}
/* success state after registering */
.auth-card .auth-ok{text-align:center;padding:8px 0 4px}
.auth-card .auth-ok .ok-ic{width:60px;height:60px;border-radius:50%;background:#eaf5ec;color:#1e6b34;display:grid;
  place-items:center;font-size:30px;margin:0 auto 16px;border:2px solid #bfe0c6}
.auth-card .auth-ok h2{font-family:'Playfair Display',Georgia,serif !important;font-size:24px;color:var(--gtext);margin:0 0 12px}
.auth-card .auth-ok .btn{margin-top:6px}

/* default free signup (/register): the membership selector is already hidden
   by tpl_payment_packlist.tpl, so the package description goes with it */
.auth-card.auth-default-pack #membership-wrapper,.auth-card.auth-default-pack #membership-wrapper + *{display:none !important}
#siteContent .auth-card .entry-form-class{background:transparent !important;border:none !important;border-radius:0 !important;
  box-shadow:none !important;padding:0 !important;margin:0 !important;max-width:none !important}
.auth-card .entry-form-class > .row{margin:0 !important}
.auth-card:not(.auth-default-pack) .entry-form-class > .row{margin-bottom:16px !important}
.auth-card .entry-form-class > .row > label{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--gtext);margin-bottom:7px}

html.dark #wrapper.tpl_signin,html.dark #wrapper.tpl_signup,html.dark #wrapper.tpl_recovery{background:transparent !important}
html.dark .auth-card,html.dark .auth-card .oauth button,html.dark .auth-card .oauth a{background:var(--gcream);border-color:var(--gline)}
html.dark .auth-card{border-top-color:var(--gr)}
html.dark .auth-card .field input{background:var(--gcream) !important;color:var(--gink);border-color:var(--gline) !important}
html.dark .auth-card .field input:focus{background:#0c111b !important}
html.dark .auth-card .divider::before,html.dark .auth-card .divider::after{background:var(--gline)}

@media(max-width:760px){
  .tpl_signin .auth-card,.tpl_signup .auth-card,.tpl_recovery .auth-card{padding:28px 22px}
  .auth-card h1{font-size:25px}
}

/* recovery (tpl_auth/tpl_recovery.tpl, tpl_recovery_form.tpl) */
.auth-card .auth-response:empty{display:none}
.auth-card .auth-response{margin-top:12px}
.auth-card .auth-response #error-message,.auth-card .auth-response .error-message,
.auth-card .auth-response #notice-message,.auth-card .auth-response .notice-message{margin:0 !important}
.auth-card .auth-static{font-size:14.5px;font-weight:700;color:var(--gtext);padding:2px 0 0}
.auth-card .field input::placeholder{color:var(--gmut);opacity:.8}
.tpl_recovery .auth-card .divider{margin:28px 0 24px;font-weight:700}
/* ============================================================
   G165 - Creator-only menus and links (Media Library, Subscribers
   Panel, Token Panel, My Channel). Hidden unless the page says the
   account is a creator: <html data-role="creator">, set in
   tpl_head_min.tpl on app pages and by assets/ui.js on custom pages.
   "Normal user" accounts get data-role="viewer".
   ============================================================ */
html:not([data-role="creator"]) .creator-only,
/* the phone footer sets its links to inline-block !important with a stronger selector */
html:not([data-role="creator"]) .foot.aptv-footer .cols > div > a.creator-only{display:none !important}
/* G165 end */

/* ============================================================
   G160 - member area rendered by the app's own modules
   (account, library, my_channel, subscribers, tokens, upload,
   subscriptions). Same look as the
   former standalone dashboard / my-account / media-library /
   my-channel / subscribers pages: white ground, page heading,
   stat cards, bordered panels, cream inputs, red buttons.
   The :is() list is the #wrapper class of those page types.
   ============================================================ */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]){background:#fff !important}
html:not(.aptv-embed) :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .container.container_wrapper{max-width:1240px !important;margin:0 auto !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) > .spacer{display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .inner-spacer{display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .inner-block{background:transparent !important;border:none !important;box-shadow:none !important;margin:0 !important;padding:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent{padding:26px 32px 60px !important;margin:0 !important;background:transparent !important;min-width:0;box-sizing:border-box}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent .statsBox,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #overview-userinfo,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #ct-wrapper,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent > .container{
  background:transparent !important;border:none !important;box-shadow:none !important;border-radius:0 !important;padding:0 !important;margin:0 !important;max-width:none !important;width:auto !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent .left-float.wdmax{float:none !important;width:auto !important}

/* page heading: the module's own title, or .page-h where the template has one */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .page-h{margin:0 0 22px}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .page-h h1{font-family:'Playfair Display',Georgia,serif !important;font-weight:800;font-size:28px;line-height:1.15;letter-spacing:-.01em;color:var(--gtext);margin:0;padding:0}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .page-h p{color:var(--gmut);font-size:14px;margin:5px 0 0;font-family:'Playfair Display',Georgia,serif;font-style:italic}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent article > h3.content-title{font-family:'Playfair Display',Georgia,serif !important;font-weight:800 !important;font-size:28px !important;
  line-height:1.15 !important;color:var(--gtext) !important;margin:0 0 22px !important;padding:0 !important;border:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent article > h3.content-title > i{display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent article > .line{display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #overview-userinfo .vs-column.full > article > h3.content-title{font-size:17px !important;margin:0 0 14px !important}

/* panels */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .panel{border:1px solid var(--gline) !important;border-radius:5px !important;background:#fff !important;margin:0 0 24px !important;overflow:hidden;box-shadow:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .panel .ph{padding:15px 18px;border-bottom:1px solid var(--gline);display:flex;align-items:center;justify-content:space-between}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .panel .ph h3{font-family:'Playfair Display',Georgia,serif !important;font-size:17px;font-weight:800;color:var(--gtext);margin:0}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .panel .pb{padding:18px}

/* stat cards: VUseraccount::getUserStats('stats') tiles */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #overview-userinfo .vs-column.full{float:none !important;width:auto !important;margin:0 0 8px !important;padding:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #overview-userinfo .vs-column.full > div > div:not(.clearfix){display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 16px}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #overview-userinfo ul.l.vs-column.thirds{float:none !important;width:auto !important;margin:0 !important;padding:18px !important;box-sizing:border-box;list-style:none;
  border:1px solid var(--gline) !important;border-radius:5px !important;background:#fff !important;display:flex;flex-direction:column-reverse;align-items:flex-start;height:auto !important;min-height:0 !important;text-align:left !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #overview-userinfo ul.l.vs-column.thirds li{list-style:none;margin:0 !important;padding:0 !important;background:none !important;color:var(--gtext) !important;text-align:left !important;float:none !important;width:auto !important;height:auto !important;line-height:1 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #overview-userinfo ul.l.vs-column.thirds li.l1{display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #overview-userinfo ul.l.vs-column.thirds li.l2{font-size:12px !important;color:var(--gmut) !important;margin-top:8px !important;text-transform:uppercase;letter-spacing:.05em;font-weight:400}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #overview-userinfo ul.l.vs-column.thirds li.l3{font-family:'Abril Fatface','Playfair Display',Georgia,serif !important;font-size:28px !important;color:var(--gtext) !important;min-height:28px}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #overview-userinfo ul.l.vs-column.thirds li.l3 i{display:none !important}

/* account overview panel */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .pb{display:flex;gap:26px;align-items:flex-start;flex-wrap:wrap}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .pb > .clearfix{display:none}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .vs-column.fourths{float:none !important;width:170px !important;padding:0 !important;flex:none}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .vs-column.three_fourths{float:none !important;width:auto !important;flex:1 1 320px;padding:0 !important;min-width:0}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .user-thumb-xlarge{background:none !important;border:none !important;box-shadow:none !important;padding:0 !important;margin:0 0 12px !important;width:auto !important;height:auto !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .user-thumb-xlarge img{width:120px !important;height:120px !important;border-radius:50% !important;object-fit:cover;border:3px solid var(--gg);background:#fff;display:block;margin:0 auto}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .imageChange,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .imageChange form{background:none !important;border:none !important;box-shadow:none !important;padding:0 !important;margin:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats h3{font-family:'Open Sans',system-ui,sans-serif !important;font-size:11px !important;font-weight:700 !important;letter-spacing:.1em;text-transform:uppercase;color:var(--gmut) !important;margin:14px 0 4px !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats h2{font-family:'Playfair Display',Georgia,serif !important;font-size:20px !important;font-weight:800;color:var(--gtext) !important;margin:0 !important;text-transform:none}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-date{font-size:13px;color:var(--gmut);margin:0 0 6px}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-date .label{font-weight:700;color:var(--gtext)}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-sub > div:first-child{font-family:'Playfair Display',Georgia,serif;font-size:20px;font-weight:800;color:var(--gtext);border:none !important;padding:0 !important}

/* buttons: the app's .form-button inside member content */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent .search-button.form-button,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent button.form-button{width:auto !important;height:auto !important;display:inline-flex !important;align-items:center;justify-content:center;gap:8px;
  padding:12px 22px !important;border:none !important;border-radius:2px !important;background:var(--gr) !important;color:#fff !important;
  font-family:'Open Sans',system-ui,sans-serif !important;font-weight:700 !important;font-size:12.5px !important;letter-spacing:.1em !important;text-transform:uppercase !important;line-height:normal !important;cursor:pointer}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent .search-button.form-button:hover{background:var(--grd) !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent .search-button.form-button span{color:#fff !important;font:inherit !important;letter-spacing:inherit !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent .search-button.form-button i,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent .search-button.form-button span::before{display:none !important}

/* form fields generated by the app (generate_html / channel form) */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent label{font-family:'Open Sans',system-ui,sans-serif !important;font-size:11px !important;font-weight:700 !important;letter-spacing:.1em !important;text-transform:uppercase !important;color:var(--gtext) !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent input[type="text"],:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent input[type="password"],:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent input[type="email"],:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent input.login-input,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent textarea,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent .ta-input{
  border:1px solid var(--gline) !important;border-radius:2px !important;padding:13px 14px !important;height:auto !important;font-size:14.5px !important;
  background:var(--gcream) !important;color:var(--gink) !important;box-shadow:none !important;box-sizing:border-box !important;outline:none;max-width:100% !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent input[type="text"]:focus,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent input[type="password"]:focus,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent textarea:focus{border-color:var(--gn) !important;background:#fff !important}

/* left menu: same rows as the old member sidebar */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container #session-accordion > li > a,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .categories-container .accordion > li > a{background:transparent !important;display:flex !important;align-items:center;gap:14px;
  padding:11px 22px !important;font-size:14px !important;font-weight:600 !important;color:var(--gtext) !important;box-shadow:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .categories-container .accordion > li > a:hover{background:var(--gcream) !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container #session-accordion > li.main-menu-panel-entry-active > a,
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion > li.menu-panel-entry-active > a,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion > li > a.active{
  background:var(--gcream) !important;color:var(--gr) !important;box-shadow:inset 3px 0 0 var(--gr) !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion > li > a.active i,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion > li.menu-panel-entry-active > a i{color:var(--gr) !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .this-inner .categories-container{border:none !important;margin:0 !important;padding:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion > li > a{padding:9px 22px 9px 56px !important;font-size:13.5px !important;font-weight:600 !important;gap:10px}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion > li > a i{width:16px;text-align:center;font-size:13px !important;margin:0 !important}

/* membership limits (VUseraccount::getUserStats('sub')) */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats .vs-column.half{float:left !important;width:50% !important;box-sizing:border-box;padding:0 18px 0 0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-sub{float:none !important;width:auto !important;margin:0 0 14px !important;padding:0 !important;border:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .sc .vs-column.half:empty{display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .sc .vs-column.half{margin:0 0 14px !important;position:relative}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .pl{position:static !important;display:flex !important;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gmut);background:none !important;margin:0 0 6px !important;padding:0 !important;width:auto !important;height:auto !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .pl i{color:var(--gg);font-size:13px}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .uProgress{position:relative;height:8px !important;border-radius:4px !important;background:#e6e7eb !important;margin:0 0 22px !important;overflow:visible !important;border:none !important;width:auto !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .uBar{height:8px !important;border-radius:4px !important;background:var(--gr) !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .uLabel{position:absolute !important;top:12px !important;left:0 !important;right:auto !important;font-size:11.5px !important;line-height:1 !important;color:var(--gmut) !important;width:auto !important;text-align:left !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent .search-button.form-button::before,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent .search-button.form-button::after,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent .search-button.form-button span::after{display:none !important;content:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent .search-button.form-button span{border:none !important;padding:0 !important;margin:0 !important;display:inline !important}

/* account sections (generate_html accordions): shown as open panels */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .vs-column.half{float:none !important;width:auto !important;padding:0 !important;margin:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper ul.responsive-accordion{list-style:none !important;margin:0 0 24px !important;padding:0 !important;border:none !important;background:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper ul.responsive-accordion > li{list-style:none;margin:0 !important;padding:0 !important;border:1px solid var(--gline) !important;border-radius:5px !important;background:#fff !important;overflow:hidden}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .responsive-accordion-head{padding:15px 18px !important;border:none !important;border-bottom:1px solid var(--gline) !important;background:#fff !important;cursor:default !important;margin:0 !important;border-radius:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .responsive-accordion-head span{font-family:'Playfair Display',Georgia,serif !important;font-size:17px !important;font-weight:800 !important;color:var(--gtext) !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .responsive-accordion-head i{display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .responsive-accordion-panel{display:block !important;padding:18px !important;margin:0 !important;border:none !important;background:#fff !important;height:auto !important;overflow:visible !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details > .left-float{float:none !important;width:auto !important;padding:0 !important;margin:0 !important;border:none !important;background:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .row{display:block !important;float:none !important;width:auto !important;max-width:460px;margin:0 0 16px !important;padding:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .row::after{content:"";display:block;clear:both}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .row > div,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .row > span{float:none !important;width:auto !important;display:block !important;line-height:normal !important;margin:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .row label{display:block;margin:0 0 7px !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .row input.login-input,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .row input[type="text"],:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .row input[type="password"],:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .row textarea{width:100% !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .row .wd140:empty,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .row > div:empty{display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .grayText{font-size:14.5px;font-weight:700;color:var(--gtext) !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .pinfo{max-width:520px;margin:0 0 16px;color:var(--gmut);font-family:'Playfair Display',Georgia,serif;font-size:14px;line-height:1.5}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .pinfo p{color:inherit;font:inherit;margin:0}
/* open-all / close-all make no sense once every panel is open; the save control stays */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper #all-open,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper #all-close{display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .open-close-links{margin-top:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper article{position:relative}
/* delete account */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .acct-danger ul.responsive-accordion > li{border-color:#f0c9c9 !important;background:#fdf6f6 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .acct-danger .responsive-accordion-head,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .acct-danger .responsive-accordion-panel{background:#fdf6f6 !important;border-color:#f0c9c9 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .acct-danger .responsive-accordion-head span{color:#8a1a2a !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .acct-danger .search-button.form-button{background:#8a1a2a !important}
html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper ul.responsive-accordion > li,html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .responsive-accordion-head,html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .responsive-accordion-panel{background:var(--gcream) !important;border-color:var(--gline) !important}
html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .acct-danger ul.responsive-accordion > li,html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .acct-danger .responsive-accordion-head,html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .acct-danger .responsive-accordion-panel{background:#1f151a !important;border-color:#4a2530 !important}

/* my channel / subscribers headings and secondary button */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .page-h.page-h-row{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:12px}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .page-h .btn.ghost{display:inline-flex;align-items:center;padding:12px 22px;border:1.5px solid var(--gn);border-radius:2px !important;background:transparent;color:var(--gtext);
  font-family:'Open Sans',system-ui,sans-serif !important;font-weight:700 !important;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .page-h .btn.ghost:hover{background:var(--gn);color:#fff}
#wrapper.tpl_manage_channel #siteContent #ct-wrapper article > h3.content-title{font-size:20px !important;margin:0 0 16px !important}
#wrapper.tpl_manage_channel #siteContent #ct-wrapper .entry-form-class{border:1px solid var(--gline) !important;border-radius:5px !important;box-shadow:none !important;padding:18px !important;background:#fff !important}
#wrapper.tpl_manage_channel #siteContent #ct-wrapper .entry-form-class > label{display:block;margin:14px 0 7px !important}
#wrapper.tpl_manage_channel #siteContent #ct-wrapper .entry-form-class > label:first-child{margin-top:0 !important}
#wrapper.tpl_manage_channel #siteContent #ct-wrapper .entry-form-class input[type="text"],#wrapper.tpl_manage_channel #siteContent #ct-wrapper .entry-form-class textarea{width:100% !important}
#wrapper.tpl_manage_channel #siteContent #ct-wrapper .entry-form-class > a{font-size:14px;color:var(--gr);font-weight:600}
#wrapper.tpl_manage_channel #siteContent #save_channel{margin-top:18px !important}
html.dark #wrapper.tpl_manage_channel #siteContent #ct-wrapper .entry-form-class{background:var(--gcream) !important;border-color:var(--gline) !important}
html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .page-h .btn.ghost{border-color:var(--gtext)}
#wrapper.tpl_subscribers .acct-panel .user-thumb-xlarge + .imageChange:empty,#wrapper.tpl_subscribers .acct-panel .imageChange center:empty{display:none}

html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]){background:transparent !important}
html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .panel,html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #overview-userinfo ul.l.vs-column.thirds{background:var(--gcream) !important;border-color:var(--gline) !important}
html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .panel .ph{border-color:var(--gline)}
html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent input[type="text"]:focus,html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent input[type="password"]:focus,html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent textarea:focus{background:#0c111b !important}

@media(max-width:900px){
  /* one column; the left menu becomes a scrolling row of pills, as on the old member pages */
  html:not(.aptv-embed) :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .container.container_wrapper{display:flex !important;flex-direction:column}
  html:not(.aptv-embed) :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .container.container_wrapper > .sidebar-container{order:-1}
  html:not(.aptv-embed) :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .container.container_wrapper > .fluid{width:100% !important}
  html:not(.aptv-embed) :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .container.container_wrapper > .sidebar-container,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .viewport,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .overview{min-width:0 !important;max-width:100vw !important;width:100% !important;overflow:hidden !important;box-sizing:border-box}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container #session-accordion{max-width:100%;box-sizing:border-box}
  html:not(.aptv-embed) :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .container.container_wrapper > .sidebar-container{display:block !important;border:none !important;border-bottom:1px solid var(--gline) !important;padding:0 !important;width:auto !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .this-inner .categories-container{display:block !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container h4.categories-menu-title{display:none !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container #session-accordion{display:flex !important;flex-wrap:nowrap;align-items:center;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:12px 16px !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container #session-accordion > li{flex:0 0 auto;margin:0 !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion{display:flex !important;flex-wrap:nowrap;gap:8px;margin:0 !important;padding:0 !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion > li{flex:0 0 auto}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container #session-accordion > li > a,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .categories-container .accordion > li > a{padding:8px 14px !important;border-radius:20px !important;background:var(--gcream) !important;
    font-size:13px !important;font-weight:700 !important;box-shadow:none !important;gap:8px;white-space:nowrap}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion > li > a{padding:8px 14px !important;background:#fff !important;border:1px solid var(--gline) !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container #session-accordion > li.main-menu-panel-entry-active > a,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion > li > a.active,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion > li.menu-panel-entry-active > a{
    background:var(--gn) !important;color:#fff !important;box-shadow:none !important;border-color:var(--gn) !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion > li > a.active i,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .inner-accordion > li.menu-panel-entry-active > a i{color:#fff !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats .vs-column.half{float:none !important;width:auto !important;padding:0 !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #ct-wrapper .ct-entry-details .row{max-width:none}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent{padding:20px 16px 48px !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent #overview-userinfo .vs-column.full > div > div:not(.clearfix){grid-template-columns:repeat(2,1fr)}
}

/* upload: the heading belongs to the full page, not to the embedded uploader */
html.aptv-embed .page-h{display:none !important}
#wrapper.tpl_upload #siteContent .entry-form-class{border:1px solid var(--gline) !important;border-radius:5px !important;box-shadow:none !important}

/* static pages (m_page/page.php -> tpl_ww/tpl_page/*.tpl): navy title band + centred article,
   as on the former /info page */
#wrapper.tpl_page{background:#fff !important;overflow-x:clip}
html:not(.aptv-embed) .tpl_page .container.container_wrapper{display:block !important;max-width:1240px !important;margin:0 auto !important;padding-top:0 !important}
html:not(.aptv-embed) .tpl_page .container.container_wrapper > .sidebar-container{display:none !important}
html:not(.aptv-embed) .tpl_page .container.container_wrapper > .fluid{width:100% !important;max-width:none !important}
.tpl_page > .spacer,.tpl_page .inner-spacer{display:none !important}
.tpl_page .inner-block{margin:0 !important;padding:0 !important;width:auto !important;float:none !important;background:transparent !important;border:none !important;box-shadow:none !important}
.tpl_page #siteContent{padding:0 24px 30px !important;margin:0 !important;font-size:16px !important}
.tpl_page .info-hero{background:var(--gn);color:#fff;position:relative;margin:0 calc(50% - 50vw);padding:46px calc(50vw - 50%) 40px}
.tpl_page .info-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;
  background:linear-gradient(90deg,var(--gn) 0 33.33%,var(--gr) 33.33% 66.66%,var(--gg) 66.66% 100%)}
.tpl_page .info-hero .kicker{display:inline-block;font-family:'Open Sans',system-ui,sans-serif;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gg) !important;margin-bottom:12px}
.tpl_page .info-hero h1{font-family:'Playfair Display',Georgia,serif !important;font-weight:800;font-size:42px;line-height:1.08;color:#fff !important;letter-spacing:-.015em;margin:0;padding:0}
.tpl_page #siteContent > .lb-margins,.tpl_page #siteContent > .about-page{max-width:760px;margin:0 auto !important;padding:40px 0 30px !important;float:none !important;width:auto !important;background:transparent !important;border:none !important;box-shadow:none !important}
.tpl_page #siteContent .content-title{font-family:'Open Sans',system-ui,sans-serif !important;font-size:12px !important;font-weight:700 !important;letter-spacing:.12em !important;
  text-transform:uppercase !important;color:var(--gr) !important;margin:34px 0 0 !important;padding:0 !important;line-height:1.4 !important;display:block !important;border:none !important;width:auto !important}
.tpl_page #siteContent article:first-child .content-title{margin-top:0 !important}
.tpl_page #siteContent .content-title i{display:none !important}
.tpl_page #siteContent .line{height:2px !important;width:38px !important;background:var(--gg) !important;border:none !important;margin:9px 0 20px !important;border-radius:2px}
.tpl_page #siteContent .lb-margins h1,.tpl_page #siteContent .about-page h1,.tpl_page #siteContent h2,.tpl_page #siteContent h3:not(.content-title){font-family:'Playfair Display',Georgia,serif !important;color:var(--gtext);font-weight:700;letter-spacing:-.005em;margin:28px 0 10px;line-height:1.3}
.tpl_page #siteContent .lb-margins h1,.tpl_page #siteContent .about-page h1{font-size:22px}
.tpl_page #siteContent h2,.tpl_page #siteContent h3:not(.content-title){font-size:18px}
.tpl_page #siteContent p{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:16px;line-height:1.8;color:#3a3d47;margin:0 0 15px}
.tpl_page #siteContent p span{font-family:inherit;font-size:inherit;color:inherit}
.tpl_page #siteContent ul{padding-left:0;margin:0 0 18px}
.tpl_page #siteContent li{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:15.5px;line-height:1.7;color:#3a3d47;margin:0 0 9px;list-style:none;padding-left:20px;position:relative}
.tpl_page #siteContent li::before{content:"\203A";position:absolute;left:3px;top:-1px;color:var(--gr);font-weight:700}
.tpl_page #siteContent li i{display:none}
.tpl_page #siteContent a{color:var(--gr);font-weight:600}
.tpl_page #siteContent strong,.tpl_page #siteContent b{color:var(--gtext);font-weight:700}
.tpl_page #siteContent .title-text{display:none}
.tpl_page #siteContent img{border-radius:4px;max-width:100%;height:auto}
html.dark #wrapper.tpl_page{background:transparent !important}
html.dark .tpl_page #siteContent p,html.dark .tpl_page #siteContent li{color:var(--gink)}
@media(max-width:640px){.tpl_page .info-hero h1{font-size:32px}.tpl_page #siteContent > .lb-margins,.tpl_page #siteContent > .about-page{padding:28px 0 !important}}

/* G169 - bring the converted pages back to the old custom-page metrics.
   The app pages inherit line-height 1.8; the custom pages used "normal". */
.aptv-hdr,.aptv-hdr .util,.aptv-hdr .util a,.aptv-hdr .util span,.aptv-hdr nav a,.aptv-hdr input,.aptv-hdr button{line-height:normal}
html:not(.aptv-embed) :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .container.container_wrapper,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .page-h p,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .panel,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .panel .ph{line-height:normal !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .panel .ph h3{line-height:1.15 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container #session-accordion > li > a,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .categories-container .accordion > li > a{line-height:normal !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container #session-accordion > li > a .i,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .categories-container .accordion > li > a .i{opacity:.95;margin:0 !important;line-height:normal !important}
html:not(.aptv-embed) :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .container.container_wrapper > .sidebar-container{padding:16px 0 40px !important;border-right:1px solid var(--gline) !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container h4.categories-menu-title{display:flex !important;align-items:center;gap:10px;line-height:normal !important;padding:16px 22px 8px !important;margin:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container h4.categories-menu-title i{position:static !important;float:none !important;margin:0 !important;width:auto !important;font-size:11px !important;color:var(--gmut) !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container h4.categories-menu-title .i{margin:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .overview > .categories-container + .categories-container{border-top:1px solid var(--gline) !important;margin-top:10px !important;padding-top:10px !important}
/* sections the custom sidebar never had */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .overview > .categories-container:not(.aptv-mylib):not(:has(#session-accordion)){display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .inner-block > section{padding:0 !important;margin:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container #menu-panel-wrapper,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container #menu-panel-wrapper ~ .categories-container{display:none !important}
/* small footer links under the menu: removed on request (2026-10-02). The site-wide rule
   near the top (.sidebar-nav-footer{display:none}) hides them here too; the same links
   are in the page footer. */

:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent article > h3.content-title{height:auto !important;min-height:0 !important}
.tpl_page .info-hero,.tpl_page .info-hero .kicker{line-height:normal}
.tpl_page #siteContent .content-title{height:auto !important;min-height:0 !important}
.tpl_page #siteContent article{margin:0 !important;padding:0 !important;min-height:0 !important}
.tpl_page #siteContent .lb-margins h1,.tpl_page #siteContent .about-page h1,.tpl_page #siteContent h2,.tpl_page #siteContent h3:not(.content-title){line-height:1.15 !important}
.tpl_page #siteContent #placeholders > h1:first-child,.tpl_page #siteContent .lb-margins > h1:first-of-type{margin-top:0 !important}

/* register card: the old page had no strength bar under the password field */
.tpl_signup .auth-card #passwdRating{display:none !important}

/* G173 - library fixes: the submenu repeats the section name (hidden, as the app intends with
   .no-display), and the file grid keeps the app's own text metrics.
   Grid rules apply to view mode 1 only; the list views (modes 2 and 3) keep the app's layout. */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container .this-inner h4.categories-menu-title,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .sidebar-container h4.categories-menu-title.no-display{display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent ul.fileThumbs,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent ul.fileThumbs li{line-height:1.8 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:26px 22px;margin:0 !important;padding:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big::before,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big::after{display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big > li{float:none !important;width:auto !important;margin:0 !important;padding:0 !important;min-width:0}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big > li .thumbs-wrapper{display:block !important;width:100% !important;height:auto !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big > li figure{width:100% !important;height:auto !important;margin:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big > li img.mediaThumb{width:100% !important;height:auto !important;aspect-ratio:204/122;object-fit:cover;display:block}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big > li h2{margin:10px 0 2px !important;height:auto !important;max-height:34px;overflow:hidden}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big > li h2 a{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:17px !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big > li .profile_image{display:block !important;height:auto !important;margin:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big > li .profile_wrap{height:auto !important;overflow:hidden}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big > li .channel_name{float:none !important;display:block !important;line-height:18px !important;color:var(--gmut)}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big > li .caption{margin:0 !important;height:auto !important;overflow:hidden}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big > li .caption .vs-column{float:none !important;width:auto !important;line-height:18px !important;padding:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) #siteContent [id^="main-view-mode-1"] ul.fileThumbs.big > li .vwrap{width:100% !important;margin-top:6px !important}

/* G179 - dark mode for the app's library / messages widgets (toolbar buttons, search button,
   Selection Actions, view-mode buttons, the Select / Edit / Delete strip). They come from the
   app's theme CSS with a white background, which stays white when the site is switched to dark. */
html.dark .viewType_btn,html.dark .viewType_btn.viewType_btn-default,html.dark .btn-group.viewType .viewType_btn{
  background:var(--gcream) !important;border-color:var(--gline) !important;color:var(--gink) !important;box-shadow:none !important}
html.dark .viewType_btn span,html.dark .viewType_btn .hst,html.dark .viewType_btn i{color:var(--gink) !important}
html.dark .viewType_btn.active i,html.dark .viewType_btn.active span{color:var(--gr) !important}
html.dark .viewType_btn:hover{background:#1c2430 !important}
html.dark .sb-search-submit,html.dark .sb-icon-search-fe,html.dark .sb-search-fe .icon-search{background:var(--gcream) !important;color:var(--gink) !important;border-color:var(--gline) !important}
html.dark .sb-search-input{background:var(--gcream) !important;color:var(--gink) !important;border-color:var(--gline) !important}
html.dark #entry-action-buttons,html.dark .dl-menuwrapper{background:var(--gcream) !important;border-color:var(--gline) !important}
html.dark #entry-action-buttons .dl-trigger,html.dark .dl-menuwrapper .dl-trigger{background:transparent !important;color:var(--gink) !important}
html.dark .thumbs-wrappers{background:var(--gcream) !important;border-color:var(--gline) !important}
html.dark .thumbs-wrappers a,html.dark .thumbs-wrappers a i{color:var(--gink) !important}
html.dark .thumbs-wrappers a .icon-times{color:var(--gr) !important}
html.dark ul.mp-sort-by{background:var(--gcream) !important;border-color:var(--gline) !important}
html.dark ul.mp-sort-by ul,html.dark ul.mp-sort-by .sub-menu,html.dark .mp-sort-options ul ul{background:var(--gcream) !important;border-color:var(--gline) !important}

/* G182 - fixes from the 2026-10-05 screenshots
   1) footer disclaimer: keep the band dark and its text light in dark mode, whatever else
      targets <section> elements (one generic rule makes every section transparent) */
html.dark body .foot-disclaimer.aptv-footer{background:#05090f !important;background-color:#05090f !important}
html.dark body .foot-disclaimer.aptv-footer .fd-text{color:#b9c6d8 !important}
html.dark body .foot-disclaimer.aptv-footer .fd-text b{color:#fff !important}
html.dark body .foot-disclaimer.aptv-footer .fd-kicker{color:var(--gg) !important}

/* 2) Channels and Videos: no empty band between the header and the page heading
      (.spacer 35px + .inner-spacer 43px + the tabs' 32px top margin) */
#wrapper.tpl_channels > .spacer,#wrapper.tpl_browse > .spacer,
#wrapper.tpl_channels .inner-spacer,#wrapper.tpl_browse .inner-spacer{display:none !important}
#wrapper.tpl_channels #main-content,#wrapper.tpl_browse #main-content{margin-top:0 !important}

/* 3) watch page: views + actions on one row, channel + Subscribe/Follow on the next,
      both rows lined up (the buttons sit in .channel_owner, positioned over #div-info) */
.tpl_view .channel_owner{margin-top:16px !important}
.tpl_view #div-info{margin-top:16px !important}
.tpl_view .channel_owner .subscribers.profile_count > center{align-items:center}
.tpl_view .channel_owner .subscribers .count_link{height:46px !important;min-height:0 !important;padding:0 22px !important;display:inline-flex !important;align-items:center;justify-content:center;box-sizing:border-box}
.tpl_view .channel_owner .subscribers .sub-txt,.tpl_view .channel_owner .subscribers .follow-txt{height:auto !important;line-height:1 !important;padding:0 !important;margin:0 !important}
.tpl_view #div-info .more > .p-info.p-less:first-of-type{min-height:46px;display:flex;flex-direction:column;justify-content:center;gap:3px;margin:0 0 16px !important}
.tpl_view #div-info .more > .p-info.p-less:first-of-type br{display:none}
.tpl_view #div-info .more > .p-info.p-less:first-of-type > a.place-left{float:none !important;line-height:1.25 !important}
.tpl_view #div-info .more > .p-info.p-less:first-of-type .p-date{display:block;line-height:1.3 !important;margin:0 !important}
.tpl_view #div-info .more .channel_image{margin-bottom:16px !important}

/* 4) watch page: category and tags always visible; only the description text is
      clamped until "Show more" (george.js measures .p-d-txt) */
.tpl_view #div-info .more{max-height:none !important;height:auto !important;overflow:visible !important}
/* the app's own show more/less handler still runs and leaves an inline height (e.g. 1516px)
   on .more after "show less"; height:auto above keeps the box at its content height */
.tpl_view #div-info .more:not(.aptv-info-open) .p-d-txt{max-height:150px;overflow:hidden}
.tpl_view #div-info .more.aptv-clamped:not(.aptv-info-open) .p-d-txt{-webkit-mask-image:linear-gradient(#000 65%,transparent);mask-image:linear-gradient(#000 65%,transparent)}
html.dark .tpl_view #div-info .more > .line,html.dark .tpl_view #div-info .more .p-info + .line,html.dark .tpl_view #div-info .more .line{border-color:var(--gline) !important;background:none !important}
.tpl_view #div-info .more .category_h,.tpl_view #div-info .more .tags_h{margin-top:14px !important}
.tpl_view #div-info .more{margin-bottom:0 !important}
.tpl_view #div-info .more .tags_h{margin-bottom:0 !important}
.tpl_view #div-info .uu-wrap{height:0 !important;min-height:0 !important;margin:0 !important;overflow:visible !important}
.tpl_view #div-info .info-toggle{display:inline-block;margin-top:14px}

/* 5) file edit (m_file/files_edit.php): one row of text tabs like the rest of the member
      area, content flush with the title, buttons lined up on the left */
#wrapper.tpl_files_edit #main-content > nav{height:auto !important;margin:6px 0 22px !important}
#wrapper.tpl_files_edit #main-content > nav ul{display:flex !important;flex-wrap:wrap !important;gap:0 2px;overflow:visible !important;border-bottom:2px solid var(--gline);margin:0 !important;padding:0 !important;background:none !important;left:0 !important;transform:none !important;width:auto !important}
#wrapper.tpl_files_edit #main-content > nav ul li{flex:0 0 auto !important;width:auto !important;border:none !important;background:none !important;margin:0 !important}
#wrapper.tpl_files_edit #main-content > nav ul li a{display:block !important;padding:12px 12px !important;margin-bottom:-2px;border:none !important;border-bottom:3px solid transparent !important;background:none !important;
  font-family:'Open Sans',system-ui,sans-serif !important;font-size:12px !important;font-weight:700 !important;letter-spacing:.07em;text-transform:uppercase;color:var(--gmut) !important;white-space:nowrap;line-height:normal !important}
#wrapper.tpl_files_edit #main-content > nav ul li a::before,#wrapper.tpl_files_edit #main-content > nav ul li a::after{display:none !important}
#wrapper.tpl_files_edit #main-content > nav ul li a span{color:inherit !important;font:inherit !important}
#wrapper.tpl_files_edit #main-content > nav ul li.tab-current a{color:var(--gr) !important;border-bottom-color:var(--gr) !important}
#wrapper.tpl_files_edit #main-content > nav ul li a:hover{color:var(--gtext) !important}
#wrapper.tpl_files_edit #main-content .content-wrap{padding:0 !important;margin:0 !important}
#wrapper.tpl_files_edit #main-content .content-wrap > section{padding:0 !important;margin:0 !important}
#wrapper.tpl_files_edit #main-content .content-wrap > section article > h3.content-title{font-size:20px !important;margin:0 0 14px !important}
#wrapper.tpl_files_edit #main-content .content-wrap .entry-form-class{margin:0 !important}
#wrapper.tpl_files_edit #main-content > nav ul{justify-content:flex-start !important}
#wrapper.tpl_files_edit #main-content > nav ul li,#wrapper.tpl_files_edit #main-content > nav ul li.tab-current,#wrapper.tpl_files_edit #main-content > nav ul li a{border-top:none !important;box-shadow:none !important}
#wrapper.tpl_files_edit #main-content > nav ul li::before,#wrapper.tpl_files_edit #main-content > nav ul li::after,
#wrapper.tpl_files_edit #main-content > nav ul li a span::before,#wrapper.tpl_files_edit #main-content > nav ul li a span::after{display:none !important;content:none !important}
#wrapper.tpl_files_edit #main-content .content-wrap > section > article,#wrapper.tpl_files_edit #main-content .content-wrap > section > article > div{padding:0 !important;margin:0 !important;width:auto !important;float:none !important}
#wrapper.tpl_files_edit .update-button{float:none !important;width:auto !important;padding:0 !important;margin:18px 0 0 !important;display:flex !important;gap:12px;flex-wrap:wrap}
#wrapper.tpl_files_edit .update-button .form-button{margin:0 !important}
#wrapper.tpl_files_edit #title-wrapper-off article{padding:0 !important}

/* G189 - Subscriptions / Following (m_file/subscriptions.php, tpl_subs). The page's channel
   list (#menu-panel-wrapper, VFiles::userSubs) stays hidden in the left menu, so the menu is the
   same as on every other member page. tpl_nav_subs.tpl turns it into a card grid on plain
   /subscriptions and /following (.subs-grid), a row of channel buttons on one channel's page
   (.subs-chips), and .subs-empty when there are none. */
#wrapper.tpl_subs .subs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:24px}
#wrapper.tpl_subs .subs-card{border:1px solid var(--gline);border-radius:5px;background:#fff;overflow:hidden;display:flex;flex-direction:column}
#wrapper.tpl_subs .subs-thumb{display:block;aspect-ratio:1/1;background:#0b1b3a center/cover no-repeat}
#wrapper.tpl_subs .subs-info{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;text-align:center}
#wrapper.tpl_subs .subs-info h3{font-family:'Playfair Display',Georgia,serif !important;font-size:17px;font-weight:800;color:var(--gtext);margin:0 0 4px;line-height:1.25}
#wrapper.tpl_subs .subs-badge{align-self:center;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gmut);background:var(--gcream);border:1px solid var(--gline);border-radius:20px;padding:3px 10px}
#wrapper.tpl_subs .subs-btn{display:block;padding:11px 12px;border-radius:2px;font-family:'Open Sans',system-ui,sans-serif;font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;text-align:center}
#wrapper.tpl_subs .subs-btn.red{background:var(--gr);color:#fff !important}
#wrapper.tpl_subs .subs-btn.red:hover{background:var(--grd)}
#wrapper.tpl_subs .subs-btn.ghost{border:1.5px solid var(--gn);color:var(--gtext) !important;background:transparent}
#wrapper.tpl_subs .subs-btn.ghost:hover{background:var(--gn);color:#fff !important}
/* one channel's videos: a viewing page, not a file manager - the edit-mode, select-all and
   selection-actions controls and the per-video Select strip are hidden; Subscription / Follow
   settings stays */
#wrapper.tpl_subs #siteContent #edit-mode,#wrapper.tpl_subs #siteContent #select-mode,#wrapper.tpl_subs #siteContent #entry-action-buttons,
#wrapper.tpl_subs #siteContent .thumbs-wrappers,#wrapper.tpl_subs #siteContent .vwrap{display:none !important}
#wrapper.tpl_subs .subs-chip.all{padding:6px 14px;background:transparent}
html.dark #wrapper.tpl_subs .subs-card{background:var(--gcream);border-color:var(--gline)}
html.dark #wrapper.tpl_subs .subs-btn.ghost{border-color:var(--gtext)}
#wrapper.tpl_subs .subs-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
#wrapper.tpl_subs .subs-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border:1px solid var(--gline);border-radius:22px;
  background:var(--gcream);color:var(--gtext) !important;font-size:13px;font-weight:700;text-decoration:none;line-height:1.2}
#wrapper.tpl_subs .subs-chip img{width:26px;height:26px;border-radius:50%;object-fit:cover;flex:none}
#wrapper.tpl_subs .subs-chip:hover{border-color:var(--gn)}
#wrapper.tpl_subs .subs-chip.on{background:var(--gn);border-color:var(--gn);color:#fff !important}
#wrapper.tpl_subs #siteContent h3.content-title .heading,#wrapper.tpl_subs #siteContent h3.content-title .heading a{font-family:'Playfair Display',Georgia,serif !important;font-weight:800 !important;font-size:28px !important;color:var(--gtext) !important;letter-spacing:-.01em}
#wrapper.tpl_subs #siteContent h3.content-title img{border-radius:50%;vertical-align:middle;margin-right:10px}
#wrapper.tpl_subs .subs-empty{padding:50px 20px;text-align:center;color:var(--gmut);font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:17px}
#wrapper.tpl_subs .subs-empty a{color:var(--gr);font-weight:700;font-style:normal}

/* G195 - one consistent left menu: Media Library holds your own content (Uploads, Playlists,
   Comments, Responses); Watchlist, History, Likes and Favorites live only in the My Library group
   (tpl_footer.tpl), which is the same on every page. The hidden submenu entries stay in the page
   because files.init.js reads the open section from them. On /library/watchlist|history|liked|
   favorites (#wrapper.aptv-mylib-page, set in tpl_footer.tpl) the Media Library submenu is closed
   and Media Library is not marked as the open item. */
#wrapper .sidebar-container li.this-inner #file-menu-entry2,#wrapper .sidebar-container li.this-inner #file-menu-entry3,
#wrapper .sidebar-container li.this-inner #file-menu-entry4,#wrapper .sidebar-container li.this-inner #file-menu-entry5{display:none !important}
#wrapper.aptv-mylib-page .sidebar-container #session-accordion > li.this-inner{display:none !important}
/* Messages uses the same menu: no subscription/follow lists, Message Center marked like other open items */
#wrapper.tpl_messages .sidebar-container #menu-panel-wrapper{display:none !important}
#wrapper.tpl_messages .sidebar-container #session-accordion > li.main-menu-panel-entry-active > a{background:var(--gcream) !important;color:var(--gr) !important;box-shadow:inset 3px 0 0 var(--gr) !important}
#wrapper.aptv-mylib-page .sidebar-container #session-accordion > li.main-menu-panel-entry-active > a{background:transparent !important;color:var(--gtext) !important;box-shadow:none !important}

/* G197 - phone menu (max 900px) on member pages and Messages: row 1 = main menu plus the open
   page's own sections, row 2 = My Library; both swipe sideways; no group titles; the open item
   is the navy pill. Placed last so it wins over the desktop sidebar rules above. */
@media(max-width:900px){
  html:not(.aptv-embed) :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .container.container_wrapper{display:flex !important;flex-direction:column}
  html:not(.aptv-embed) :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .container.container_wrapper > .sidebar-container{display:block !important;order:-1;position:static !important;width:100% !important;max-width:100vw !important;min-width:0 !important;
    overflow:hidden !important;padding:6px 0 !important;border:none !important;border-bottom:1px solid var(--gline) !important;height:auto !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .viewport,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview{position:static !important;width:100% !important;height:auto !important;overflow:visible !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container h4.categories-menu-title,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .sidebar-nav-footer,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container #menu-panel-wrapper{display:none !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container{display:none !important;border:none !important;margin:0 !important;padding:0 !important;background:none !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container:first-child,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container.aptv-mylib{display:block !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container > aside,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container > aside > nav{display:block !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container > aside > nav > .accordion,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container.aptv-mylib > .accordion{display:flex !important;flex-wrap:nowrap;align-items:center;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;
    padding:8px 16px !important;margin:0 !important;scrollbar-width:none}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container .accordion::-webkit-scrollbar{display:none}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .this-inner .sort-nav,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .this-inner [id$="-sub-entries"],:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .this-inner form{display:contents !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .accordion > li{flex:0 0 auto;margin:0 !important;list-style:none}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .accordion > li.this-inner{display:contents}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .accordion > li.this-inner.no-display{display:none !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .this-inner .categories-container,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .this-inner aside,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .this-inner nav{display:contents !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .inner-accordion{display:contents !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .accordion > li > a,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .inner-accordion > li > a{display:flex !important;align-items:center;gap:7px;white-space:nowrap;
    padding:8px 14px !important;border-radius:20px !important;background:var(--gcream) !important;border:1px solid var(--gline) !important;box-shadow:none !important;
    font-size:13px !important;font-weight:700 !important;color:var(--gtext) !important;line-height:normal !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .inner-accordion > li > a{background:transparent !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .this-inner li li > a{display:flex !important;align-items:center;gap:7px;white-space:nowrap;padding:8px 14px !important;border-radius:20px !important;border:1px solid var(--gline) !important;background:transparent !important;font-size:13px !important;font-weight:700 !important;line-height:normal !important;height:auto !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .this-inner li > a span.mm{display:inline !important;white-space:nowrap;height:auto !important;line-height:normal !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .this-inner li{height:auto !important;flex:0 0 auto}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .accordion > li > a .i{font-size:14px !important;width:auto !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container #session-accordion > li.main-menu-panel-entry-active > a,
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .inner-accordion > li.menu-panel-entry-active > a,
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .aptv-mylib .accordion > li.aptv-on > a{background:var(--gn) !important;border-color:var(--gn) !important;color:#fff !important;box-shadow:none !important}
  #wrapper.aptv-mylib-page .sidebar-container #session-accordion > li.main-menu-panel-entry-active > a{background:var(--gcream) !important;border-color:var(--gline) !important;color:var(--gtext) !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container li.menu-panel-entry-active > a,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container li.menu-panel-entry-active > a *,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container li.main-menu-panel-entry-active > a *,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container li.aptv-on > a *{color:#fff !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container li > a .mm-count,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container li > a + .mm-count{float:none !important;display:inline !important;margin:0 0 0 2px !important;font-size:12px}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container + .categories-container,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container{border:none !important;margin:0 !important;padding:0 !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container.aptv-mylib{border-top:1px solid var(--gline) !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) > .spacer,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .inner-spacer{display:none !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container > aside > nav > .accordion,:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .overview > .categories-container.aptv-mylib > .accordion{padding:7px 16px !important}
  html.dark :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .accordion > li > a{background:var(--gcream) !important;border-color:var(--gline) !important;color:var(--gink) !important}
}
/* G160 end */

/* G175 - sidebar submenu titles. The app hides the title that repeats the open
   section's name (Message Center, My Account, ...) with .no-display; the caption
   rule above (.categories-container h4 -> display:flex !important) outranked it,
   so the name showed twice. G173 fixed this for the member pages only; this
   covers every page, the messages page included. */
.sidebar-container .categories-container h4.no-display,
.categories-container h4.categories-menu-title.no-display{display:none !important}
/* G175 end */

/* G176 - My Library group: the open page's entry (.aptv-on, set in tpl_footer.tpl),
   styled like the active entry of the member sidebar (G160): cream row with a red
   bar on desktop, navy pill on phones. #wrapper matches the weight of G160's selectors. */
#wrapper .sidebar-container .aptv-mylib .accordion > li.aptv-on > a{background:var(--gcream) !important;color:var(--gr) !important;box-shadow:inset 3px 0 0 var(--gr) !important}
html.dark #wrapper .sidebar-container .aptv-mylib .accordion > li.aptv-on > a{background:rgba(230,20,40,.16) !important;color:#ff6b78 !important}
@media(max-width:900px){
  #wrapper .sidebar-container .aptv-mylib .accordion > li.aptv-on > a,
  html.dark #wrapper .sidebar-container .aptv-mylib .accordion > li.aptv-on > a{background:var(--gn) !important;color:#fff !important;box-shadow:none !important;border-color:var(--gn) !important}
}
/* G176 end */

/* G199 - Account Overview membership limits (Stream/Video/Disk/Bandwidth): the right-hand
   block (.sc.fit) uses the full width, each limit gets its own space, and the "x / y"
   numbers sit under the bar instead of on top of it. */
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats > .vs-column.half.sc{float:none !important;width:100% !important;padding:0 !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats .sc .vs-column.half{float:left !important;width:50% !important;box-sizing:border-box;padding:0 32px 0 0 !important;margin:0 0 6px !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats .sc .vs-column.half:empty{display:none !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats .sc .vs-column.half:not(:empty) + .vs-column.half:empty + .vs-column.half:not(:empty){clear:none}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats .sc .account-sub{margin:0 0 26px !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats .pl{margin:0 0 10px !important}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats .uProgress{margin:0 0 34px !important;max-width:320px}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats .uLabel{position:absolute !important;inset:auto !important;top:18px !important;left:0 !important;right:auto !important;display:block !important;margin:0 !important;padding:0 !important;font-size:12.5px !important;line-height:1.3 !important;text-align:left !important;white-space:nowrap}
:is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats .account-date .label{margin-right:5px}
@media(max-width:600px){
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats .sc .vs-column.half{float:none !important;width:100% !important;padding:0 !important;margin:0 0 20px !important}
  :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"]) .acct-panel .account-stats .uProgress{max-width:none}
}
/* G199 end */

/* G200 - Subscribers Panel and Tokens Panel hidden from the menus on request (not deleted:
   templates mark them "aptv-off"; the pages /subscribers and /tokens still work).
   To show them again remove this block or the aptv-off classes. */
li.aptv-off,#wrapper li.aptv-off,#wrapper .sidebar-container li.aptv-off,#wrapper .sidebar-container .overview > .categories-container > aside > nav > .accordion > li.aptv-off,
.um-list a.um-i[href="/subscribers"],.um-list a.um-i[href="/token-panel"],
#mside a[href="/subscribers"],#mside a[href="/token-panel"]{display:none !important}
/* G200 end */

/* G201 - 901px to 1250px: the core theme (yt.css, max-width:1250px) hides .sidebar-container
   and expects its hamburger button, which our ui.js header does not have, while the G68 grid
   still keeps the 266px menu column, so the left side was empty. Keep the menu showing here;
   at 900px and below the phone menu (G197) takes over. Pages that hide the menu on purpose
   (watch, browse, channel, page, sign-in) keep their more specific rules. */
@media(min-width:901px) and (max-width:1250px){
  html:not(.aptv-embed) .container.container_wrapper > .sidebar-container{display:block !important;visibility:visible !important}
}
/* G201 end */

/* G202 - phone menu (max 900px): the open item stays a navy pill with white text while
   hovered/tapped. On touch screens :hover sticks after a tap, and the hover rule painted it
   cream, so the white text of e.g. "Profile Setup" disappeared. */
@media(max-width:900px){
  html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .categories-container #session-accordion > li.main-menu-panel-entry-active > a:hover,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container #session-accordion > li.main-menu-panel-entry-active > a:hover,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .categories-container #session-accordion > li.main-menu-panel-entry-active > a:focus,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container #session-accordion > li.main-menu-panel-entry-active > a:focus,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .categories-container #session-accordion > li.main-menu-panel-entry-active > a:active,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container #session-accordion > li.main-menu-panel-entry-active > a:active,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .categories-container .inner-accordion > li.menu-panel-entry-active > a:hover,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .inner-accordion > li.menu-panel-entry-active > a:hover,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .categories-container .inner-accordion > li.menu-panel-entry-active > a:focus,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .inner-accordion > li.menu-panel-entry-active > a:focus,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .categories-container .inner-accordion > li.menu-panel-entry-active > a:active,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .inner-accordion > li.menu-panel-entry-active > a:active,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .categories-container .inner-accordion > li > a.active:hover,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .inner-accordion > li > a.active:hover,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .categories-container .inner-accordion > li > a.active:focus,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .inner-accordion > li > a.active:focus,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .categories-container .inner-accordion > li > a.active:active,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .inner-accordion > li > a.active:active,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .categories-container .aptv-mylib .accordion > li.aptv-on > a:hover,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .aptv-mylib .accordion > li.aptv-on > a:hover,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .categories-container .aptv-mylib .accordion > li.aptv-on > a:focus,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .aptv-mylib .accordion > li.aptv-on > a:focus,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .categories-container .aptv-mylib .accordion > li.aptv-on > a:active,html :is(#wrapper.tpl_account,#wrapper.tpl_manage_channel,#wrapper.tpl_subscribers,#wrapper.tpl_tokens,#wrapper.tpl_upload,#wrapper.tpl_subs,#wrapper.tpl_playlist,#wrapper[class^="tpl_files"],#wrapper.tpl_messages) .sidebar-container .aptv-mylib .accordion > li.aptv-on > a:active{background:var(--gn) !important;color:#fff !important;border-color:var(--gn) !important}
}
/* G202 end */

/* G203 - Media Library / My Library cards (Uploads etc.): room between the parts of each card
   (thumbnail, title, channel, views, Select/Edit/Delete bar) and between card rows.
   They were 0-6px apart. */
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs{margin-bottom:30px !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .thumbs-wrapper > h2{margin:12px 0 6px !important;line-height:1.35 !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .thumbs-wrapper > .profile_image{margin:0 0 4px !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .thumbs-wrapper > .caption{margin:0 !important;padding:0 !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .thumbs-wrapper > .caption .vs-column{margin:0 !important;padding:0 !important;line-height:1.5 !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap{margin-top:12px !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full{padding:8px 10px !important;border-radius:6px;box-sizing:border-box}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent .content-current > .row.mview[id^="main-view-mode-"]{margin-top:20px !important}
/* G203 end */

/* G204 - dark mode audit 2026-10-05 (contrast scan of ~40 pages). Only html.dark rules. */
/* upload: plupload file rows used a light gradient image under light text, and the row that
   holds the title/description form was white */
html.dark #uploader_filelist > li,html.dark .plupload_filelist > li{background:var(--d-surf2) !important;background-image:none !important;color:var(--d-text) !important;border-color:var(--d-line) !important}
html.dark .plupload_filelist > li .plupload_file_name,html.dark .plupload_filelist > li .plupload_file_name span,
html.dark .plupload_filelist > li .plupload_file_status,html.dark .plupload_filelist > li .plupload_file_size{color:var(--d-text) !important}
html.dark .plupload_filelist > li.pl-entry-edit{background:var(--d-surf) !important}
html.dark .plupload_filelist > li.plupload_done{background:#12301c !important}
html.dark .plupload_filelist > li.plupload_failed{background:#3a1618 !important}
/* green notice bars (upload "your uploads will be public", saved, etc.) */
html.dark .notice-message,html.dark #notice-message,html.dark .notice,html.dark .notification,html.dark .alert-success,html.dark .success-message{
  background:#12301c !important;border:1px solid #1f5530 !important;color:#a8e6b9 !important}
html.dark .notice-message-text,html.dark .notice-message p,html.dark .notice-message i,html.dark .notice-message a{color:#a8e6b9 !important;background:none !important}
html.dark .error-message-text,html.dark .error-message p,html.dark .error-message i{color:#ffb4b4 !important;background:none !important}
/* channel page activity feed: white boxes */
html.dark .cbp_tmtimeline > li .cbp_tmlabel{background:var(--d-surf2) !important;color:var(--d-text) !important;box-shadow:none !important}
html.dark .cbp_tmtimeline > li .cbp_tmlabel:after{border-right-color:var(--d-surf2) !important}
html.dark .cbp_tmtimeline > li .cbp_tmlabel pre,html.dark .cbp_tmtimeline > li .cbp_tmlabel .act-about{color:var(--d-mut) !important;background:none !important}
html.dark .cbp_tmtimeline > li .cbp_tmlabel a{color:#8fb8ff !important}
/* home: "LATEST" tag is gold with var(--navy) text, and --navy turns light blue in dark mode */
html.dark .cover .live-tag[style*="--gold"]{color:#0b1a2e !important}
/* watch page "show more", open menu items, Delete Account: red too dark on dark surfaces */
html.dark .tpl_view .info-toggle,html.dark .tpl_view .related-more{color:#ff6b75 !important}
@media(min-width:901px){
  html.dark body #wrapper .sidebar-container li.menu-panel-entry-active > a,html.dark body #wrapper .sidebar-container .inner-accordion > li > a.active,
  html.dark body #wrapper .sidebar-container li.menu-panel-entry-active > a span,html.dark body #wrapper .sidebar-container .inner-accordion > li > a.active span{color:#ff6b75 !important}
}
html.dark body #wrapper[class] #ct-wrapper .acct-danger .responsive-accordion-head,html.dark body #wrapper[class] #ct-wrapper .acct-danger .responsive-accordion-head span{color:#ff8a95 !important}
/* account limits bar track */
html.dark body #wrapper[class] .acct-panel .uProgress{background:var(--d-line) !important}
html.dark body #wrapper[class] .acct-panel .uLabel{color:var(--d-mut) !important}
/* Responses page top bar and the grid/list tooltips */
html.dark .section-top-bar{background:var(--d-surf2) !important;border-color:var(--d-line) !important;color:var(--d-text) !important}
html.dark .section-top-bar *{color:inherit}
html.dark body > .tooltip,html.dark .tooltip{background:var(--d-surf2) !important;color:var(--d-text) !important;border:1px solid var(--d-line) !important;box-shadow:none !important}
/* G204 end */

/* G205 - Account Overview redesign (markup from VUseraccount::getUserStats/subscriptionStats,
   unchanged). Layout: plan card (name/price, expiry, Renew) -> info strip (account type,
   member since; the repeated "membership type" heading is hidden) -> "Plan usage" tiles. */
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 !important}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats::before{content:"Plan usage";order:3;grid-column:1/-1;margin:10px 0 -2px;font-family:'Open Sans',sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gmut)}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .clearfix,html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .sc > .clearfix,html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .sc > br{display:none !important}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .vs-column.half.sc.fit{display:contents !important}
/* plan card */
html:not(.aptv-embed) #wrapper.tpl_account #siteContent #overview-userinfo .acct-panel .account-stats .account-sub{order:1;grid-column:1/-1;display:grid !important;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:20px;row-gap:6px;
  margin:0 !important;padding:22px 24px !important;border-radius:12px;background:linear-gradient(120deg,var(--gn) 0%,#123a6b 100%) !important;color:#fff !important;box-shadow:0 6px 18px rgba(9,43,81,.18)}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .account-sub > div:first-child{grid-column:1;grid-row:1;color:#fff !important;font-family:'Playfair Display',Georgia,serif !important;font-size:26px !important;font-weight:800 !important;line-height:1.2 !important}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .account-sub > div:first-child::before{content:"Membership plan";display:block;margin:0 0 6px;font-family:'Open Sans',sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gg)}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .account-sub > p.account-date{grid-column:1;grid-row:2;margin:0 !important;color:rgba(255,255,255,.78) !important;font-size:13.5px !important}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .account-sub > p.account-date .label{color:#fff !important;font-weight:700;margin-right:5px}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .account-sub > div:nth-child(3){grid-column:2;grid-row:1/span 2}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .account-sub .sub-renew{margin:0 !important;white-space:nowrap}
/* info strip */
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .vs-column.half.sc:not(.fit){order:2;grid-column:1/-1;display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:4px;align-items:start;
  float:none !important;width:auto !important;margin:0 !important;padding:16px 20px !important;border:1px solid var(--gline) !important;border-radius:10px;background:var(--gcream) !important}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .sc:not(.fit) > h3:nth-of-type(2),html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .sc:not(.fit) > h2:nth-of-type(2){display:none !important}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .sc:not(.fit) > h3:nth-of-type(1){grid-column:1;grid-row:1;margin:0 !important;padding:0 !important;font-family:'Open Sans',sans-serif !important;font-size:11px !important;font-weight:700 !important;letter-spacing:.12em !important;text-transform:uppercase !important;line-height:1.4 !important;color:var(--gmut) !important;height:auto !important;min-height:0 !important;display:block !important}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .sc:not(.fit) > h2:nth-of-type(1){grid-column:1;grid-row:2;margin:0 !important;padding:0 !important;align-self:start;font-size:17px !important;line-height:1.3 !important;text-transform:capitalize}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .sc:not(.fit) > p.account-date{grid-column:2;grid-row:1/span 2;display:flex;flex-direction:column;gap:4px;margin:0 !important;font-family:'Playfair Display',Georgia,serif;font-size:17px !important;font-weight:800;color:var(--gtext) !important;line-height:1.3}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .sc:not(.fit) > p.account-date .label{font-family:'Open Sans',sans-serif !important;font-size:11px !important;font-weight:700 !important;letter-spacing:.12em !important;text-transform:uppercase !important;color:var(--gmut) !important;margin:0 !important;line-height:1.4 !important}
/* usage tiles */
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .sc .vs-column.half:not(:empty){order:4;float:none !important;width:auto !important;margin:0 !important;padding:16px 18px 18px !important;border:1px solid var(--gline) !important;border-radius:10px;background:#fff;box-sizing:border-box;min-width:0}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .pl{margin:0 0 8px !important}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .uProgress{position:relative !important;height:auto !important;max-width:none !important;margin:0 !important;padding:0 0 16px !important;background:none !important;overflow:visible !important}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .uProgress::before{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;border-radius:3px;background:#e6e7eb}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .uBar{position:absolute !important;left:0;bottom:0;top:auto !important;height:6px !important;border-radius:3px !important;z-index:1;min-width:6px}
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .uLabel{position:static !important;inset:auto !important;display:block !important;margin:0 0 12px !important;padding:0 !important;white-space:normal !important;
  font-family:'Open Sans',sans-serif !important;font-size:17px !important;font-weight:700 !important;line-height:1.3 !important;color:var(--gtext) !important;text-align:left !important}
/* profile column */
html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .vs-column.fourths .imageChange button{width:100% !important;margin:0 0 10px !important}
@media(max-width:600px){
  html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats{grid-template-columns:minmax(0,1fr)}
  html:not(.aptv-embed) #wrapper.tpl_account #siteContent #overview-userinfo .acct-panel .account-stats .account-sub{grid-template-columns:minmax(0,1fr);padding:18px !important}
  html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .account-sub > div:nth-child(3){grid-column:1;grid-row:3;margin-top:8px}
  html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .account-sub .sub-renew{width:100% !important}
  html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .vs-column.half.sc:not(.fit){grid-template-columns:minmax(0,1fr)}
  html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .sc:not(.fit) > p.account-date{grid-column:1;grid-row:3;margin-top:10px !important}
}
html.dark:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .vs-column.half.sc:not(.fit),html.dark:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .sc .vs-column.half:not(:empty){background:var(--d-surf2) !important;border-color:var(--d-line) !important}
html.dark:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .sc:not(.fit) > p.account-date,html.dark:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .sc:not(.fit) > h2,html.dark:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .uLabel{color:var(--d-text) !important}
html.dark:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .sc:not(.fit) > h3,html.dark:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats > .sc:not(.fit) > p.account-date .label,html.dark:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats::before{color:var(--d-mut) !important}
html.dark:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .uProgress::before{background:var(--d-line)}
html.dark:not(.aptv-embed) #wrapper.tpl_account .acct-panel .account-stats .account-sub{background:linear-gradient(120deg,#0e2a4d 0%,#16406f 100%) !important;box-shadow:none;border:1px solid #23497a}
/* G205 end */

/* G206 - watch page "Download Video" popup: one button per format with room between them,
   and the note shown after a click ("Your download has started. If it does not start, open
   the file here"; set by the download handler in class.view.php). */
html body #download-types{width:100% !important;float:none !important;text-align:center;position:static !important;left:auto !important;right:auto !important}
html body #download-types > ul{position:static !important;left:auto !important;right:auto !important;float:none !important;width:auto !important;display:flex !important;flex-wrap:wrap;justify-content:center;gap:10px;margin:6px 0 0 !important;padding:0 !important;list-style:none !important}
html body #download-types > ul > li{float:none !important;width:auto !important;margin:0 !important;padding:0 !important;display:block !important}
html body #download-types .symbol-button{display:inline-flex !important;align-items:center;gap:8px;width:auto !important;max-width:none !important;height:auto !important;min-height:40px;
  margin:0 !important;padding:10px 18px !important;border-radius:6px !important;white-space:nowrap !important;overflow:visible !important}
html body #download-types .symbol-button span,html body #download-types .symbol-button span.left-padding15{padding:0 !important;margin:0 !important;white-space:nowrap !important;overflow:visible !important;text-overflow:clip !important;max-width:none !important}
html body #download-types .symbol-button p{display:none !important}
html body #download-types .dl-note{display:block !important;width:100%;margin:14px 0 2px !important;padding:0 !important;text-align:center;font-size:13px !important;line-height:1.5;color:var(--gmut) !important;white-space:normal}
html body #download-types .dl-note a{color:var(--gr) !important;text-decoration:underline !important;font-weight:600}
html.dark html body #download-types .dl-note{color:var(--d-mut) !important}
html.dark html body #download-types .dl-note a{color:#ff6b75 !important}
/* G206 end */

/* G207 - channel cards (home "Top Shows", built by U.channelCard in assets/ui.js): same height
   for every card, the name always takes two lines' room (centred), so the video count and the
   View Channel / Subscribe button line up across the row. */
.ch-grid{align-items:stretch}
.ch-grid > .ch-card{display:flex !important;flex-direction:column;align-items:center;height:100%;box-sizing:border-box}
.ch-grid > .ch-card h3{display:flex;align-items:center;justify-content:center;min-height:2.5em;line-height:1.25 !important;margin:0 !important}
.ch-grid > .ch-card p{margin:6px 0 14px !important}
.ch-grid > .ch-card .btn{margin-top:auto}
/* G207 end */

/* G208 - dark mode header polish (header built by assets/ui.js): navy gradient date bar with a
   gold hairline, gold glow + gold hairlines around the logo, glowing tricolour rule, menu bar with
   gold edge and shadow, gold hover / glowing red active item, gold-edged search. Dark only. */
html.dark header.aptv-hdr .util{background:linear-gradient(90deg,#06162b 0%,#0b2a52 50%,#06162b 100%) !important;border-bottom:1px solid rgba(201,168,76,.35) !important}
html.dark header.aptv-hdr .util a:hover{color:#e3c879 !important}
html.dark header.aptv-hdr .masthead{position:relative;
  background:radial-gradient(ellipse 42% 120% at 50% 0%,rgba(201,168,76,.13) 0%,rgba(201,168,76,0) 70%),linear-gradient(180deg,#0a0f17 0%,#0d1117 100%) !important;
  border-bottom:1px solid rgba(201,168,76,.18) !important}
html.dark header.aptv-hdr .masthead::before,html.dark header.aptv-hdr .masthead::after{content:"";position:absolute;top:50%;height:1px;width:calc(50% - 190px);max-width:420px;pointer-events:none;margin-top:-6px}
html.dark header.aptv-hdr .masthead::before{right:calc(50% + 150px);background:linear-gradient(90deg,rgba(201,168,76,0),rgba(214,180,90,.95))}
html.dark header.aptv-hdr .masthead::after{left:calc(50% + 150px);background:linear-gradient(270deg,rgba(201,168,76,0),rgba(214,180,90,.95))}
html.dark header.aptv-hdr .masthead .logo img{filter:drop-shadow(0 0 14px rgba(201,168,76,.18))}
html.dark header.aptv-hdr .masthead .rule{box-shadow:0 0 14px rgba(216,3,20,.35),0 0 4px rgba(201,168,76,.25)}
html.dark header.aptv-hdr .topnav{background:linear-gradient(180deg,rgba(16,22,32,.97) 0%,rgba(11,15,22,.97) 100%) !important;border-bottom:1px solid rgba(201,168,76,.28) !important;box-shadow:0 10px 28px rgba(0,0,0,.45)}
html.dark header.aptv-hdr .navlinks > a{transition:color .15s ease}
html.dark header.aptv-hdr .navlinks > a:hover{color:#e3c879 !important}
html.dark header.aptv-hdr .navlinks > a.on{color:#ff3b47 !important;border-bottom-color:#d80314 !important;text-shadow:0 0 14px rgba(216,3,20,.55);box-shadow:inset 0 -3px 0 #d80314,0 6px 14px -8px rgba(216,3,20,.9)}
html.dark header.aptv-hdr .topsearch{border:1px solid rgba(201,168,76,.28) !important;border-radius:6px !important;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}
html.dark header.aptv-hdr .topsearch:focus-within{border-color:rgba(201,168,76,.7) !important;box-shadow:0 0 0 3px rgba(201,168,76,.14)}
html.dark header.aptv-hdr .topsearch button{background:linear-gradient(180deg,#123a6b,#092b51) !important}
html.dark header.aptv-hdr .u-btn{box-shadow:0 0 0 3px rgba(201,168,76,.16),0 0 16px rgba(216,3,20,.25)}
@media(max-width:760px){ html.dark header.aptv-hdr .masthead::before,html.dark header.aptv-hdr .masthead::after{display:none} }
/* G208 end */

/* G209 - "premium" dark mode, site-wide, in the style of the G208 header: a soft gold glow at the
   top of the page, gold hairlines on section headings, richer card/panel surfaces with a faint gold
   edge that brightens on hover, glowing red buttons, gold focus rings, gold-edged footer.
   Dark only (html.dark); light mode untouched. */
html.dark body{background:radial-gradient(1400px 520px at 50% -160px,rgba(201,168,76,.07),rgba(201,168,76,0) 70%) no-repeat,#0b0f15 !important}

/* section headings: home (.sec-h), rails, member pages (.page-h), panels (.ph) */
html.dark .sec-h h2{text-shadow:0 0 22px rgba(201,168,76,.12)}
html.dark .sec-h h2::before{content:"\25C6";font-size:.42em;color:#c9a84c;vertical-align:middle;margin-right:12px;position:relative;top:-.12em;text-shadow:0 0 10px rgba(201,168,76,.6)}
html.dark .sec-h .line{height:1px !important;background:linear-gradient(90deg,rgba(214,180,90,.75),rgba(201,168,76,.06)) !important}
html.dark .sec-h a:hover{color:#e3c879 !important}
html.dark .rail-title{border-bottom-color:#d80314 !important;box-shadow:0 6px 12px -10px rgba(216,3,20,.9)}
html.dark .rail-item{border-bottom-color:rgba(201,168,76,.14) !important}
html.dark .rail-h{border-bottom:1px solid rgba(201,168,76,.4) !important}
html.dark .page-h h1::after{content:"";display:block;width:64px;height:2px;margin-top:12px;border-radius:2px;background:linear-gradient(90deg,#d80314,#c9a84c);box-shadow:0 0 12px rgba(216,3,20,.45)}
html.dark .panel > .ph,html.dark .acct-panel > .ph{border-bottom:1px solid rgba(201,168,76,.18) !important;background:linear-gradient(90deg,rgba(201,168,76,.06),rgba(201,168,76,0) 60%) !important}

/* panels and cards: gradient surface + faint gold edge */
html.dark .panel,html.dark .acct-panel,html.dark .subs-card,html.dark .auth-card,html.dark .plupload_container,
html.dark .tpl_channels ul.ch-grid:not(.columns) .vs-column,html.dark .tpl_channels ul.ch-grid.columns .vs-column{
  background:linear-gradient(180deg,#151c26 0%,#11171f 100%) !important;border:1px solid rgba(201,168,76,.16) !important;box-shadow:0 12px 32px rgba(0,0,0,.35) !important}
html.dark .auth-card{border-top:3px solid #d80314 !important}
html.dark .subs-card,html.dark .tpl_channels ul.ch-grid .vs-column{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
html.dark .subs-card:hover,html.dark .tpl_channels ul.ch-grid .vs-column:hover{border-color:rgba(201,168,76,.45) !important;box-shadow:0 14px 34px rgba(0,0,0,.5),0 0 0 1px rgba(201,168,76,.12),0 0 24px rgba(201,168,76,.08) !important}

/* video thumbnails: faint gold ring, brighter on hover (home cards, library/browse cards) */
html.dark .acard .thumb,html.dark #siteContent li.vs-column .thumbs-wrapper figure{box-shadow:0 0 0 1px rgba(201,168,76,.14);border-radius:6px;overflow:hidden;transition:box-shadow .2s ease}
html.dark .acard:hover .thumb,html.dark #siteContent li.vs-column:hover .thumbs-wrapper figure{box-shadow:0 0 0 1px rgba(201,168,76,.55),0 10px 26px rgba(0,0,0,.55),0 0 22px rgba(201,168,76,.12)}
html.dark .acard:hover h3,html.dark .acard:hover h4{color:#e3c879 !important}
html.dark .ch-card .av{box-shadow:0 0 0 4px rgba(201,168,76,.10),0 8px 22px rgba(0,0,0,.5);transition:box-shadow .2s ease}
html.dark .ch-card:hover .av{box-shadow:0 0 0 4px rgba(201,168,76,.25),0 0 26px rgba(201,168,76,.28)}
html.dark .cover{box-shadow:0 0 0 1px rgba(201,168,76,.18),0 20px 50px rgba(0,0,0,.55) !important}

/* left menu (desktop): gold hairline edge, gold group titles, glowing red active bar */
@media(min-width:901px){
  html.dark .container_wrapper > .sidebar-container{border-right:1px solid rgba(201,168,76,.16) !important;background:linear-gradient(180deg,#121821 0%,#0e131a 100%) !important}
  html.dark .sidebar-container h4.nav-title,html.dark .sidebar-container h4.nav-title i{color:#c9a84c !important}
  html.dark .sidebar-container .categories-container + .categories-container{border-top:1px solid rgba(201,168,76,.14) !important}
  html.dark body #wrapper .sidebar-container li.main-menu-panel-entry-active > a,html.dark body #wrapper .sidebar-container .inner-accordion > li.menu-panel-entry-active > a{box-shadow:inset 3px 0 0 #d80314,inset 14px 0 18px -14px rgba(216,3,20,.6) !important}
}

/* buttons */
html.dark .btn.red,html.dark #siteContent .search-button.form-button,html.dark .symbol-button{transition:box-shadow .2s ease,filter .2s ease}
html.dark .btn.red:hover,html.dark #siteContent .search-button.form-button:hover,html.dark .symbol-button:hover{box-shadow:0 0 0 1px rgba(255,90,100,.4),0 6px 20px rgba(216,3,20,.45) !important}
html.dark .btn.ghost{border-color:rgba(201,168,76,.55) !important;color:#e8ebf1 !important}
html.dark .btn.ghost:hover{background:#c9a84c !important;border-color:#c9a84c !important;color:#0b1a2e !important}

/* form fields: gold focus ring */
html.dark input[type="text"]:focus,html.dark input[type="email"]:focus,html.dark input[type="password"]:focus,html.dark input[type="search"]:focus,html.dark textarea:focus,html.dark select:focus{
  border-color:rgba(201,168,76,.65) !important;box-shadow:0 0 0 3px rgba(201,168,76,.13) !important;outline:none !important}

/* footer: gold hairline on top, glow behind the disclaimer */
html.dark .foot-disclaimer{border-top:1px solid rgba(201,168,76,.45) !important;background:radial-gradient(ellipse 50% 100% at 50% 0%,rgba(201,168,76,.08),rgba(201,168,76,0) 70%),#0a0e14 !important}
html.dark .foot{background:linear-gradient(180deg,#0a0e14 0%,#070a0f 100%) !important;border-top:1px solid rgba(201,168,76,.18)}
html.dark .foot .cols h5{text-shadow:0 0 12px rgba(201,168,76,.35)}
html.dark .foot .cols a:hover,html.dark .foot .bottom .legal a:hover{color:#e3c879 !important}
html.dark .foot .rule{box-shadow:0 0 14px rgba(216,3,20,.35),0 0 4px rgba(201,168,76,.25)}
/* G209 end */

/* G210 - dark mode: a distinct treatment per section (on top of G208/G209). Dark only. */
@keyframes aptv-shimmer{0%{background-position:160% 0}60%,100%{background-position:-60% 0}}
@keyframes aptv-rise{from{opacity:0;translate:0 22px}to{opacity:1;translate:0 0}}

/* -- home: featured video -- */
html.dark .cover{outline:1px solid rgba(201,168,76,.32);outline-offset:6px;border-radius:10px !important}
html.dark .cover .live-tag{background-image:linear-gradient(110deg,rgba(255,255,255,0) 35%,rgba(255,255,255,.6) 50%,rgba(255,255,255,0) 65%) !important;background-size:250% 100% !important;background-repeat:no-repeat !important;animation:aptv-shimmer 3.2s ease-in-out infinite;box-shadow:0 0 16px rgba(201,168,76,.35)}
/* -- home: every section is its own framed panel with gold corner brackets -- */
html.dark .wrap > .sec,html.dark .lead-grid > div:first-child,html.dark .lead-grid > aside{position:relative;border-radius:14px;
  padding:26px 28px 30px !important;border:1px solid rgba(201,168,76,.13);
  background:linear-gradient(180deg,rgba(23,30,41,.85) 0%,rgba(14,19,26,.7) 100%);box-shadow:0 18px 40px rgba(0,0,0,.35)}
html.dark .wrap > .sec:nth-of-type(even){background:linear-gradient(135deg,rgba(9,43,81,.42) 0%,rgba(14,19,26,.75) 55%)}
html.dark .wrap > .sec{margin-top:34px !important}
html.dark .wrap > .sec::before,html.dark .wrap > .sec::after,html.dark .lead-grid > div:first-child::before,html.dark .lead-grid > aside::before{content:"";position:absolute;width:28px;height:28px;pointer-events:none}
html.dark .wrap > .sec::before,html.dark .lead-grid > div:first-child::before,html.dark .lead-grid > aside::before{top:-1px;left:-1px;border-top:2px solid #c9a84c;border-left:2px solid #c9a84c;border-top-left-radius:14px}
html.dark .wrap > .sec::after{bottom:-1px;right:-1px;border-bottom:2px solid #c9a84c;border-right:2px solid #c9a84c;border-bottom-right-radius:14px}
/* Most watched: polished gold numbers, soft row highlight */
html.dark #mostwatched .rail-item .n{background:linear-gradient(180deg,#f6e3a1 0%,#c9a84c 55%,#9c7a2c 100%);-webkit-background-clip:text;background-clip:text;color:transparent !important;filter:drop-shadow(0 0 8px rgba(201,168,76,.35))}
html.dark #mostwatched .rail-item{margin:0 -10px;padding:14px 10px !important;border-radius:8px;transition:background .2s ease}
html.dark #mostwatched .rail-item:hover{background:rgba(201,168,76,.06)}
html.dark #mostwatched .rail-item:hover h4{color:#e3c879 !important}
/* newsletter box */
html.dark #nlForm{margin-top:20px;padding:18px;border-radius:12px;border:1px solid rgba(201,168,76,.3);background:linear-gradient(135deg,rgba(9,43,81,.55),rgba(14,19,26,.4))}
/* cards lift on hover */
html.dark .acard{transition:translate .25s ease}
html.dark .acard:hover{translate:0 -3px}

/* -- member pages / Videos: page header as a banner panel -- */
html.dark #siteContent .page-h,html.dark .tpl_browse #siteContent article.haiii,html.dark #siteContent #view-type-content > article,html.dark #siteContent #ct-wrapper.tpl-messages > article{position:relative;border-radius:14px;padding:22px 26px !important;margin-bottom:22px !important;
  border:1px solid rgba(201,168,76,.16) !important;background:linear-gradient(120deg,rgba(9,43,81,.6) 0%,rgba(17,23,31,.92) 65%) !important;box-shadow:0 14px 34px rgba(0,0,0,.35)}
html.dark #siteContent .page-h::before,html.dark .tpl_browse #siteContent article.haiii::before,html.dark #siteContent #view-type-content > article::before,html.dark #siteContent #ct-wrapper.tpl-messages > article::before{content:"";position:absolute;top:-1px;left:-1px;width:28px;height:28px;border-top:2px solid #c9a84c;border-left:2px solid #c9a84c;border-top-left-radius:14px;pointer-events:none}

/* -- watch page -- */
html.dark .tpl_view .video_player_holder{border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px rgba(201,168,76,.32),0 26px 60px rgba(0,0,0,.6),0 0 44px rgba(201,168,76,.08)}
html.dark .tpl_view #title-wrapper,html.dark .tpl_view #div-info,html.dark .tpl_view .page_holder_right{border-radius:12px !important;border:1px solid rgba(201,168,76,.14) !important;
  background:linear-gradient(180deg,#151c26 0%,#11171f 100%) !important;box-shadow:0 14px 32px rgba(0,0,0,.35) !important}
html.dark .tpl_view #title-wrapper,html.dark .tpl_view #div-info{padding:18px 22px !important;margin-top:18px !important}
html.dark .tpl_view .page_holder_right{padding:6px 14px 14px !important}

/* -- channel page -- */
html.dark #channel-header figure{border-radius:12px;overflow:hidden;box-shadow:0 0 0 1px rgba(201,168,76,.3),0 20px 46px rgba(0,0,0,.55)}
html.dark #channel-subscribe{border-bottom:1px solid rgba(201,168,76,.16) !important}
html.dark #channel-tabs .channel-tab-list{border-bottom:1px solid rgba(201,168,76,.18) !important}
html.dark #channel-tabs .channel-tab-list li.tab-current a,html.dark #channel-tabs .channel-tab-list li.tab-current{box-shadow:inset 0 -2px 0 #d80314,0 8px 14px -10px rgba(216,3,20,.9)}

/* -- everywhere: sections and cards rise into view while scrolling (modern browsers only) -- */
@media (prefers-reduced-motion:no-preference){
  @supports (animation-timeline:view()){
    html body .wrap > .sec,html body .acard,html body .ch-card,html body #siteContent li.vs-column,html body .subs-card,html body .tpl_channels ul.ch-grid .vs-column{
      animation:aptv-rise linear both;animation-timeline:view();animation-range:entry 0% entry 30%}
  }
}
@media(max-width:600px){
  html.dark .wrap > .sec,html.dark .lead-grid > div:first-child,html.dark .lead-grid > aside{padding:18px 14px 20px !important;border-radius:12px}
  html.dark #siteContent .page-h,html.dark .tpl_browse #siteContent article.haiii,html.dark #siteContent #view-type-content > article,html.dark #siteContent #ct-wrapper.tpl-messages > article{padding:16px !important}
  html.dark .cover{outline-offset:4px}
}
/* G210 end */

/* G211 - Media Library / My Library card actions: Select, Edit, Delete as three separate buttons
   (neutral / blue / red), and a clear "selected" state: Select turns gold with a tick, the thumbnail
   gets a gold frame and a gold tick badge. Selection = core JS: .thumbs-wrapper.thumb-selected
   and the hidden input.list-check after the Select link. Light and dark. */
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full{display:flex !important;gap:6px;padding:0 !important;background:none !important;border:none !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a{flex:1 1 0;display:inline-flex !important;align-items:center;justify-content:center;gap:5px;min-width:0;
  padding:7px 4px !important;border-radius:7px;border:1px solid var(--gline);background:#fff;color:var(--gtext) !important;
  font-family:'Open Sans',sans-serif;font-size:12.5px !important;font-weight:600 !important;line-height:1.2;text-decoration:none !important;white-space:nowrap;
  transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a i{font-size:11px;color:inherit !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:nth-of-type(1):hover{border-color:#c9a84c;color:#8a6d1f !important;background:#fbf6e8}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:nth-of-type(2){color:#0b4a8b !important;border-color:rgba(11,74,139,.35)}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:nth-of-type(2):hover{background:#0b4a8b;border-color:#0b4a8b;color:#fff !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:nth-of-type(3){color:#c8101e !important;border-color:rgba(200,16,30,.35)}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:nth-of-type(3):hover{background:#d80314;border-color:#d80314;color:#fff !important}
/* selected */
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:has(+ input.list-check:checked){background:linear-gradient(180deg,#e2c46e,#c9a84c) !important;border-color:#b8953a !important;color:#1b1406 !important;box-shadow:0 2px 10px rgba(201,168,76,.4)}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs:has(.thumb-selected){border-radius:8px;background:rgba(201,168,76,.10);box-shadow:0 0 0 8px rgba(201,168,76,.10),0 0 0 9px rgba(201,168,76,.5)}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .thumbs-wrapper.thumb-selected .mediaThumb,html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .thumbs-wrapper.thumb-selected figure img{border-color:#c9a84c !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .thumbs-wrapper.thumb-selected figure{position:relative;box-shadow:0 0 0 3px #c9a84c,0 8px 22px rgba(201,168,76,.3) !important;border-radius:6px}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .thumbs-wrapper.thumb-selected figure::after{content:"\2713";position:absolute;top:8px;left:8px;z-index:5;width:26px;height:26px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;background:#c9a84c;color:#1b1406;font-size:15px;font-weight:800;box-shadow:0 2px 8px rgba(0,0,0,.4)}
/* dark */
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a{background:var(--d-surf2);border-color:var(--d-line);color:var(--d-text) !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:nth-of-type(1):hover{background:rgba(201,168,76,.12);border-color:#c9a84c;color:#e3c879 !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:nth-of-type(2){color:#8fb8ff !important;border-color:rgba(143,184,255,.3)}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:nth-of-type(2):hover{background:#123a6b;border-color:#3a6fb0;color:#fff !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:nth-of-type(3){color:#ff6b75 !important;border-color:rgba(255,107,117,.3)}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:nth-of-type(3):hover{background:#d80314;border-color:#d80314;color:#fff !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs:has(.thumb-selected){background:rgba(201,168,76,.07);box-shadow:0 0 0 8px rgba(201,168,76,.07),0 0 0 9px rgba(201,168,76,.5)}
/* G211 end */

/* G212 - "premium" LIGHT mode with its OWN palette (navy + red on white, soft sky-blue tints and
   blue-grey lines; gold is used only in dark mode): white-to-sky masthead with navy glow and navy
   hairlines, red marker + navy line on headings, white panels with blue-grey edges and red/navy corner
   brackets, sky-tinted alternating home sections, navy numbers, sky banner headers, framed watch page,
   navy "selected" state in Media Library. Light only (html:not(.dark)). */
html:not(.dark) body{background:radial-gradient(1400px 520px at 50% -160px,rgba(11,74,139,.07),rgba(11,74,139,0) 70%) no-repeat,#f7f9fc !important}

/* header */
html:not(.dark) header.aptv-hdr .util{background:linear-gradient(90deg,#071d3a 0%,#0b2f5c 50%,#071d3a 100%) !important;border-bottom:2px solid #d80314 !important}
html:not(.dark) header.aptv-hdr .util a:hover{color:#ffd0d4 !important}
html:not(.dark) header.aptv-hdr .masthead{position:relative;background:radial-gradient(ellipse 42% 120% at 50% 0%,rgba(11,74,139,.10) 0%,rgba(11,74,139,0) 70%),linear-gradient(180deg,#ffffff 0%,#f3f7fc 100%) !important;border-bottom:1px solid #d5e1f0 !important}
html:not(.dark) header.aptv-hdr .masthead::before,html:not(.dark) header.aptv-hdr .masthead::after{content:"";position:absolute;top:50%;height:1px;width:calc(50% - 190px);max-width:420px;pointer-events:none;margin-top:-6px}
html:not(.dark) header.aptv-hdr .masthead::before{right:calc(50% + 150px);background:linear-gradient(90deg,rgba(11,47,92,0),rgba(11,47,92,.75))}
html:not(.dark) header.aptv-hdr .masthead::after{left:calc(50% + 150px);background:linear-gradient(270deg,rgba(11,47,92,0),rgba(11,47,92,.75))}
html:not(.dark) header.aptv-hdr .masthead .rule{box-shadow:0 2px 10px rgba(11,47,92,.15)}
html:not(.dark) header.aptv-hdr .topnav{background:rgba(255,255,255,.97) !important;border-bottom:1px solid #d5e1f0 !important;box-shadow:0 8px 24px rgba(11,47,92,.08)}
html:not(.dark) header.aptv-hdr .navlinks > a{transition:color .15s ease}
html:not(.dark) header.aptv-hdr .navlinks > a:hover{color:#0b4a8b !important}
html:not(.dark) header.aptv-hdr .navlinks > a.on{box-shadow:inset 0 -3px 0 #d80314}
html:not(.dark) header.aptv-hdr .topsearch{border:1px solid #c3d3e8 !important;border-radius:6px !important;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}
html:not(.dark) header.aptv-hdr .topsearch:focus-within{border-color:#0b4a8b !important;box-shadow:0 0 0 3px rgba(11,74,139,.15)}
html:not(.dark) header.aptv-hdr .u-btn{box-shadow:0 0 0 3px rgba(11,74,139,.15)}
@media(max-width:760px){ html:not(.dark) header.aptv-hdr .masthead::before,html:not(.dark) header.aptv-hdr .masthead::after{display:none} }

/* headings */
html:not(.dark) .sec-h h2::before{content:"\25C6";font-size:.42em;color:#d80314;vertical-align:middle;margin-right:12px;position:relative;top:-.12em;text-shadow:0 0 10px rgba(216,3,20,.35)}
html:not(.dark) .sec-h .line{height:1px !important;background:linear-gradient(90deg,rgba(11,47,92,.55),rgba(11,47,92,.05)) !important}
html:not(.dark) .page-h h1::after{content:"";display:block;width:64px;height:3px;margin-top:12px;border-radius:2px;background:linear-gradient(90deg,#0b2f5c,#d80314)}
html:not(.dark) .rail-item{border-bottom-color:#d5e1f0 !important}

/* home: featured video + framed sections */
html:not(.dark) .cover{outline:1px solid rgba(11,47,92,.25);outline-offset:6px;border-radius:10px !important}
html:not(.dark) .cover .live-tag{background-image:linear-gradient(110deg,rgba(255,255,255,0) 35%,rgba(255,255,255,.65) 50%,rgba(255,255,255,0) 65%) !important;background-size:250% 100% !important;background-repeat:no-repeat !important;animation:aptv-shimmer 3.2s ease-in-out infinite}
html:not(.dark) .wrap > .sec,html:not(.dark) .lead-grid > div:first-child,html:not(.dark) .lead-grid > aside{position:relative;border-radius:14px;padding:26px 28px 30px !important;
  border:1px solid #d5e1f0;background:#fff;box-shadow:0 14px 34px rgba(11,47,92,.07)}
html:not(.dark) .wrap > .sec:nth-of-type(even){background:linear-gradient(135deg,#eef4fb 0%,#ffffff 60%)}
html:not(.dark) .wrap > .sec{margin-top:34px !important}
html:not(.dark) .wrap > .sec::before,html:not(.dark) .wrap > .sec::after,html:not(.dark) .lead-grid > div:first-child::before,html:not(.dark) .lead-grid > aside::before{content:"";position:absolute;width:28px;height:28px;pointer-events:none}
html:not(.dark) .wrap > .sec::before,html:not(.dark) .lead-grid > div:first-child::before,html:not(.dark) .lead-grid > aside::before{top:-1px;left:-1px;border-top:2px solid #d80314;border-left:2px solid #d80314;border-top-left-radius:14px}
html:not(.dark) .wrap > .sec::after{bottom:-1px;right:-1px;border-bottom:2px solid #0b2f5c;border-right:2px solid #0b2f5c;border-bottom-right-radius:14px}
html:not(.dark) #mostwatched .rail-item .n{background:linear-gradient(180deg,#2a6bb3 0%,#0b2f5c 100%);-webkit-background-clip:text;background-clip:text;color:transparent !important}
html:not(.dark) #mostwatched .rail-item{margin:0 -10px;padding:14px 10px !important;border-radius:8px;transition:background .2s ease}
html:not(.dark) #mostwatched .rail-item:hover{background:#eef4fb}
html:not(.dark) #nlForm{margin-top:20px;padding:18px;border-radius:12px;border:1px solid #d5e1f0;background:linear-gradient(135deg,#eef4fb,#ffffff)}
html:not(.dark) .acard{transition:translate .25s ease}
html:not(.dark) .acard:hover{translate:0 -3px}
html:not(.dark) .acard .thumb,html:not(.dark) #siteContent li.vs-column .thumbs-wrapper figure{border-radius:6px;overflow:hidden;transition:box-shadow .2s ease}
html:not(.dark) .acard:hover .thumb,html:not(.dark) #siteContent li.vs-column:hover .thumbs-wrapper figure{box-shadow:0 0 0 2px rgba(11,74,139,.35),0 10px 24px rgba(11,47,92,.16)}
html:not(.dark) .ch-card .av{box-shadow:0 0 0 4px rgba(11,74,139,.08),0 8px 20px rgba(11,47,92,.12);transition:box-shadow .2s ease}
html:not(.dark) .ch-card:hover .av{box-shadow:0 0 0 4px rgba(216,3,20,.18),0 10px 24px rgba(11,47,92,.18)}

/* panels, cards, banner headers */
html:not(.dark) .panel,html:not(.dark) .acct-panel,html:not(.dark) .subs-card,html:not(.dark) .auth-card,html:not(.dark) .tpl_channels ul.ch-grid:not(.columns) .vs-column{border:1px solid #d5e1f0 !important;box-shadow:0 12px 30px rgba(11,47,92,.07) !important}
html:not(.dark) .auth-card{border-top:3px solid #d80314 !important}
html:not(.dark) .panel > .ph,html:not(.dark) .acct-panel > .ph{border-bottom:1px solid #d5e1f0 !important;background:linear-gradient(90deg,#eef4fb,rgba(238,244,251,0) 60%) !important}
html:not(.dark) .subs-card:hover,html:not(.dark) .tpl_channels ul.ch-grid .vs-column:hover{border-color:#a9c1e0 !important;box-shadow:0 14px 34px rgba(11,47,92,.13) !important}
html:not(.dark) #siteContent .page-h,html:not(.dark) .tpl_browse #siteContent article.haiii,html:not(.dark) #siteContent #view-type-content > article,html:not(.dark) #siteContent #ct-wrapper.tpl-messages > article{position:relative;border-radius:14px;padding:22px 26px !important;margin-bottom:22px !important;
  border:1px solid #d5e1f0 !important;background:linear-gradient(120deg,#e6effa 0%,#ffffff 65%) !important;box-shadow:0 12px 30px rgba(11,47,92,.06)}
html:not(.dark) #siteContent .page-h::before,html:not(.dark) .tpl_browse #siteContent article.haiii::before,html:not(.dark) #siteContent #view-type-content > article::before,html:not(.dark) #siteContent #ct-wrapper.tpl-messages > article::before{content:"";position:absolute;top:-1px;left:-1px;width:28px;height:28px;border-top:2px solid #d80314;border-left:2px solid #d80314;border-top-left-radius:14px;pointer-events:none}

/* left menu (desktop) */
@media(min-width:901px){
  html:not(.dark) .container_wrapper > .sidebar-container{border-right:1px solid #d5e1f0 !important}
  html:not(.dark) .sidebar-container h4.nav-title,html:not(.dark) .sidebar-container h4.nav-title i{color:#0b4a8b !important}
}

/* watch page and channel page */
html:not(.dark) .tpl_view .video_player_holder{border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px rgba(11,47,92,.25),0 22px 50px rgba(11,47,92,.22)}
html:not(.dark) .tpl_view #title-wrapper,html:not(.dark) .tpl_view #div-info,html:not(.dark) .tpl_view .page_holder_right{border-radius:12px !important;border:1px solid #d5e1f0 !important;background:#fff !important;box-shadow:0 12px 30px rgba(11,47,92,.07) !important}
html:not(.dark) .tpl_view #title-wrapper,html:not(.dark) .tpl_view #div-info{padding:18px 22px !important;margin-top:18px !important}
html:not(.dark) .tpl_view .page_holder_right{padding:6px 14px 14px !important}
html:not(.dark) #channel-header figure{border-radius:12px;overflow:hidden;box-shadow:0 0 0 1px rgba(11,47,92,.25),0 18px 40px rgba(11,47,92,.18)}
html:not(.dark) #channel-tabs .channel-tab-list{border-bottom:1px solid #d5e1f0 !important}

/* buttons, fields, footer */
html:not(.dark) .btn.red:hover,html:not(.dark) #siteContent .search-button.form-button:hover,html:not(.dark) .symbol-button:hover{box-shadow:0 6px 18px rgba(216,3,20,.3) !important}
html:not(.dark) .btn.ghost:hover{background:#0b2f5c !important;border-color:#0b2f5c !important;color:#fff !important}
html:not(.dark) input[type="text"]:focus,html:not(.dark) input[type="email"]:focus,html:not(.dark) input[type="password"]:focus,html:not(.dark) input[type="search"]:focus,html:not(.dark) textarea:focus,html:not(.dark) select:focus{border-color:#0b4a8b !important;box-shadow:0 0 0 3px rgba(11,74,139,.15) !important;outline:none !important}
html:not(.dark) .foot-disclaimer{border-top:2px solid #d80314 !important}
html:not(.dark) .foot{border-top:1px solid rgba(255,255,255,.12)}

/* Media Library "selected" state in navy (dark mode keeps gold) */
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:nth-of-type(1):hover{border-color:#0b4a8b;color:#0b4a8b !important;background:#eef4fb}
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .vwrap .thumbs-wrappers .vs-column.full > a:has(+ input.list-check:checked){background:linear-gradient(180deg,#1a5aa0,#0b2f5c) !important;border-color:#0b2f5c !important;color:#fff !important;box-shadow:0 2px 10px rgba(11,47,92,.35)}
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs:has(.thumb-selected){background:#eef4fb;box-shadow:0 0 0 8px #eef4fb,0 0 0 9px rgba(11,74,139,.45)}
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .thumbs-wrapper.thumb-selected figure{box-shadow:0 0 0 3px #0b4a8b,0 8px 22px rgba(11,47,92,.25) !important}
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .thumbs-wrapper.thumb-selected .mediaThumb,html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .thumbs-wrapper.thumb-selected figure img{border-color:#0b4a8b !important}
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent li.vs-column.small-thumbs .thumbs-wrapper.thumb-selected figure::after{background:#0b4a8b;color:#fff}

@media(max-width:600px){
  html:not(.dark) .wrap > .sec,html:not(.dark) .lead-grid > div:first-child,html:not(.dark) .lead-grid > aside{padding:18px 14px 20px !important;border-radius:12px}
  html:not(.dark) #siteContent .page-h,html:not(.dark) .tpl_browse #siteContent article.haiii,html:not(.dark) #siteContent #view-type-content > article,html:not(.dark) #siteContent #ct-wrapper.tpl-messages > article{padding:16px !important}
  html:not(.dark) .cover{outline-offset:4px}
}
@media (prefers-reduced-motion:no-preference){
  @supports (animation-timeline:view()){
    html body .wrap > .sec,html body .acard,html body .ch-card,html body #siteContent li.vs-column,html body .subs-card,html body .tpl_channels ul.ch-grid .vs-column{animation:aptv-rise linear both;animation-timeline:view();animation-range:entry 0% entry 30%}
  }
}
/* G212 end */

/* G213 - type & colour system (site-wide audit 2026-10-06 of 40 page states, light + dark).
   Four text tokens, each with a light and a dark value:
     --t-ink  titles / strong labels     --t-body  paragraphs, toolbar text
     --t-meta views, dates, subtitles    --t-faint minor details
   Fixes: stray Roboto -> Open Sans; meta text one size (12.5px) and one colour; off-palette greys and
   black (#7a7a7a, #505050, #141414, #000) -> tokens; reading text line-height 1.7-1.75; page titles
   one size; thin (300) section heading -> 800; left-menu group titles 10.5px -> 11px; one button
   radius. */
:root{--t-ink:#092b51;--t-body:#2b3645;--t-meta:#5d6b7e;--t-faint:#8592a3}
html.dark{--t-ink:#f2f5fb;--t-body:#dde3eb;--t-meta:#9aa7b8;--t-faint:#7d8a9c}

/* one font family for UI text */
.views-number,a.icon > span,#siteContent pre,.chero-st{font-family:'Open Sans',sans-serif !important}

/* meta text: views, dates, counts */
html body .views-number,html body .caption .views-number,html body .acard .body .meta,html body .chero-st,html body .likes_count,
html body .rail-item span,html body .ch-views-nr{font-size:12.5px !important;color:var(--t-meta) !important;letter-spacing:.01em}
html body .acard .body .meta b,html body .acard .body .meta strong{color:var(--t-body) !important}

/* subtitles under titles (italic serif) */
html body #siteContent .page-h > p,html body .auth-card > p.sub,html body #siteContent .page-h + p{color:var(--t-meta) !important}
html body .auth-card .auth-alt{color:var(--t-meta) !important}

/* reading text */
html body .tpl_view .p-d-txt,html body .tpl_view #div-info p,html body .wpb_wrapper p,html body #siteContent article > p{color:var(--t-body) !important;line-height:1.75 !important}
html body #siteContent pre,html body #siteContent pre.hp-pre{white-space:pre-wrap !important;font-size:15px !important;line-height:1.7 !important;color:var(--t-body) !important}

/* toolbar / sort / empty-state text (was #000, #505050, #141414) */
html body #siteContent .sort-by .lsp,html body #siteContent .sort-by .place-left,html body #siteContent a.icon > span,html body #siteContent .viewType_btn span,
html body #siteContent .hst,html body #siteContent .actions-trigger,html body #siteContent .select-box .trigger,html body #siteContent .no-content{color:var(--t-body) !important}
html body #siteContent .no-content{font-size:15px !important}
html body .tpl_view .views_counter,html body .tpl_view .views_counter span{color:var(--t-body) !important;font-size:15px !important}
html body .tpl_view .page_holder_right > h5{font-family:'Open Sans',sans-serif !important;font-size:11px !important;font-weight:700 !important;letter-spacing:.14em !important;text-transform:uppercase;color:var(--t-ink) !important}
html body .plupload_file_status span{color:var(--t-meta) !important}

/* headings: one size for page titles, no thin section headings */
html body #siteContent .page-h > h1,html body #siteContent > div > h1{font-size:30px !important;line-height:1.2 !important}
html body .sec-h h2{font-weight:800 !important}
html body .tpl_channel .channel-heading h1,html body #channel-subscribe h1{font-weight:800 !important}

/* left-menu group titles */
html body .sidebar-container h4.nav-title{font-size:11px !important;letter-spacing:.14em !important}

/* buttons: one corner shape */
html body .btn,html body #siteContent .search-button.form-button,html body .symbol-button,html body .chc-view,html body .chc-sub,html body .sub-renew,html body .auth-card button[type=submit]{border-radius:6px !important}
/* light mode: the old shared greys now point at the system tones (meta #5d6b7e, body #1f2a38) */
html:not(.dark){--mut:#5d6b7e;--gmut:#5d6b7e;--ink:#1f2a38;--gink:#1f2a38;--ink-2:#3a4656}
html.dark{--mut:#9aa7b8;--gmut:#9aa7b8}
/* watch page: the Subscribe/Follow block (.channel_owner) is placed by script at the top-right of
   #div-info; shift it by the panel padding added in G210/G212 (18px 22px) so it sits inside the panel */
@media(min-width:1000px){ html body .tpl_view .page_holder_left > .channel_owner{transform:translate(-22px,18px)} }
/* G213 end */

/* G214 - responsive page width (owner: too much empty space left/right on big screens; fluid up to
   1200px). One variable --site-max used by every content container (header rows, home page, footer,
   ViewShark page grid). Fluid (100% minus side padding) below 1280px; then 1240 / 1360 / 1480 / 1600.
   Home featured video: full-bleed background band behind it and a height cap so it fits the screen. */
:root{--site-max:100%}
@media(min-width:1280px){:root{--site-max:1240px}}
@media(min-width:1440px){:root{--site-max:1360px}}
@media(min-width:1680px){:root{--site-max:1480px}}
@media(min-width:1920px){:root{--site-max:1600px}}
html body .wrap,html body .aptv-hdr .wrap,html body .aptv-footer .wrap,
html:not(.aptv-embed) body #ct-header-top,html:not(.aptv-embed) body #ct-header-bottom,
html:not(.aptv-embed) body .container.container_wrapper,
html:not(.aptv-embed) body .tpl_browse .container.container_wrapper,html:not(.aptv-embed) body .tpl_view .container.container_wrapper,
html:not(.aptv-embed) body .tpl_channel .container.container_wrapper,html body .member{max-width:var(--site-max) !important}
@media(min-width:1280px){ html body .wrap,html body .aptv-hdr .wrap,html body .aptv-footer .wrap{padding-left:24px !important;padding-right:24px !important} }

/* home featured video: height fits the screen, full-bleed band behind it (border-image paints outside
   the box without creating horizontal scroll) */
@media(min-width:641px){
  html body .wrap > .cover{max-height:72vh;aspect-ratio:16/9}
  html.dark body .wrap > .cover{border-image:radial-gradient(ellipse 60% 90% at 50% 40%,rgba(201,168,76,.10),rgba(201,168,76,0) 70%),linear-gradient(180deg,#0b1220 0%,#0a0f17 100%) fill 0/0/28px 100vmax}
  html:not(.dark) body .wrap > .cover{border-image:linear-gradient(180deg,#e7eef8 0%,#f4f7fb 100%) fill 0/0/28px 100vmax}
}
/* the tricolour rule runs edge to edge */
@media(min-width:641px){ html body header.aptv-hdr .masthead .rule{margin-left:-24px !important;margin-right:-24px !important} }
/* member pages: the older ID-scoped 1240px cap (G160) needs an equally strong selector */
html:not(.aptv-embed) body #wrapper[class] .container.container_wrapper{max-width:var(--site-max) !important}
/* G214 end */

/* G215 - home "Latest": 6 cards (home.php) in complete rows at every width (3 / 2 / 1 per row,
   6 divides by all of them), and the Latest and Most Watched panels each end at their own content
   instead of stretching to the taller one (no empty space under the cards). */
html body .lead-grid{align-items:start !important}
html body #latest.grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
@media(min-width:1001px) and (max-width:1179px){ html body #latest.grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important} }
@media(max-width:800px){ html body #latest.grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important} }
/* owner: on smaller screens (2 or 1 per row) show 4 videos */
@media(min-width:1001px) and (max-width:1179px),(max-width:800px){ html body #latest.grid > :nth-child(n+5){display:none !important} }
@media(max-width:640px){ html body #latest.grid{grid-template-columns:minmax(0,1fr) !important} }
/* card meta ("Channel · 24 views · 7 days ago") flows as one line of text instead of two flex columns */
html body .acard .body .meta{display:block !important;line-height:1.55 !important}
html body .acard .body .meta .by{display:inline !important}
/* Most Watched titles: 2 lines max (was 3 in app.css) */
html body #mostwatched .rail-item h4{-webkit-line-clamp:2 !important;line-clamp:2;display:-webkit-box !important;-webkit-box-orient:vertical !important;overflow:hidden !important}
/* Top Shows (#channels, 5 cards): auto-fit so unused columns collapse and the cards share the full
   width (auto-fill left an empty 6th column on wide screens) */
html body #channels.ch-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr)) !important}
/* G215 end */

/* G216 - home Top Shows: each show is a tile that fills its column (the stretched columns left wide
   empty gaps between narrow content); tighter gap, hover lift. Light: white tile, blue-grey edge.
   Dark: gradient tile, faint gold edge. */
html body #channels.ch-grid{gap:16px !important}
html body #channels.ch-grid > .ch-card{padding:22px 14px 20px !important;border-radius:12px;transition:translate .2s ease,box-shadow .2s ease,border-color .2s ease}
html body #channels.ch-grid > .ch-card .av{width:96px !important;height:96px !important;margin-bottom:14px !important}
html body #channels.ch-grid > .ch-card:hover{translate:0 -3px}
html:not(.dark) body #channels.ch-grid > .ch-card{background:linear-gradient(180deg,#f6f9fd 0%,#ffffff 100%);border:1px solid #d5e1f0;box-shadow:0 6px 18px rgba(11,47,92,.06)}
html:not(.dark) body #channels.ch-grid > .ch-card:hover{border-color:#a9c1e0;box-shadow:0 12px 26px rgba(11,47,92,.12)}
html.dark body #channels.ch-grid > .ch-card{background:linear-gradient(180deg,#18202b 0%,#121821 100%);border:1px solid rgba(201,168,76,.16);box-shadow:0 8px 22px rgba(0,0,0,.35)}
html.dark body #channels.ch-grid > .ch-card:hover{border-color:rgba(201,168,76,.45);box-shadow:0 14px 30px rgba(0,0,0,.5),0 0 22px rgba(201,168,76,.10)}
/* layout: centred flexible rows - 5 per row from 1000px, 3 + 2 on tablets, 2 + 2 + 1 on phones */
html body #channels.ch-grid{display:flex !important;flex-wrap:wrap;justify-content:center}
html body #channels.ch-grid > .ch-card{flex:1 1 0;min-width:0}
@media(max-width:999px){ html body #channels.ch-grid > .ch-card{flex:0 0 calc((100% - 32px) / 3)} }
@media(max-width:599px){ html body #channels.ch-grid{gap:12px !important} html body #channels.ch-grid > .ch-card{flex:0 0 calc((100% - 12px) / 2);padding:18px 10px 16px !important} html body #channels.ch-grid > .ch-card .av{width:80px !important;height:80px !important} }
html body #channels.ch-grid{align-items:stretch !important}
html body #channels.ch-grid > .ch-card{height:auto !important}
@media(max-width:599px){ html body #channels.ch-grid > .ch-card h3{font-size:15px !important} }
/* G216 end */

/* G217 - Videos (/videos), Live (/broadcasts), Channels (/channels) use the full page width too:
   .content-wrap was capped at 1180px (my G-block at line ~141). Side padding 24px so the content
   lines up with the header. Video grid (G81, auto-fill 300px) then gives 4 per row on wide screens;
   Channels grid gets 4 per row from 1440px. */
html:not(.aptv-embed) body .tpl_browse .content-wrap,html:not(.aptv-embed) body .tpl_channels .content-wrap{max-width:none !important;padding-left:24px !important;padding-right:24px !important}
@media(max-width:640px){ html:not(.aptv-embed) body .tpl_browse .content-wrap,html:not(.aptv-embed) body .tpl_channels .content-wrap{padding-left:16px !important;padding-right:16px !important} }
@media(min-width:1440px){ html:not(.aptv-embed) body .tpl_channels ul.ch-grid:not(.columns){grid-template-columns:repeat(4,minmax(0,1fr)) !important} }

/* home Top Shows on tablets and phones: 4 shows, 2 + 2 */
@media(max-width:999px){
  html body #channels.ch-grid > .ch-card{flex:0 0 calc((100% - 16px) / 2) !important}
  html body #channels.ch-grid > .ch-card:nth-child(n+5){display:none !important}
}
@media(max-width:599px){ html body #channels.ch-grid > .ch-card{flex:0 0 calc((100% - 12px) / 2) !important} }
/* Channels page: centred rows so a short last row (7 channels: 4+3, 3+3+1, 2+2+2+1) sits in the middle */
html:not(.aptv-embed) body .tpl_channels ul.ch-grid:not(.columns){display:flex !important;flex-wrap:wrap !important;justify-content:center !important;gap:26px !important}
html:not(.aptv-embed) body .tpl_channels ul.ch-grid:not(.columns) > .vs-column{flex:0 0 calc((100% - 52px) / 3) !important;max-width:calc((100% - 52px) / 3) !important}
@media(min-width:1440px){ html:not(.aptv-embed) body .tpl_channels ul.ch-grid:not(.columns) > .vs-column{flex-basis:calc((100% - 78px) / 4) !important;max-width:calc((100% - 78px) / 4) !important} }
@media(max-width:820px){ html:not(.aptv-embed) body .tpl_channels ul.ch-grid:not(.columns) > .vs-column{flex-basis:calc((100% - 26px) / 2) !important;max-width:calc((100% - 26px) / 2) !important} }
@media(max-width:560px){ html:not(.aptv-embed) body .tpl_channels ul.ch-grid:not(.columns) > .vs-column{flex-basis:100% !important;max-width:100% !important} }
/* G217 end */

/* G218 - Videos / Live (and other .tpl_browse grids) video cards: each video is a card with a soft
   shadow; equal height per row; title always 2 lines tall (clamped), so the category lines up; meta
   always 2 lines (channel, then "views - date") pinned to the bottom, so the channel lines up.
   Markup: li.small-thumbs > .thumbs-wrapper > figure + .aptv-body > h3, .aptv-kicker, .aptv-meta */
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs{display:flex !important}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs > .thumbs-wrapper{position:relative;display:flex !important;flex-direction:column;width:100% !important;
  border-radius:12px;overflow:hidden;transition:translate .2s ease,box-shadow .2s ease,border-color .2s ease}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs figure{margin:0 !important;border-radius:0 !important;box-shadow:none !important}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs .aptv-body{display:flex;flex-direction:column;flex:1 1 auto;padding:14px 16px 16px !important;margin:0 !important}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs .aptv-body h3{margin:0 0 8px !important;font-size:16.5px !important;line-height:1.3 !important;
  height:calc(2 * 1.3em) !important;min-height:0 !important;max-height:none !important;
  display:-webkit-box !important;-webkit-line-clamp:2 !important;-webkit-box-orient:vertical !important;overflow:hidden !important}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs .aptv-body h3 a{font-size:inherit !important;line-height:inherit !important}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs .aptv-kicker{display:block;margin:0 0 12px !important}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs .aptv-meta{display:flex !important;flex-wrap:wrap;align-items:center;column-gap:6px;row-gap:3px;
  margin-top:auto !important;padding:12px 0 0 !important;border-top:1px solid var(--gline) !important;width:auto !important;float:none !important}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs .aptv-meta .profile_image{flex:0 0 100%;min-width:0;margin:0 !important;float:none !important}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs .aptv-meta .profile_image .channel_name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs .aptv-meta .profile_image + .i-bullet{display:none !important}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs .aptv-meta .views-number{white-space:nowrap}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs:hover > .thumbs-wrapper{translate:0 -4px}
/* light */
html:not(.dark):not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs > .thumbs-wrapper{background:#fff !important;border:1px solid #d5e1f0 !important;box-shadow:0 6px 18px rgba(11,47,92,.08) !important}
html:not(.dark):not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs:hover > .thumbs-wrapper{border-color:#a9c1e0 !important;box-shadow:0 16px 34px rgba(11,47,92,.16) !important}
html:not(.dark):not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs .aptv-meta{border-top-color:#e3eaf4 !important}
/* dark */
html.dark:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs > .thumbs-wrapper{background:linear-gradient(180deg,#171e28 0%,#121821 100%) !important;border:1px solid rgba(201,168,76,.16) !important;box-shadow:0 10px 26px rgba(0,0,0,.4) !important}
html.dark:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs:hover > .thumbs-wrapper{border-color:rgba(201,168,76,.45) !important;box-shadow:0 18px 38px rgba(0,0,0,.55),0 0 24px rgba(201,168,76,.10) !important}
html.dark:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs .aptv-meta{border-top-color:rgba(255,255,255,.08) !important}
/* every thumbnail an exact 16:9 frame (some images are a few px off, which shifted the text below) */
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs figure{aspect-ratio:16/9 !important;height:auto !important;overflow:hidden !important}
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs figure img.mediaThumb{width:100% !important;height:100% !important;object-fit:cover !important}
/* equal columns by width (auto-fill let a long channel name widen one column) */
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs:has(> li.small-thumbs){grid-template-columns:repeat(4,minmax(0,1fr)) !important}
@media(min-width:1920px){ html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs:has(> li.small-thumbs){grid-template-columns:repeat(5,minmax(0,1fr)) !important} }
@media(max-width:1279px){ html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs:has(> li.small-thumbs){grid-template-columns:repeat(3,minmax(0,1fr)) !important} }
@media(max-width:999px){ html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs:has(> li.small-thumbs){grid-template-columns:repeat(2,minmax(0,1fr)) !important} }
@media(max-width:599px){ html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs:has(> li.small-thumbs){grid-template-columns:minmax(0,1fr) !important} }
/* every card fills its column (an old rule left the first card in a row ~5px narrower) */
html:not(.aptv-embed) body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs{width:100% !important;justify-self:stretch !important;box-sizing:border-box !important}
/* G218 end */

/* G219 - library / messages / page banners (G210/G212) must contain floated children: on
   Media Library > Comments the Video/Stream Comments tabs are floated and hung out of the banner */
html body #siteContent #view-type-content > article,html body #siteContent #ct-wrapper.tpl-messages > article{display:flow-root !important}
/* (.page-h is a flex row with title + button; it is not included) */
/* G219 end */

/* G220 - Media Library / My Library grid (owner: 4 per row, good box shadow): fixed columns
   (4 / 3 / 2 / 1), each video a card with a soft shadow; title 2 lines, channel and views one line
   each, Select/Edit/Delete pinned to the bottom, so every row lines up. Selected = coloured ring on
   the whole card (gold dark, navy light; replaces the G211 halo). Markup:
   li.small-thumbs > .thumbs-wrapper (figure, h2, .profile_image, .caption) + .vwrap (actions). */
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs:has(> li.small-thumbs){display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:24px 20px !important;width:100% !important;margin:0 !important;padding:0 !important}
@media(max-width:1199px){ html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs:has(> li.small-thumbs){grid-template-columns:repeat(3,minmax(0,1fr)) !important} }
@media(max-width:699px){ html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs:has(> li.small-thumbs){grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:16px 12px !important} }
@media(max-width:519px){ html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs:has(> li.small-thumbs){grid-template-columns:minmax(0,1fr) !important} }
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs{display:flex !important;flex-direction:column;width:100% !important;max-width:none !important;min-width:0 !important;float:none !important;margin:0 !important;padding:0 !important;
  border-radius:12px;overflow:hidden;box-sizing:border-box !important;transition:translate .2s ease,box-shadow .2s ease,border-color .2s ease}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs > .thumbs-wrapper{display:flex !important;flex-direction:column;flex:1 1 auto;margin:0 !important;padding:0 !important;border:0 !important;background:none !important;width:auto !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs figure{margin:0 !important;border-radius:0 !important;box-shadow:none !important;aspect-ratio:16/9;overflow:hidden}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs figure img.mediaThumb{width:100% !important;height:100% !important;object-fit:cover !important;border:0 !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs .thumbs-wrapper > h2{margin:12px 14px 6px !important;font-size:15px !important;line-height:1.35 !important;height:calc(2 * 1.35em) !important;min-height:0 !important;
  display:-webkit-box !important;-webkit-line-clamp:2 !important;-webkit-box-orient:vertical !important;overflow:hidden !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs .thumbs-wrapper > h2 a{font-size:inherit !important;line-height:inherit !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs .thumbs-wrapper > .profile_image{margin:0 14px 2px !important;min-width:0}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs .thumbs-wrapper > .profile_image .channel_name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs .thumbs-wrapper > .caption{margin:0 14px !important;padding:0 !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs .thumbs-wrapper > .caption .vs-column{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs > .vwrap{margin-top:auto !important;padding:12px 14px 14px !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs > .vwrap .thumbs-wrappers .vs-column.full{margin:0 !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs:hover{translate:0 -3px}
/* light */
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs{background:#fff !important;border:1px solid #d5e1f0 !important;box-shadow:0 6px 18px rgba(11,47,92,.08) !important}
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs:hover{border-color:#a9c1e0 !important;box-shadow:0 16px 32px rgba(11,47,92,.15) !important}
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs:has(.thumb-selected){border-color:#0b4a8b !important;background:#f3f7fc !important;box-shadow:0 0 0 2px #0b4a8b,0 12px 28px rgba(11,47,92,.18) !important}
/* dark */
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs{background:linear-gradient(180deg,#171e28 0%,#121821 100%) !important;border:1px solid rgba(201,168,76,.16) !important;box-shadow:0 10px 26px rgba(0,0,0,.4) !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs:hover{border-color:rgba(201,168,76,.45) !important;box-shadow:0 18px 36px rgba(0,0,0,.55),0 0 22px rgba(201,168,76,.10) !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs:has(.thumb-selected){border-color:#c9a84c !important;background:linear-gradient(180deg,#1f2530 0%,#161b23 100%) !important;box-shadow:0 0 0 2px #c9a84c,0 14px 30px rgba(0,0,0,.5) !important}
/* selected thumbnail inside a card: no extra frame, keep the tick badge */
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs .thumbs-wrapper.thumb-selected figure{box-shadow:none !important}
/* library pages: lift the old 1180px .content-wrap cap here too (as G217 did for Videos/Channels) */
html:not(.aptv-embed) body #wrapper[class^="tpl_files"] .content-wrap{max-width:none !important}
/* title: lift the old 34px max-height (G-block @M ... ul.fileThumbs.big > li h2) and keep the clamped link inside the title width */
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs .thumbs-wrapper > h2{max-height:none !important;width:auto !important;box-sizing:border-box !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs .thumbs-wrapper > h2 a{display:-webkit-box !important;-webkit-line-clamp:2 !important;-webkit-box-orient:vertical !important;overflow:hidden !important;width:100% !important;max-width:100% !important;white-space:normal !important}
/* G220 end */

/* G221 - Media Library / My Library LIST view: each row a horizontal card (thumbnail left, details
   right: title, description, views/date, then Select/Edit/Delete as buttons), soft shadow, hover lift,
   selected ring like the grid (G220). Stacks on phones. Markup: li.full-thumbs > .thumbs-wrapper
   (figure.effect-fullT + .full-details-holder: h2, p, .vs-column.pd) + .vwrap (.vs-column.thirds). */
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs:has(> li.full-thumbs){display:flex !important;flex-direction:column;gap:18px !important;margin:0 !important;padding:0 !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs{position:relative;display:grid !important;grid-template-columns:280px minmax(0,1fr);grid-template-rows:1fr auto;column-gap:22px;row-gap:10px;align-items:start;
  width:100% !important;max-width:none !important;float:none !important;margin:0 !important;padding:14px !important;border-radius:14px;box-sizing:border-box !important;
  transition:translate .2s ease,box-shadow .2s ease,border-color .2s ease}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .thumbs-wrapper{display:contents !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .thumbs-wrapper > .watch_later{position:absolute !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs figure.effect-fullT{grid-column:1;grid-row:1 / span 2;width:100% !important;max-width:none !important;height:auto !important;aspect-ratio:16/9;margin:0 !important;border-radius:10px !important;overflow:hidden !important;float:none !important;box-shadow:none !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs figure.effect-fullT img{width:100% !important;height:100% !important;object-fit:cover !important;border:0 !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs .full-details-holder{grid-column:2;grid-row:1;width:auto !important;max-width:none !important;float:none !important;margin:0 !important;padding:2px 0 0 !important;min-width:0}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs .full-details-holder h2{margin:0 0 6px !important;font-family:'Playfair Display',Georgia,serif !important;font-size:19px !important;font-weight:800 !important;line-height:1.3 !important;height:auto !important;max-height:none !important;
  display:-webkit-box !important;-webkit-line-clamp:2 !important;-webkit-box-orient:vertical !important;overflow:hidden !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs .full-details-holder h2 a{font:inherit !important;color:var(--t-ink) !important;display:inline !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs .full-details-holder > p{margin:0 0 10px !important;font-size:14px !important;line-height:1.55 !important;color:var(--t-body) !important;
  display:-webkit-box !important;-webkit-line-clamp:2 !important;-webkit-box-orient:vertical !important;overflow:hidden !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs .full-details-holder .vs-column.pd{float:none !important;width:auto !important;margin:0 !important;padding:0 !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap{grid-column:2;grid-row:2;align-self:end;margin:0 !important;padding:0 !important;height:auto !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers{display:block !important;height:auto !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column{display:flex !important;gap:8px;width:auto !important;float:none !important;margin:0 !important;padding:0 !important;background:none !important;border:0 !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a{display:inline-flex !important;align-items:center;gap:6px;padding:8px 16px !important;border-radius:7px;border:1px solid var(--gline);background:#fff;color:var(--t-ink) !important;
  font-family:'Open Sans',sans-serif;font-size:13px !important;font-weight:600 !important;line-height:1.2;text-decoration:none !important;white-space:nowrap;transition:background .15s ease,border-color .15s ease,color .15s ease}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a i{font-size:11px;color:inherit !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a:nth-of-type(2){color:#0b4a8b !important;border-color:rgba(11,74,139,.35)}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a:nth-of-type(2):hover{background:#0b4a8b;border-color:#0b4a8b;color:#fff !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a:nth-of-type(3){color:#c8101e !important;border-color:rgba(200,16,30,.35)}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a:nth-of-type(3):hover{background:#d80314;border-color:#d80314;color:#fff !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs:hover{translate:0 -2px}
@media(max-width:699px){
  html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;padding:12px !important}
  html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs figure.effect-fullT{grid-column:1;grid-row:1}
  html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs .full-details-holder{grid-column:1;grid-row:2}
  html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap{grid-column:1;grid-row:3}
  html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a{flex:1 1 0;justify-content:center;padding:8px 6px !important}
}
/* light */
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs{background:#fff !important;border:1px solid #d5e1f0 !important;box-shadow:0 6px 18px rgba(11,47,92,.08) !important}
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs:hover{border-color:#a9c1e0 !important;box-shadow:0 14px 30px rgba(11,47,92,.14) !important}
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a:nth-of-type(1):hover{border-color:#0b4a8b;color:#0b4a8b !important;background:#eef4fb}
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a:has(+ input.list-check:checked){background:linear-gradient(180deg,#1a5aa0,#0b2f5c) !important;border-color:#0b2f5c !important;color:#fff !important}
html:not(.dark):not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs:has(.thumb-selected){border-color:#0b4a8b !important;background:#f3f7fc !important;box-shadow:0 0 0 2px #0b4a8b,0 12px 28px rgba(11,47,92,.18) !important}
/* dark */
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs{background:linear-gradient(180deg,#171e28 0%,#121821 100%) !important;border:1px solid rgba(201,168,76,.16) !important;box-shadow:0 10px 26px rgba(0,0,0,.4) !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs:hover{border-color:rgba(201,168,76,.45) !important;box-shadow:0 16px 34px rgba(0,0,0,.55) !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a{background:var(--d-surf2);border-color:var(--d-line);color:var(--d-text) !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a:nth-of-type(1):hover{background:rgba(201,168,76,.12);border-color:#c9a84c;color:#e3c879 !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a:nth-of-type(2){color:#8fb8ff !important;border-color:rgba(143,184,255,.3)}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a:nth-of-type(2):hover{background:#123a6b;border-color:#3a6fb0;color:#fff !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a:nth-of-type(3){color:#ff6b75 !important;border-color:rgba(255,107,117,.3)}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a:nth-of-type(3):hover{background:#d80314;border-color:#d80314;color:#fff !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers .vs-column > a:has(+ input.list-check:checked){background:linear-gradient(180deg,#e2c46e,#c9a84c) !important;border-color:#b8953a !important;color:#1b1406 !important}
html.dark:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs:has(.thumb-selected){border-color:#c9a84c !important;box-shadow:0 0 0 2px #c9a84c,0 14px 30px rgba(0,0,0,.5) !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap,html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.full-thumbs > .vwrap .thumbs-wrappers{background:none !important;border:0 !important;box-shadow:none !important}
/* G221 end */

/* G222 - delete confirmation popup (fancybox ajax, form #delete-confirm-form from class.files.php;
   markup unchanged): compact centred dialog (was 50% x 55% of the screen), red warning badge, title,
   message, Cancel + Do it side by side. Light and dark. */
html body .fancybox-wrap:has(#delete-confirm-form){position:fixed !important;top:50% !important;left:50% !important;transform:translate(-50%,-50%);width:min(440px,calc(100vw - 32px)) !important;height:auto !important;margin:0 !important}
html body .fancybox-wrap:has(#delete-confirm-form) .fancybox-skin{padding:0 !important;border-radius:16px !important;overflow:hidden;height:auto !important;width:auto !important}
html body .fancybox-wrap:has(#delete-confirm-form) .fancybox-outer,html body .fancybox-wrap:has(#delete-confirm-form) .fancybox-inner{width:auto !important;height:auto !important;overflow:visible !important;padding:0 !important}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form{padding:30px 28px 26px !important;margin:0 !important;text-align:center}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form > article{margin:0 !important;padding:0 !important;background:none !important;border:0 !important;box-shadow:none !important}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form > article::before{display:none !important}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form > article > .line,html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form > br,html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form > .clearfix{display:none !important}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form h3.content-title{display:block !important;width:auto !important;margin:0 0 8px !important;padding:0 !important;font-family:'Playfair Display',Georgia,serif !important;font-size:23px !important;font-weight:800 !important;line-height:1.25 !important;white-space:normal !important;text-align:center}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form h3.content-title i{display:none !important}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form h3.content-title::before{content:"!";display:flex;align-items:center;justify-content:center;width:58px;height:58px;margin:0 auto 16px;border-radius:50%;
  font-family:'Open Sans',sans-serif;font-size:28px;font-weight:800;color:#d80314;background:rgba(216,3,20,.10);box-shadow:0 0 0 8px rgba(216,3,20,.05)}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form > h4{margin:0 0 24px !important;font-family:'Open Sans',sans-serif !important;font-size:15px !important;font-weight:400 !important;line-height:1.6 !important;color:var(--t-body) !important}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form #delete-button-row{display:flex !important;gap:12px;margin:0 !important;padding:0 !important;float:none !important;width:auto !important}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form #delete-button-row > *{flex:1 1 0;display:inline-flex !important;align-items:center;justify-content:center;height:46px !important;margin:0 !important;padding:0 16px !important;
  border-radius:8px !important;font-family:'Open Sans',sans-serif !important;font-size:13px !important;font-weight:700 !important;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;
  box-sizing:border-box;float:none !important;width:auto !important;transition:background .15s ease,box-shadow .15s ease,border-color .15s ease,color .15s ease}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form #delete-button-row > *::before,html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form #delete-button-row > *::after,html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form #delete-button-row > * span::before,html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form #delete-button-row > * span::after{display:none !important;content:none !important}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form #delete-button-row > * span{border:0 !important;padding:0 !important;margin:0 !important}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form #delete-button-row > .cancel-trigger{order:1}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form #delete-button-row > #delete-btn{order:2;background:#d80314 !important;border:1px solid #d80314 !important;color:#fff !important}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form #delete-button-row > #delete-btn:hover{background:#b00210 !important;border-color:#b00210 !important;box-shadow:0 8px 20px rgba(216,3,20,.35) !important}
html body .fancybox-wrap:has(#delete-confirm-form) .close-lightbox{position:absolute !important;top:14px !important;right:16px !important;z-index:5;font-size:16px !important;cursor:pointer;opacity:.6}
html body .fancybox-wrap:has(#delete-confirm-form) .close-lightbox:hover{opacity:1}
/* light */
html:not(.dark) body .fancybox-wrap:has(#delete-confirm-form) .fancybox-skin{background:#fff !important;border:1px solid #d5e1f0;box-shadow:0 30px 70px rgba(11,47,92,.30) !important}
html:not(.dark) body .fancybox-wrap:has(#delete-confirm-form) h3.content-title{color:#092b51 !important}
html:not(.dark) body .fancybox-wrap:has(#delete-confirm-form) #delete-button-row > .cancel-trigger{background:#fff !important;border:1px solid #c3d3e8 !important;color:#0b2f5c !important}
html:not(.dark) body .fancybox-wrap:has(#delete-confirm-form) #delete-button-row > .cancel-trigger:hover{background:#eef4fb !important;border-color:#0b4a8b !important}
html:not(.dark) body .fancybox-wrap:has(#delete-confirm-form) .close-lightbox{color:#0b2f5c !important}
/* dark */
html.dark body .fancybox-wrap:has(#delete-confirm-form) .fancybox-skin{background:linear-gradient(180deg,#18202b 0%,#121821 100%) !important;border:1px solid rgba(201,168,76,.22);box-shadow:0 30px 70px rgba(0,0,0,.6) !important}
html.dark body .fancybox-wrap:has(#delete-confirm-form) h3.content-title{color:#f2f5fb !important}
html.dark body .fancybox-wrap:has(#delete-confirm-form) h3.content-title::before{color:#ff6b75;background:rgba(255,107,117,.12);box-shadow:0 0 0 8px rgba(255,107,117,.06)}
html.dark body .fancybox-wrap:has(#delete-confirm-form) #delete-button-row > .cancel-trigger{background:transparent !important;border:1px solid rgba(255,255,255,.18) !important;color:#e8ebf1 !important}
html.dark body .fancybox-wrap:has(#delete-confirm-form) #delete-button-row > .cancel-trigger:hover{background:rgba(255,255,255,.06) !important;border-color:rgba(201,168,76,.5) !important}
html.dark body .fancybox-wrap:has(#delete-confirm-form) .close-lightbox{color:#e8ebf1 !important}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form h3.content-title{height:auto !important;max-height:none !important;overflow:visible !important}
html body .fancybox-wrap:has(#delete-confirm-form) #delete-confirm-form #delete-button-row > *{min-width:0 !important;max-width:none !important}
/* G222 end */

/* G223 - channel page: avatar (.channel-logo) hangs below the banner, so the banner frame must not
   clip it (G210/G212 set overflow:hidden on #channel-header figure); the banner image itself gets the
   rounded corners instead. Video cards on channel pages use G218 (selectors widened to .tpl_channel). */
html body #channel-header figure{overflow:visible !important}
html body #channel-header #bg-channel-image{border-radius:12px;overflow:visible !important}
html body #channel-header .channel-logo{z-index:3}
html body #channel-header .channel-logo img{border-radius:50% !important;overflow:hidden;background:#fff;box-shadow:0 0 0 4px #fff,0 8px 22px rgba(11,47,92,.25)}
html.dark body #channel-header .channel-logo img{box-shadow:0 0 0 4px #0d1117,0 0 0 5px rgba(201,168,76,.5),0 10px 26px rgba(0,0,0,.6)}
/* phones: the centred avatar hangs 52px below the banner; push the channel name down to clear it,
   and give the channel tabs their own space */
@media(max-width:640px){
  html body #wrapper #ct-wrapper #channel-subscribe{padding-top:62px !important;margin-top:0 !important}
  html body #channel-tabs .channel-tab-list{gap:6px !important;overflow-x:auto}
  html body #channel-tabs .channel-tab-list li a{padding-left:14px !important;padding-right:14px !important;white-space:nowrap}
}
/* G223 end */

/* G224 - public pages (channel, Videos/Live, Channels, watch, search, info pages): no white/dark panel
   behind the page content (.fluid); cards and banners carry their own frames now. */
html body #wrapper:is(.tpl_channel,.tpl_browse,.tpl_channels,.tpl_view,.tpl_search,.tpl_page) .container.container_wrapper > .fluid,
html body #wrapper:is(.tpl_channel,.tpl_browse,.tpl_channels,.tpl_view,.tpl_search,.tpl_page) .container.container_wrapper{background:transparent !important;box-shadow:none !important;border:0 !important}
/* G224 end */

/* G225 - left menu (desktop >= 901px): the open page's submenu (li.this-inner, e.g. Media Library >
   Uploads, Playlists, Comments...) is shown as a nested group: indented tinted box with a guide line,
   smaller text and icons; the active subitem is a soft pill with a red dot instead of the full red bar.
   Main items keep the bold style. Light (navy tints) and dark (gold hairline). */
@media(min-width:901px){
  html body #wrapper .sidebar-container #session-accordion > li.this-inner{margin:2px 14px 10px 30px !important;padding:6px 0 !important;border-radius:10px;position:relative;list-style:none}
  html body #wrapper .sidebar-container #session-accordion > li.this-inner::before{content:"";position:absolute;left:-12px;top:-4px;bottom:12px;width:2px;border-radius:2px}
  html body #wrapper .sidebar-container #session-accordion > li.this-inner .categories-container,html body #wrapper .sidebar-container #session-accordion > li.this-inner aside,html body #wrapper .sidebar-container #session-accordion > li.this-inner nav{margin:0 !important;padding:0 !important;background:none !important;border:0 !important}
  html body #wrapper .sidebar-container #session-accordion > li.this-inner h4{display:none !important}
  html body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li > a{display:flex !important;align-items:center;gap:10px;margin:1px 6px !important;padding:7px 12px 7px 14px !important;border-radius:7px !important;
    font-size:13px !important;font-weight:600 !important;line-height:1.3 !important;box-shadow:none !important;border:0 !important;background:transparent !important}
  html body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li > a i{width:14px !important;font-size:11.5px !important;opacity:.75;margin:0 !important}
  html body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li.menu-panel-entry-active > a,html body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li > a.active{background:var(--sub-on-bg) !important;color:var(--sub-on-fg) !important;box-shadow:none !important}
  html body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li.menu-panel-entry-active > a::after,html body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li > a.active::after{content:"";width:6px;height:6px;border-radius:50%;margin-left:auto;background:#d80314;flex:none}
  html body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li.menu-panel-entry-active > a i,html body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li > a.active i{opacity:1;color:#d80314 !important}
  html:not(.dark) body #wrapper .sidebar-container #session-accordion > li.this-inner{background:#f1f5fb;border:1px solid #dfe8f4;--sub-on-bg:#fff;--sub-on-fg:#092b51}
  html:not(.dark) body #wrapper .sidebar-container #session-accordion > li.this-inner::before{background:linear-gradient(180deg,#d80314,rgba(216,3,20,.15))}
  html:not(.dark) body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li > a{color:#3a4a60 !important}
  html:not(.dark) body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li > a:hover{background:#fff !important;color:#092b51 !important}
  html:not(.dark) body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li.menu-panel-entry-active > a{box-shadow:0 2px 8px rgba(11,47,92,.10) !important}
  html.dark body #wrapper .sidebar-container #session-accordion > li.this-inner{background:rgba(255,255,255,.03);border:1px solid rgba(201,168,76,.14);--sub-on-bg:rgba(201,168,76,.12);--sub-on-fg:#f2f5fb}
  html.dark body #wrapper .sidebar-container #session-accordion > li.this-inner::before{background:linear-gradient(180deg,#c9a84c,rgba(201,168,76,.15))}
  html.dark body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li > a{color:#b9c3d1 !important}
  html.dark body #wrapper .sidebar-container #session-accordion > li.this-inner .inner-accordion > li > a:hover{background:rgba(255,255,255,.05) !important;color:#f2f5fb !important}
  /* parent of an open submenu: keep the red bar, bold */
  html body #wrapper .sidebar-container #session-accordion > li.main-menu-panel-entry-active > a{font-weight:700 !important}
}
/* no divider lines inside the submenu box; dark mode: the old #e5e5e5 item dividers were bright white */
@media(min-width:901px){ html body #wrapper .sidebar-container #session-accordion > li.this-inner li{border:0 !important} }
html.dark body #wrapper .sidebar-container .accordion > li,html.dark body #wrapper .sidebar-container .sort-nav-menu > li{border-color:rgba(255,255,255,.07) !important}
/* G225 end */

/* G226 - header search: the inner input must not get the site-wide focus ring (G209/G212) - the
   form (.topsearch:focus-within) draws the one ring; also no inner border/radius. Same for the
   mobile search overlay. */
html body header.aptv-hdr .topsearch input,html body header.aptv-hdr .topsearch input:focus,
html body .search-overlay .so-inner input,html body .search-overlay .so-inner input:focus{border:0 !important;box-shadow:none !important;outline:none !important;border-radius:0 !important;background:transparent !important}
/* G226 end */

/* G227 - Media Library banner search (#file-search-form: #sq input, #file-search-button submit,
   .sb-icon-search-fe toggle icon): one clean 40px rounded field with the icon inside on the right
   (the input was 58px tall and the white icon/button boxes covered its border). */
html body #siteContent #file-search-form{position:relative;height:40px !important}
html body #siteContent #file-search-form #sq{height:40px !important;top:0 !important;box-sizing:border-box !important;padding:0 44px 0 14px !important;font-size:14px !important;line-height:40px !important;
  border-radius:8px !important;border:1px solid #c3d3e8 !important;background:#fff !important;color:var(--t-ink) !important;box-shadow:none !important;outline:none !important}
html body #siteContent #file-search-form #sq:focus{border-color:#0b4a8b !important;box-shadow:0 0 0 3px rgba(11,74,139,.15) !important}
html body #siteContent #file-search-form #file-search-button,html body #siteContent #file-search-form .sb-icon-search-fe{top:1px !important;right:1px !important;width:38px !important;height:38px !important;line-height:38px !important;
  background:transparent !important;border:0 !important;border-radius:0 8px 8px 0 !important;text-align:center;color:#0b2f5c !important}
html.dark body #siteContent #file-search-form #sq{background:#161c26 !important;border-color:rgba(201,168,76,.3) !important;color:#f2f5fb !important}
html.dark body #siteContent #file-search-form #sq:focus{border-color:rgba(201,168,76,.7) !important;box-shadow:0 0 0 3px rgba(201,168,76,.14) !important}
html.dark body #siteContent #file-search-form #file-search-button,html.dark body #siteContent #file-search-form .sb-icon-search-fe{color:#e8ebf1 !important}
/* the wrapper (#sb-search-fe, overflow:hidden) was 32px tall and cut the 40px field's bottom */
html body #siteContent #sb-search-fe.sb-search-open{height:42px !important;overflow:visible !important}
/* closed state: only the icon shows (the field's border peeked out around it) */
html body #siteContent #sb-search-fe:not(.sb-search-open) #sq{border-color:transparent !important;background:transparent !important;box-shadow:none !important}
/* a second, stray icon (i.icon-search inside the form) sat on top of the real one */
html body #siteContent #file-search-form > i.icon-search,html body #siteContent #file-search-form i.icon.icon-search{display:none !important}
/* closed: the icon fills its 32px box, centred */
html body #siteContent #sb-search-fe:not(.sb-search-open){width:34px !important;height:34px !important;border-radius:8px !important;overflow:hidden !important;box-sizing:border-box}
html body #siteContent #sb-search-fe:not(.sb-search-open) .sb-icon-search-fe{top:0 !important;right:0 !important;width:100% !important;height:100% !important;line-height:32px !important;font-size:15px !important;display:flex !important;align-items:center;justify-content:center}
html body #siteContent #sb-search-fe:not(.sb-search-open) #file-search-button{top:0 !important;right:0 !important;width:100% !important;height:100% !important}
/* search suggestions (.autocomplete-suggestions, appended to body) */
html body .autocomplete-suggestions{border-radius:8px !important;border:1px solid #c3d3e8 !important;box-shadow:0 12px 28px rgba(11,47,92,.15) !important;overflow:auto;background:#fff !important;color:#1f2a38 !important}
html body .autocomplete-suggestions .autocomplete-suggestion{padding:8px 12px !important;color:#1f2a38 !important;font-size:13.5px !important;cursor:pointer}
html body .autocomplete-suggestions .autocomplete-suggestion b,html body .autocomplete-suggestions .autocomplete-suggestion strong{color:#0b4a8b !important}
html body .autocomplete-suggestions .autocomplete-suggestion.selected,html body .autocomplete-suggestions .autocomplete-suggestion:hover{background:#eef4fb !important}
html.dark body .autocomplete-suggestions{background:#161c26 !important;border-color:rgba(201,168,76,.3) !important;box-shadow:0 14px 30px rgba(0,0,0,.55) !important}
html.dark body .autocomplete-suggestions .autocomplete-suggestion{color:#dde3eb !important}
html.dark body .autocomplete-suggestions .autocomplete-suggestion b,html.dark body .autocomplete-suggestions .autocomplete-suggestion strong{color:#e3c879 !important}
html.dark body .autocomplete-suggestions .autocomplete-suggestion.selected,html.dark body .autocomplete-suggestions .autocomplete-suggestion:hover{background:rgba(201,168,76,.10) !important}
/* G227 end */

/* G228 - site audit fixes (2026-10-06) */
/* Messages: same desktop left-menu styling as the other member pages (copies of the G160 sidebar
   rules with #wrapper.tpl_messages; the phone menu already covered Messages in G197) */
@media(min-width:901px){
#wrapper.tpl_messages .sidebar-container #session-accordion > li > a,#wrapper.tpl_messages .sidebar-container .categories-container .accordion > li > a{background:transparent !important;display:flex !important;align-items:center;gap:14px;
  padding:11px 22px !important;font-size:14px !important;font-weight:600 !important;color:var(--gtext) !important;box-shadow:none !important}
#wrapper.tpl_messages .sidebar-container .categories-container .accordion > li > a:hover{background:var(--gcream) !important}
#wrapper.tpl_messages .sidebar-container #session-accordion > li.main-menu-panel-entry-active > a,
#wrapper.tpl_messages .sidebar-container .inner-accordion > li.menu-panel-entry-active > a,#wrapper.tpl_messages .sidebar-container .inner-accordion > li > a.active{
  background:var(--gcream) !important;color:var(--gr) !important;box-shadow:inset 3px 0 0 var(--gr) !important}
#wrapper.tpl_messages .sidebar-container .inner-accordion > li > a.active i,#wrapper.tpl_messages .sidebar-container .inner-accordion > li.menu-panel-entry-active > a i{color:var(--gr) !important}
#wrapper.tpl_messages .sidebar-container .this-inner .categories-container{border:none !important;margin:0 !important;padding:0 !important}
#wrapper.tpl_messages .sidebar-container .inner-accordion > li > a{padding:9px 22px 9px 56px !important;font-size:13.5px !important;font-weight:600 !important;gap:10px}
#wrapper.tpl_messages .sidebar-container .inner-accordion > li > a i{width:16px;text-align:center;font-size:13px !important;margin:0 !important}
html:not(.aptv-embed) #wrapper.tpl_messages .container.container_wrapper,#wrapper.tpl_messages .sidebar-container,#wrapper.tpl_messages #siteContent,#wrapper.tpl_messages .page-h p,#wrapper.tpl_messages .panel,#wrapper.tpl_messages .panel .ph{line-height:normal !important}
#wrapper.tpl_messages .sidebar-container #session-accordion > li > a,#wrapper.tpl_messages .sidebar-container .categories-container .accordion > li > a{line-height:normal !important}
#wrapper.tpl_messages .sidebar-container #session-accordion > li > a .i,#wrapper.tpl_messages .sidebar-container .categories-container .accordion > li > a .i{opacity:.95;margin:0 !important;line-height:normal !important}
html:not(.aptv-embed) #wrapper.tpl_messages .container.container_wrapper > .sidebar-container{padding:16px 0 40px !important;border-right:1px solid var(--gline) !important}
#wrapper.tpl_messages .sidebar-container h4.categories-menu-title{display:flex !important;align-items:center;gap:10px;line-height:normal !important;padding:16px 22px 8px !important;margin:0 !important}
#wrapper.tpl_messages .sidebar-container h4.categories-menu-title i{position:static !important;float:none !important;margin:0 !important;width:auto !important;font-size:11px !important;color:var(--gmut) !important}
#wrapper.tpl_messages .sidebar-container h4.categories-menu-title .i{margin:0 !important}
#wrapper.tpl_messages .sidebar-container .overview > .categories-container + .categories-container{border-top:1px solid var(--gline) !important;margin-top:10px !important;padding-top:10px !important}
#wrapper.tpl_messages .sidebar-container .overview > .categories-container:not(.aptv-mylib):not(:has(#session-accordion)){display:none !important}
#wrapper.tpl_messages .sidebar-container #menu-panel-wrapper,#wrapper.tpl_messages .sidebar-container #menu-panel-wrapper ~ .categories-container{display:none !important}
#wrapper.tpl_messages .sidebar-container .this-inner h4.categories-menu-title,#wrapper.tpl_messages .sidebar-container h4.categories-menu-title.no-display{display:none !important}
}
/* channel About: Add to Friends / Blocklist / Private Message were three full-width red bars with only
   an icon; now a row of outline buttons with icon + label (label from the title attribute) */
html body #user-actions-form{display:flex !important;flex-wrap:wrap;gap:10px;margin:12px 0 !important}
html body #user-actions-form > button.profile-action{display:inline-flex !important;align-items:center;gap:8px;width:auto !important;min-width:0 !important;max-width:none !important;height:40px !important;
  margin:0 !important;padding:0 16px !important;border-radius:8px !important;float:none !important;font-family:'Open Sans',sans-serif !important;font-size:13px !important;font-weight:600 !important;letter-spacing:0 !important;text-transform:none !important;
  background:#fff !important;border:1px solid #c3d3e8 !important;color:#0b2f5c !important;box-shadow:none !important}
html body #user-actions-form > button.profile-action::after{content:attr(title) !important;display:inline !important;position:static !important;font:inherit !important;color:inherit !important;background:none !important;border:0 !important;padding:0 !important;margin:0 !important;width:auto !important;height:auto !important}
html body #user-actions-form > button.profile-action:hover{border-color:#0b4a8b !important;background:#eef4fb !important}
html body #user-actions-form > button.profile-block{color:#c8101e !important;border-color:rgba(200,16,30,.35) !important}
html body #user-actions-form > button.profile-block:hover{background:#fdecee !important;border-color:#d80314 !important}
html.dark body #user-actions-form > button.profile-action{background:var(--d-surf2) !important;border-color:var(--d-line) !important;color:#e8ebf1 !important}
html.dark body #user-actions-form > button.profile-action:hover{border-color:rgba(201,168,76,.5) !important;background:rgba(201,168,76,.08) !important}
html.dark body #user-actions-form > button.profile-block{color:#ff6b75 !important;border-color:rgba(255,107,117,.3) !important}
@media(max-width:640px){ html body #user-actions-form > button.profile-action{flex:1 1 100%;justify-content:center} }
/* Edit video: long video title wraps instead of running off the screen */
html body #wrapper.tpl_files_edit #siteContent article > h3.content-title{display:block !important;white-space:normal !important;width:auto !important;max-width:100% !important;overflow-wrap:anywhere;line-height:1.25 !important}
/* Edit video on phones: settings fields use the full width (were fixed at 260px) */
@media(max-width:640px){ html body #wrapper.tpl_files_edit #siteContent .settings-wrapper,html body #wrapper.tpl_files_edit #siteContent .settings-wrapper > div,html body #wrapper.tpl_files_edit #siteContent .settings-wrapper .login-input,html body #wrapper.tpl_files_edit #siteContent .settings-wrapper textarea,html body #wrapper.tpl_files_edit #siteContent .settings-wrapper select{width:100% !important;max-width:100% !important;box-sizing:border-box !important} }
/* phones: footer column titles and bottom bar labels at least 11px */
html body .foot.aptv-footer .cols h5,html body .aptv-footer h5,html body .foot h5{font-size:11px !important}
html body .botnav a span,html body .bottom-nav a span,html body nav[class*="bot"] a span{font-size:11px !important}
html body #user-actions-form > button.profile-action::before{display:inline !important;position:static !important;font-family:'Open Sans',sans-serif !important;font-size:15px !important;font-weight:700;line-height:1;margin:0 !important;background:none !important;width:auto !important;height:auto !important}
html body #user-actions-form > button.profile-friend-add::before{content:"+" !important}
html body #user-actions-form > button.profile-block::before{content:"\2298" !important}
html body #user-actions-form > button.profile-message::before{content:"\2709" !important}
/* G228 end */

/* G276 - Message Center for "Normal user" accounts (html[data-role="viewer"], set in
   tpl_head_min.tpl). The submenu shows only Message Inbox, Spam and Blocked Users, and
   the label tools (New Label button and form, Add to / Clear label actions) are gone.
   Hidden, not removed: the messages scripts still look the entries up by id.
   Blocked Users (#message-menu-entry7-sub2) sits in the My Contacts sub-list, so that
   list stays and only its other rows are hidden. #wrapper outweighs the phone-menu
   rules (G197). */
html[data-role="viewer"] #wrapper li#message-menu-entry5,
html[data-role="viewer"] #wrapper li#message-menu-entry5-sub-entries,
html[data-role="viewer"] #wrapper li#message-menu-entry2-sub-entries,
html[data-role="viewer"] #wrapper li#message-menu-entry6-sub-entries,
html[data-role="viewer"] #wrapper li#message-menu-entry4,
html[data-role="viewer"] #wrapper li#message-menu-entry7,
html[data-role="viewer"] #wrapper li#message-menu-entry7-sub1,
html[data-role="viewer"] #wrapper li#message-menu-entry7-sub-entries li.pl-entry,
html[data-role="viewer"] #wrapper #new-label,
html[data-role="viewer"] #wrapper #add-new-label,
html[data-role="viewer"] #wrapper li#cb-label-add,
html[data-role="viewer"] #wrapper li#cb-label-remove,
/* no "New Private Message" button either (Reply on a received message stays) */
html[data-role="viewer"] #wrapper #compose-button{display:none !important}
/* G276 end */

/* G278 - reply form: the To field is locked to the sender (tpl_msg/tpl_compose.tpl,
   readonly + .msg-to-locked); show it as fixed, not as a field to type in. */
#msg-label-to.msg-to-locked{background:var(--gcream,#f6f6f7) !important;color:var(--gtext,#141414) !important;cursor:not-allowed;box-shadow:none !important}
html.dark #msg-label-to.msg-to-locked{background:rgba(255,255,255,.06) !important;color:#e8ecf3 !important}
/* G278 end */

/* G229 - info pages (/page?t=page-about, -copyright, -terms, -privacy, -live, -partner, -affiliate,
   help): the text column was a centred 760px; now it uses the full site width like the hero above
   (left edge lines up with the hero title), with larger, roomier text for comfortable reading. */
html:not(.aptv-embed) body .tpl_page .container.container_wrapper{max-width:var(--site-max) !important}
html body .tpl_page #siteContent > .lb-margins,html body .tpl_page #siteContent > .about-page{max-width:none !important;width:auto !important;margin:0 !important;padding:44px 0 40px !important}
html body .tpl_page #siteContent > .lb-margins p,html body .tpl_page #siteContent > .about-page p,
html body .tpl_page #siteContent > .lb-margins li,html body .tpl_page #siteContent > .about-page li{font-size:17px !important;line-height:1.8 !important}
@media(max-width:640px){ html body .tpl_page #siteContent > .lb-margins,html body .tpl_page #siteContent > .about-page{padding:28px 0 !important}
  html body .tpl_page #siteContent > .lb-margins p,html body .tpl_page #siteContent > .about-page p,html body .tpl_page #siteContent > .lb-margins li,html body .tpl_page #siteContent > .about-page li{font-size:16px !important} }
/* G229 end */

/* G282 - My Library > Watchlist / Liked for "Normal user": per-video "Remove from
   Watchlist" / "Unlike" link (.aptv-lib-remove, class.files.php + george.js). The
   card's action row holds it; the row's "Select" link is for the bulk actions
   Normal users do not have, so it is hidden next to it. */
/* outweighs the card-row rules of G237 / G262 (grid and list) */
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs li.vs-column .vwrap .thumbs-wrappers .vs-column:has(> a.aptv-lib-remove) > a:not(.aptv-lib-remove){display:none !important}
html:not(.aptv-embed) #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs li.vs-column .vwrap .thumbs-wrappers .vs-column > a.aptv-lib-remove,
a.aptv-lib-remove{display:inline-flex !important;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.02em;
  color:var(--gr,#d80314) !important;text-decoration:none;cursor:pointer}
a.aptv-lib-remove:hover{text-decoration:underline}
a.aptv-lib-remove i{color:inherit !important}
a.aptv-lib-remove.busy{opacity:.6;pointer-events:none}
html.dark a.aptv-lib-remove{color:#ff6b78 !important}
li.aptv-lib-gone{transition:opacity .3s ease, transform .3s ease;opacity:0;transform:scale(.96)}
/* G282 end */

/* G284 - "Normal user": no "Sort by" on the My Library pages (.sort-by.aptv-nosort, set in
   class.files.php listMedia()). Hidden, not removed: the grid/list switch reads it. */
#wrapper .sort-by.aptv-nosort{display:none !important}
/* the grid/list switch is placed absolutely over the Sort-by row; without that row it would
   sit on the first cards, so it takes its own row on the right */
#wrapper .sort-by.aptv-nosort ~ section.filter{position:static !important;display:flex !important;justify-content:flex-end;margin:0 0 14px !important}
/* G284 end */

/* G286 - "Normal user": no "Private Message" button on channel pages (About section,
   button.priv-msg from class.channel.php), like "New Private Message" in G276. */
html[data-role="viewer"] #wrapper button.priv-msg{display:none !important}
/* G286 end */

/* G230 - ON/OFF switches in page content (core label.switch.switch-light > input.switch-input +
   span.switch-label + span.switch-handle; Channel Modules, account settings, file edit options):
   shown again (G-rule at ~line 453 hid them site-wide) and styled as a brand pill:
   off = grey track, on = red track with "ON", white knob. Channel Modules in two columns. */
html body #siteContent label.switch.switch-light{display:inline-block !important;position:relative !important;width:66px !important;height:30px !important;margin:0 !important;padding:0 !important;
  border-radius:30px !important;background:none !important;box-shadow:none !important;vertical-align:middle;cursor:pointer;overflow:visible !important}
html body #siteContent label.switch.switch-light .switch-input{position:absolute !important;inset:0 !important;opacity:0 !important;margin:0 !important;width:100% !important;height:100% !important;cursor:pointer;z-index:2}
html body #siteContent label.switch.switch-light .switch-label{display:block !important;position:relative !important;height:30px !important;width:100% !important;border-radius:30px !important;
  background:#cfd8e3 !important;border:0 !important;box-shadow:inset 0 1px 3px rgba(0,0,0,.15) !important;font-size:10px !important;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transition:background .2s ease}
html body #siteContent label.switch.switch-light .switch-label::before{content:attr(data-off) !important;position:absolute;right:9px;top:50%;transform:translateY(-50%);line-height:1;color:#5d6b7e !important}
html body #siteContent label.switch.switch-light .switch-label::after{content:attr(data-on) !important;position:absolute;left:10px;top:50%;transform:translateY(-50%);line-height:1;color:#fff !important;opacity:0}
html body #siteContent label.switch.switch-light .switch-handle{position:absolute !important;top:3px !important;left:3px !important;width:24px !important;height:24px !important;border-radius:50% !important;
  background:#fff !important;box-shadow:0 2px 5px rgba(0,0,0,.3) !important;transition:left .2s ease;z-index:1}
html body #siteContent label.switch.switch-light .switch-input:checked ~ .switch-label{background:#d80314 !important}
html body #siteContent label.switch.switch-light .switch-input:checked ~ .switch-label::before{opacity:0}
html body #siteContent label.switch.switch-light .switch-input:checked ~ .switch-label::after{opacity:1}
html body #siteContent label.switch.switch-light .switch-input:checked ~ .switch-handle{left:39px !important}
html body #siteContent label.switch.switch-light .switch-input:focus-visible ~ .switch-label{outline:2px solid #0b4a8b;outline-offset:2px}
html.dark body #siteContent label.switch.switch-light .switch-label{background:#2a333f !important}
html.dark body #siteContent label.switch.switch-light .switch-label::before{color:#9aa7b8 !important}
html body #siteContent .switch_holder{width:auto !important;height:auto !important;display:inline-block !important}
/* Channel Modules: two columns side by side, rows aligned, switch vertically centred */
html body #siteContent nav:has(> .vs-column.half > ul.responsive-accordion){display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;width:auto !important}
html body #siteContent nav:has(> .vs-column.half > ul.responsive-accordion) > .vs-column.half{float:none !important;width:auto !important;margin:0 !important;padding:0 !important}
html body #siteContent nav:has(> .vs-column.half > ul.responsive-accordion) > .clearfix{display:none !important}
@media(max-width:820px){ html body #siteContent nav:has(> .vs-column.half > ul.responsive-accordion){grid-template-columns:minmax(0,1fr)} }
html body #siteContent ul.responsive-accordion.bm-larger{margin:0 0 12px !important;width:auto !important}
html body #siteContent ul.responsive-accordion.bm-larger > li > .responsive-accordion-head{display:flex !important;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:0 16px !important;box-sizing:border-box}
html body #siteContent ul.responsive-accordion.bm-larger > li > .responsive-accordion-head > .place-left,html body #siteContent ul.responsive-accordion.bm-larger > li > .responsive-accordion-head > .place-right{float:none !important;margin:0 !important}
html body #siteContent ul.responsive-accordion.bm-larger > li > .responsive-accordion-head form{margin:0 !important;padding:0 !important;background:none !important;border:0 !important;box-shadow:none !important}
/* label positions pinned (an older .autoplay-switch rule set left:11px on ::before, which put "OFF" under the knob) */
html body #siteContent label.switch.switch-light .switch-label::before{left:auto !important;right:8px !important;text-indent:0 !important;font-size:10px !important;font-weight:800 !important;width:auto !important}
html body #siteContent label.switch.switch-light .switch-label::after{right:auto !important;left:9px !important;text-indent:0 !important;font-size:10px !important;font-weight:800 !important;width:auto !important}
/* G230 end */

/* G231 - watch page action buttons each in their own colour (light + dark): Share blue, Add-to green,
   Download gold, Report amber (outline + tint, filled on hover); Subscribe solid red, Follow solid navy. */
html body .tpl_view #siteContent .act-btn .sh_button{transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}
html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-redo2){color:#1d6fd1 !important;border-color:#1d6fd155 !important;background:#eef5ff !important}
html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-redo2) i,html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-redo2) span{color:inherit !important}
html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-redo2):hover{background:#1d6fd1 !important;border-color:#1d6fd1 !important;color:#fff !important;box-shadow:0 6px 16px #1d6fd155 !important}
html.dark body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-redo2){color:#7fb2ff !important;border-color:#7fb2ff66 !important;background:rgba(29,111,209,.14) !important}
html.dark body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-redo2):hover{background:#1d6fd1 !important;border-color:#1d6fd1 !important;color:#fff !important}
html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-plus){color:#178a4a !important;border-color:#178a4a55 !important;background:#ecf8f1 !important}
html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-plus) i,html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-plus) span{color:inherit !important}
html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-plus):hover{background:#178a4a !important;border-color:#178a4a !important;color:#fff !important;box-shadow:0 6px 16px #178a4a55 !important}
html.dark body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-plus){color:#5fd394 !important;border-color:#5fd39466 !important;background:rgba(23,138,74,.16) !important}
html.dark body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-plus):hover{background:#178a4a !important;border-color:#178a4a !important;color:#fff !important}
html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-download){color:#a07a1c !important;border-color:#a07a1c55 !important;background:#fbf5e6 !important}
html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-download) i,html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-download) span{color:inherit !important}
html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-download):hover{background:#a07a1c !important;border-color:#a07a1c !important;color:#fff !important;box-shadow:0 6px 16px #a07a1c55 !important}
html.dark body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-download){color:#e3c879 !important;border-color:#e3c87966 !important;background:rgba(201,168,76,.14) !important}
html.dark body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-download):hover{background:#a07a1c !important;border-color:#a07a1c !important;color:#fff !important}
html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-flag){color:#c2550c !important;border-color:#c2550c55 !important;background:#fff3ea !important}
html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-flag) i,html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-flag) span{color:inherit !important}
html body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-flag):hover{background:#c2550c !important;border-color:#c2550c !important;color:#fff !important;box-shadow:0 6px 16px #c2550c55 !important}
html.dark body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-flag){color:#ff9d5c !important;border-color:#ff9d5c66 !important;background:rgba(194,85,12,.16) !important}
html.dark body .tpl_view #siteContent .act-btn .sh_button:has(> i.icon-flag):hover{background:#c2550c !important;border-color:#c2550c !important;color:#fff !important}
html body .tpl_view #siteContent a.count_link:has(.sub-txt),html body .tpl_view #siteContent a.count_link:has(.follow-txt){transition:background .15s ease,box-shadow .15s ease,filter .15s ease}
html body .tpl_view #siteContent a.count_link:has(.sub-txt){background:#d80314 !important;border:1px solid #d80314 !important;color:#fff !important}
html body .tpl_view #siteContent a.count_link:has(.sub-txt) *{color:#fff !important}
html body .tpl_view #siteContent a.count_link:has(.sub-txt):hover{background:#b00210 !important;box-shadow:0 6px 18px rgba(216,3,20,.35) !important}
html body .tpl_view #siteContent a.count_link:has(.follow-txt){background:#0b2f5c !important;border:1px solid #0b2f5c !important;color:#fff !important}
html body .tpl_view #siteContent a.count_link:has(.follow-txt) *{color:#fff !important}
html body .tpl_view #siteContent a.count_link:has(.follow-txt):hover{background:#123f78 !important;box-shadow:0 6px 18px rgba(11,47,92,.35) !important}
html.dark body .tpl_view #siteContent a.count_link:has(.follow-txt){background:#1b4f8f !important;border-color:#3a6fb0 !important}
html.dark body .tpl_view #siteContent a.count_link:has(.follow-txt):hover{background:#235fa8 !important}
/* G231 end */

/* G232 - home video cards (.grid > a.acard: Latest + category rows, built by assets/ui.js) as framed
   cards like /videos: border, soft shadow, hover lift; inside: kicker, title fixed at 3 lines (clamped),
   meta pinned to the bottom with a hairline, so every row lines up. Most Watched rows as small framed
   rows. Light: white + #d5e1f0; dark: gradient + faint gold edge. */
html body .grid > a.acard{display:flex !important;flex-direction:column;height:100%;box-sizing:border-box;border-radius:12px;overflow:hidden;
  transition:translate .2s ease,box-shadow .2s ease,border-color .2s ease}
html body .grid > a.acard .thumb{border-radius:0 !important;box-shadow:none !important;margin:0 !important}
html body .grid > a.acard .body{display:flex;flex-direction:column;flex:1 1 auto;padding:14px 16px 14px !important;margin:0 !important}
html body .grid > a.acard .body .kicker{margin:0 0 8px !important}
html body .grid > a.acard .body h3{margin:0 0 12px !important;line-height:1.28 !important;height:calc(3 * 1.28em);overflow:hidden;
  display:-webkit-box !important;-webkit-line-clamp:3;-webkit-box-orient:vertical}
html body .grid > a.acard .body .meta{margin-top:auto !important;padding-top:10px !important;border-top:1px solid #e3eaf4 !important;
  white-space:normal !important;line-height:1.5 !important;height:calc(2 * 1.5em + 10px);box-sizing:border-box;overflow:hidden;
  display:-webkit-box !important;-webkit-line-clamp:2;-webkit-box-orient:vertical}
html body .grid > a.acard:hover{translate:0 -4px}
html:not(.dark) body .grid > a.acard{background:#fff;border:1px solid #d5e1f0;box-shadow:0 6px 18px rgba(11,47,92,.08)}
html:not(.dark) body .grid > a.acard:hover{border-color:#a9c1e0;box-shadow:0 16px 32px rgba(11,47,92,.15)}
html.dark body .grid > a.acard{background:linear-gradient(180deg,#171e28 0%,#121821 100%);border:1px solid rgba(201,168,76,.16);box-shadow:0 10px 26px rgba(0,0,0,.4)}
html.dark body .grid > a.acard:hover{border-color:rgba(201,168,76,.45);box-shadow:0 18px 36px rgba(0,0,0,.55),0 0 22px rgba(201,168,76,.10)}
html.dark body .grid > a.acard .body .meta{border-top-color:rgba(255,255,255,.08) !important}
html body .grid{gap:22px !important}
/* Most Watched: each row a small framed card */
html body #mostwatched .rail-item{margin:0 0 10px !important;padding:12px 14px !important;border-radius:10px;border-bottom:0 !important;align-items:flex-start}
html:not(.dark) body #mostwatched .rail-item{background:#f7f9fc;border:1px solid #e3eaf4 !important}
html:not(.dark) body #mostwatched .rail-item:hover{background:#fff;border-color:#a9c1e0 !important;box-shadow:0 8px 18px rgba(11,47,92,.10)}
html.dark body #mostwatched .rail-item{background:rgba(255,255,255,.03);border:1px solid rgba(201,168,76,.14) !important}
html.dark body #mostwatched .rail-item:hover{background:rgba(201,168,76,.06);border-color:rgba(201,168,76,.4) !important}
@media(max-width:640px){ html body .grid > a.acard .body h3{height:auto;-webkit-line-clamp:3} }
/* G232 end */

/* G233 - watch page, already-subscribed state: core shows a.sub-opt > .sub-txt "Subscription" (old core
   style: green on green). Now a red-outline button with a tick and a chevron, filled on hover; matches the
   Subscribe/Follow buttons (G231). Its menu (ul.uu "Your Subscription": channel, Upgrade, Unsubscribe)
   styled as a dropdown card. Light + dark. */
html body .tpl_view #siteContent a.sub-opt{display:inline-flex !important;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px !important;margin:0 !important;
  background:#fff !important;border:1.5px solid #d80314 !important;border-radius:6px !important;color:#d80314 !important;text-decoration:none !important;box-shadow:none !important;
  transition:background .15s ease,color .15s ease,box-shadow .15s ease}
html body .tpl_view #siteContent a.sub-opt .sub-txt{background:none !important;color:inherit !important;font-family:'Open Sans',sans-serif !important;font-size:12px !important;font-weight:800 !important;
  letter-spacing:.12em !important;text-transform:uppercase !important;padding:0 !important;margin:0 !important;border:0 !important;line-height:1 !important}
html body .tpl_view #siteContent a.sub-opt .sub-txt::before{content:"\2713";margin-right:7px;font-weight:800}
html body .tpl_view #siteContent a.sub-opt .sub-txt::after{color:inherit !important;margin-left:8px !important}
html body .tpl_view #siteContent a.sub-opt:hover{background:#d80314 !important;color:#fff !important;box-shadow:0 6px 18px rgba(216,3,20,.3) !important}
html.dark body .tpl_view #siteContent a.sub-opt{background:transparent !important;border-color:#ff5a64 !important;color:#ff6b75 !important}
html.dark body .tpl_view #siteContent a.sub-opt:hover{background:#d80314 !important;border-color:#d80314 !important;color:#fff !important}
/* dropdown */
html body .tpl_view #siteContent ul.uu{right:0 !important;left:auto !important;min-width:300px !important;padding:8px 0 !important;border-radius:12px !important;list-style:none;
  background:#fff !important;border:1px solid #d5e1f0 !important;box-shadow:0 18px 40px rgba(11,47,92,.18) !important;z-index:20}
html body .tpl_view #siteContent ul.uu li{padding:10px 16px !important;color:#1f2a38 !important}
html body .tpl_view #siteContent ul.uu li.uu1{font-size:11px !important;font-weight:800 !important;letter-spacing:.12em;text-transform:uppercase;color:#5d6b7e !important;border-bottom:1px solid #e3eaf4}
html body .tpl_view #siteContent ul.uu li.uu1 i{color:#d80314 !important}
html body .tpl_view #siteContent ul.uu li.uu2{display:flex !important;align-items:center;gap:10px;font-weight:700}
html body .tpl_view #siteContent ul.uu li.uu2 img{width:40px !important;height:40px !important;border-radius:50% !important;object-fit:cover;float:none !important;margin:0 !important}
html body .tpl_view #siteContent ul.uu li.uu2 a{color:#092b51 !important}
html body .tpl_view #siteContent ul.uu li center{display:flex !important;gap:10px;justify-content:flex-start}
html body .tpl_view #siteContent ul.uu .sub-uu{background:#d80314 !important;color:#fff !important;border:0 !important;border-radius:6px !important;padding:9px 16px !important;margin:0 !important}
html body .tpl_view #siteContent ul.uu .sub-uu span{color:#fff !important;border:0 !important;padding:0 !important}
html body .tpl_view #siteContent ul.uu .unsubscribe-button{display:inline-flex;align-items:center;padding:9px 16px !important;border:1px solid #c3d3e8 !important;border-radius:6px !important;color:#0b2f5c !important;background:#fff !important;text-decoration:none !important}
html body .tpl_view #siteContent ul.uu .unsubscribe-button:hover{border-color:#d80314 !important;color:#d80314 !important}
html.dark body .tpl_view #siteContent ul.uu{background:#161c26 !important;border-color:rgba(201,168,76,.3) !important;box-shadow:0 18px 40px rgba(0,0,0,.6) !important}
html.dark body .tpl_view #siteContent ul.uu li{color:#dde3eb !important}
html.dark body .tpl_view #siteContent ul.uu li.uu1{color:#9aa7b8 !important;border-bottom-color:rgba(255,255,255,.08)}
html.dark body .tpl_view #siteContent ul.uu li.uu2 a{color:#f2f5fb !important}
html.dark body .tpl_view #siteContent ul.uu .unsubscribe-button{background:transparent !important;border-color:rgba(255,255,255,.2) !important;color:#e8ebf1 !important}
/* anchor the menu under the button (top-right of the description panel) instead of the 0-height .uu-wrap */
html body .tpl_view #siteContent #div-info{position:relative !important}
html body .tpl_view #siteContent #div-info .uu-wrap{position:static !important}
html body .tpl_view #siteContent #div-info ul.uu{position:absolute !important;top:76px !important;right:22px !important;left:auto !important}
@media(max-width:999px){ html body .tpl_view #siteContent #div-info ul.uu{position:fixed !important;top:auto !important;bottom:78px !important;right:12px !important;left:12px !important;min-width:0 !important;z-index:60 !important} }
html body .tpl_view #siteContent ul.uu li.uu1{background:transparent !important}
html body .tpl_view #siteContent ul.uu.arrow_box::before,html body .tpl_view #siteContent ul.uu.arrow_box::after{display:none !important}
/* keep the Subscribe/Follow block above the description panel (it is positioned over #div-info) */
html body .tpl_view .page_holder_left > .channel_owner{z-index:6 !important}
html body .tpl_view #siteContent #div-info ul.uu{z-index:7 !important}
html body .tpl_view #siteContent ul.uu li center{flex-wrap:wrap}
html body .tpl_view #siteContent ul.uu li center > *{flex:1 1 0;justify-content:center;min-width:110px;box-sizing:border-box;width:auto !important;max-width:none !important}
@media(max-width:999px){ html body .tpl_view #siteContent #div-info ul.uu{width:auto !important;max-width:none !important} }
html body .tpl_view #siteContent ul.uu li center{align-items:stretch}
html body .tpl_view #siteContent ul.uu li center > *{height:44px !important;min-height:44px !important;display:inline-flex !important;align-items:center;margin:0 !important;font-size:12px !important;font-weight:700 !important;letter-spacing:.08em;text-transform:uppercase}
/* G233 end */

/* G234 - upload page.
   Progress: the bar span came after the two text spans inside a 24px box with overflow hidden, so it wrapped
   to a hidden 2nd line - only the "33%" text showed. Now the bar is laid absolutely over the whole track
   (0 -> 100% width set by plupload), green, with the speed and % text above it. Taller track, white text
   once the bar is under it is handled by plupload (>52% -> white).
   Category: the custom select (.selector also carries .entry-form-class) got the form-card padding/border;
   reset, and the option list is a proper dropdown under the trigger. */
html body .plupload_progress_container{position:relative !important;height:30px !important;border-radius:15px !important;overflow:hidden !important;
  display:flex !important;align-items:center;gap:16px;padding:0 16px !important;box-sizing:border-box;background:#e6ebf2 !important}
html body .plupload_progress_container .plupload_progress_bar{position:absolute !important;left:0 !important;top:0 !important;bottom:0 !important;height:auto !important;
  display:block !important;border-radius:15px !important;z-index:1;transition:width .3s ease;
  background:linear-gradient(90deg,#16a34a 0%,#22c55e 100%) !important;box-shadow:0 0 12px rgba(34,197,94,.45) !important}
html body .plupload_progress_container .plupload_total_status,html body .plupload_progress_container .plupload_total_file_size{position:relative !important;z-index:2 !important;
  font-family:'Open Sans',sans-serif !important;font-size:12.5px !important;font-weight:800 !important;line-height:1 !important;text-shadow:0 1px 0 rgba(255,255,255,.35)}
html body .plupload_progress_container .plupload_total_status{order:2;margin-left:auto}
html body .plupload_progress_container .plupload_total_file_size{order:1}
html.dark body .plupload_progress_container{background:#1f2733 !important}
html.dark body .plupload_progress_container .plupload_total_status,html.dark body .plupload_progress_container .plupload_total_file_size{color:#e8ebf1 !important;text-shadow:none}
/* per-file status column while uploading */
html body #uploader_filelist .plupload_file_status{color:#16a34a !important;font-weight:700 !important}
/* category select */
html body #uploader_filelist .selector.entry-form-class{padding:0 !important;margin:0 !important;border:0 !important;background:none !important;box-shadow:none !important;border-radius:0 !important}
html body #uploader_filelist .selector .select-box{position:relative !important;width:100% !important;max-width:none !important}
html body #uploader_filelist .selector .select-box .trigger{height:46px !important;line-height:46px !important;padding:0 40px 0 14px !important;border-radius:8px !important;
  border:1px solid #c3d3e8 !important;background:#f7f9fc !important;color:#1f2a38 !important;font-size:14px !important;cursor:pointer}
html body #uploader_filelist .selector .select-box ul.choices{position:absolute !important;left:0 !important;right:0 !important;top:calc(100% + 6px) !important;z-index:30 !important;
  max-height:240px;overflow:auto !important;margin:0 !important;padding:6px 0 !important;border-radius:10px !important;list-style:none;
  background:#fff !important;border:1px solid #d5e1f0 !important;box-shadow:0 14px 30px rgba(11,47,92,.15) !important}
html body #uploader_filelist .selector .select-box ul.choices li{padding:10px 14px !important;margin:0 !important;font-size:14px !important;color:#1f2a38 !important;cursor:pointer;border:0 !important}
html body #uploader_filelist .selector .select-box ul.choices li:hover{background:#eef4fb !important;color:#0b4a8b !important}
html.dark body #uploader_filelist .selector .select-box .trigger{background:#161c26 !important;border-color:rgba(201,168,76,.3) !important;color:#e8ebf1 !important}
html.dark body #uploader_filelist .selector .select-box ul.choices{background:#161c26 !important;border-color:rgba(201,168,76,.3) !important;box-shadow:0 14px 30px rgba(0,0,0,.55) !important}
html.dark body #uploader_filelist .selector .select-box ul.choices li{color:#dde3eb !important}
html.dark body #uploader_filelist .selector .select-box ul.choices li:hover{background:rgba(201,168,76,.10) !important;color:#e3c879 !important}
html body .plupload_progress_container .plupload_total_status{position:absolute !important;right:16px !important;top:50% !important;transform:translateY(-50%);margin:0 !important;width:auto !important}
html body .plupload_progress_container .plupload_total_file_size{width:auto !important;max-width:calc(100% - 80px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html.dark body .plupload_progress_container .plupload_total_status{color:#e8ebf1 !important}
html body .plupload_progress_container .plupload_total_status{color:#0b2f5c !important}
/* the uploader boxes clipped the category list */
html body #uploader_container,html body #uploader_container .plupload,html body #uploader_container .plupload_content,html body #uploader_filelist,html body #uploader_filelist > li,html body #uploader_filelist form{overflow:visible !important}
html body #uploader_filelist .selector .select-box ul.choices li{background:transparent !important}
html body #siteContent div#uploader_container.plupload_container{overflow:visible !important}
/* G234 end */

/* G235 - Media Library conversion overlay (built by george.js from core's figure.converting badge) */
html body #siteContent figure.converting{position:relative !important}
html body #siteContent figure.converting .time-lenght{display:none !important}
html body #siteContent figure.converting .aptv-conv{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  padding:12px;text-align:center;background:linear-gradient(180deg,rgba(9,24,46,.82),rgba(9,24,46,.92));color:#fff;font-family:'Open Sans',sans-serif}
html body #siteContent figure.converting .aptv-conv b{font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
html body #siteContent figure.converting .aptv-conv span{font-size:12px;opacity:.85;min-height:1em}
html body #siteContent figure.converting .aptv-conv-bar{width:80%;max-width:220px;height:8px;border-radius:8px;background:rgba(255,255,255,.18);overflow:hidden;position:relative}
html body #siteContent figure.converting .aptv-conv-bar i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#16a34a,#22c55e);box-shadow:0 0 10px rgba(34,197,94,.6);transition:width .6s ease}
html body #siteContent figure.converting .aptv-conv-bar.indet i{animation:aptv-conv-slide 1.4s ease-in-out infinite}
@keyframes aptv-conv-slide{0%{transform:translateX(-110%)}100%{transform:translateX(310%)}}
/* G235 end */

/* G236 - the scroll "rise" animation (G210/G212) now uses one mode-independent selector: switching
   dark<->light used to swap the matching rule, which restarted the view-timeline animation at opacity 0
   and left Top Shows (and other cards) invisible until hovered. */
/* G236 end */

/* G237 - "wow" pass (2026-10-06): premium details on every page, light + dark, motion off for
   prefers-reduced-motion. JS side at the end of george.js (scrolled header, page-load bar,
   image fade-in, watch-page ambient glow). */
html,body{overflow-x:clip}
::selection{background:#d80314;color:#fff}
html.dark ::selection{background:#c9a84c;color:#0b1a2e}
/* scrollbars */
html{scrollbar-color:#9fb3cc transparent}
html.dark{scrollbar-color:#3a4658 #0b0f15}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#0b2f5c,#1a5aa0);border-radius:10px;border:3px solid #f7f9fc}
html.dark ::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#2a3546,#c9a84c);border-color:#0b0f15}
::-webkit-scrollbar-track{background:transparent}

/* page-load bar (html.aptv-leaving set by george.js on navigation) */
html::before{content:"";position:fixed;left:0;top:0;height:3px;width:0;z-index:9999;pointer-events:none;
  background:linear-gradient(90deg,#d80314,#c9a84c,#1a5aa0);box-shadow:0 0 10px rgba(216,3,20,.6);opacity:0}
html.aptv-leaving::before{opacity:1;animation:aptv-load 2.5s cubic-bezier(.1,.7,.2,1) forwards}
@keyframes aptv-load{from{width:0}to{width:85%}}

/* header: frosted glass + shadow once scrolled (html.aptv-scrolled) */
html.aptv-scrolled body header.aptv-hdr .topnav{backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);transition:box-shadow .25s ease,background .25s ease}
html.aptv-scrolled:not(.dark) body header.aptv-hdr .topnav{background:rgba(255,255,255,.82) !important;box-shadow:0 10px 30px rgba(11,47,92,.12) !important}
html.aptv-scrolled.dark body header.aptv-hdr .topnav{background:rgba(11,15,21,.78) !important;box-shadow:0 12px 32px rgba(0,0,0,.55) !important}
header.aptv-hdr .navlinks > a{position:relative}
header.aptv-hdr .navlinks > a::after{content:"";position:absolute;left:14px;right:14px;bottom:8px;height:2px;border-radius:2px;background:linear-gradient(90deg,#d80314,#c9a84c);
  transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
header.aptv-hdr .navlinks > a:hover::after{transform:scaleX(1)}
header.aptv-hdr .navlinks > a.on::after{display:none}

/* home hero: cinematic vignette, gradient title accent, glass meta chips, glowing CTA */
html body .wrap > .cover::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(ellipse 120% 90% at 30% 100%,rgba(6,20,40,0) 40%,rgba(6,20,40,.35) 100%)}
html body .cover .c-body h1{text-shadow:0 4px 24px rgba(0,0,0,.45)}
html body .cover .c-body h1::after{content:"";display:block;width:90px;height:4px;margin-top:14px;border-radius:4px;background:linear-gradient(90deg,#d80314,#c9a84c);box-shadow:0 0 16px rgba(216,3,20,.6)}
html body .cover .c-meta span:not(:empty):not(:nth-child(even)){background:rgba(255,255,255,.12);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.18);padding:4px 10px;border-radius:20px}
html body .cover .c-meta span:nth-child(even){display:none}
html body .cover .btn.red{box-shadow:0 10px 30px rgba(216,3,20,.45);padding:14px 26px !important}
html body .cover .unmute{border-radius:20px !important;backdrop-filter:blur(8px)}

/* shine sweep on red buttons */
html body .btn.red,html body #siteContent .search-button.form-button,html body .auth-card button[type=submit],html body a.count_link:has(.sub-txt){position:relative;overflow:hidden}
html body .btn.red::after,html body #siteContent .search-button.form-button::after,html body .auth-card button[type=submit]::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;pointer-events:none;
  background:linear-gradient(100deg,rgba(255,255,255,0),rgba(255,255,255,.35),rgba(255,255,255,0));transform:skewX(-20deg);transition:left .6s ease}
html body .btn.red:hover::after,html body #siteContent .search-button.form-button:hover::after,html body .auth-card button[type=submit]:hover::after{left:130%}

/* video cards: accent line + glowing play icon on hover (home .acard, browse/channel/library cards) */
html body .grid > a.acard::before,html body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs > .thumbs-wrapper::before,
html body #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs::before{
  content:"";position:absolute;left:0;right:0;top:0;height:3px;z-index:6;background:linear-gradient(90deg,#d80314,#c9a84c,#1a5aa0);
  transform:scaleX(0);transform-origin:left;transition:transform .35s ease;pointer-events:none}
html body .grid > a.acard,html body #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs{position:relative}
html body .grid > a.acard:hover::before,html body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs:hover > .thumbs-wrapper::before,
html body #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li.vs-column.small-thumbs:hover::before{transform:scaleX(1)}
html body .acard .thumb .play-ic,html body .fileThumbs .play-btn{transition:transform .25s ease,box-shadow .25s ease}
html body .acard:hover .thumb .play-ic{transform:scale(1.12);box-shadow:0 0 0 8px rgba(216,3,20,.25),0 0 30px rgba(216,3,20,.6)}
html body .acard .thumb img,html body .fileThumbs figure img.mediaThumb{transition:transform .5s ease,opacity .4s ease}
html body :is(.tpl_browse,.tpl_channel) ul.fileThumbs > li.small-thumbs:hover figure img.mediaThumb,html body #wrapper[class^="tpl_files"] #siteContent ul.fileThumbs > li:hover figure img.mediaThumb{transform:scale(1.05)}

/* images fade in when loaded (george.js adds .aptv-img / .aptv-in) */
html body img.aptv-img{opacity:0}
html body img.aptv-img.aptv-in{opacity:1;transition:opacity .45s ease}

/* page content fades in */
@keyframes aptv-fadein{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
html body #siteContent,html body body > .wrap,html body > .wrap{animation:aptv-fadein .5s ease both}

/* watch page ambient glow (div.aptv-ambient injected behind the player) */
html body .tpl_view .page_holder_left{position:relative}
html body .tpl_view .aptv-ambient{position:absolute;left:-30px;right:-30px;top:-30px;height:calc(var(--amb-h,480px) + 60px);z-index:0;pointer-events:none;
  background-size:cover;background-position:center;filter:blur(60px) saturate(1.6);opacity:.55;border-radius:40px;transform:translateZ(0)}
html:not(.dark) body .tpl_view .aptv-ambient{opacity:.35}
html body .tpl_view .video_player_holder{position:relative;z-index:1}
html body .tpl_view .page_holder_left > *:not(.aptv-ambient){position:relative;z-index:1}
@media(min-width:1000px){ html body .tpl_view .page_holder_left > .channel_owner{position:absolute;z-index:6 !important} }
@media(max-width:999px){ html body .tpl_view .page_holder_left > .channel_owner{position:relative !important;z-index:6 !important} }

/* channel page: gradient overlay on banner, gradient ring on avatar */
html body #channel-header #bg-channel-image{position:relative}
html body #channel-header #bg-channel-image::after{content:"";position:absolute;inset:0;border-radius:12px;pointer-events:none;
  background:linear-gradient(180deg,rgba(6,20,40,0) 55%,rgba(6,20,40,.55) 100%)}
html body #channel-header .channel-logo{background:conic-gradient(from 210deg,#d80314,#c9a84c,#1a5aa0,#d80314);padding:4px;border-radius:50%}
html body #channel-header .channel-logo img{box-shadow:0 8px 22px rgba(11,47,92,.25) !important}

/* section heading diamond gently pulses */
@keyframes aptv-pulse{0%,100%{opacity:1;text-shadow:0 0 0 rgba(216,3,20,0)}50%{opacity:.75;text-shadow:0 0 12px rgba(216,3,20,.7)}}
html body .sec-h h2::before{animation:aptv-pulse 3s ease-in-out infinite}

/* auth pages: soft brand backdrop */
html:not(.dark) body .tpl_signin #siteContent,html:not(.dark) body .tpl_signup #siteContent,html:not(.dark) body .tpl_recovery #siteContent{
  background:radial-gradient(600px 300px at 20% 10%,rgba(216,3,20,.06),transparent 70%),radial-gradient(600px 300px at 80% 90%,rgba(11,74,139,.08),transparent 70%)}
html.dark body .tpl_signin #siteContent,html.dark body .tpl_signup #siteContent,html.dark body .tpl_recovery #siteContent{
  background:radial-gradient(600px 300px at 20% 10%,rgba(216,3,20,.10),transparent 70%),radial-gradient(600px 300px at 80% 90%,rgba(201,168,76,.08),transparent 70%)}

/* channel page: drop the extra 35px + 43px spacers above "All channels" (Videos page has none) */
html body #wrapper.tpl_channel > .spacer{display:none !important}
html body #wrapper.tpl_channel .container_wrapper > .fluid > .inner-spacer{height:24px !important;min-height:0 !important}
/* channel page Subscribe / Follow: same colours as the watch page (G231) */
html body #channel-subscribe a.count_link:has(.sub-txt){background:#d80314 !important;border:1px solid #d80314 !important;color:#fff !important;border-radius:6px !important}
html body #channel-subscribe a.count_link:has(.follow-txt){background:#0b2f5c !important;border:1px solid #0b2f5c !important;color:#fff !important;border-radius:6px !important}
html body #channel-subscribe a.count_link *{color:#fff !important}
html body #channel-subscribe a.count_link:has(.sub-txt):hover{background:#b00210 !important;box-shadow:0 6px 18px rgba(216,3,20,.35) !important}
html body #channel-subscribe a.count_link:has(.follow-txt):hover{background:#123f78 !important;box-shadow:0 6px 18px rgba(11,47,92,.35) !important}
html.dark body #channel-subscribe a.count_link:has(.follow-txt){background:#1b4f8f !important;border-color:#3a6fb0 !important}
@media(max-width:999px){ html body .tpl_view .aptv-ambient{left:0;right:0;top:-16px;border-radius:24px;filter:blur(40px) saturate(1.5)} }
/* reduced motion: no animations */
@media (prefers-reduced-motion:reduce){
  html body *,html body *::before,html body *::after{animation:none !important;transition:none !important}
  html.aptv-leaving::before{width:85%}
}
/* G237 end */

/* G238 - Account Overview: membership plan card (.account-sub: plan / price / expiry / Renew) hidden on
   request (not deleted; /renew still works). The info strip moves to the top, aligned with the profile
   picture column; spacing tightened. */
html:not(.aptv-embed) #wrapper.tpl_account #siteContent #overview-userinfo .acct-panel .account-stats .account-sub{display:none !important}
html:not(.aptv-embed) #wrapper.tpl_account #siteContent #overview-userinfo .acct-panel .account-stats{row-gap:16px !important;margin-top:4px !important}
html:not(.aptv-embed) #wrapper.tpl_account #siteContent #overview-userinfo .acct-panel .account-stats > .vs-column.half.sc:not(.fit){margin-top:0 !important;background:linear-gradient(120deg,#eef4fb 0%,#ffffff 70%) !important;border-color:#d5e1f0 !important;
  padding:20px 24px !important;border-radius:12px !important;box-shadow:0 6px 18px rgba(11,47,92,.06)}
html:not(.aptv-embed) #wrapper.tpl_account #siteContent #overview-userinfo .acct-panel .account-stats::before{margin-top:4px !important}
html.dark:not(.aptv-embed) #wrapper.tpl_account #siteContent #overview-userinfo .acct-panel .account-stats > .vs-column.half.sc:not(.fit){background:linear-gradient(120deg,rgba(9,43,81,.55) 0%,#161c26 70%) !important;border-color:rgba(201,168,76,.18) !important;box-shadow:none}
@media(max-width:640px){ html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .vs-column.fourths{width:100% !important;display:flex !important;flex-direction:column;align-items:center}
  html:not(.aptv-embed) #wrapper.tpl_account .acct-panel .vs-column.fourths .imageChange{width:100%;max-width:280px} }
/* G238 end */
/* G239 - Account sections (Profile Setup, Email Options, Activity Sharing, Manage Account): the 460px
   field column left half of every panel empty. Panel bodies are now grids - fields 2-up (3-up on wide
   screens), checkbox lists 2-up, notes/buttons full width - with tighter panel padding, and the tiny
   floppy icon becomes a labelled "Save changes" button. One column on phones. */
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form ul.responsive-accordion{margin:0 0 18px !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form ul.responsive-accordion > li{border-radius:12px !important;box-shadow:0 4px 16px rgba(11,47,92,.05)}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .responsive-accordion-head{padding:13px 20px !important;display:flex;align-items:center;justify-content:flex-start !important;gap:10px;background:linear-gradient(90deg,#eef4fb,#fff 60%) !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .responsive-accordion-head::before{content:"";width:4px;height:18px;border-radius:2px;background:#d80314;flex:none}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .responsive-accordion-panel{padding:18px 20px 20px !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 22px;align-items:start}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > br,
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > script{display:none !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .row{max-width:none !important;margin:0 !important;min-width:0}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > :is(.pinfo,p,.wdmax:not(:has(.selector)),.wdmax.no-top-padding,div:not(.row):not(.icheck-box)){grid-column:1/-1;max-width:none !important;margin:0 !important;width:auto !important;float:none !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .pinfo{padding:11px 14px !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .icheck-box{margin:0 !important;width:auto !important;float:none !important;min-width:0;padding:9px 12px !important;border:1px solid #d5e1f0;border-radius:8px;background:#f7faff}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .icheck-box:is(.all-notif,.no-notif){grid-column:1/-1}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details .row textarea{min-height:92px;height:92px}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .wdmax .row,
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .wdmax > div{max-width:none !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .wdmax{float:none !important;width:auto !important;min-width:0;margin:0 !important;padding:0 !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .wdmax > .selector{float:none !important;width:auto !important;display:block !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .wdmax.no-top-padding > .selector{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .wdmax.no-top-padding > .selector > .row{margin:0 !important;max-width:none !important}
@media(min-width:1500px){ html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media(max-width:700px){ html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float{grid-template-columns:minmax(0,1fr);gap:12px}
  html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .responsive-accordion-panel{padding:14px !important}
  html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .responsive-accordion-head{padding:12px 14px !important} }
/* labelled save button in place of the floppy icon */
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper i#all-save{width:auto !important;height:auto !important;display:inline-flex !important;align-items:center;gap:8px;padding:9px 16px !important;border-radius:8px !important;background:#d80314 !important;color:#fff !important;font-size:15px !important;line-height:1 !important;cursor:pointer;box-shadow:0 6px 16px rgba(216,3,20,.22);transition:transform .15s,box-shadow .15s}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper i#all-save::after{content:"Save changes";font-family:'Open Sans',Arial,sans-serif;font-style:normal;font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper i#all-save:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(216,3,20,.3)}
/* dark */
html.dark:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form ul.responsive-accordion > li{box-shadow:0 6px 20px rgba(0,0,0,.28)}
html.dark:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .responsive-accordion-head{background:linear-gradient(90deg,rgba(201,168,76,.10),#161c26 60%) !important}
html.dark:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .responsive-accordion-head::before{background:#c9a84c}
html.dark:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .icheck-box{background:#121821;border-color:rgba(201,168,76,.16)}
html.dark:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper i#all-save{background:#c9a84c !important;color:#121821 !important;box-shadow:0 6px 16px rgba(201,168,76,.18)}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .icheck-box :is(label,span){line-height:1.45 !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details > .left-float > .icheck-box{display:flex !important;align-items:center;gap:8px}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .ct-entry-details .row > .wd140{padding:0 !important;margin:0 0 2px !important;line-height:1.3 !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form ul.responsive-accordion > li:has(.select-box){overflow:visible !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .responsive-accordion-head{border-radius:12px 12px 0 0 !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .responsive-accordion-panel{border-radius:0 0 12px 12px !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .select-box ul.choices{z-index:30 !important;border:1px solid #d5e1f0 !important;border-radius:8px !important;box-shadow:0 14px 30px rgba(11,47,92,.16) !important;background:#fff !important}
html.dark:not(.aptv-embed) #wrapper.tpl_account #ct-wrapper #ct-set-form .select-box ul.choices{border-color:rgba(201,168,76,.22) !important;box-shadow:0 14px 30px rgba(0,0,0,.5) !important;background:#161c26 !important}
html:not(.aptv-embed) #wrapper.tpl_account #ct-set-form .aptv-save-bottom{display:flex;justify-content:flex-end;margin:4px 0 24px;padding-top:16px;border-top:1px solid #d5e1f0}
html:not(.aptv-embed) #wrapper.tpl_account #ct-set-form .aptv-save-bottom .aptv-save-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border:0;border-radius:8px;background:#d80314;color:#fff;font:700 13px/1 'Open Sans',Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;box-shadow:0 6px 16px rgba(216,3,20,.22);transition:transform .15s,box-shadow .15s}
html:not(.aptv-embed) #wrapper.tpl_account #ct-set-form .aptv-save-bottom .aptv-save-btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(216,3,20,.3)}
html:not(.aptv-embed) #wrapper.tpl_account #ct-set-form .aptv-save-bottom .aptv-save-btn i{font-size:15px}
html.dark:not(.aptv-embed) #wrapper.tpl_account #ct-set-form .aptv-save-bottom{border-top-color:rgba(201,168,76,.18)}
html.dark:not(.aptv-embed) #wrapper.tpl_account #ct-set-form .aptv-save-bottom .aptv-save-btn{background:#c9a84c;color:#121821;box-shadow:0 6px 16px rgba(201,168,76,.18)}
@media(max-width:700px){ html:not(.aptv-embed) #wrapper.tpl_account #ct-set-form .aptv-save-bottom .aptv-save-btn{width:100%;justify-content:center} }
/* G239 end */
/* G240 - Top Shows / News & Politics cards invisible after the light<->dark toggle until hovered (seen in
   desktop Chrome): the view-timeline "rise" animation restarts on the theme switch and sticks at its
   opacity-0 start. george.js adds html.aptv-norise on the first toggle; the animation is then off so
   every card simply shows. */
html.aptv-norise body .wrap > .sec,html.aptv-norise body .acard,html.aptv-norise body .ch-card,html.aptv-norise body #siteContent li.vs-column,html.aptv-norise body .subs-card,html.aptv-norise body .tpl_channels ul.ch-grid .vs-column,
html.aptv-norise body .grid > a.acard,html.aptv-norise body #channels.ch-grid > .ch-card{animation:none !important;opacity:1 !important}
/* G240 end */
/* G241 - left sidebar "Browse American Pulse TV" block (Browse Videos / Streams / Channels / Playlists)
   hidden at the owner's request (2026-10-06), not deleted: tpl_leftnav/tpl_nav_bottom.tpl marks it
   "aptv-off aptv-browse-nav". To show it again remove this block or those classes. The top menu still
   links Videos / Live / Channels / Playlists. */
html body .categories-container.aptv-browse-nav{display:none !important}
/* G241 end */
/* G242 - channel page (/channel/...) ran edge to edge below 1280px (iPad: banner, tabs and video cards
   touching the screen sides) while Videos / Live / Channels keep a 24px gutter. Same gutter here
   (24px tablet, 16px phone), rounded banner, and a tighter gap above "All channels". */
@media(max-width:1279px){
  html:not(.aptv-embed) body #wrapper.tpl_channel .fluid > .inner-block{padding-left:24px !important;padding-right:24px !important;box-sizing:border-box}
  html:not(.aptv-embed) body #wrapper.tpl_channel #channel-header,html:not(.aptv-embed) body #wrapper.tpl_channel #channel-header figure,html:not(.aptv-embed) body #wrapper.tpl_channel #channel-header img.channel-bg,html:not(.aptv-embed) body #wrapper.tpl_channel #channel-header .ch-bg{border-radius:14px}
  html:not(.aptv-embed) body #wrapper.tpl_channel #channel-header figure{overflow:hidden}
}
@media(max-width:700px){
  html:not(.aptv-embed) body #wrapper.tpl_channel .fluid > .inner-block{padding-left:16px !important;padding-right:16px !important}
  html:not(.aptv-embed) body #wrapper.tpl_channel #channel-header,html:not(.aptv-embed) body #wrapper.tpl_channel #channel-header figure{border-radius:10px}
}
html:not(.aptv-embed) body #wrapper.tpl_channel a.aptv-backlink{margin-top:6px !important}
/* G242 end */
/* G243 - Subscription Options popup (#sub-wrap, opened by Subscribe on channels / watch / channel pages):
   was a 1180px box with the plan centred in empty space, thin grey tier tabs and light price boxes.
   Now a 720px dialog, bold segmented tier tabs, price cards (selected one highlighted), full-width
   PayPal button. Light navy/red, dark gold. */
html body .fancybox-wrap:has(#sub-wrap){width:min(720px,calc(100vw - 24px)) !important;left:50% !important;transform:translateX(-50%)}
html body .fancybox-wrap:has(#sub-wrap) .fancybox-inner{width:auto !important}
html body .fancybox-wrap:has(#sub-wrap) .fancybox-skin{border-radius:16px !important;overflow:hidden;box-shadow:0 30px 70px rgba(5,20,45,.35) !important}
#sub-wrap{padding:22px 26px 26px !important}
#sub-wrap > article .content-title{font-size:24px !important;display:flex;align-items:center;gap:10px;margin:0 0 4px !important}
#sub-wrap > article .line{margin:10px 0 16px !important}
#sub-wrap #tab-content > nav{margin:0 0 18px !important;background:none !important;border:0 !important}
#sub-wrap #tab-content > nav ul{display:grid !important;grid-template-columns:repeat(3,1fr);gap:6px;padding:5px !important;margin:0 !important;background:#eef4fb;border:1px solid #d5e1f0;border-radius:12px;list-style:none}
#sub-wrap #tab-content > nav ul li{margin:0 !important;border:0 !important;background:none !important;float:none !important;width:auto !important;box-shadow:none !important}
#sub-wrap #tab-content > nav ul li::before,#sub-wrap #tab-content > nav ul li::after,#sub-wrap #tab-content > nav ul li a::after{display:none !important}
#sub-wrap #tab-content > nav ul li a{display:flex !important;align-items:center;justify-content:center;gap:7px;padding:11px 8px !important;border-radius:9px;background:none !important;border:0 !important;color:#0b2f5c !important;
  font:800 13px/1.1 'Open Sans',Arial,sans-serif !important;letter-spacing:.08em;text-transform:uppercase;transition:background .15s,color .15s;box-shadow:none !important}
#sub-wrap #tab-content > nav ul li a::before{font-size:15px !important;margin:0 !important;color:inherit !important;display:inline-block !important}
#sub-wrap #tab-content > nav ul li a span{font:inherit !important;color:inherit !important;letter-spacing:inherit;text-transform:inherit;display:inline !important}
#sub-wrap #tab-content > nav ul li a:hover{background:#fff !important}
#sub-wrap #tab-content > nav ul li.tab-current a{background:#0b2f5c !important;color:#fff !important;box-shadow:0 6px 16px rgba(11,47,92,.25) !important}
#sub-wrap #tab-content .content-wrap{padding:0 !important}
#sub-wrap #tab-content .content-wrap section{max-width:none !important;width:auto !important;margin:0 !important;padding:0 !important;font-size:15px;line-height:1.75;color:#33425a;text-align:left !important}
#sub-wrap .content-wrap section h2.content-title{font-size:21px !important;white-space:normal !important;overflow:visible !important;text-overflow:clip !important;margin:0 !important;line-height:1.25 !important}
#sub-wrap .content-wrap section h2.content-title .usn{color:#d80314}
#sub-wrap .content-wrap section .line{margin:12px 0 12px !important}
#sub-wrap .entry-form-class{display:block}
#sub-wrap .entry-form-class > .clearfix{display:block;height:6px}
#sub-wrap .price-box{display:inline-flex !important;flex-direction:column;align-items:center;justify-content:center;gap:10px;box-sizing:border-box;width:calc((100% - 24px)/3) !important;min-width:0 !important;
  margin:8px 12px 0 0 !important;padding:18px 8px !important;border:2px solid #d5e1f0 !important;border-radius:14px;background:#fff;vertical-align:top;transition:border-color .15s,box-shadow .15s,transform .15s}
#sub-wrap .price-box + .price-box + .price-box{margin-right:0 !important}
#sub-wrap .price-box:hover{border-color:#a9c1e0 !important;transform:translateY(-2px)}
#sub-wrap .price-box:has(.checked){border-color:#d80314 !important;background:linear-gradient(180deg,#fff5f6,#fff);box-shadow:0 10px 24px rgba(216,3,20,.14)}
#sub-wrap .price-fig{font:800 30px/1 'Playfair Display',Georgia,serif !important;color:#0b2f5c !important}
#sub-wrap .price-box:has(.checked) .price-fig{color:#d80314 !important}
#sub-wrap .price-box .icheck-box{display:flex !important;align-items:center;justify-content:center;gap:7px;margin:0 !important;padding:0 !important;border:0 !important;background:none !important}
#sub-wrap .price-box .icheck-box label{font:800 12px/1.2 'Open Sans',Arial,sans-serif !important;letter-spacing:.06em;text-transform:uppercase;color:#0b2f5c !important;margin:0 !important;padding:0 !important;white-space:nowrap}
#sub-wrap .entry-form-class > div:has(> .continue-payment-button) > br{display:none}
#sub-wrap .continue-payment-button{display:flex !important;align-items:center;justify-content:center;gap:8px;width:100% !important;margin:22px 0 0 !important;padding:15px !important;border-radius:10px !important;font-size:14px !important;font-weight:800 !important;letter-spacing:.08em;box-shadow:0 10px 24px rgba(216,3,20,.25)}
@media(max-width:560px){
  #sub-wrap{padding:18px 16px 20px !important}
  #sub-wrap #tab-content > nav ul li a{font-size:11.5px !important;letter-spacing:.04em;padding:10px 4px !important}
  #sub-wrap .price-box{display:flex !important;flex-direction:row;justify-content:space-between;width:100% !important;margin:10px 0 0 !important;padding:14px 16px !important}
  #sub-wrap .price-fig{font-size:24px !important;order:2}
}
/* dark */
html.dark body .fancybox-wrap:has(#sub-wrap) .fancybox-skin{box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 0 1px rgba(201,168,76,.22) !important}
html.dark #sub-wrap #tab-content > nav ul{background:#121821;border-color:rgba(201,168,76,.18)}
html.dark #sub-wrap #tab-content > nav ul li a{color:#c9d3e0 !important}
html.dark #sub-wrap #tab-content > nav ul li a:hover{background:#1c2431 !important}
html.dark #sub-wrap #tab-content > nav ul li.tab-current a{background:#c9a84c !important;color:#121821 !important;box-shadow:0 6px 16px rgba(201,168,76,.2) !important}
html.dark #sub-wrap .content-wrap section{color:#c3ccd8}
html.dark #sub-wrap .content-wrap section h2.content-title .usn{color:#e3c879}
html.dark #sub-wrap .price-box{background:#121821 !important;border-color:rgba(201,168,76,.16) !important}
html.dark #sub-wrap .price-box:hover{border-color:rgba(201,168,76,.4) !important}
html.dark #sub-wrap .price-box:has(.checked){border-color:#c9a84c !important;background:linear-gradient(180deg,rgba(201,168,76,.12),#121821) !important;box-shadow:0 10px 24px rgba(0,0,0,.4)}
html.dark #sub-wrap .price-fig,html.dark #sub-wrap .price-box .icheck-box label{color:#eef2f7 !important}
html.dark #sub-wrap .price-box:has(.checked) .price-fig{color:#e3c879 !important}
#sub-wrap .content-wrap section article{margin:0 0 12px !important}
html.dark #sub-wrap #tab-content .content-wrap section{color:#c3ccd8 !important;opacity:1 !important}
html.dark #sub-wrap .continue-payment-button{background:#c9a84c !important;border-color:#c9a84c !important;color:#121821 !important;box-shadow:0 10px 24px rgba(201,168,76,.22) !important}
html.dark #sub-wrap .continue-payment-button *{color:#121821 !important}
#sub-wrap article,#sub-wrap article h2.content-title,#sub-wrap article h3.content-title{height:auto !important;max-height:none !important;min-height:0 !important;position:static !important}
#sub-wrap .line{position:static !important;height:1px !important;border:0 !important;background:#d5e1f0 !important}
html.dark #sub-wrap .line{background:rgba(201,168,76,.18) !important}
/* G243 end */
/* G244 - video player control icons (play/pause, volume, fullscreen, big play) were blank: the site-wide
   ".btn, button ... {font-family:'Open Sans' !important}" rule also hit the video.js buttons, so the
   icon glyphs (drawn in ::before with the VideoJS font) rendered in Open Sans. Give the icons their font
   back; text controls (1x, 360p, time) keep Open Sans. */
html body .video-js .vjs-control::before,html body .video-js .vjs-button::before,html body .video-js .vjs-big-play-button::before,
html body .video-js .vjs-icon-placeholder::before,html body .video-js .vjs-play-control::before,html body .video-js .vjs-volume-panel button::before,
html body .video-js .vjs-mute-control::before,html body .video-js .vjs-fullscreen-control::before,html body .video-js .vjs-picture-in-picture-control::before,
html body .video-js [class*="vjs-icon-"]::before{font-family:VideoJS !important;font-weight:normal !important;font-style:normal !important}
html body .video-js .vjs-control-bar{background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.45) 45%,rgba(0,0,0,.72) 100%) !important}
html body .video-js .vjs-control-bar .vjs-control{color:#fff !important;text-shadow:0 1px 3px rgba(0,0,0,.6)}
/* G244 end */
/* G245 - all fancybox popups (Share, Add to, Download, Flag, Subscription...) share one look: rounded
   card, bold title, segmented tabs like the Subscription popup, round close button, more padding. */
html body .fancybox-wrap .fancybox-skin{border-radius:16px !important;overflow:hidden;box-shadow:0 30px 70px rgba(5,20,45,.35) !important}
html body .fancybox-wrap .fancybox-inner > div,html body .fancybox-wrap .fancybox-inner .lb-margins{padding:20px 24px 24px !important;box-sizing:border-box}
html body .fancybox-wrap .fancybox-inner article > h3.content-title{font:800 21px/1.2 'Playfair Display',Georgia,serif !important;color:#0b2f5c !important;display:flex !important;align-items:center;gap:10px;margin:0 !important}
html body .fancybox-wrap .fancybox-inner article > h3.content-title i{color:#d80314 !important;font-size:18px}
html body .fancybox-wrap .fancybox-inner article + .line,html body .fancybox-wrap .fancybox-inner article > .line{margin:12px 0 16px !important;height:1px !important;border:0 !important;background:#d5e1f0 !important}
html body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav{margin:0 0 18px !important;background:none !important;border:0 !important}
html body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul{display:grid !important;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;padding:5px !important;margin:0 !important;background:#eef4fb;border:1px solid #d5e1f0;border-radius:12px;list-style:none}
html body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul li{margin:0 !important;border:0 !important;background:none !important;float:none !important;width:auto !important;box-shadow:none !important}
html body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul li::before,html body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul li::after,html body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul li a::after{display:none !important}
html body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul li a{display:flex !important;align-items:center;justify-content:center;gap:7px;padding:11px 8px !important;border-radius:9px;background:none !important;border:0 !important;color:#0b2f5c !important;font:800 12.5px/1.1 'Open Sans',Arial,sans-serif !important;letter-spacing:.07em;text-transform:uppercase;box-shadow:none !important}
html body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul li a::before{font-size:14px !important;margin:0 !important;color:inherit !important;display:inline-block !important}
html body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul li a span{font:inherit !important;color:inherit !important;letter-spacing:inherit;text-transform:inherit;display:inline !important}
html body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul li a:hover{background:#fff !important}
html body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul li.tab-current a{background:#0b2f5c !important;color:#fff !important;box-shadow:0 6px 16px rgba(11,47,92,.25) !important}
html body .fancybox-wrap .fancybox-inner button,html body .fancybox-wrap .fancybox-inner .button-blue,html body .fancybox-wrap .fancybox-inner a.share-button{border-radius:9px !important}
html body .fancybox-wrap .fancybox-item.fancybox-close,html body .fancybox-wrap a.fancybox-close{width:34px !important;height:34px !important;top:14px !important;right:14px !important;border-radius:50% !important;background-color:#eef4fb !important;display:flex !important;align-items:center;justify-content:center;transition:background .15s}
html body .fancybox-wrap a.fancybox-close:hover{background-color:#dfe9f6 !important}
/* dark */
html.dark body .fancybox-wrap .fancybox-skin{box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 0 1px rgba(201,168,76,.22) !important}
html.dark body .fancybox-wrap .fancybox-inner article > h3.content-title{color:#eef2f7 !important}
html.dark body .fancybox-wrap .fancybox-inner article > h3.content-title i{color:#c9a84c !important}
html.dark body .fancybox-wrap .fancybox-inner article + .line,html.dark body .fancybox-wrap .fancybox-inner article > .line{background:rgba(201,168,76,.18) !important}
html.dark body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul{background:#121821;border-color:rgba(201,168,76,.18)}
html.dark body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul li a{color:#c9d3e0 !important}
html.dark body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul li a:hover{background:#1c2431 !important}
html.dark body .fancybox-wrap .fancybox-inner .tabs-style-topline > nav ul li.tab-current a{background:#c9a84c !important;color:#121821 !important}
html.dark body .fancybox-wrap a.fancybox-close{background-color:#1c2431 !important}
html body .fancybox-wrap .fancybox-inner h3.content-title,html body .fancybox-wrap .fancybox-inner h3.content-title span{font:800 21px/1.2 'Playfair Display',Georgia,serif !important;color:#0b2f5c !important}
html body .fancybox-wrap .fancybox-inner h3.content-title{display:flex !important;align-items:center;gap:10px;margin:0 !important;height:auto !important}
html body .fancybox-wrap .fancybox-inner h3.content-title i{color:#d80314 !important;font-size:18px !important}
html body .fancybox-wrap .fancybox-inner .line{margin:12px 0 16px !important;height:1px !important;border:0 !important;background:#d5e1f0 !important;position:static !important}
html.dark body .fancybox-wrap .fancybox-inner h3.content-title,html.dark body .fancybox-wrap .fancybox-inner h3.content-title span{color:#eef2f7 !important}
html.dark body .fancybox-wrap .fancybox-inner h3.content-title i{color:#c9a84c !important}
html.dark body .fancybox-wrap .fancybox-inner .line{background:rgba(201,168,76,.18) !important}
html body .fancybox-wrap .fancybox-inner h2.video-content-title,html body .fancybox-wrap .fancybox-inner h2.video-content-title span{font:800 21px/1.2 'Playfair Display',Georgia,serif !important;color:#0b2f5c !important}
html body .fancybox-wrap .fancybox-inner h2.video-content-title{display:flex !important;align-items:center;gap:10px;margin:0 !important;padding-right:44px}
html body .fancybox-wrap .fancybox-inner h2.video-content-title i{color:#d80314 !important;font-size:18px !important}
html.dark body .fancybox-wrap .fancybox-inner h2.video-content-title,html.dark body .fancybox-wrap .fancybox-inner h2.video-content-title span{color:#eef2f7 !important}
html.dark body .fancybox-wrap .fancybox-inner h2.video-content-title i{color:#c9a84c !important}
/* G245 end */
