.rx-portal{--rx-deep:#061f1c;--rx-forest:#09352f;--rx-green:#0d6b58;--rx-mint:#8ee2c2;--rx-lime:#dff6a2;--rx-paper:#f4f8f4;--rx-card:#ffffff;--rx-ink:#102623;--rx-muted:#5c716c;--rx-line:rgba(16,38,35,.12);max-width:1120px;margin:38px auto;padding:0;border:1px solid rgba(141,226,194,.22);border-radius:30px;background:linear-gradient(135deg,#061f1c 0%,#0a332e 45%,#0d6b58 110%);color:var(--rx-ink);box-shadow:0 30px 90px rgba(6,31,28,.22);font-family:Arial,Helvetica,sans-serif;overflow:hidden}.rx-portal *{box-sizing:border-box}.rx-portal h2,.rx-portal h3{margin:0}.rx-kicker,.rx-portal-head span{color:var(--rx-green);font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.rx-login{display:grid;grid-template-columns:1.12fr .88fr;gap:0;min-height:620px}.rx-login-hero{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:42px;overflow:hidden;color:#fff}.rx-login-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 22%,rgba(142,226,194,.34),transparent 34%),radial-gradient(circle at 22% 86%,rgba(223,246,162,.22),transparent 33%),linear-gradient(135deg,rgba(255,255,255,.06),transparent 45%)}.rx-login-hero:after{content:"";position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.22) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,#000,transparent 90%)}.rx-brand-row,.rx-hero-copy{position:relative;z-index:1}.rx-brand-row{display:flex;align-items:center;gap:14px}.rx-brand-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:#fff;color:var(--rx-green);font-weight:950;letter-spacing:-.04em;box-shadow:0 18px 45px rgba(0,0,0,.16)}.rx-brand-row strong{display:block;font-size:18px;letter-spacing:.18em}.rx-brand-row small{display:block;margin-top:4px;color:#bfe8dc;font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.rx-hero-copy{max-width:610px}.rx-hero-copy .rx-kicker{color:var(--rx-mint);margin-bottom:18px}.rx-hero-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,5vw,68px);font-weight:500;line-height:.96;letter-spacing:-.045em;color:#fff;text-shadow:0 16px 45px rgba(0,0,0,.28)}.rx-hero-copy p{max-width:560px;margin:24px 0 0;color:#d8eee7;font-size:16px;line-height:1.75}.rx-method-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.rx-method-points span{padding:10px 12px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.08);color:#f2fff9;font-size:11px;font-weight:850}.rx-access-card{align-self:center;margin:34px 34px 34px 0;padding:34px;border-radius:25px;background:rgba(255,255,255,.96);box-shadow:0 24px 70px rgba(0,0,0,.18)}.rx-access-card h3{margin:10px 0 12px;font-family:Georgia,'Times New Roman',serif;font-size:34px;font-weight:500;letter-spacing:-.03em}.rx-access-card p{color:var(--rx-muted);line-height:1.6}.rx-login form{display:grid;gap:14px;margin:28px 0 15px;text-align:left}.rx-portal label{display:grid;gap:7px;color:#526762;font-size:11px;font-weight:800}.rx-portal input,.rx-portal select,.rx-portal textarea{width:100%;padding:13px;border:1px solid rgba(16,38,35,.16);border-radius:12px;background:#fff;color:var(--rx-ink);outline:0}.rx-portal input:focus,.rx-portal select:focus,.rx-portal textarea:focus{border-color:var(--rx-green);box-shadow:0 0 0 3px rgba(13,107,88,.09)}.rx-portal button{padding:14px 18px;border:0;border-radius:12px;background:var(--rx-green);color:#fff;font-weight:800;cursor:pointer}.rx-portal button:hover{background:var(--rx-deep)}.rx-portal-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:34px 34px 24px;border-bottom:1px solid rgba(16,38,35,.12);background:var(--rx-paper)}.rx-portal-head h2{margin-top:7px;font-family:Georgia,serif;font-size:36px;font-weight:500}.rx-portal-head a{padding:10px 13px;border:1px solid rgba(16,38,35,.14);border-radius:10px;color:var(--rx-green);font-size:10px;font-weight:800;text-decoration:none}.rx-message{margin:20px 0;padding:14px 16px;border-radius:12px;font-size:11px;line-height:1.5}.rx-message.success{background:#dff1e8;color:#0b594a}.rx-message.error{background:#ffe8e3;color:#8d382b}.rx-status,.rx-assessment{background:var(--rx-paper);padding-left:34px;padding-right:34px}.rx-status{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0;padding-top:24px;padding-bottom:6px}.rx-status>div{padding:16px;border-radius:15px;background:#fff}.rx-status small{display:block;color:#81938f;font-size:8px;font-weight:900;letter-spacing:.12em}.rx-status strong{display:block;margin-top:7px;font-size:12px}.rx-assessment{padding-top:30px;padding-bottom:34px}.rx-form-title{display:flex;align-items:flex-start;gap:13px;margin-bottom:24px}.rx-form-title>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--rx-lime);font-size:9px;font-weight:900}.rx-form-title h3{font-family:Georgia,serif;font-size:28px;font-weight:500}.rx-form-title p{margin:5px 0;color:#6b7e79;font-size:10px}.rx-grid{display:grid;gap:12px;margin-bottom:15px}.rx-grid.three{grid-template-columns:repeat(3,1fr)}.rx-assessment fieldset{margin:24px 0;padding:18px;border:1px solid rgba(16,38,35,.13);border-radius:16px;background:rgba(255,255,255,.45)}.rx-assessment legend{padding:0 8px;font-size:11px;font-weight:900}.rx-check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.rx-check,.rx-consent{display:flex!important;align-items:flex-start;gap:10px;padding:11px;border-radius:11px;background:#fff}.rx-check input,.rx-consent input{width:auto;margin-top:2px}.rx-consent{margin:18px 0}.rx-consent small{font-weight:400;line-height:1.6}.rx-fineprint{color:#778a85;font-size:9px;line-height:1.5}.rx-alert{text-align:center;padding:34px;background:var(--rx-paper)}.rx-patient-screen{background:var(--rx-paper)}.rx-dashboard-confirm{display:grid;grid-template-columns:1fr .92fr;gap:22px;padding:28px 34px 10px;background:linear-gradient(135deg,#061f1c 0%,#0d6b58 72%,#8ee2c2 130%);color:#fff}.rx-dashboard-confirm h3{margin:10px 0 10px;font-family:Georgia,serif;font-size:34px;font-weight:500;letter-spacing:-.03em}.rx-dashboard-confirm p{max-width:620px;margin:0;color:#dff8ef;line-height:1.65}.rx-confirm-badge{display:inline-flex;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);color:#dff6a2;font-size:10px;font-weight:950;letter-spacing:.16em}.rx-next-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;align-self:center}.rx-next-steps article{min-height:108px;padding:16px;border-radius:17px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);box-shadow:0 16px 40px rgba(0,0,0,.12)}.rx-next-steps strong{display:grid;place-items:center;width:34px;height:34px;margin-bottom:13px;border-radius:11px;background:#fff;color:var(--rx-green);font-size:13px}.rx-next-steps span{display:block;color:#fff;font-size:12px;font-weight:900;line-height:1.25}.rx-head-copy{margin:8px 0 0;color:#5c716c;line-height:1.55}.rx-patient-screen .rx-message{margin-left:34px;margin-right:34px}@media(max-width:820px){.rx-dashboard-confirm{grid-template-columns:1fr;padding:24px 22px}.rx-next-steps{grid-template-columns:1fr}.rx-patient-screen .rx-message{margin-left:22px;margin-right:22px}}
body:has(.rx-portal) .site-header,body:has(.rx-portal) header.wp-block-template-part,body:has(.rx-portal) .wp-site-blocks>header,body:has(.rx-portal) .main-header,body:has(.rx-portal) .site-branding,body:has(.rx-portal) nav.primary-navigation,body:has(.rx-portal) footer.wp-block-template-part,body:has(.rx-portal) .site-footer{display:none!important}body:has(.rx-portal){background:#061f1c!important}body:has(.rx-portal) .entry-content,body:has(.rx-portal) main,body:has(.rx-portal) .wp-site-blocks{margin-top:0!important;padding-top:0!important}
@media(max-width:820px){.rx-portal{margin:16px 10px;border-radius:22px}.rx-login{grid-template-columns:1fr;min-height:auto}.rx-login-hero{min-height:520px;padding:30px}.rx-access-card{margin:0;padding:26px;border-radius:0}.rx-grid.three,.rx-status{grid-template-columns:1fr}.rx-check-grid{grid-template-columns:1fr}.rx-portal-head{align-items:flex-start;flex-direction:column;padding:24px}.rx-status,.rx-assessment{padding-left:22px;padding-right:22px}.rx-hero-copy h2{font-size:42px}.rx-access-card h3{font-size:30px}}


/* Strong visual state after patient login */
.rx-portal:has(.rx-assessment) .rx-portal-head{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;gap:22px;padding:42px 42px 34px;border-bottom:0;background:linear-gradient(135deg,#061f1c 0%,#0d6b58 70%,#8ee2c2 135%)!important;color:#fff;overflow:hidden}.rx-portal:has(.rx-assessment) .rx-portal-head:before{content:"";position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.24) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.24) 1px,transparent 1px);background-size:44px 44px}.rx-portal:has(.rx-assessment) .rx-portal-head>*{position:relative;z-index:1}.rx-portal:has(.rx-assessment) .rx-portal-head span{display:inline-flex;width:max-content;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);color:#dff6a2!important}.rx-portal:has(.rx-assessment) .rx-portal-head h2{max-width:760px;margin-top:16px;color:#fff;font-size:clamp(42px,5vw,64px);line-height:1;text-shadow:0 14px 38px rgba(0,0,0,.22)}.rx-portal:has(.rx-assessment) .rx-head-copy{max-width:720px;margin-top:16px;color:#e8fff8!important;font-size:16px;line-height:1.65}.rx-portal:has(.rx-assessment) .rx-portal-head a{background:#fff;color:#0d6b58!important;border:0;box-shadow:0 14px 34px rgba(0,0,0,.18)}.rx-portal:has(.rx-assessment) .rx-message.success{position:relative;margin:0;padding:20px 42px;border-radius:0;background:#dff6a2!important;color:#123c35;font-size:14px;font-weight:900}.rx-portal:has(.rx-assessment) .rx-message.success:before{content:"Acceso validado";display:inline-flex;margin-right:12px;padding:6px 9px;border-radius:999px;background:#0d6b58;color:#fff;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.rx-portal:has(.rx-assessment) .rx-assessment{padding-top:38px}.rx-portal:has(.rx-assessment) .rx-form-title{padding:22px;border-radius:20px;background:#fff;border:1px solid rgba(16,38,35,.1);box-shadow:0 18px 45px rgba(6,31,28,.08)}@media(max-width:820px){.rx-portal:has(.rx-assessment) .rx-portal-head{grid-template-columns:1fr;padding:30px 24px}.rx-portal:has(.rx-assessment) .rx-message.success{padding:18px 24px}.rx-portal:has(.rx-assessment) .rx-message.success:before{display:flex;width:max-content;margin:0 0 8px}.rx-portal:has(.rx-assessment) .rx-form-title{padding:18px}}
