.woocommerce-account .article-shell,.woocommerce-account .content-wrap{max-width:1160px}.woocommerce-account .woocommerce{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px}.woocommerce-account .woocommerce:before,.woocommerce-account .woocommerce:after{display:none}.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{float:none;width:auto}.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;display:grid;gap:5px}.woocommerce-MyAccount-navigation a{display:block;padding:12px 15px;border-radius:10px;text-decoration:none;color:#18334c;background:#f3f7f8}.woocommerce-MyAccount-navigation .is-active a{background:#0b7f82;color:#fff}.omp{color:#18334c}.omp h2{font-size:clamp(26px,3vw,36px);margin:6px 0 12px}.omp h3{font-size:22px;margin:16px 0 10px}.omp-eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700;color:#0b7f82}.omp-intro{color:#536b7c;max-width:65ch}.omp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}.omp-card,.omp-empty{padding:24px;border:1px solid #d8e5eb;border-radius:16px;background:#fff;box-shadow:0 6px 20px #17334c06}.omp-card{margin:12px 0}.omp-grid .omp-card{margin:0}.omp-empty{background:#f5fbfa;margin:24px 0}.omp-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.omp-badge{font-size:12px;font-weight:700;border-radius:20px;background:#e7f4ee;color:#176c57;padding:5px 10px}.omp-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px!important;border:1px solid #0b7f82!important;border-radius:10px!important;background:#0b7f82!important;color:white!important;text-decoration:none!important;line-height:1.4!important;font-weight:600!important;cursor:pointer;margin:6px 8px 6px 0}.omp-secondary{background:#eff7f8!important;color:#173b51!important;border-color:#b6d0db!important}.omp-button:disabled{opacity:.6;cursor:wait}.omp button:focus-visible,.omp a:focus-visible,.omp input:focus-visible,.omp select:focus-visible{outline:3px solid #77bbcb;outline-offset:3px}.omp-note{padding:16px 20px;background:#fff8e9;border:1px solid #eee0bd;border-radius:12px}.omp-form,.omp-card form{display:grid;gap:14px;margin:20px 0}.omp label{display:grid;gap:6px;font-weight:600}.omp input,.omp select{font:inherit;max-width:100%;width:100%;min-height:44px;border:1px solid #b7ccd6;border-radius:8px;padding:9px;background:#fff;color:#18334c}.omp-form .omp-button{justify-self:start}.omp-small{font-size:13px;color:#536b7c}.omp-access{font-size:14px;color:#276750}.omp details summary{cursor:pointer;font-weight:600}.omp-links{display:flex;gap:10px;flex-wrap:wrap}.woocommerce form .form-row input.input-text{min-height:44px;border:1px solid #b7ccd6;border-radius:8px;padding:10px}.woocommerce-account .ofs{min-width:0}.ofs-member-return{display:block;margin-bottom:16px}.woocommerce-account.ofs-testing .woocommerce-MyAccount-navigation{display:none}.woocommerce-account.ofs-testing .woocommerce{grid-template-columns:1fr}@media(max-width:760px){.woocommerce-account .woocommerce{grid-template-columns:1fr;gap:20px}.woocommerce-MyAccount-navigation ul{display:flex;overflow-x:auto;gap:6px;padding-bottom:5px}.woocommerce-MyAccount-navigation li{flex:0 0 auto}.woocommerce-MyAccount-navigation a{padding:10px 13px;font-size:14px}.omp-grid{grid-template-columns:1fr}.omp-card,.omp-empty{padding:20px}.omp-button{max-width:100%}}@media print{.woocommerce-MyAccount-navigation,.omp-form,.omp-button{display:none}.omp-card{break-inside:avoid;box-shadow:none}}
.omp-page{background:#fffaf3;min-height:65vh}.omp-page-wrap{width:min(1160px,calc(100% - 40px));margin:0 auto}.omp-page-heading{padding:38px 0 28px;background:#f2f8f7;border-bottom:1px solid #ddebe8}.omp-page-heading h1{font-size:clamp(30px,4vw,42px);margin:8px 0 12px;color:#17334c}.omp-page-heading p{max-width:65ch}.omp-page-content{padding:32px 0 64px}.omp-page-content .woocommerce{margin:0}.omp-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:28px}.omp-benefits article{padding:20px;background:#fff;border:1px solid #d8e5eb;border-radius:14px}.omp-benefits h2{font-size:20px}.omp-grade-filter{max-width:340px}.omp-shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.omp-shop-grid h2{font-size:24px}.omp-price{font-size:28px;font-weight:700;color:#0b7f82}.omp-price span{font-size:14px;display:block;font-weight:400;color:#536b7c}.omp-shop-grid ul{padding-left:20px;font-size:15px}.omp-shop-grid li{margin-bottom:8px}.omp-shop-grid [hidden]{display:none}@media(max-width:950px){.omp-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.omp-benefits{grid-template-columns:1fr}}@media(max-width:600px){.omp-shop-grid{grid-template-columns:1fr}.omp-page-wrap{width:calc(100% - 28px)}.omp-page-heading{padding:26px 0 20px}}
.woocommerce-account .omp-page .woocommerce{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px}.woocommerce-account .omp-page .woocommerce:before,.woocommerce-account .omp-page .woocommerce:after{display:none!important}.woocommerce-account .omp-page .woocommerce-MyAccount-navigation,.woocommerce-account .omp-page .woocommerce-MyAccount-content{float:none;width:auto;min-width:0}.woocommerce-account .omp-page .woocommerce-MyAccount-navigation{grid-column:1}.woocommerce-account .omp-page .woocommerce-MyAccount-content{grid-column:2}.woocommerce-account .omp-page .woocommerce-notices-wrapper{grid-column:1/-1}.woocommerce-account.ofs-testing .omp-page .woocommerce{grid-template-columns:1fr}.woocommerce-account.ofs-testing .omp-page .woocommerce-MyAccount-content{grid-column:1}@media(max-width:760px){.woocommerce-account .omp-page .woocommerce{grid-template-columns:1fr}.woocommerce-account .omp-page .woocommerce-MyAccount-navigation,.woocommerce-account .omp-page .woocommerce-MyAccount-content{grid-column:1}}

/* Authentication is a full-width pair of cards, separate from the member sidebar. */
.woocommerce-account .woocommerce:has(form.login),.woocommerce-account .omp-page .woocommerce:has(form.login){display:block;width:100%;min-width:0}
.woocommerce-account #customer_login{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;width:100%;margin:0}
.woocommerce-account #customer_login:before,.woocommerce-account #customer_login:after{display:none}
.woocommerce-account #customer_login .col-1,.woocommerce-account #customer_login .col-2{float:none;width:auto;min-width:0;max-width:none}
.woocommerce-account #customer_login h2{font-size:28px;margin:0 0 16px;color:#17334c}
.woocommerce-account form.login,.woocommerce-account form.register{box-sizing:border-box;width:100%;margin:0;padding:28px;border:1px solid #d8e5eb;border-radius:16px;background:#fff;box-shadow:0 10px 30px #17334c0d;text-align:left}
.woocommerce-account form.login .form-row,.woocommerce-account form.register .form-row{display:block;width:100%;margin:0 0 20px;padding:0;float:none}
.woocommerce-account form.login label,.woocommerce-account form.register label{display:block;margin-bottom:8px;font-weight:600;line-height:1.6}
.woocommerce-account form.login input.input-text,.woocommerce-account form.register input.input-text{box-sizing:border-box;width:100%;max-width:none;font:inherit;min-height:48px;background:#fff;color:#17334c}
.woocommerce-account form.login .password-input{display:block;width:100%}
.woocommerce-account form.login .woocommerce-form-login__rememberme{display:flex;gap:8px;align-items:center;margin-bottom:14px;font-size:15px;font-weight:400}
.woocommerce-account form.login input[type=checkbox]{width:18px;height:18px;flex:0 0 auto;margin:0}
.woocommerce-account form.login button.button,.woocommerce-account form.register button.button{float:none;display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 24px;border:1px solid #0b7f82;border-radius:9px;background:#0b7f82;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.woocommerce-account form.login p,.woocommerce-account form.register p{line-height:1.7}
.woocommerce-account form.login .lost_password{margin:18px 0 0}
.woocommerce-account form.login a,.woocommerce-account form.register a{color:#0b7376;text-underline-offset:3px}
.woocommerce-account form.login :focus-visible,.woocommerce-account form.register :focus-visible{outline:3px solid #77bbcb;outline-offset:3px}
@media(max-width:760px){.woocommerce-account #customer_login{grid-template-columns:1fr;gap:30px}.woocommerce-account form.login,.woocommerce-account form.register{padding:22px}.woocommerce-account #customer_login h2{font-size:25px}}

/* Family dashboard, learner picker and activity catalog. */
.woocommerce-account .woocommerce-MyAccount-content{padding:24px;border:1px solid #d8e5eb;border-radius:18px;background:#fff;box-shadow:0 10px 30px #17334c08}
.woocommerce-account.ofs-testing .woocommerce-MyAccount-content{padding:0;border:0;box-shadow:none}
.omp-learner-picker{background:#f3f7fb;border:1px solid #e0e8ef;padding:22px;border-radius:16px;margin:20px 0}
.omp-learner-picker h3{font-size:17px;margin:0 0 6px}.omp-learner-picker p{font-size:14px;color:#536b7c}
.omp-learner-choice{display:grid;gap:4px;padding:12px 16px;background:#fff;border:1px solid #d8e5eb;border-radius:10px;text-decoration:none;color:#17334c;min-width:110px;box-shadow:0 3px 0 #d8e5eb66}.omp-learner-choice span{font-size:12px;color:#536b7c}.omp-learner-choice.is-selected{border:2px solid #0b7f82;background:#edf8f5}
.omp-activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.omp-activity{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:20px;border:1px solid #dfe7ed;border-radius:16px;background:#fff;box-shadow:0 8px 24px #17334c09}.omp-activity>.omp-badge{align-self:flex-start;background:#eaf3fb;color:#226391;font-size:11px}.omp-activity h3{font-size:18px;line-height:1.35;margin:14px 0 8px}.omp-activity>p{font-size:14px;line-height:1.6;color:#536b7c;margin:0 0 20px}.omp-activity-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border-block:1px solid #e4ebef;padding:12px 0;margin:auto 0 12px}.omp-activity-meta dt{font-size:10px;text-transform:uppercase;color:#536b7c}.omp-activity-meta dd{font-size:12px;font-weight:700;margin:5px 0 0;overflow-wrap:anywhere}.omp-activity .omp-button{width:100%;margin:0;font-size:14px;padding:10px 12px!important}.omp-activity details>summary{list-style:none}.omp-activity details>summary::-webkit-details-marker{display:none}.omp-activity details[open]>summary{margin-bottom:14px}.omp-activity details p{font-size:14px;color:#536b7c}.omp-activity form,.omp-activity [data-omp-full]{display:grid;gap:14px;margin:16px 0 0}.omp-activity label{font-size:13px}.omp-activity .omp-small{margin-top:10px}.omp .omp-card:has(.omp-badge){background:linear-gradient(145deg,#f1f9fb,#edf8f4)}
@media(max-width:1100px){.omp-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.omp-activity-grid{grid-template-columns:1fr}.woocommerce-account .woocommerce-MyAccount-content{padding:18px}.omp-activity{padding:20px}}
.woocommerce-account:has(.omp-learner-picker) .omp-page .woocommerce{grid-template-columns:1fr}.woocommerce-account:has(.omp-learner-picker) .woocommerce-MyAccount-navigation{display:none}.woocommerce-account:has(.omp-learner-picker) .omp-page .woocommerce-MyAccount-content{grid-column:1}
.omp-activity-meta{grid-template-columns:1.4fr .8fr 1.2fr}

/* During an attempt the player sets ofs-testing on the body itself. */
body.woocommerce-account.ofs-testing .woocommerce-MyAccount-navigation{display:none!important}
body.woocommerce-account.ofs-testing .omp-page-heading,body.woocommerce-account.ofs-testing .ofs-member-return{display:none}
body.woocommerce-account.ofs-testing .omp-page .woocommerce{display:block!important;width:100%;margin:0}
body.woocommerce-account.ofs-testing .omp-page .woocommerce-MyAccount-content{width:100%;max-width:none;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
body.woocommerce-account.ofs-testing .omp-page-wrap{width:calc(100% - 40px);max-width:none}
body.woocommerce-account.ofs-testing .omp-page-content{padding:20px 0 32px}
body.woocommerce-account.ofs-testing .ofs{width:100%;max-width:none;box-sizing:border-box;margin:0;min-height:calc(100vh - 170px)}
@media(max-width:600px){body.woocommerce-account.ofs-testing .omp-page-wrap{width:calc(100% - 20px)}body.woocommerce-account.ofs-testing .omp-page-content{padding:10px 0 20px}}

/* Dedicated practice preparation pages. */
.woocommerce-account:has(.omp-instructions) .woocommerce-MyAccount-navigation,.woocommerce-account:has(.omp-instructions) .omp-page-heading{display:none}
.woocommerce-account:has(.omp-instructions) .omp-page .woocommerce{display:block}
.woocommerce-account:has(.omp-instructions) .woocommerce-MyAccount-content{width:100%;padding:32px}
.omp-instructions{max-width:880px;margin:0 auto}.omp-instructions h2{font-size:36px}.omp-instructions h3{font-size:28px;margin:30px 0 14px}.omp-instructions li{margin:10px 0;line-height:1.7}
.omp-instruction-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0}.omp-instruction-stats>div{display:grid;gap:10px;text-align:center;padding:26px 12px;border:1px solid #dce9ed;border-radius:16px;background:#f0f8fa}.omp-instruction-stats strong{font-size:24px;color:#0b7f82}.omp-instruction-stats span{font-size:14px;color:#536b7c}
.omp-instruction-form{display:grid;gap:18px;margin-top:26px}.omp-instruction-form label{max-width:440px}.omp-instruction-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-top:24px}.omp-instruction-actions .omp-button{margin:0}
@media(max-width:600px){.woocommerce-account:has(.omp-instructions) .woocommerce-MyAccount-content{padding:20px}.omp-instructions h2{font-size:28px}.omp-instruction-stats{gap:8px}.omp-instruction-stats>div{padding:18px 6px}.omp-instruction-stats strong{font-size:19px}}

/* Recognizable grade images in the parent cart. */
.woocommerce-cart table.cart td.product-thumbnail{width:104px;padding:12px}
.woocommerce-cart table.cart td.product-thumbnail img{display:block;width:80px;height:80px;max-width:none;object-fit:cover;border-radius:10px;border:1px solid #d8e5eb;background:#edf6f8}
@media(max-width:768px){.woocommerce-cart .woocommerce table.shop_table_responsive tr td.product-thumbnail{display:block!important;text-align:left!important;padding:14px 12px 4px}.woocommerce-cart table.cart td.product-thumbnail:before{display:none}.woocommerce-cart table.cart td.product-thumbnail img{width:64px;height:64px}}

/* Quiet cart removal control, matching the family store reference. */
.woocommerce-cart .woocommerce table.cart td.product-remove a.remove{display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;border:1px solid #aab6c3;border-radius:50%;background:transparent;color:#8492a3!important;font-size:18px;font-weight:400;line-height:1;text-decoration:none;box-sizing:border-box}
.woocommerce-cart .woocommerce table.cart td.product-remove a.remove:hover{background:#f1f5f8;color:#536b7c!important;border-color:#7e91a3}
.woocommerce-cart .woocommerce table.cart td.product-remove a.remove:focus-visible{outline:2px solid #0b7f82;outline-offset:3px}

/* Desktop parent checkout: billing left, order and payment right. */
.woocommerce-checkout .woocommerce form.checkout{display:flow-root}
.woocommerce-checkout .woocommerce form.checkout #customer_details{float:left;width:54%;box-sizing:border-box;padding:24px;border:1px solid #d8e5eb;border-radius:14px;background:#fff}
.woocommerce-checkout .woocommerce form.checkout #customer_details .col-1,.woocommerce-checkout .woocommerce form.checkout #customer_details .col-2{float:none;width:100%;max-width:none}
.woocommerce-checkout .woocommerce form.checkout #customer_details:before,.woocommerce-checkout .woocommerce form.checkout #customer_details:after{display:none}
.woocommerce-checkout .woocommerce form.checkout #order_review_heading{float:right;clear:none;width:42%;box-sizing:border-box;margin:0;padding:20px 24px;border:1px solid #d8e5eb;border-bottom:0;border-radius:14px 14px 0 0;background:#fff}
.woocommerce-checkout .woocommerce form.checkout #order_review{float:right;clear:right;width:42%;box-sizing:border-box;padding:0 24px 24px;border:1px solid #d8e5eb;border-top:0;border-radius:0 0 14px 14px;background:#fff}
.woocommerce-checkout .woocommerce form.checkout #order_review table{width:100%;margin-bottom:20px}
.woocommerce-checkout .woocommerce form.checkout #order_review #payment{background:#f3f7fa;border-radius:10px}
.woocommerce-checkout .woocommerce form.checkout .woocommerce-NoticeGroup{clear:both;width:100%}
.woocommerce-checkout .woocommerce form.checkout .woocommerce-additional-fields{margin-top:24px}
.woocommerce-checkout .woocommerce form.checkout textarea{box-sizing:border-box;width:100%;min-height:90px;border:1px solid #b7ccd6;border-radius:8px;padding:10px;font:inherit}
@media(max-width:800px){.woocommerce-checkout .woocommerce form.checkout #customer_details,.woocommerce-checkout .woocommerce form.checkout #order_review_heading,.woocommerce-checkout .woocommerce form.checkout #order_review{float:none;clear:both;width:100%}.woocommerce-checkout .woocommerce form.checkout #customer_details{padding:20px;margin-bottom:24px}.woocommerce-checkout .woocommerce form.checkout #order_review_heading{padding:20px}.woocommerce-checkout .woocommerce form.checkout #order_review{padding:0 20px 20px}}

/* Password recovery must not inherit the member sidebar's narrow grid column. */
.woocommerce-account .woocommerce:has(form.woocommerce-ResetPassword),.woocommerce-account .omp-page .woocommerce:has(form.woocommerce-ResetPassword){display:block;width:100%;min-width:0}
.woocommerce-account form.woocommerce-ResetPassword{box-sizing:border-box;width:100%;max-width:560px;margin:0 auto;padding:28px;border:1px solid #d8e5eb;border-radius:16px;background:#fff;box-shadow:0 10px 30px #17334c0d;text-align:left}
.woocommerce-account form.woocommerce-ResetPassword .form-row{display:block;float:none;clear:both;width:100%;max-width:none;padding:0;margin:0 0 20px}
.woocommerce-account form.woocommerce-ResetPassword label{display:block;margin-bottom:8px;font-weight:600;line-height:1.5}
.woocommerce-account form.woocommerce-ResetPassword .password-input{display:block;width:100%}
.woocommerce-account form.woocommerce-ResetPassword input.input-text{box-sizing:border-box;width:100%;max-width:none;min-height:48px;font:inherit;background:#fff;color:#17334c;padding-right:44px}
.woocommerce-account form.woocommerce-ResetPassword p{line-height:1.65}
.woocommerce-account form.woocommerce-ResetPassword button.button{float:none;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border:1px solid #0b7f82;border-radius:9px;background:#0b7f82;color:#fff;font:inherit;font-weight:700;line-height:1.4;box-shadow:none}
.woocommerce-account form.woocommerce-ResetPassword button.button:disabled{opacity:.55;cursor:not-allowed}
.woocommerce-account form.woocommerce-ResetPassword :focus-visible{outline:3px solid #77bbcb;outline-offset:3px}
.woocommerce-account .woocommerce:has(form.woocommerce-ResetPassword) .woocommerce-notices-wrapper{width:100%;max-width:560px;margin:0 auto 20px}
@media(max-width:600px){.woocommerce-account form.woocommerce-ResetPassword{padding:22px}.woocommerce-account form.woocommerce-ResetPassword button.button{width:100%}}
.woocommerce .omp-order-confirmation{padding:20px;margin:24px 0;border:1px solid #c8e1e3;border-radius:14px;background:#f0f9f8}
.woocommerce .omp-order-confirmation .omp-order-practice{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:9px;background:#0b7f82;color:#fff!important;font-weight:700;text-decoration:none;line-height:1.4}
.woocommerce .omp-order-confirmation .omp-order-practice:hover{background:#09676a}
.woocommerce .omp-order-confirmation .omp-order-check{padding:11px 16px;border:1px solid #b6d2d5;border-radius:9px;background:#fff;color:#17324d;font:inherit;cursor:pointer;margin:8px 0}
.woocommerce .omp-order-confirmation .omp-order-check:disabled{opacity:.6;cursor:wait}
.woocommerce .omp-order-confirmation .omp-order-check[hidden]{display:none}
.omp .omp-family-guide{padding:22px;margin:22px 0;background:linear-gradient(135deg,#eef8fc,#edf9f4);border:1px solid #cce2e8;border-radius:14px}
.omp .omp-family-guide h3{font-size:20px;margin:0 0 10px}
.omp .omp-family-guide>p{font-size:14px;line-height:1.65;color:#365468}
.omp .omp-family-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;margin:18px 0;list-style:none}
.omp .omp-family-steps li{padding:15px;background:#fff;border:1px solid #d9e8ee;border-radius:10px;min-width:0}
.omp .omp-family-steps strong{display:block;color:#17324d;font-size:15px;margin-bottom:7px}
.omp .omp-family-steps span{display:block;color:#486274;font-size:14px;line-height:1.65}
.omp .omp-family-guide a{font-weight:700;color:#086e76;text-decoration:underline}
.omp .omp-family-guide .omp-family-next{margin-bottom:8px}
.omp #assign-passes{scroll-margin-top:150px}
@media(max-width:600px){.omp .omp-family-guide{padding:18px}.omp .omp-family-steps{grid-template-columns:1fr}}
