/* Pole portal: a compact identity bar and direct access to daily tasks. */
.pv2 .pv2-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.pv2 .pv2-nav button{font-size:14px;min-width:0;flex:1}.pv2-discipline{display:flex;gap:8px;margin:18px 0 24px}.pv2-discipline button{flex:1;min-height:48px;padding:12px 18px;border:1px solid var(--border);border-radius:8px;font-size:16px}.pv2-discipline button[aria-pressed=true]{background:#c6a2ec22;border-color:var(--accent);color:var(--accent);font-weight:700}.pv2-single{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:20px;padding:22px;border:1px solid var(--border);border-radius:10px}.pv2 .pv2-single h4,.pv2 .pv2-profile-purchases h4{font-size:20px;letter-spacing:0}.pv2-single p{font-size:16px;color:var(--muted);margin-top:10px}.pv2-profile-purchases{padding:20px 0;border-block:1px solid var(--border);margin:20px 0}.pv2-profile-purchases .pv2-actions{margin-top:14px}.pv2-promotions{display:grid;gap:20px}.pv2-promotion-card{padding:28px;border:1px solid #d670c9;background:linear-gradient(135deg,#392139,#211929);border-radius:12px}.pv2-promotion-card h4 span{display:block;font-size:22px;color:#efb4ea;margin:12px 0 22px}.pv2-promotion-card p{font-size:16px;line-height:1.6}.pv2-promotion-card .pv2-note{font-size:14px}.pv2-promotion-card .pv2-price{font-size:36px}.pv2-promotion-actions{display:grid;gap:12px;margin-top:22px}.pv2-promotion-remaining{color:#f0c3ea}.pv2 .pv2-balances{grid-template-columns:repeat(auto-fit,minmax(135px,1fr))}.pv2 .pv2-plans .pv2-muted{font-size:16px}.pv2 .pv2-plans .pv2-pill{font-size:14px}@media(min-width:700px){.pv2-promotions{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pv2-admin-entry{width:100%;justify-content:center;margin-bottom:16px}.pv2-transfer-entry{margin-top:20px}.pv2-transfer-student{padding:16px;border-left:3px solid var(--accent);background:#c6a2ec0b;overflow-wrap:anywhere}.pv2-transfer-student p{font-size:13px;color:var(--muted);margin-top:5px}.pv2-transfer-fields{display:grid;gap:0 18px}.pv2-transfer-fields select,.pv2-transfer-entry textarea{display:block;width:100%;min-height:48px;margin-top:8px;padding:12px;font:inherit;font-size:16px;background:#100d14;color:var(--text);border:1px solid #877692;border-radius:6px}.pv2-transfer-entry textarea{resize:vertical}.pv2-transfer-fields input{font-size:16px}.pv2-transfer-history article{display:flex;align-items:start;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid var(--border);font-size:14px;overflow-wrap:anywhere}.pv2-transfer-history p{margin:5px 0;font-size:13px;color:var(--muted)}.pv2-transfer-history small{font-size:12px;color:var(--muted)}.pv2-transfer-approved{color:#bde6c6;font-size:13px;font-weight:600}.pv2-transfer-entry button[type=submit]{width:100%;justify-content:center}@media(min-width:700px){.pv2-transfer-fields{grid-template-columns:1fr 1fr}}
.pv2-emergency-shortcut{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:16px;border:1px solid #c6a2ec70;background:#c6a2ec0c;border-radius:10px}.pv2-emergency-shortcut strong{font-size:15px}.pv2-emergency-shortcut p{font-size:12px;color:var(--muted);margin:5px 0 0}.pv2-reception-access{margin-top:12px}.pv2-emergency-fields{display:grid;gap:0 18px}.pv2-emergency-fields textarea{display:block;width:100%;border:1px solid #877692;border-radius:6px;background:#100d14;color:var(--text);font:inherit;font-size:16px;padding:12px;margin-top:8px;resize:vertical}.pv2-emergency-fields input{font-size:16px}.pv2-emergency-contact{display:grid;gap:10px;padding:18px;border:1px solid #c6a2ec80;background:#c6a2ec10;border-radius:10px}.pv2-emergency-contact strong,.pv2-emergency-name{font-size:20px;overflow-wrap:anywhere}.pv2-emergency-contact span{color:var(--muted);font-size:14px}.pv2-emergency-contact .button{width:100%;justify-content:center}.pv2-emergency-details>div{border-bottom:1px solid var(--border);padding:14px 0}.pv2-emergency-details dt{font-size:12px;color:var(--muted);margin-bottom:6px}.pv2-emergency-details dd{font-size:15px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.pv2-emergency-actions{display:flex;flex-wrap:wrap;gap:12px}.pv2-dialog [data-emergency-private] .pv2-check{align-items:flex-start;line-height:1.6}.pv2-dialog [data-emergency-private] .pv2-check input{flex:none;margin-top:5px}.pv2-dialog [data-emergency-private] button[type=submit]{width:100%;justify-content:center}#pole-emergency-result:not(:empty){margin-top:24px;border-top:1px solid var(--border);padding-top:20px}@media(min-width:700px){.pv2-emergency-fields{grid-template-columns:1fr 1fr}.pv2-emergency-fields label:last-child{grid-column:1/-1}}
.pv2-access{order:-1}.pv2-access form>.button{width:100%;justify-content:center;margin-top:4px}.pv2-access .pv2-muted{overflow-wrap:anywhere}.pv2-access input{font-size:16px}.pv2-access input[name=code]{font-size:24px;letter-spacing:6px;text-align:center}.pv2-auth-actions{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.pv2-access-help,.pv2-password{margin-top:18px;border-top:1px solid var(--border);padding-top:12px}.pv2-access-help summary,.pv2-password summary{font-size:12px;min-height:44px;padding-block:10px;color:var(--muted)}.pv2-access-help p{font-size:12px;color:var(--muted);line-height:1.7}.pv2-access-help .pv2-contact{font-size:12px}.pv2-access .pv2-note{margin:10px 0}.pv2-access .pv2-local-tools>.button{font-size:12px;margin-top:8px}@media(min-width:700px){.pv2-access{order:0}}
.pv2{background:#17111e;border-block:1px solid var(--border);padding:16px 16px 32px;scroll-margin-top:8px}.pv2-shell{max-width:1100px;margin:auto}.pv2-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;margin-bottom:8px}.pv2-brand{display:flex;align-items:center;gap:10px;min-width:0}.pv2-brand img{width:48px;height:48px;object-fit:contain;mix-blend-mode:screen;flex:none}.pv2 h2{font-size:18px;letter-spacing:-.5px;line-height:1.2}.pv2-brand p{font-size:10px;color:var(--muted);margin-top:5px}.pv2-room-preview{display:flex;align-items:center;gap:8px;padding:4px;min-height:44px;color:var(--accent);font-size:11px;flex:none}.pv2-room-preview img{height:40px;width:46px;object-fit:cover;object-position:50% 65%;border-radius:5px}.pv2-room-preview span{display:none}.pv2-preview{font-size:10px;line-height:1.4;color:#bcb0c7;padding:4px 0 8px;margin:0}.pv2-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;position:sticky;top:0;z-index:5;margin:0 -4px 18px;padding:6px 4px 8px;background:#17111ef5;border-bottom:1px solid var(--border);backdrop-filter:blur(10px)}.pv2-nav button{min-height:48px;padding:7px 8px;font-size:12px;line-height:1.3;color:var(--muted);border:1px solid transparent;border-radius:7px}.pv2-nav button[aria-current=page]{color:var(--accent);background:#c6a2ec17;border-color:#c6a2ec70;font-weight:700}.pv2-title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.pv2 .eyebrow{font-size:10px;color:var(--accent);margin-bottom:6px}.pv2 h3{font-size:23px;letter-spacing:-.6px;line-height:1.25}.pv2-title>p,.pv2-muted{color:var(--muted);font-size:13px}.pv2-plans{display:grid;gap:10px}.pv2-plans article{padding:18px;border:1px solid var(--border);border-radius:10px;background:#211929}.pv2-plans article:nth-child(2){border-color:#c6a2ec99;background:linear-gradient(140deg,#34223e,#211929)}.pv2 h4{font-family:var(--display);font-size:30px;margin:10px 0 4px;letter-spacing:-1px}.pv2-rental-link{margin-top:24px;padding-top:20px;border-top:1px solid var(--border);font-size:12px;color:var(--muted)}.pv2-rental-link a{display:block;color:var(--accent);text-decoration:underline;text-underline-offset:4px;margin-top:6px}.pv2 button:disabled{opacity:.5;cursor:not-allowed;transform:none}.pv2 button,.pv2 a{touch-action:manipulation}.pv2 [hidden]{display:none!important}
@media(min-width:700px){.pv2{padding:24px 32px 40px}.pv2-heading{min-height:64px}.pv2-brand img{width:54px;height:54px}.pv2 h2{font-size:22px}.pv2-brand p{font-size:12px}.pv2-room-preview span{display:block}.pv2-room-preview img{width:82px;height:48px}.pv2-plans{grid-template-columns:repeat(3,1fr)}.pv2-nav{display:flex;gap:8px;margin-bottom:24px}.pv2-nav button{min-width:170px;font-size:14px}.pv2-rental-link a{display:inline;margin-left:8px}}
.pv2-pill{font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--accent)}.pv2 h4 small{font-size:18px;font-weight:400;letter-spacing:0}.pv2-price{font-size:25px;font-weight:600;margin-bottom:18px}.pv2-price small{font-size:11px;font-weight:400;color:var(--muted)}.pv2-plans article .button{width:100%;margin-top:24px}.pv2-plans article .pv2-muted{min-height:44px}.pv2-note{color:var(--muted);font-size:12px;margin:18px 0;line-height:1.6}.pv2-info{display:flex;align-items:start;gap:20px;padding:22px 0;margin:20px 0;border-block:1px solid var(--border);font-size:14px}.pv2-info>span{font-size:30px;color:var(--accent)}.pv2-info p{color:var(--muted);margin-top:6px}.pv2-promo,.pv2-protocol,.pv2-history{border:1px solid var(--border);border-radius:10px;padding:20px;margin-top:22px}.pv2 summary{cursor:pointer;min-height:32px;font-size:15px}.pv2 summary span{font-size:11px;color:var(--accent);margin-left:12px}.pv2-promo .pv2-plans{margin-top:18px}.pv2-promo>p{margin:12px 0}.pv2-feedback{padding:14px 18px;border:1px solid #89c9a759;background:#173224;color:#bfe9cd;border-radius:8px;margin-bottom:20px;font-size:14px}.pv2-feedback.error,.pv2-warning{background:#35251c;color:#f4cdab;border-color:#be977b50}.pv2-warning{padding:14px;border-radius:8px;font-size:13px;margin-bottom:20px}.pv2-link{color:var(--accent);text-decoration:underline;text-underline-offset:4px;font-size:13px;min-height:44px;padding:8px 0}.pv2-signin-note{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:16px 18px;border:1px solid var(--border);border-radius:8px;font-size:13px;margin-bottom:20px}.pv2-source{display:flex;gap:8px;margin:16px 0}.pv2-source button{font-size:12px;min-height:44px;border:1px solid var(--border);border-radius:6px;padding:8px 14px;color:var(--muted)}.pv2-source button[aria-pressed=true]{background:#c6a2ec20;color:var(--accent);border-color:var(--accent)}.pv2-day-title{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:20px 0 14px}.pv2-day-title h4{font-size:16px;letter-spacing:0;margin:0;flex:1;text-transform:capitalize}.pv2-session{display:grid;grid-template-columns:60px 1fr;gap:12px;align-items:center;background:#211929;border:1px solid var(--border);border-radius:10px;padding:18px;margin-bottom:10px}.pv2-session-time{display:flex;flex-direction:column;line-height:1.6;align-self:start}.pv2-session-time strong{font-size:18px}.pv2-session-time span{font-size:12px;color:var(--muted)}.pv2-session-info h4{margin:0;font-size:17px;letter-spacing:0}.pv2-session-info p{font-size:12px;color:var(--muted);margin-bottom:5px}.pv2-availability{font-size:12px;color:#bde6c6}.pv2-availability.muted{color:var(--muted)}.pv2-session .button{grid-column:2;justify-self:start;min-height:44px;padding-inline:22px}.pv2-empty{padding:28px 22px;border:1px dashed #c6a2ec60;border-radius:10px;background:#c6a2ec05}.pv2-empty p{color:var(--muted);font-size:14px;margin:8px 0 18px}.pv2-policy{background:#c6a2ec0a;border-left:2px solid var(--accent);padding:16px 18px;font-size:13px;margin:24px 0 0}.pv2-policy p{color:var(--muted);margin-top:7px}.pv2-calendar{padding:16px;border:1px solid var(--border);border-radius:12px;background:#201828;align-self:start}.pv2-month{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;text-transform:capitalize;font-size:15px}.pv2-month button{font-size:25px;min-width:44px;min-height:44px;border:1px solid var(--border);border-radius:6px}.pv2-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.pv2-days>span{font-size:11px;color:var(--muted)}.pv2-days button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:44px;min-width:0;border-radius:6px;border:1px solid transparent;font-size:14px}.pv2-days button[aria-current=date]{border-color:var(--accent);color:var(--accent);background:#c6a2ec22}.pv2-days i{display:block;width:4px;height:4px;border-radius:50%;margin-top:3px}.pv2-days i.available{background:var(--accent)}.pv2-days i.closed{background:#e3aa86}.pv2-balances{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.pv2-balances>div{padding:16px 10px;background:#211929;border:1px solid var(--border);border-radius:10px}.pv2-balances strong{display:block;font-size:30px;font-weight:500;color:var(--accent)}.pv2-balances span{display:block;font-size:11px;line-height:1.5;color:var(--muted)}.pv2-card{padding:24px;border:1px solid var(--border);border-radius:12px;background:#211929}.pv2 h4.pv2-subtitle{font-size:21px;letter-spacing:-.4px;margin:0 0 20px}.pv2-card>.button{margin-top:22px}.pv2-login-layout{display:grid;gap:24px}.pv2 label,.pv2-dialog label{display:block;font-size:14px;margin:16px 0;color:var(--text)}.pv2 input:not([type=checkbox]):not([type=radio]),.pv2-dialog input:not([type=checkbox]):not([type=radio]){display:block;width:100%;min-height:48px;border:1px solid #877692;border-radius:6px;background:#100d14;color:var(--text);padding:12px;margin-top:8px}.pv2 input[type=checkbox],.pv2-dialog input[type=radio]{accent-color:var(--accent);min-width:20px;min-height:20px;margin:0 10px 0 0;vertical-align:middle}.pv2-protocol-text{max-height:270px;overflow:auto;margin:18px 0;padding-right:12px;overscroll-behavior:contain}.pv2-protocol-text h4{font-size:16px;letter-spacing:0;margin:18px 0 8px;color:var(--accent)}.pv2-protocol-text p{font-size:13px;color:var(--muted);margin:9px 0}.pv2 label.pv2-check{display:flex;align-items:start;line-height:1.6;gap:8px}.pv2-profile-layout{display:grid;gap:24px}.pv2-booking{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 0;border-bottom:1px solid var(--border);font-size:14px}.pv2-booking p{font-size:12px;color:var(--muted)}.pv2-booking span{font-size:11px;color:var(--accent)}.pv2-qr{text-align:center;align-self:start}.pv2-qr canvas{max-width:100%;margin:22px auto;display:block;border-radius:8px}.pv2-qr h4{font-size:23px;letter-spacing:-.5px}.pv2-qr p{font-size:14px;color:var(--muted)}.pv2-qr small{display:block;font-size:11px;color:var(--muted);margin-top:16px}.pv2-dialog{color:var(--text);background:#211929;border:1px solid #8d709e;border-radius:14px;padding:24px;max-width:520px;width:calc(100% - 24px);max-height:90dvh;overflow:auto}.pv2-dialog::backdrop{background:#0a0710bb;backdrop-filter:blur(5px)}.pv2-dialog-head{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:22px}.pv2-dialog h3{font-size:23px;line-height:1.3}.pv2-dialog-head button{font-size:28px;min-width:44px;min-height:44px;border:1px solid var(--border);border-radius:6px}.pv2-dialog p{font-size:14px;line-height:1.7}.pv2-dialog .pv2-selected-price{font-size:21px;margin-bottom:12px}.pv2-dialog>.button,.pv2-dialog form>.button{width:100%;margin-top:22px;justify-content:center}.pv2-dialog fieldset{border:0;padding:0;margin:24px 0}.pv2-dialog legend{font-size:13px;color:var(--muted);margin-bottom:8px}.pv2-dialog .pv2-credit{display:flex;align-items:center;gap:6px;border:1px solid var(--border);padding:14px;border-radius:8px;font-size:13px}.pv2-credit span{margin-left:auto;font-size:11px;color:var(--muted)}#pole-dialog-error{color:#ffbda8;margin-top:16px}.pv2-dialog .pv2-note{color:var(--muted);font-size:12px}.pv2-dialog .pv2-policy{margin:22px 0;padding:18px;background:#c6a2ec12;border-radius:8px}.pv2-dialog .pv2-policy p{font-size:13px;color:var(--muted)}
@media(min-width:700px){.pv2-agenda.with-calendar{display:grid;grid-template-columns:330px 1fr;gap:28px}.pv2-day-title{margin-top:4px}.pv2-session{grid-template-columns:64px 1fr auto}.pv2-session .button{grid-column:auto}.pv2-balances{max-width:650px;gap:14px}.pv2-balances>div{padding:20px}.pv2-balances span{font-size:13px}.pv2-profile-layout{grid-template-columns:1fr 280px}.pv2-login-layout{grid-template-columns:1fr 1fr}.pv2-qr{position:sticky;top:30px}}
@media(max-width:380px){.pv2{padding-inline:14px}.pv2-brand{gap:8px}.pv2-brand img{width:42px;height:42px}.pv2 h2{font-size:16px}.pv2-nav button{font-size:12px}.pv2-calendar{padding:10px}.pv2-days{gap:1px}.pv2-credit{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pv2 .button{transition:none}.pv2 .button:hover{transform:none}}
.skip-link:not(:focus){clip-path:inset(50%);width:1px;height:1px;padding:0;overflow:hidden}
body.pole-viewing .whatsapp-float{visibility:hidden;pointer-events:none}
.pv2-contact{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 12px;background:#25d366;color:#102417;padding:12px 16px;border-radius:8px;min-height:48px;font-size:13px;margin-top:18px}

/* Student view: identity, credit summary and today's sessions come before utilities. */
.pv2-student{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.pv2-greeting{font-family:var(--display);font-size:18px;font-weight:600;line-height:1.3;letter-spacing:-.4px}.pv2-student .pv2-muted{font-size:11px;margin-top:4px}.pv2-profile-link{min-height:44px;padding:8px 0 8px 10px;font-size:12px;white-space:nowrap;color:var(--accent)}.pv2-balances.pv2-balances-compact{max-width:none;gap:0;margin:12px 0 22px;border:1px solid var(--border);border-radius:9px;background:#211929}.pv2-balances-compact>div{border:0;border-radius:0;background:none;padding:11px 12px}.pv2-balances-compact>div+div{border-left:1px solid var(--border)}.pv2-balances-compact strong{font-size:23px;line-height:1.2;margin-bottom:3px}.pv2-balances-compact span{font-size:10px}.pv2-class-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:16px 0 12px}.pv2-class-heading h3{font-size:21px}.pv2-class-heading p{font-size:11px;color:var(--muted);margin-top:3px}.pv2-date-actions{display:flex;flex-direction:column;align-items:end;flex:none}.pv2-other-dates{min-height:44px;font-size:12px;padding:8px 0 8px 8px;color:var(--accent);white-space:nowrap}.pv2-other-dates span{padding-left:4px}.pv2-calendar-dismiss{display:flex;justify-content:flex-end}.pv2-calendar-dismiss button{font-size:11px;text-decoration:none;color:var(--muted);padding:4px 8px;min-height:44px}.pv2-calendar-dismiss span{font-size:16px;margin-left:8px}.pv2-updated{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px;margin-top:8px}.pv2-updated .pv2-link{font-size:11px;white-space:nowrap}.pv2-local-tools{margin-top:20px;border-top:1px solid var(--border);padding-top:12px}.pv2-local-tools summary{font-size:11px;color:var(--muted);padding:8px 0;min-height:44px}.pv2-local-tools .pv2-note{margin:8px 0}.pv2-dialog-photo{max-height:65dvh;width:100%;object-fit:contain;border-radius:8px;margin-bottom:14px}.pv2-calendar+.pv2-note{margin-bottom:0}.pv2-session{grid-template-columns:49px minmax(0,1fr) auto;gap:10px;padding:15px 12px}.pv2-session-time strong{font-size:17px}.pv2-session-info h4{font-size:15px}.pv2-session-info p{font-size:10px}.pv2-session .button{grid-column:auto;padding:8px 12px;min-height:44px;font-size:12px}.pv2-availability{font-size:11px}.pv2-dialog button:disabled{opacity:.5;cursor:not-allowed}.pv2 h4.pv2-subtitle{font-size:19px;margin-bottom:16px}
@media(max-width:699px){.pv2-plans article{display:grid;grid-template-columns:1fr auto;gap:3px 12px;padding:16px}.pv2-plans .pv2-pill{grid-column:1/-1;font-size:9px}.pv2-plans h4{font-size:28px;margin:6px 0}.pv2-plans h4 small{font-size:15px}.pv2-plans .pv2-price{font-size:23px;margin:4px 0;align-self:center}.pv2-plans article .pv2-muted{min-height:0;font-size:11px;align-self:center}.pv2-plans article .button{margin:6px 0 0;min-height:44px;font-size:12px;padding:10px 12px;gap:8px}.pv2-plans article .button span{font-size:18px}.pv2-profile-layout{gap:16px}.pv2-card{padding:18px}.pv2-profile-layout .pv2-protocol,.pv2-profile-layout .pv2-history{padding:16px;margin-top:16px}.pv2-profile-layout .pv2-booking{font-size:13px}.pv2-balances{margin:12px 0 18px}.pv2-balances>div{padding:12px}.pv2-balances strong{font-size:25px}.pv2-title>.eyebrow{display:none}.pv2-login-layout{gap:16px}.pv2-login-layout .pv2-info{margin:0;padding:12px 0}.pv2-policy{margin-top:18px;font-size:12px}.pv2-agenda.with-calendar{display:flex;flex-direction:column;gap:16px}.pv2-class-heading .pv2-link{font-size:11px;min-height:36px}.pv2-qr{padding:18px}.pv2-qr canvas{margin:16px auto}.pv2-title h3{font-size:22px}}
@media(min-width:700px){.pv2-student{margin-bottom:14px}.pv2-greeting{font-size:23px}.pv2-student .pv2-muted{font-size:13px}.pv2-balances.pv2-balances-compact{max-width:630px;margin-bottom:24px}.pv2-balances-compact>div{padding:12px 20px}.pv2-balances-compact strong{font-size:25px}.pv2-balances-compact span{font-size:12px}.pv2-class-heading h3{font-size:25px}.pv2-class-heading p{font-size:12px}.pv2-class-heading{margin-bottom:18px}.pv2-other-dates{font-size:14px}.pv2-session{grid-template-columns:64px 1fr auto;padding:18px 22px}.pv2-session-info h4{font-size:17px}.pv2-session-info p,.pv2-availability{font-size:12px}.pv2-session .button{font-size:13px;padding-inline:24px}}
.pv2-booking-summary{display:grid;gap:8px;margin:0 0 18px;font-size:14px}.pv2-booking-summary>div{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px}.pv2-booking-summary dt{color:var(--muted);font-size:12px}.pv2-booking-summary dd{margin:0}.pv2-dialog:has(#pole-book-form) .pv2-dialog-head{margin-bottom:14px}.pv2-dialog #pole-book-form fieldset{margin:18px 0 12px}.pv2-dialog #pole-book-form .pv2-credit{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:10px;min-height:48px;margin:8px 0;padding:10px 12px}.pv2-dialog #pole-book-form input[type=radio]{margin:0}.pv2-dialog .pv2-credit-selected{font-size:13px}.pv2-credit-selected strong{color:var(--accent)}.pv2-dialog .pv2-cancellation{margin:16px 0;padding:12px 14px}.pv2-cancellation time{color:var(--text)}.pv2-dialog #pole-book-form>.button{margin-top:4px}.pv2-dialog #pole-book-form .pv2-note{margin:12px 0}.pv2-dialog #pole-dialog-error:empty{display:none}
.pv2-access>.button{width:100%;margin-top:12px}.pv2-test-outcomes{display:grid;gap:12px;margin-top:20px}.pv2-test-outcomes .button{width:100%;min-height:48px}.pv2-card [data-view="plans"]{margin-left:8px}@media(max-width:420px){.pv2-card [data-view="plans"]{margin-left:0;width:100%}}

.pv2-plan-dates{margin:0 0 18px;border:1px solid var(--border);border-radius:8px;padding:12px 16px}.pv2-plan-dates summary{font-size:12px;color:var(--accent);min-height:32px}.pv2-plan-dates>p{font-size:12px;line-height:1.7;margin-top:12px;color:var(--muted)}.pv2-plan-dates strong{color:var(--text)}

.pv2-purchases{border:1px solid var(--border);border-radius:8px;padding:12px 16px;margin-bottom:18px}.pv2-purchases summary{color:var(--accent);font-size:13px;min-height:32px}.pv2-purchases summary span{float:right}.adb-install{margin-top:22px;border-top:1px solid var(--border);padding-top:10px}.adb-install[hidden],#adb-install-help[hidden]{display:none}

/* Acciones diarias visibles sin ampliar la cabecera de alumnas. */
.pv2-nav button{color:#eee4f5;background:#261b31;border-color:#65516f;font-weight:650}
.pv2-nav button[aria-current=page]{background:#c6a2ec;color:#17111e;border-color:#c6a2ec;font-weight:750}
.pv2-profile-link{min-height:44px;padding:10px 14px;background:#32243f;border:1.5px solid #aa85ca;border-radius:9px;color:#fff;font-size:13px;font-weight:700}
.pv2-plans article .button{min-height:48px;font-size:14px;padding:12px 16px}
.pv2-session .button{min-height:48px;font-size:13px;font-weight:750;padding:10px 16px}
.pv2-card>.button{margin-right:8px}
.pv2-rental-link a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;margin-top:6px;background:#32243f;color:#fff;border:1px solid #aa85ca;border-radius:8px;font-weight:700}
@media(max-width:420px){.pv2-session .button{padding:10px 12px}.pv2-card>.button{width:100%;margin-right:0;margin-top:12px}}

/* Make registration distinct from access; public rules never record acceptance. */
.pv2-first-visit{padding:16px;margin:0 0 24px;border:1px solid #a378c5;border-radius:8px;background:#2b2135}
.pv2-first-visit strong{display:block;font-size:17px;color:var(--text)}
.pv2-first-visit p{font-size:13px;color:var(--muted);line-height:1.6;margin:8px 0 14px}
.pv2-first-visit .button{width:100%}
.pv2-public-info{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:-4px 0 20px;font-size:12px;color:var(--muted)}
.pv2-public-info .pv2-link{font-size:13px;min-height:44px}
.pv2-dialog .pv2-protocol-text{max-height:none;font-size:14px;line-height:1.7}
.pv2-dialog .pv2-protocol-text h4{margin:20px 0 8px;color:var(--text)}
.pv2-dialog .pv2-protocol-text p{margin:8px 0;color:var(--muted)}
@media(max-width:699px){.pv2-public-info{gap:0 12px;margin-bottom:14px}.pv2-public-info>span{font-size:11px}}

.manual-weekdays{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0;border:1px solid var(--line,#ddd);padding:14px}.manual-weekdays label{display:flex;align-items:center;gap:6px}.manual-weekdays input{width:auto}.manual-ledger-row{padding:20px 0;border-bottom:1px solid #ddd}.manual-ledger-row details{margin:12px 0}.manual-ledger-row p{overflow-wrap:anywhere}

#manual-error:empty{display:none}

.pv2-purchase-continuation{margin:20px 0 24px;border-color:var(--accent)}
.pv2-purchase-continuation h4{font-size:22px;letter-spacing:0;margin:8px 0 12px}
.pv2-purchase-continuation p:not(.eyebrow){font-size:14px;line-height:1.7;color:var(--muted)}
.pv2-purchase-continuation>.button{display:flex;width:100%;white-space:normal;text-align:center}
.pv2-purchase-continuation>.pv2-link{display:block;margin-top:14px}

/* Read-only wallet pilot. */
.pv2-wallet{background:linear-gradient(145deg,#29222f,#19161e);padding:26px!important;border-radius:22px!important;align-self:start;min-width:0}.pv2-wallet-brand{display:flex;justify-content:space-between;gap:10px;font-size:11px;letter-spacing:2px;color:var(--accent)}.pv2-wallet h4{margin:22px 0 8px;font-size:25px}.pv2-wallet-name{font-size:18px;overflow-wrap:anywhere;margin-bottom:24px}.pv2-wallet-paid,.pv2-wallet-gift{display:grid;grid-template-columns:1fr auto;align-items:center;padding:16px 0;border-bottom:1px solid var(--border);gap:8px}.pv2-wallet-paid strong{font-size:42px;color:var(--accent)}.pv2-wallet-gift strong{font-size:30px}.pv2-wallet-gift small{grid-column:1/-1;color:var(--muted);font-size:12px}.pv2-wallet-code{text-align:center;padding:24px 0 12px}.pv2-wallet-code canvas{max-width:100%;border-radius:12px}.pv2-wallet-code p{font-size:11px;color:var(--muted);margin:10px 0}.pv2-wallet-validity{font-size:12px;margin-top:12px}.pv2-wallet-validity p{margin:10px 0;line-height:1.6}.pv2-wallet>.button{width:100%}.pv2-wallet-buttons{display:grid;gap:8px;margin:16px 0 10px}.pv2-wallet-buttons button{padding:12px;border:1px solid var(--border);border-radius:8px;background:#ffffff08;color:var(--muted);font:inherit;font-size:12px;cursor:not-allowed}.pv2-wallet>small{display:block;font-size:11px;line-height:1.6;color:var(--muted)}

/* Save the live web card to a phone without native wallet credentials. */
.pv2-wallet-save{margin-top:16px}.pv2-wallet-saved{font-size:14px;color:var(--accent);margin:20px 0 8px}.pv2-install-help{font-size:16px;line-height:1.65}.pv2-install-help h4{font-size:18px;margin:20px 0 8px}.pv2-install-help ol{padding-left:24px}.pv2-install-help li{margin:10px 0}.pv2-install-help .pv2-note{font-size:14px}.pv2-wallet-brand .pv2-pill{letter-spacing:1px}

.pv2-wallet-shortcut{display:flex;margin:16px 0}.pv2-wallet{scroll-margin-top:90px}.pv2-wallet:focus-visible{outline:2px solid var(--accent);outline-offset:4px}

.pv2-google-wallet{margin-top:1rem}.pv2-google-wallet-save{display:inline-block;margin:8px 0;padding:8px;max-width:100%}.pv2-google-wallet-save img{display:block;width:300px;max-width:100%;height:auto;min-height:48px}

.pv2-apple-wallet{margin-top:12px}.pv2-apple-wallet>.button{width:100%}

.pv2-prior-sale{margin:20px 0;padding:18px;border:1px solid var(--border);border-radius:8px;min-width:0}.pv2-prior-sale legend{padding:0 8px;font-size:16px;font-weight:600}.pv2-prior-sale>p{font-size:14px;line-height:1.6;color:var(--muted)}
.pv2-payment-return{padding:clamp(20px,4vw,32px);margin:0 0 24px;background:#251c31;border:1px solid var(--accent);border-radius:14px;scroll-margin-top:20px;overflow-wrap:anywhere}
.pv2-payment-return h3{font-size:clamp(24px,5vw,32px);line-height:1.2;margin:8px 0 16px}
.pv2-payment-return p{font-size:1rem;line-height:1.6;margin:12px 0}
.pv2-payment-return .eyebrow,.pv2-payment-return .pv2-payment-reference{font-size:.875rem}
.pv2-payment-return .pv2-payment-reference{color:var(--muted);margin-top:22px}
.pv2-payment-return .pv2-payment-summary{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-block:14px;border-block:1px solid var(--border)}
.pv2-payment-return .pv2-payment-summary span{white-space:nowrap}
.pv2-payment-return .pv2-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.pv2-payment-return .button,.pv2-payment-return .pv2-link{font-size:1rem;min-height:48px;white-space:normal;text-align:center}
.pv2-payment-return .pv2-link{display:inline-flex;align-items:center}
.pv2-payment-return.success{border-color:#8ccaa6;background:#192b24}
.pv2-payment-return.review{border-color:#c5a17e}
.pv2-payment-return:focus{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:500px){.pv2-payment-return .pv2-actions>*{width:100%}.pv2-payment-return .pv2-actions{display:grid;grid-template-columns:minmax(0,1fr)}}

.manual-sheet-scroll{overflow:auto;max-width:100%;border:1px solid #d8dee4;border-radius:8px;margin-top:18px}.manual-sheet{border-collapse:collapse;width:100%;min-width:980px;background:#fff;font-size:14px}.manual-sheet th{background:#edf3ef;color:#24392c;text-align:left;white-space:nowrap;padding:14px 12px;border-bottom:2px solid #bacdc0}.manual-sheet td{padding:12px;border:1px solid #e2e7e4;vertical-align:top}.manual-sheet tbody tr:nth-child(even){background:#f7faf8}.manual-sheet tbody tr:hover{background:#eef6f0}.manual-sheet td:first-child{min-width:180px;overflow-wrap:anywhere}.manual-sheet small{color:#52645a}.manual-sheet p{margin:0 0 6px}.manual-sheet details{margin-top:8px}.manual-money{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.manual-payment-status{display:inline-block;padding:5px 8px;background:#edf3ef;border-radius:4px}.manual-sheet .button{white-space:nowrap}

.manual-date-picker{max-width:520px;margin:22px 0;padding:18px;border:1px solid var(--line,#685174);border-radius:12px}.manual-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;text-transform:capitalize}.manual-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;text-align:center}.manual-calendar-days>span{font-size:12px;padding:5px 0}.manual-calendar-days button{min-height:44px;padding:5px;border:1px solid #9470a5;border-radius:7px;background:transparent;color:inherit;font:inherit;cursor:pointer}.manual-calendar-days button[aria-pressed=true]{background:#764299;border:2px solid #d6b4f1;color:white;font-weight:800}.manual-calendar-days button:disabled{opacity:.3;cursor:default}.manual-calendar-days button:focus-visible{outline:3px solid #d6b4f1;outline-offset:2px}.manual-date-breakdown{list-style:none;padding:0;margin:12px 0;max-height:290px;overflow:auto}.manual-date-breakdown li{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #9876a944}.manual-date-breakdown strong{white-space:nowrap}.manual-sheet .manual-date-breakdown{min-width:240px}#pole [data-manual-repeat][hidden],#manual-date-picker[hidden]{display:none!important}

.manual-save-actions,.manual-save-shortcut{padding:16px;margin:18px 0;border:1px solid var(--accent,#d6b4f1);border-radius:10px;background:var(--panel,#211729)}.manual-save-actions{position:sticky;bottom:12px;z-index:5;box-shadow:0 4px 20px #0005}.manual-save-actions .button,.manual-save-shortcut .button{width:100%;min-height:50px;white-space:normal;font-size:16px;font-weight:800}.manual-save-actions p,.manual-save-shortcut p{margin:9px 0 0;font-size:13px;line-height:1.45;color:var(--muted,#d5c9df)}@media(max-width:600px){.manual-save-actions{bottom:8px;padding:12px}.manual-save-actions p{font-size:12px}}

/* Readable internal ledger on its light background, including inherited text. */
#pole .manual-sheet{--text:#211629;--muted:#52645a;color:#211629}
#pole .manual-sheet td,#pole .manual-sheet p,#pole .manual-sheet strong,#pole .manual-sheet summary,#pole .manual-sheet span{color:#211629}
#pole .manual-sheet small{color:#52645a}
#pole .manual-sheet .button{background:#32243f;color:#fff;margin:4px 0}
#pole .manual-sheet ::selection{background:#244b91;color:#fff}
.manual-manage-dates{list-style:none;padding:0;display:grid;gap:12px}
.manual-manage-dates li{display:grid;gap:8px;padding:16px;border:1px solid var(--line);border-radius:12px}
.manual-manage-dates li>div{display:flex;gap:8px;flex-wrap:wrap}
/* Payment labels remain readable without relying on color alone. */
.manual-sheet tr.payment-paid{background:#d9ead3;color:#142e18}.manual-sheet tr.payment-partial{background:#fff2cc;color:#382c05}.manual-sheet tr.payment-pending{background:#f4cccc;color:#451515}.manual-sheet tr.payment-review,.manual-sheet tr.payment-neutral{background:#e8e8e8;color:#252525}.manual-sheet tr[class*="payment-"] .button{color:inherit;border-color:currentColor}.manual-sheet tr[class*="payment-"] small{color:inherit}.monthly-legend{display:flex;flex-wrap:wrap;gap:8px}.monthly-legend span{padding:6px 10px;border-radius:6px}.monthly-legend .payment-paid{background:#d9ead3;color:#142e18}.monthly-legend .payment-partial{background:#fff2cc;color:#382c05}.monthly-legend .payment-pending{background:#f4cccc;color:#451515}

.pv2-room-preview img[src$="sala-pole-morande-octubre.png"]{object-position:50% 0}
.pv2-dialog-photo[src$="sala-pole-morande-octubre.png"]{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 0}

.pv2-promotion-flyer{display:block;width:100%;height:auto;border-radius:8px;margin-bottom:24px}.pv2-november{margin-top:24px;align-items:start}.pv2-other-promotions{margin:36px 0 24px}.pv2-november .pv2-promotion-card{padding:18px}.pv2-november .pv2-promotion-actions button{white-space:normal;line-height:1.5}

.pv2-promotion-card.pv2-promotion-poster{padding:0;overflow:hidden;display:flex;flex-direction:column}.pv2-promotion-art{display:block;background:#160d16}.pv2-promotion-art img{display:block;width:100%;height:auto;max-height:600px;object-fit:contain}.pv2-promotion-body{padding:24px;min-width:0}.pv2-promotion-selector{display:grid;gap:10px;margin:20px 0;font-weight:700}.pv2-promotion-selector select{width:100%;min-height:48px;padding:12px;border:1px solid #ca87c6;border-radius:8px;background:#251a2c;color:#fff;font:inherit}.pv2-promotion-selector select:focus-visible{outline:3px solid #f0b3ea;outline-offset:3px}.pv2-promotion-card h4{overflow-wrap:anywhere}.pv2-promotion-body>.pv2-pill{white-space:normal}@media(max-width:480px){.pv2-promotion-body{padding:20px}.pv2-promotion-art img{max-height:none}}

.pv2-trial{border:1px solid #c6a2ec;border-radius:12px;padding:24px;margin:20px 0;background:linear-gradient(120deg,#35233e,#211929)}.pv2-trial h4{font-size:24px;letter-spacing:0;margin:8px 0 12px}.pv2-trial p{line-height:1.6;margin:10px 0 18px}.pv2-nav .pv2-trial-nav{grid-column:1/-1;color:#efd3ff;border-color:#c6a2ec}.pv2-trial .pv2-link{margin:12px}
/* Paid monthly selection and same-day gift reservations. */
.pv2-booking-paths{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}.pv2-booking-paths p{flex-basis:100%;margin:0;color:var(--muted,#aeb5c0);line-height:1.6}
.pv2-planner-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;margin:20px 0}.pv2-planner-filters label{display:grid;gap:8px;min-width:0}.pv2-planner-filters select{width:100%;min-width:0;background:#182432;color:#fff;padding:12px;border:1px solid #657181;border-radius:10px;font:inherit}
.pv2-planner-summary{background:#142632;border:1px solid #567278;border-radius:16px;padding:20px;margin:18px 0}.pv2-planner-summary p{line-height:1.6}.pv2-planner-summary .button{margin:10px 10px 0 0}.pv2-plan-sessions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pv2-plan-sessions .pv2-session{grid-template-columns:minmax(0,1fr) auto}.pv2-plan-sessions .pv2-availability{display:block;margin-top:8px}
.pv2-gift-total{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;padding:20px;border:1px solid #c49d67;border-radius:16px;margin:20px 0;background:#282321}.pv2-gift-total strong{font-size:48px;color:#f5dca9}.pv2-gift-total p{flex-basis:100%;margin:0}.pv2-selected-classes{padding-left:24px}.pv2-selected-classes li{padding:8px 0;line-height:1.6}
@media(max-width:680px){.pv2-planner-filters,.pv2-plan-sessions{grid-template-columns:1fr}.pv2-booking-paths .button{width:100%}.pv2-plan-sessions .pv2-session{grid-template-columns:minmax(0,1fr)}.pv2-plan-sessions .button{width:100%}}
