
:root{--blue:#875a3c;--blue-soft:#f4e9df;--cyan:#a47045;--ink:#34271e;--muted:#786657;--line:#e1d4c8;--bg:#f7f3ee;--nav:#32231b;--nav2:#523928}.portal-brand{background:linear-gradient(125deg,#32231b,#64452f);padding:18px max(22px,calc((100vw - 1200px)/2));box-shadow:0 6px 20px #2f1d1618}.portal-brand>a{font-weight:750;letter-spacing:-.02em}.portal-brand img{width:62px;height:62px;object-fit:contain}.portal-brand nav{gap:12px}.portal-brand nav button{border-radius:12px;padding:11px 17px;border:1px solid #ffffff45;color:#fff;background:#ffffff0c;font-weight:750}main{max-width:1200px;margin:36px auto}.eyebrow{font-size:.68rem;letter-spacing:.16em;font-weight:850;color:#8c5e3d}.primary{background:linear-gradient(115deg,#956440,#70482e);border-color:#875a3c;color:white}.secondary,.button.secondary{color:#70482e;background:#f5ebe1;border-color:#dcc8b7}.card{border-radius:18px;padding:24px}.study-hero{padding:15px 0 32px}.study-hero h1{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.06;letter-spacing:-.055em}.study-hero>p:not(.eyebrow){font-size:1.1rem;max-width:620px;color:var(--muted)}.home-courses img{height:130px;width:190px;object-fit:contain;margin-bottom:15px}.products{justify-content:center;gap:45px;margin:25px 0}.products img{height:120px;width:180px;object-fit:contain}.product-head{display:flex;flex-direction:column-reverse;align-items:flex-start;margin-bottom:22px}.product-head img{height:125px;width:190px;object-fit:contain}.product-head h2{margin-top:15px}.prices .plan{min-height:145px;border-radius:15px}.plan.selected{border-color:#875a3c;background:#f5e9de;box-shadow:0 0 0 3px #875a3c12}.circuitpath .plan.selected{border-color:#047857;background:#edf9f2}.totals{background:linear-gradient(120deg,#523928,#35261e);padding:25px;border-radius:18px}.totals small{color:#ead7c8}.membership img{height:110px;width:185px}.membership{border-top:3px solid #875a3c}.membership:has(img[alt=CircuitPath]){border-top-color:#047857}.login{padding:30px;max-width:620px}.login h1{font-size:2rem}.form-stack{gap:17px}input,select,textarea{border-radius:12px;padding:13px 15px;border:1px solid var(--line);font:inherit}.check{align-items:center;gap:12px}.check input{width:20px;height:20px;accent-color:#875a3c}.school-account-choice .account-choice{padding:0;border:0;background:transparent;box-shadow:none;margin-bottom:24px}.account-choice h2{font-size:1.6rem}.account-choice{border-radius:18px}.school-account-choice{padding:30px}.school-account-choice .secondary{width:100%}.billing-table,table{font-size:.88rem}dialog{width:min(620px,calc(100% - 32px));border-radius:20px;border:1px solid var(--line);padding:26px;max-height:92dvh;overflow:auto}dialog .dialog-head{display:flex;align-items:center;gap:15px;justify-content:space-between;margin-bottom:22px}dialog .round-btn{margin-left:auto}dialog h2{font-size:1.35rem;margin:0}dialog::backdrop{background:#281b15a6}.history{overflow-x:auto}.portal-brand .text-button{border-color:transparent}.checkout{margin-top:25px}.course-grid{gap:24px}.form-stack .grid{gap:15px}.status{font-weight:800}.inline-code input{margin-bottom:12px}@media(max-width:760px){main{padding:0 18px;margin:25px auto}.portal-brand{padding:14px 18px;align-items:flex-start;gap:12px;flex-wrap:wrap}.portal-brand img{width:52px;height:52px}.portal-brand>a{font-size:1.2rem}.portal-brand nav{margin-left:auto;gap:8px}.portal-brand nav button{padding:9px 12px;font-size:.8rem}.card,.login{padding:22px}.products img{height:95px;width:130px}.product-head img{height:115px;width:170px}.grid,.course-grid{grid-template-columns:1fr}.form-stack .grid{grid-template-columns:1fr 1fr}.prices .plan{padding:14px 12px}.prices strong{font-size:1.6rem}.totals{padding:22px}.study-hero h1{font-size:2.8rem}}

:root{--accent-dark:#70482e;--brand-accent:#875a3c}.primary{background:linear-gradient(135deg,#956440,#70482e);box-shadow:0 7px 18px #70482e25}body{background:#f7f3ee}.portal-brand nav #create{background:#a879554d;border-color:#c79b76}.portal-brand .text-button{color:#fff}.study-home .actions{margin-top:24px}.prices .plan.selected{padding:11px 17px}.form-stack .check{display:flex;flex-wrap:wrap;align-items:center}.form-stack .check input{margin:0}
.signin-courses{display:flex;align-items:center;justify-content:center;gap:30px;margin:18px 0 25px}.signin-courses img{width:145px;height:95px;object-fit:contain}
.study-signin-return{margin-top:14px}
:root:not(.school-themed) .primary{background:linear-gradient(135deg,#956440,#70482e);box-shadow:0 7px 18px #70482e25}

/* Portal surfaces extend through the viewport, including short pages and safe areas. */
html{min-height:100%;background:#f7f3ee;color:#34271e}
body{min-height:100vh;min-height:100dvh;background:#f7f3ee;color:#34271e;display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom)}
body>main{width:100%;flex:1;min-height:0;margin-bottom:36px}
body>header{flex-shrink:0;padding-top:max(14px,env(safe-area-inset-top))}
body:has(dialog[open]){background:#f7f3ee}
button,.button{min-height:44px}
.round-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;min-width:42px;min-height:42px;flex:0 0 42px;padding:0;line-height:1;border-radius:50%;font-family:Arial,sans-serif;font-size:25px;vertical-align:middle}
button svg,.button svg,button img,.button img{display:block;flex-shrink:0;object-fit:contain}
.round-btn svg{width:20px;height:20px}
.social-link{display:inline-flex;align-items:center;justify-content:center;gap:10px}
.social-link img{width:22px;height:22px}
.portal-brand img,.membership img,.products img,.signin-courses img{display:block;object-fit:contain}
.login{max-width:490px;padding:26px;margin:0 auto}
.login h1{font-size:1.85rem;margin-bottom:14px}
.signin-courses{gap:24px;margin:8px 0 16px}
.signin-courses img{width:130px;height:78px}
.login .form-stack{gap:13px}
.login .form-stack p:empty,.login #security:empty{display:none}
.login .wide{display:block;width:100%;margin-top:12px}
.login .auth-quick-links{display:flex;justify-content:center;margin-top:5px}
.login .auth-quick-links button{font-size:.9rem;min-height:40px}
.account-choices>button,.school-account-choice{transition:border-color .12s,box-shadow .12s}
.account-choices>button:hover,.school-account-choice:has(#school:hover),.school-account-choice:focus-within{border-color:#875a3c;box-shadow:0 0 0 2px #875a3c18}
.school-account-choice #school{width:100%;text-align:left;border-radius:10px;padding:0;background:none;border:0}
.school-account-choice #school:focus-visible{outline:3px solid #875a3c;outline-offset:8px}
.totals{background:#fff;color:#34271e;border:1px solid #dcc8b7;box-shadow:0 5px 22px #34271e08;align-items:center}
.totals small{color:#786657}
.totals #cart-total>strong{display:block;font-size:2.2rem;line-height:1.15;margin:6px 0 14px;letter-spacing:-.035em}
.totals #cart-total p{margin:6px 0}
.code-offer{display:grid;grid-template-columns:1.15fr 1fr;gap:28px;align-items:start}
.code-offer .inline-code{margin-top:0;max-width:none}
.code-offer h2{font-size:1.15rem}
.code-offer p{font-size:.92rem;margin:8px 0 14px}
.prices .plan.selected{padding:11px 17px}
.membership.proofpath{border-top-color:#2563eb}
.membership.circuitpath{border-top-color:#047857}
.membership{align-content:start;gap:8px}
.membership>p{margin:2px 0}
.membership>.actions{margin-bottom:0;align-self:end}
.membership-source{font-size:.87rem;color:var(--muted)}
.account-name{display:flex;align-items:center;gap:8px;margin-bottom:24px}
.account-name>strong{font-size:1.15rem;overflow-wrap:anywhere}
.account-name .text-button{color:#70482e;font-size:.9rem}
.billing-facts{margin:10px 0;display:grid;gap:12px}
.billing-facts>div{display:flex;gap:14px;justify-content:space-between;align-items:baseline}
.billing-facts dt{font-size:.85rem;color:var(--muted)}
.billing-facts dd{font-size:.9rem;font-weight:650;text-align:right;margin:0;overflow-wrap:anywhere}
.billing-support{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.88rem}
.billing-support button{font-size:inherit;padding:8px}
.table-scroll{overflow-x:auto;max-width:100%}
dialog.school-plans-dialog{width:min(940px,calc(100% - 32px));max-width:940px}
.school-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.school-price-product{min-width:0;border:1px solid var(--line);border-radius:14px;padding:16px;border-top:3px solid #2563eb}
.school-price-product.circuitpath{border-top-color:#047857}
.school-plan-logo{width:170px;height:100px;object-fit:contain;display:block;margin:0 auto 10px}
.school-price-product table{font-size:.83rem}
.school-price-product caption{text-align:left;font-size:.9rem;font-weight:750;padding:8px}
.school-price-product th,.school-price-product td{padding:12px 7px;white-space:nowrap}
.school-price-product tbody th{font-weight:500}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:760px){body>main{margin-bottom:24px}.school-price-grid,.code-offer{grid-template-columns:1fr}.school-price-grid{gap:18px}.login{padding:22px}.code-offer{gap:18px}.membership .actions{gap:9px}.billing-facts>div{gap:10px}.billing-facts dd{max-width:65%}.school-price-product{padding:12px}.totals #continue{width:100%}.portal-brand{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}}

.school-account-choice:hover{border-color:#875a3c;box-shadow:0 0 0 2px #875a3c18}.discount-duration{display:block;margin-top:3px}

/* Checkout remains on the selection page; product state never changes on selection alone. */
.checkout-product{border-top:3px solid #2563eb;min-width:0}
.checkout-product.circuitpath{border-top-color:#047857}
.checkout-product.membership-owned{background:#f8f7f5}
.checkout-product.membership-owned .prices,.checkout-product.membership-owned .buy-toggle{opacity:.48;filter:grayscale(1)}
.checkout-product .plan:disabled{cursor:default;opacity:.6}
.checkout-product .resume-checkout{margin-top:16px}
.checkout-result{padding:14px 18px;border-radius:12px;border:1px solid var(--line);background:#fff;overflow-wrap:anywhere}
#checkout-review{display:grid;gap:16px}
#checkout-review h2,#checkout-review p{margin:0}
#checkout-review #continue{justify-self:start}
#checkout-review .check{align-items:flex-start}
#checkout-review input{flex:0 0 20px;margin-top:2px}
#checkout-area{scroll-margin-top:20px;min-width:0}
#checkout-area #sumup-card{max-width:650px;width:100%}
#checkout-area iframe{max-width:100%}
.pending-payments{margin:24px 0;display:grid;gap:10px}
.pending-payments p{margin:0}
.pending-payments button{justify-self:start}
.membership-launch{margin:8px 0 18px;display:flex;gap:10px;flex-wrap:wrap}
.membership-launch p{margin:0}
.membership-controls:empty{display:none}
.membership>.retention-note{font-size:.86rem;margin-top:12px;line-height:1.5;color:var(--muted)}
@media(max-width:760px){#checkout-review #continue{width:100%}.membership-launch{margin-bottom:16px}.checkout-product .product-head{margin-bottom:16px}.totals{width:100%}.pending-payments button{justify-self:stretch}}
