/* Vyral Music Creator Portal — isolated styles */
.vym-site, .vym-portal-shell {--vym-bg:#080a11;--vym-card:#161723;--vym-text:#fafaff;--vym-muted:#b9b8cb;--vym-pink:#f85abb;--vym-blue:#44d9f5;--vym-purple:#a264fb;color:var(--vym-text)!important;font:400 16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.vym-site *, .vym-portal-shell * {box-sizing:border-box}
.vym-site h1,.vym-site h2,.vym-site h3,.vym-site h4,.vym-portal-shell h2,.vym-portal-shell h3,.vym-portal-shell h4 {font-family:inherit;color:var(--vym-text);margin:0}
.vym-site p,.vym-portal-shell p {color:var(--vym-muted)}
.vym-site a,.vym-portal-shell a {text-decoration:none}
.vym-site {background:var(--vym-bg);width:100vw;max-width:none!important;position:relative;left:50%;transform:translateX(-50%);margin:0!important;overflow:hidden}
/* WordPress block themes may override negative margins with margin:auto!important.
   Translate the full viewport-width landing page instead, independent of theme margins. */
body.vym-landing-page {overflow-x:hidden}
.vym-wrap {max-width:1230px;width:calc(100% - 64px);margin:0 auto}
.vym-topbar {display:flex;justify-content:space-between;align-items:center;padding:8px max(32px,calc((100vw - 1230px)/2));gap:18px;background:#bdeeff;color:#13151e;font-size:9px;font-weight:900;letter-spacing:2px}
.vym-nav {display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 0;}
.vym-wordmark {font-weight:1000;font-size:27px;letter-spacing:-1.3px;color:white!important;line-height:0.95;white-space:nowrap}
.vym-wordmark span {display:block;color:var(--vym-blue);font-size:10px;letter-spacing:8px;margin-top:8px}
.vym-navlinks {display:flex;align-items:center;gap:30px}
.vym-navlinks a {font-size:12px;font-weight:800;letter-spacing:.3px;color:#dfdeed!important}
.vym-navlinks .vym-navbtn {border:1px solid #8e67bf;padding:11px 18px;border-radius:7px;color:white!important}
.vym-hero {display:grid;grid-template-columns:1.12fr 0.88fr;gap:35px;align-items:center;padding:80px 0 100px;min-height:610px}
.vym-hero-text {min-width:0;position:relative;z-index:2}
.vym-eyebrow,.vym-kicker {font-size:11px;font-weight:900;letter-spacing:3px;color:var(--vym-blue);text-transform:uppercase}
.vym-eyebrow {display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #3b3d56;border-radius:30px;background:#141522}
.vym-dot {background:#39e0bc;display:inline-block;width:7px;height:7px;border-radius:50%;box-shadow:0 0 12px #3ae6bd}
.vym-hero h1 {font-weight:1000;font-size:clamp(46px,6vw,88px);letter-spacing:-4.5px;line-height:1.01;margin:27px 0;color:white}
.vym-hero h1 em {font-style:normal;color:var(--vym-pink)}
.vym-hero h1 span,.vym-section-head h2 span,.vym-bottom-grid h2 span {background:linear-gradient(110deg,#f76bca,#ad7afd,#49d8f3);background-clip:text;-webkit-background-clip:text;color:transparent}
.vym-hero p {max-width:530px;font-size:17px;line-height:1.7;margin-bottom:30px}
.vym-buttonrow,.vym-inline-actions {display:flex;flex-wrap:wrap;gap:11px;align-items:center}
.vym-button {display:inline-flex;align-items:center;justify-content:center;gap:12px;border:0;border-radius:8px;font-size:13px;font-weight:900;line-height:1.35;font-family:inherit;letter-spacing:.2px;padding:17px 20px;min-height:51px;transition:transform .18s ease,box-shadow .18s ease;text-align:center;cursor:pointer;text-decoration:none!important}
.vym-button:hover {transform:translateY(-2px);box-shadow:0 8px 25px #6c40b838}
.vym-button-primary {background:linear-gradient(105deg,#fc69c4,#b275f7,#49d5f0);color:#0a0a14!important}
.vym-button-outline {background:transparent;color:#fff!important;border:1px solid #746a89}
.vym-button-light {background:#f2efff;color:#191025!important}
.vym-textlink {color:#b8b8cc!important;display:inline-block;margin-top:20px;font-size:13px}
.vym-textlink strong {color:#dca6ff}
.vym-free-callout {display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding:18px 20px;background:linear-gradient(120deg,#201932,#111d30);border:1px solid #665080;border-radius:12px;box-shadow:0 10px 25px #0002}
.vym-free-callout-copy {flex:1;min-width:0}
.vym-free-callout-copy strong {display:block;font-size:11px;letter-spacing:1.5px;color:#78ddff;margin-bottom:5px}
.vym-free-callout-copy span {display:block;font-size:13px;line-height:1.48;color:#ddd9ed}
.vym-free-callout-copy b {color:white}
.vym-button-free {background:#f4e8ff;color:#151124!important;white-space:nowrap;font-size:12px;padding:13px 14px;min-height:43px}
@media(max-width:760px) {.vym-free-callout {flex-direction:column;text-align:center;align-items:stretch}.vym-button-free {width:100%}}
.vym-hero-bottom {display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:58px;font-size:10px;color:#8b92a7;letter-spacing:1px;font-weight:800}
.vym-hero-bottom i {width:5px;height:5px;background:#8372ba;border-radius:50%}
.vym-hero-art {height:500px;display:grid;place-items:center;position:relative}
.vym-art-rim {width:min(470px,100%);aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,#5535af30 0,#2a184f16 48%,transparent 70%);box-shadow:0 0 120px #7828a230;position:relative}
.vym-art-rim:before,.vym-art-rim:after {content:"";position:absolute;inset:5%;border:1px solid #7146a262;border-radius:50%;transform:rotate(-15deg) scaleX(.9)}
.vym-art-rim:after {inset:12%;border-color:#2cd0e828;transform:rotate(24deg) scaleX(1.15)}
.vym-art-rim img {max-width:106%;max-height:106%;object-fit:contain;filter:drop-shadow(0 25px 40px #0006);z-index:1}
.vym-art-float {position:absolute;font-size:9px;letter-spacing:2px;font-weight:900;background:#161628eb;border:1px solid #5b3a97;border-radius:8px;color:#e8d7ff;padding:12px 15px;z-index:2}
.vym-art-one {top:9%;right:2%}.vym-art-two {bottom:17%;left:0}
.vym-ticker {background:linear-gradient(95deg,#bc4fb7,#644ae4,#17a5b7);overflow:hidden;padding:15px 24px}
.vym-ticker div {max-width:1300px;margin:auto;text-align:center;color:#fff;font-size:12px;letter-spacing:1.5px;font-weight:900;line-height:2}
.vym-ticker span {margin:0 8px;color:#f8d9ff}
.vym-section {padding-top:94px;padding-bottom:90px}
.vym-section-head {max-width:720px;margin-bottom:40px}
.vym-section-head h2,.vym-bottom-grid h2 {font-size:clamp(40px,5vw,62px);font-weight:1000;line-height:1.03;letter-spacing:-2.2px;margin:14px 0 20px}
.vym-section-head p {max-width:600px}
.vym-prices {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}
.vym-price-card {border:1px solid #37394e;border-radius:18px;background:linear-gradient(145deg,#1e1e2c,#12121d);padding:35px;position:relative;overflow:hidden}
.vym-price-card.vym-featured {border:1px solid #985bdf;background:linear-gradient(143deg,#251839,#11121e 80%)}
.vym-price-card.vym-featured:after {content:"";width:220px;height:220px;position:absolute;right:-130px;top:-130px;border-radius:50%;box-shadow:0 0 140px 65px #9347ce46}
.vym-plan-top {display:flex;justify-content:space-between;gap:15px;align-items:center;color:#8be4fb;font-weight:900;font-size:10px;letter-spacing:2px}
.vym-plan-top b {color:#d4c5e9;background:#352c4b;border-radius:5px;padding:5px 7px;font-size:9px}
.vym-price-card h3 {font-size:29px;line-height:1.14;letter-spacing:-.7px;margin:30px 0}
.vym-cost {font-size:49px;font-weight:1000;letter-spacing:-1.5px;color:white}
.vym-cost span {font-size:14px;letter-spacing:0;color:#c2bbd4;font-weight:500;margin-left:7px}
.vym-set-up {color:#e1aafa;font-size:13px;font-weight:800;margin:3px 0 27px}
.vym-price-card ul {list-style:none;margin:0 0 35px;padding:0;border-top:1px solid #3c334c}
.vym-price-card li {padding:11px 0 11px 26px;border-bottom:1px solid #383247;color:#e3e1ef;font-size:14px;position:relative;list-style:none}
.vym-price-card li:before {content:"✓";color:#47e4db;position:absolute;left:3px;font-weight:bold}
.vym-price-card .vym-button {width:100%}
.vym-freebar {margin-top:22px;border:1px solid #3e4557;border-radius:16px;background:#1b1d2b;display:flex;justify-content:space-between;align-items:center;gap:23px;padding:25px 31px}
.vym-freebar b {display:block;letter-spacing:1px;font-size:16px;color:white}
.vym-freebar span {display:block;color:#b7b9ca;font-size:13px;margin-top:7px}
.vym-disclaimer {font-size:12px;line-height:1.65;margin-top:20px}
.vym-darkband {background:#121324;border-top:1px solid #262d41;padding:95px 0}
.vym-bottom-grid {display:grid;grid-template-columns:1fr 0.85fr;gap:75px;align-items:center}
.vym-bottom-grid p {max-width:520px}
.vym-bottom-tile {padding:40px;border:1px solid #57366d;border-radius:20px;background:radial-gradient(circle at 100% 0,#6d2d9c61,transparent 60%),#191625}
.vym-bottom-tile span {color:#71ddf5;font-size:11px;font-weight:900;letter-spacing:2px}
.vym-bottom-tile h3 {font-size:42px;line-height:1.03;margin:16px 0}
.vym-bottom-tile p {font-size:14px;margin-bottom:24px}
.vym-footer {background:#06070c;padding:35px 0;border-top:1px solid #262637}
.vym-footer-flex {display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.vym-footlinks {display:flex;gap:17px;flex-wrap:wrap}.vym-footlinks a {font-size:12px;color:#bfbfd4!important}.vym-footer small {color:#85879f}
/* Hide a theme's default page title only on the shortcode landing page. */
body.vym-landing-page .entry-header .entry-title,body.vym-landing-page h1.wp-block-post-title,body.vym-landing-page .page-header .page-title {display:none}
body.vym-landing-page .entry-content,body.vym-landing-page .wp-block-post-content {margin:0!important}
/* Custom account & submission pages */
.vym-portal-shell {background:#0d0d18;border:1px solid #342c49;border-radius:18px;margin:24px auto;padding:42px;max-width:940px}
.vym-portal-inner {max-width:800px;margin:auto}
.vym-portal-shell h2 {font-size:38px;font-weight:900;line-height:1.1;margin:12px 0 23px}
.vym-portal-shell h3 {font-size:23px;margin:20px 0 12px}
.vym-portal-shell h4 {font-size:18px;margin:20px 0 12px}
.vym-portal-shell a:not(.vym-button){color:#adcbff}
.vym-form {display:grid;gap:16px;margin:25px 0}
.vym-form label {display:grid;gap:6px;font-size:13px;color:#eae9ff;font-weight:700}
.vym-form input:not([type=checkbox]), .vym-form textarea,.vym-form select {background:#222235!important;color:#fff!important;border:1px solid #5a4c77!important;border-radius:8px;padding:13px 14px;width:100%;font-size:15px;min-height:48px}
.vym-form .vym-check {display:flex;align-items:flex-start;gap:11px;font-weight:500;line-height:1.55}
.vym-form .vym-check input {width:18px;height:18px;flex:none;margin-top:3px;accent-color:#9d69fa}
.vym-form .vym-button {justify-self:start}
.vym-honey {position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.vym-alert {border:1px solid #665294;border-radius:8px;padding:14px 17px;background:#252139;color:#fafaff;margin:18px 0;font-size:14px}
.vym-alert a {text-decoration:underline!important}
.vym-alert-ok {border-color:#278f85;background:#17352f;color:#d6fff0}
.vym-alert-error {border-color:#b46a86;background:#41232b;color:#ffe5e8}
.vym-signin,.vym-plan-switch,.vym-muted {font-size:13px!important;color:#aaa5c1!important}
.vym-dashboard {border:1px solid #353451;border-radius:14px;padding:24px;background:#151526;margin:25px 0}
.vym-dashboard>p {font-size:14px}
.vym-dashboard-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}
.vym-dashboard-grid div {padding:19px 14px;background:#26243c;border-radius:9px}
.vym-dashboard-grid strong {display:block;font-size:18px;color:#fff}.vym-dashboard-grid span {display:block;font-size:12px;color:#c4bcd7}
.vym-history {list-style:none;margin:10px 0 20px;padding:0}
.vym-history li {background:#222138;padding:12px 14px;border-radius:6px;margin:6px 0;color:white;font-size:13px;list-style:none}
.vym-history b {color:#8be8d8}.vym-inline-actions .vym-button {font-size:12px;padding:12px}
.vym-card-form {margin-top:22px;background:#191727;border:1px solid #5e456b;padding:24px;border-radius:12px}
@media(max-width:970px){.vym-navlinks {gap:15px}.vym-hero {grid-template-columns:1fr .9fr;gap:5px}.vym-art-float {display:none}.vym-hero h1 {font-size:clamp(44px,6vw,76px)}}
@media(max-width:760px){.vym-wrap {width:calc(100% - 36px)}.vym-topbar {justify-content:center;flex-wrap:wrap;padding:8px 12px}.vym-topbar span:nth-child(2) {display:none}.vym-nav {flex-wrap:wrap;justify-content:center;padding:21px 0}.vym-navlinks {flex-wrap:wrap;justify-content:center;gap:12px}.vym-navlinks a {font-size:11px}.vym-hero {padding:52px 0 57px;grid-template-columns:1fr;min-height:0}.vym-hero-text {text-align:center}.vym-hero h1 {font-size:clamp(43px,10vw,76px);letter-spacing:-2px}.vym-hero p {margin:0 auto 24px}.vym-hero-bottom,.vym-buttonrow {justify-content:center}.vym-hero-bottom {margin-top:36px}.vym-hero-art {height:310px;max-width:370px;width:100%;margin:12px auto 0}.vym-section {padding-top:65px;padding-bottom:60px}.vym-section-head h2,.vym-bottom-grid h2 {font-size:42px}.vym-prices,.vym-bottom-grid {grid-template-columns:1fr;gap:17px}.vym-price-card {padding:26px}.vym-freebar {flex-direction:column;align-items:stretch;text-align:center}.vym-darkband {padding:65px 0}.vym-bottom-tile {padding:29px}.vym-footer-flex {justify-content:center;text-align:center}.vym-footlinks {justify-content:center}.vym-portal-shell {padding:22px 17px;margin:15px auto}.vym-portal-shell h2 {font-size:30px}.vym-dashboard {padding:15px}.vym-dashboard-grid {grid-template-columns:1fr}}

/* v1.0.5: Roku-sensitive video submission guidelines and content declarations */
.vym-content-rules {background:linear-gradient(145deg,#19172a,#111725);border:1px solid #655184;border-radius:14px;padding:21px 24px;margin:22px 0;color:#f4edff}
.vym-content-rules h3 {font-size:19px;margin:0 0 13px;color:white}
.vym-content-rules ul {padding-left:21px;margin:0 0 14px}
.vym-content-rules li {color:#e3daec;margin:9px 0;font-size:13px;line-height:1.6}
.vym-content-rules p {font-size:13px;line-height:1.6;margin:10px 0;color:#cfcae0}
.vym-content-rules a {text-decoration:underline!important}
.vym-advisory-group {border:1px solid #504265;border-radius:11px;padding:18px;background:#1a192b;min-width:0}
.vym-advisory-group legend {padding:0 7px;color:#fff;font-size:15px;font-weight:800}
.vym-advisory-group legend small {font-weight:400;font-size:12px;color:#d4cde8}
.vym-advisory-group p {font-size:12px;color:#c9c2dd;margin:4px 0 13px}
.vym-advisory-options {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}
.vym-form .vym-advisory-option {display:flex;align-items:flex-start;gap:10px;color:#eeeafa;font-size:13px;font-weight:500;line-height:1.55}
.vym-advisory-option input {width:17px;height:17px;flex:none;accent-color:#ae78f5;margin-top:2px}
@media(max-width:620px) {.vym-advisory-options {grid-template-columns:1fr}.vym-content-rules {padding:18px}}

/* v1.0.6: consistent navigable header on free accounts, channel requests,
   creator dashboard, and video submissions on desktop and mobile. */
.vym-internal-site {
  --vym-bg:#080a11;--vym-card:#161723;--vym-text:#fafaff;
  --vym-muted:#b9b8cb;--vym-pink:#f85abb;--vym-blue:#44d9f5;
  --vym-purple:#a264fb;
  position:relative;left:50%;transform:translateX(-50%);
  width:100vw;max-width:none!important;margin:0!important;
  padding:0 0 65px;background:var(--vym-bg);
  color:var(--vym-text)!important;
  font:400 16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  overflow-x:clip;
}
.vym-internal-site * {box-sizing:border-box}
.vym-internal-site .vym-nav {margin:0}
.vym-internal-site .vym-portal-shell {margin:30px auto 0;}
.vym-internal-site .vym-navlinks a {color:#dfdeed!important}
body.vym-internal-page {overflow-x:hidden;background:#080a11!important}
body.vym-internal-page .entry-header .entry-title,
body.vym-internal-page .page-header .page-title,
body.vym-internal-page h1.wp-block-post-title {display:none!important}
body.vym-internal-page .entry-content,
body.vym-internal-page .wp-block-post-content {margin:0!important;padding:0!important;max-width:none!important}
@media(max-width:760px){
  .vym-internal-site .vym-nav {display:flex;flex-direction:column;gap:17px;padding:20px 0 25px;}
  .vym-internal-site .vym-navlinks {display:flex;flex-wrap:wrap;justify-content:center;gap:10px 14px;width:100%;}
  .vym-internal-site .vym-navlinks a {font-size:12px;line-height:1.3;white-space:nowrap;}
  .vym-internal-site .vym-navlinks .vym-navbtn {padding:8px 12px;}
  .vym-internal-site .vym-portal-shell {margin:14px auto 0;}
}

/* v1.0.7: branded login, accessible registration panel, and anchored channel forms */
.vym-portal-shell #vym-channel-form,.vym-portal-shell #vym-account-dashboard,.vym-portal-shell #vym-create-account {scroll-margin-top:24px}
.vym-auth-login {border:1px solid #51426b;border-radius:14px;padding:23px;background:linear-gradient(135deg,#20172d,#141728);margin:22px 0}
.vym-auth-login h3 {font-size:22px;margin:0 0 10px}
.vym-auth-login .vym-form {margin:14px 0 10px}
.vym-auth-login .vym-forgot {font-size:13px;color:#bdccff!important;text-decoration:underline!important}
.vym-auth-register {border:1px solid #56446d;border-radius:13px;margin:21px 0;background:#181628;overflow:hidden}
.vym-auth-register summary {cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:16px;font-weight:850;color:white;background:#27203b;padding:18px 22px}
.vym-auth-register summary::-webkit-details-marker {display:none}
.vym-auth-register summary span {color:#86dffb;font-size:24px;font-weight:700;line-height:1}
.vym-auth-register[open] summary span {transform:rotate(45deg)}
.vym-auth-register-body {padding:22px}
.vym-form .vym-remember {font-size:12px;font-weight:500}
.vym-card-form {scroll-margin-top:25px}
.vym-card-form h2 {font-size:31px!important}
.vym-card-form .vym-button-outline {margin:8px 0 0}
.vym-portal-shell .vym-form textarea {min-height:110px}
.vym-portal-shell .vym-form input:focus-visible,.vym-portal-shell .vym-form textarea:focus-visible,.vym-portal-shell .vym-form select:focus-visible {outline:2px solid #69d5fa;outline-offset:2px}
@media(max-width:760px){.vym-auth-login {padding:19px}.vym-auth-register-body {padding:17px}.vym-card-form h2 {font-size:26px!important}}

/* v1.0.8: clearly visible logout on every creator page when signed in */
.vym-site .vym-navlinks .vym-logout-link, .vym-internal-site .vym-navlinks .vym-logout-link {
  border:1px solid #f58bbd!important; color:#ffe2f0!important;
  border-radius:7px; padding:10px 15px; font-weight:900; text-decoration:none!important;
  white-space:nowrap; background:rgba(248,90,187,.10);
}
.vym-site .vym-navlinks .vym-logout-link:hover, .vym-internal-site .vym-navlinks .vym-logout-link:hover {background:rgba(248,90,187,.22)}
.vym-portal-shell .vym-inline-actions .vym-button-logout {border:1px solid #f58bbd!important;background:#261525!important;color:#fff!important}
