/* Customer portal: one focused screen per task, shared Actual PDV identity. */
.customer-header{height:88px;border-bottom:1px solid var(--line)}
.customer-main{max-width:1320px;padding-top:36px}
.customer-title{margin-bottom:30px;align-items:flex-start}
.customer-title h1{font-size:clamp(28px,3vw,40px);line-height:1.16;letter-spacing:-.045em}
.customer-title p:not(.eyebrow){font-size:14px;line-height:1.7;max-width:730px}
.portal-shell{display:grid;grid-template-columns:238px minmax(0,1fr);gap:28px;align-items:start}
.portal-sidebar{position:sticky;top:24px;border:1px solid #dce5d7;border-radius:18px;background:#fff;overflow:hidden}
.portal-sidebar-brand{display:grid;gap:11px;padding:24px 20px;border-bottom:1px solid #e9ede4}
.portal-sidebar-brand .eyebrow{font-size:9px;letter-spacing:.13em;color:#73836b;margin:0}
.portal-sidebar-brand strong{font-size:17px;line-height:1.4;overflow-wrap:anywhere}
#portal-nav-status{font-size:11px;color:#5f7656;display:flex;align-items:center;gap:7px}
#portal-nav-status:before{content:'';width:6px;height:6px;border-radius:50%;background:#7f9e59;flex-shrink:0}
#portal-navigation{display:grid;position:static;inset:auto;box-shadow:none;border:0;border-radius:0;background:transparent;gap:5px;padding:13px 10px}
#portal-navigation button{display:flex;align-items:center;gap:11px;min-height:49px;border-radius:10px;padding:12px 11px;text-align:left;font:inherit;font-size:12px;font-weight:550;background:transparent;color:#607266;cursor:pointer;line-height:1.4}
.portal-nav-number{font-size:10px;font-weight:600;color:#81937c;min-width:22px}
#portal-navigation button:hover:not(:disabled){background:#f2f6eb}
#portal-navigation button[aria-current=page]{background:#183e35;color:white}
#portal-navigation button[aria-current=page] .portal-nav-number{color:#d5edac}
#portal-navigation button:disabled{opacity:.4;cursor:not-allowed}
.portal-sidebar-help{padding:20px;border-top:1px solid #e9ede4;background:#fafbf7;font-size:11px;line-height:1.7}
.portal-sidebar-help strong{font-weight:650}.portal-sidebar-help p{color:#75816e;margin-top:7px}
.portal-sidebar-help a{display:inline-block;margin-top:12px;font-weight:600}
.portal-content{min-width:0}
.portal-content>.customer-panel,.portal-content>.portal-operation{margin:0;border-radius:18px;padding:30px;background:#fff;box-shadow:0 8px 30px #183e3504}
.portal-content .customer-panel h2{font-size:27px;letter-spacing:-.035em;line-height:1.25}
.portal-content .customer-panel>p{line-height:1.8}
.portal-content .customer-section-head{align-items:flex-start;gap:16px}
.portal-content .eyebrow{font-size:9px;letter-spacing:.13em;color:#73836b}
.portal-content .sandbox-pill{white-space:normal;line-height:1.5;text-align:center;font-size:10px}
.portal-content form label{font-size:13px}
.portal-content form input:not([type=checkbox]),.portal-content form textarea,.portal-content form select{font-size:14px;padding:13px;border-radius:10px;min-height:46px;background:#fafbf8}
.portal-content form small{font-size:11px;line-height:1.65}
.portal-content .customer-grid{gap:0 22px}
.portal-content form .button{min-height:46px;font-size:12px}
.portal-content .access-notice{font-size:12px;margin:0 0 20px;padding:14px 17px}
.portal-content .purchase-customization{padding:0;background:#f7f9f2;margin:24px 0 0;font-size:12px}
.purchase-customization summary{padding:17px 20px;cursor:pointer;font-weight:600;line-height:1.6}
.purchase-customization>div{padding:0 20px 20px}
.portal-content .customer-plans{gap:14px;margin-top:22px;align-items:stretch}
.portal-content .customer-plan{padding:21px 18px;border-radius:14px;min-width:0;background:#fff;border:1px solid #dce4d5}
.portal-content .customer-plan.selected-plan{background:#f6f9ef;border:1px solid #7b975e}
.portal-content .customer-plan.current-plan{border:2px solid #456c45;background:#f5f9ee}
.portal-plan-badge{font-size:9px;font-weight:600;letter-spacing:.02em;line-height:1.5;color:#577148;min-height:29px}
.current-plan .portal-plan-badge{color:#305b35}
.portal-content .customer-plan h3{font-size:25px;line-height:1.2;margin-top:8px;letter-spacing:-.045em}
.portal-content .customer-plan>p{font-size:12px;line-height:1.7;min-height:61px}
.portal-content .customer-plan>strong{font-size:28px;margin-top:18px;line-height:1.2;letter-spacing:-.045em}
.portal-content .customer-plan>small{font-size:10px;line-height:1.65;min-height:34px}
.plan-highlights{list-style:none;padding:18px 0 8px;margin:0;display:grid;gap:11px;font-size:11px;line-height:1.7;width:100%;flex:1}
.plan-highlights li{padding-left:17px;position:relative}.plan-highlights li:before{content:'✓';position:absolute;left:0;color:#668c44}
.plan-details{border-top:1px solid #e4eadc;width:100%;padding:13px 0;margin:12px 0 18px;font-size:11px}
.plan-details summary{font-weight:600;cursor:pointer;line-height:1.7}
.plan-details .plan-feature-list{font-size:11px;margin:15px 0;line-height:1.8}
.portal-content .customer-plan .plan-scope{font-size:10px;min-height:0}
.portal-content .customer-plan>.button{width:100%;font-size:11px;padding:13px 8px;min-height:44px;line-height:1.5;white-space:normal;margin-top:auto}
.portal-content .customer-plan>.button:disabled{opacity:1;background:#edf1e8;color:#6b7c64;border:1px solid #dce4d6}
.portal-content .current-plan>.button:disabled{background:#dceccf;color:#31573b}
.portal-content .selected-plan-label{font-size:9px;margin:0 0 8px}
.portal-screen-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:23px 2px}
.portal-screen-footer .text-link,.portal-screen-footer .secondary-button{font-size:11px}
#portal-screen-position{font-size:10px;color:#798572;text-align:center;margin-left:auto;margin-right:auto;line-height:1.6}
.purchase-review-summary{display:grid;border:1px solid #dfe7d7;border-radius:14px;margin-top:26px;overflow:hidden}
.purchase-review-summary>div{display:flex;justify-content:space-between;gap:24px;padding:19px 22px;line-height:1.6;font-size:13px;border-bottom:1px solid #e8eddf}
.purchase-review-summary>div:last-child{border-bottom:0;background:#f1f7e9}
.purchase-review-summary span{color:#6b7d63}.purchase-review-summary strong{text-align:right;font-weight:600;overflow-wrap:anywhere}
.purchase-review-terms{background:#f6f8f2;border-radius:12px;padding:20px;margin-top:23px;font-size:13px;line-height:1.8}
.purchase-review-terms p{font-size:12px;color:#6a7b62;margin-top:7px}
#purchase-review-consent .checkbox-label{font-size:12px;line-height:1.8;padding:16px 0}
#purchase-review-consent input{width:17px;height:17px;flex-shrink:0}
.purchase-review .customer-actions{justify-content:space-between;border-top:1px solid #e2e9da;padding-top:23px}
.portal-content .portal-operation dl{grid-template-columns:repeat(2,minmax(0,1fr))}
.portal-content .portal-operation .customer-actions{gap:14px}
.portal-content .live-preview{position:sticky;top:20px}
.portal-content .publish-panel{grid-template-columns:1fr;gap:24px;background:#f1f7e8}
.portal-content .button:focus-visible,.portal-content summary:focus-visible,#portal-navigation button:focus-visible{outline:3px solid #91ae6a;outline-offset:3px}
@media(min-width:1500px){.customer-main{max-width:1440px}.portal-shell{grid-template-columns:250px minmax(0,1fr);gap:36px}.portal-content .customer-panel{padding:36px}.portal-content .customer-plan{padding:25px}}
@media(max-width:1050px){.portal-shell{grid-template-columns:205px minmax(0,1fr);gap:20px}.portal-content .customer-plans{grid-template-columns:1fr}.portal-content .customer-plan>p{min-height:0}.portal-content .customer-plan>small{min-height:0}.portal-plan-badge{min-height:0}.portal-content .customer-plan>.button{max-width:320px}.portal-content .customer-plan>strong{margin-top:15px}.plan-highlights{gap:7px}}
@media(max-width:760px){.customer-header{height:76px}.customer-main{padding-top:24px}.portal-shell{grid-template-columns:1fr;gap:18px}.portal-sidebar{position:static}.portal-sidebar-brand{padding:16px 18px;grid-template-columns:1fr auto;align-items:center;gap:6px}.portal-sidebar-brand>.eyebrow{grid-column:1/-1}.portal-sidebar-brand strong{font-size:15px}#portal-nav-status{font-size:10px}#portal-navigation{display:flex;overflow-x:auto;gap:7px;padding:10px;scrollbar-width:thin}#portal-navigation button{flex-shrink:0;font-size:11px;min-height:42px;padding:10px;gap:7px}.portal-nav-number{min-width:auto;font-size:9px}.portal-sidebar-help{display:none}.portal-content>.customer-panel,.portal-content>.portal-operation{padding:23px 20px}.portal-content .customer-panel h2{font-size:25px}.customer-title{gap:15px;margin-bottom:22px}.customer-title h1{font-size:29px}.customer-title p:not(.eyebrow){font-size:12px}.portal-content .customer-grid{grid-template-columns:1fr}.portal-content .live-preview{position:static}.portal-content .portal-operation dl{grid-template-columns:1fr}.portal-screen-footer{flex-wrap:wrap}.portal-screen-footer .secondary-button{padding:11px}#portal-screen-position{font-size:9px}.purchase-review-summary>div{padding:16px;font-size:12px;gap:15px}.purchase-review-summary strong{max-width:62%}.purchase-review .customer-actions{gap:15px}.purchase-review .customer-actions>.button{width:100%;order:-1}.customer-footer{margin-top:10px}.customer-toast{bottom:95px;right:16px;font-size:11px;max-width:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
