/* FE10 Membership Gate 2.8.7 — branded recovery + modern responsive access */
:root{
  --fe10-bg:#f5f8ff;
  --fe10-card:#ffffff;
  --fe10-ink:#111827;
  --fe10-muted:#56647a;
  --fe10-accent:#2f66e8;
  --fe10-accent-hover:#2458d5;
  --fe10-accent-soft:#edf3ff;
  --fe10-border:#dbe5f6;
  --fe10-radius:22px;
  --fe10-shadow:0 22px 60px rgba(29,45,84,.12);
  --fe10-success:#15945b;
  --fe10-success-soft:#ecf9f2;
}
.fe10-wrap,.fe10-wrap *{box-sizing:border-box;}
.fe10-wrap{max-width:var(--fe10-wrap-max,1080px);width:min(100%,var(--fe10-wrap-width,100%));margin:0 auto;padding:var(--fe10-wrap-pad,18px);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--fe10-ink);font-size:16px;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;}
.fe10-wrap button,.fe10-wrap input{font:inherit;}
.fe10-wrap.fe10-wrap-inherit{max-width:none;width:100%;margin:0;padding:var(--fe10-wrap-pad,18px);}
.fe10-wrap.fe10-wrap-full{max-width:none;width:100%;margin:0 auto;padding:var(--fe10-wrap-pad,18px);}
.fe10-card{background:var(--fe10-card);border:1px solid var(--fe10-border);border-radius:var(--fe10-radius);box-shadow:var(--fe10-shadow);padding:22px;}
.fe10-title{margin:0 0 10px;font-size:28px;letter-spacing:-.02em;font-weight:700;}
.fe10-sub{margin:0 0 14px;color:var(--fe10-muted);line-height:1.7;font-weight:400;}
.fe10-pill{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.95);padding:8px 12px;border-radius:999px;font-size:13px;color:var(--fe10-ink);box-shadow:0 10px 24px rgba(17,24,39,.06);white-space:nowrap;font-weight:600;}

/* Authentication experience */
.fe10-auth-wrap{max-width:980px;padding-block:clamp(16px,4vw,44px);}
.fe10-auth-shell{display:grid;grid-template-columns:minmax(0,.92fr) minmax(360px,1.08fr);min-height:570px;overflow:hidden;border:1px solid rgba(201,214,239,.9);border-radius:28px;background:#fff;box-shadow:var(--fe10-shadow);}
.fe10-auth-shell-compact{min-height:430px;}
.fe10-auth-intro{position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:clamp(34px,5vw,62px);background:linear-gradient(145deg,#eef4ff 0%,#e8f0ff 50%,#f7faff 100%);}
.fe10-auth-intro::before,.fe10-auth-intro::after{content:"";position:absolute;border-radius:999px;pointer-events:none;}
.fe10-auth-intro::before{width:280px;height:280px;right:-126px;top:-110px;background:radial-gradient(circle,rgba(47,102,232,.18),rgba(47,102,232,0) 70%);}
.fe10-auth-intro::after{width:220px;height:220px;left:-105px;bottom:-112px;background:radial-gradient(circle,rgba(119,169,255,.23),rgba(119,169,255,0) 70%);}
.fe10-auth-eyebrow{position:relative;z-index:1;display:inline-flex;align-items:center;align-self:flex-start;gap:10px;margin-bottom:24px;color:#244da9;font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;}
.fe10-auth-mark{position:relative;display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid rgba(47,102,232,.18);border-radius:12px;background:rgba(255,255,255,.78);box-shadow:0 8px 24px rgba(47,102,232,.12);}
.fe10-auth-mark::before{content:"";width:14px;height:12px;border:2px solid var(--fe10-accent);border-radius:4px;transform:translateY(3px);}
.fe10-auth-mark span{position:absolute;width:9px;height:8px;top:7px;border:2px solid var(--fe10-accent);border-bottom:0;border-radius:7px 7px 0 0;}
.fe10-auth-title{position:relative;z-index:1;margin:0;max-width:520px;color:#0d1b36;font-size:clamp(34px,4.2vw,52px);font-weight:700;line-height:1.08;letter-spacing:-.04em;overflow-wrap:anywhere;}
.fe10-auth-lead{position:relative;z-index:1;margin:18px 0 0;max-width:520px;color:#42516b;font-size:clamp(15px,1.8vw,18px);font-weight:400;line-height:1.72;}
.fe10-auth-trust{position:relative;z-index:1;display:flex;gap:8px;margin-top:34px;}
.fe10-auth-trust span{display:block;width:34px;height:5px;border-radius:999px;background:rgba(47,102,232,.17);}
.fe10-auth-trust span:first-child{width:58px;background:rgba(47,102,232,.65);}
.fe10-auth-panel{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:clamp(30px,5vw,58px);background:#fff;}
.fe10-auth-panel-heading{margin-bottom:24px;}
.fe10-auth-panel-heading h2{margin:0;color:#111827;font-size:clamp(24px,3vw,31px);font-weight:650;line-height:1.2;letter-spacing:-.025em;}
.fe10-auth-panel-heading p{margin:8px 0 0;color:var(--fe10-muted);font-size:14px;line-height:1.65;}
.fe10-auth-form{display:flex;flex-direction:column;gap:17px;margin:0;}
.fe10-field{margin:0;}
.fe10-field label{display:block;margin:0 0 7px;color:#172033;font-size:14px;font-weight:600;line-height:1.4;}
.fe10-field input[type="text"],.fe10-field input[type="password"]{display:block;width:100%;min-height:52px;margin:0;padding:12px 14px;border:1px solid #cfdaeb;border-radius:14px;outline:0;background:#f9fbff;color:#111827;font-size:16px;font-weight:400;line-height:1.35;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;}
.fe10-field input[type="text"]::placeholder,.fe10-field input[type="password"]::placeholder{color:#8793a6;}
.fe10-field input[type="text"]:hover,.fe10-field input[type="password"]:hover{border-color:#b7c7e0;}
.fe10-field input[type="text"]:focus,.fe10-field input[type="password"]:focus{border-color:rgba(47,102,232,.72);background:#fff;box-shadow:0 0 0 4px rgba(47,102,232,.13);}
.fe10-password-control{position:relative;}
.fe10-js .fe10-password-control input{padding-right:114px;}
.fe10-password-toggle{display:none;}
.fe10-js .fe10-password-toggle{position:absolute;right:7px;top:50%;display:inline-flex;min-height:38px;align-items:center;gap:6px;transform:translateY(-50%);border:0;border-radius:10px;background:transparent;color:#36527d;padding:7px 9px;cursor:pointer;font-size:12px;font-weight:600;line-height:1;}
.fe10-js .fe10-password-toggle:hover{background:#edf3ff;color:#244da9;}
.fe10-js .fe10-password-toggle:focus-visible{outline:3px solid rgba(47,102,232,.22);outline-offset:1px;}
.fe10-eye{position:relative;width:16px;height:11px;border:1.8px solid currentColor;border-radius:50%/60%;}
.fe10-eye::after{content:"";position:absolute;left:50%;top:50%;width:4px;height:4px;transform:translate(-50%,-50%);border-radius:50%;background:currentColor;}
.fe10-password-toggle[aria-pressed="true"] .fe10-eye::before{content:"";position:absolute;left:-2px;top:4px;width:20px;height:1.8px;transform:rotate(-38deg);background:currentColor;box-shadow:0 0 0 2px #f9fbff;}
.fe10-auth-options{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:-1px;}
.fe10-check{display:inline-flex;align-items:center;gap:9px;color:#27364d;font-size:14px;font-weight:500;cursor:pointer;}
.fe10-check input{width:18px;height:18px;margin:0;accent-color:var(--fe10-accent);}
.fe10-auth-forgot{color:var(--fe10-accent);font-size:14px;font-weight:600;text-decoration:none;text-underline-offset:3px;}
.fe10-auth-forgot:hover{text-decoration:underline;}
.fe10-auth-back-link{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;margin-top:2px;}
.fe10-recovery-form .login-submit{margin-top:2px;}
.fe10-btn,.fe10-btn-secondary{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:10px;border-radius:14px;padding:12px 17px;text-align:center;text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease;}
.fe10-btn{border:1px solid var(--fe10-accent);background:var(--fe10-accent);color:#fff;font-weight:650;box-shadow:0 12px 25px rgba(47,102,232,.23);}
.fe10-btn:hover{transform:translateY(-1px);border-color:var(--fe10-accent-hover);background:var(--fe10-accent-hover);color:#fff;box-shadow:0 15px 29px rgba(47,102,232,.28);}
.fe10-btn:focus-visible,.fe10-btn-secondary:focus-visible{outline:4px solid rgba(47,102,232,.18);outline-offset:2px;}
.fe10-btn-secondary{border:1px solid #ccd8eb;background:#fff;color:#233550;font-weight:600;box-shadow:0 8px 18px rgba(15,23,42,.05);}
.fe10-btn-secondary:hover{transform:translateY(-1px);border-color:#aac0e1;background:#f8fbff;color:#1d4eae;}
.fe10-btn-block{width:100%;}
.fe10-btn-arrow{font-size:19px;font-weight:400;line-height:1;transition:transform .16s ease;}
.fe10-btn:hover .fe10-btn-arrow{transform:translateX(3px);}
.fe10-auth-actions{display:flex;flex-direction:column;gap:11px;margin-top:20px;}
.fe10-auth-security{display:flex;align-items:flex-start;justify-content:center;gap:8px;margin:22px 0 0;color:#718096;font-size:12px;line-height:1.5;text-align:center;}
.fe10-mini-lock{position:relative;display:inline-block;flex:0 0 auto;width:11px;height:9px;margin-top:4px;border:1.4px solid currentColor;border-radius:2px;}
.fe10-mini-lock::before{content:"";position:absolute;left:2px;top:-7px;width:5px;height:6px;border:1.4px solid currentColor;border-bottom:0;border-radius:5px 5px 0 0;}
.fe10-alert{display:flex;align-items:flex-start;gap:10px;margin:0 0 19px;padding:13px 14px;border:1px solid #fecaca;border-radius:14px;background:#fff5f5;color:#991b1b;font-size:14px;font-weight:500;line-height:1.55;}
.fe10-alert-security{border-color:#f1cf83;background:#fffbeb;color:#78520a;}
.fe10-alert-success{border-color:#a7e3c1;background:#f0fdf5;color:#166534;}
.fe10-alert-icon{display:inline-flex;width:21px;height:21px;flex:0 0 auto;align-items:center;justify-content:center;margin-top:1px;border:1px solid currentColor;border-radius:50%;font-size:12px;font-weight:700;line-height:1;}
.fe10-field-hint{margin:7px 0 0;color:#718096;font-size:12px;line-height:1.5;}
.fe10-password-match.is-match{color:#17723b;}
.fe10-password-match.is-mismatch{color:#a53a3a;}
.fe10-account-card{display:flex;min-width:0;align-items:center;gap:12px;padding:13px 14px;border:1px solid #dbe5f6;border-radius:15px;background:#f7faff;}
.fe10-account-card-setup{margin-bottom:10px;}
.fe10-account-avatar{display:inline-flex;width:40px;height:40px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:12px;background:#e5edff;color:#2458bd;font-size:16px;font-weight:700;}
.fe10-account-card>span:last-child{display:flex;min-width:0;flex-direction:column;}
.fe10-account-card small{color:#718096;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;}
.fe10-account-card strong{display:block;overflow:hidden;color:#172033;font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap;}
.fe10-auth-help{margin:10px 0 0;color:#65748a;font-size:13px;line-height:1.55;}
.fe10-auth-empty{display:flex;flex-direction:column;gap:16px;}
.fe10-auth-empty p{margin:0;color:var(--fe10-muted);line-height:1.65;}
.fe10-login-wrap{max-width:980px;margin:0 auto;}
.fe10-login-hero{background:linear-gradient(90deg,rgba(51,104,232,.14),rgba(119,169,255,.12));border:1px solid rgba(255,255,255,.85);border-radius:24px;padding:18px 20px;box-shadow:var(--fe10-shadow);margin-bottom:16px;}
.fe10-login-hero h2{margin:0;font-size:22px;font-weight:650;}
.fe10-login-hero p{margin:6px 0 0;color:#24324f;opacity:.92;font-size:14px;line-height:1.55;}
.fe10-form{background:var(--fe10-card);border:1px solid var(--fe10-border);border-radius:24px;box-shadow:var(--fe10-shadow);padding:20px;}
.fe10-link{margin-top:10px;}
.fe10-link a,.fe10-inline-link{color:var(--fe10-accent);text-decoration:none;font-weight:600;}
.fe10-link a:hover,.fe10-inline-link:hover{text-decoration:underline;}
.fe10-btn-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:16px;}

/* Student dashboard */
.fe10-dashboard{padding-block:clamp(12px,3vw,30px);}
.fe10-dashboard-shell{overflow:hidden;border:1px solid #d9e3f3;border-radius:28px;background:#fff;box-shadow:0 24px 70px rgba(27,43,75,.11);}
.fe10-dashboard-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,350px);gap:clamp(24px,5vw,66px);align-items:center;overflow:hidden;padding:clamp(28px,4.5vw,54px);border-bottom:1px solid #dce6f5;background:linear-gradient(135deg,#eef4ff 0%,#f7faff 55%,#edf4ff 100%);}
.fe10-dashboard-hero::before,.fe10-dashboard-hero::after{content:"";position:absolute;border-radius:999px;pointer-events:none;}
.fe10-dashboard-hero::before{width:310px;height:310px;right:-150px;top:-180px;background:radial-gradient(circle,rgba(47,102,232,.16),rgba(47,102,232,0) 70%);}
.fe10-dashboard-hero::after{width:250px;height:250px;left:-130px;bottom:-165px;background:radial-gradient(circle,rgba(109,160,255,.19),rgba(109,160,255,0) 70%);}
.fe10-dashboard-hero-copy,.fe10-dashboard-account{position:relative;z-index:1;min-width:0;}
.fe10-dashboard-eyebrow{display:flex;width:max-content;align-items:center;gap:9px;margin:0 0 15px;color:#3159aa;font-size:11px;font-weight:700;letter-spacing:.085em;text-transform:uppercase;}
.fe10-dashboard-lock{position:relative;display:inline-block;width:13px;height:11px;border:1.7px solid currentColor;border-radius:3px;}
.fe10-dashboard-lock::before{content:"";position:absolute;left:2px;top:-8px;width:6px;height:7px;border:1.7px solid currentColor;border-bottom:0;border-radius:6px 6px 0 0;}
.fe10-dash-title{max-width:720px;margin:0;color:#101a2f;font-size:clamp(31px,4vw,47px);font-weight:700;line-height:1.08;letter-spacing:-.038em;overflow-wrap:anywhere;}
.fe10-dash-intro{max-width:720px;margin:15px 0 0;color:#4e5f78;font-size:15px;font-weight:400;line-height:1.72;}
.fe10-back-link{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;color:#275cc8;font-size:13px;font-weight:600;text-decoration:none;text-underline-offset:3px;}
.fe10-back-link:hover{text-decoration:underline;}
.fe10-back-link:focus-visible{outline:3px solid rgba(47,102,232,.18);outline-offset:4px;border-radius:6px;}
.fe10-dashboard-account{padding:18px;border:1px solid rgba(200,214,238,.92);border-radius:20px;background:rgba(255,255,255,.86);box-shadow:0 15px 38px rgba(29,45,84,.09);backdrop-filter:blur(8px);}
.fe10-dashboard-account-main{display:flex;min-width:0;align-items:center;gap:12px;}
.fe10-dashboard-avatar{display:inline-flex;width:46px;height:46px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:15px;background:linear-gradient(145deg,#dfe9ff,#edf3ff);color:#2758bb;font-size:18px;font-weight:700;box-shadow:inset 0 0 0 1px rgba(47,102,232,.11);}
.fe10-dashboard-account-copy{display:flex;min-width:0;flex-direction:column;}
.fe10-dashboard-account-copy small{color:#758298;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;}
.fe10-dashboard-account-copy strong{display:block;overflow:hidden;margin-top:2px;color:#1b2940;font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap;}
.fe10-dashboard-account-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px;padding-top:13px;border-top:1px solid #e2e9f4;}
.fe10-dashboard-status{display:inline-flex;align-items:center;gap:7px;color:#236a4a;font-size:12px;font-weight:600;}
.fe10-dashboard-status>span,.fe10-product-ready>span{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--fe10-success);box-shadow:0 0 0 4px rgba(21,148,91,.1);}
.fe10-dashboard-logout{color:#53637a;font-size:12px;font-weight:600;text-decoration:none;text-underline-offset:3px;}
.fe10-dashboard-logout:hover{color:#244fa8;text-decoration:underline;}
.fe10-dashboard-main{padding:clamp(25px,4vw,44px);background:linear-gradient(180deg,#fff 0%,#fbfcff 100%);}
.fe10-dashboard-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:21px;}
.fe10-dashboard-section-heading>div>span{display:block;margin-bottom:4px;color:#6d7b90;font-size:11px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;}
.fe10-dashboard-section-heading h3{margin:0;color:#152138;font-size:clamp(22px,3vw,29px);font-weight:650;line-height:1.2;letter-spacing:-.025em;}
.fe10-dashboard-count{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border:1px solid #dbe5f4;border-radius:999px;background:#f5f8fd;color:#53647e;font-size:12px;font-weight:600;white-space:nowrap;}
.fe10-product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));grid-auto-rows:1fr;gap:18px;}
.fe10-product-card{--fe10-card-accent:#2f66e8;--fe10-card-soft:#edf3ff;position:relative;isolation:isolate;display:flex;min-height:300px;flex-direction:column;overflow:hidden;padding:21px;border:1px solid #dce5f2;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(23,37,66,.055);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.fe10-product-card::before{content:"";position:absolute;z-index:-1;width:180px;height:180px;right:-95px;top:-105px;border-radius:999px;background:radial-gradient(circle,var(--fe10-card-soft),rgba(255,255,255,0) 70%);}
.fe10-product-card:hover{transform:translateY(-4px);border-color:#b9cae6;border-color:color-mix(in srgb,var(--fe10-card-accent) 28%,#dce5f2);box-shadow:0 18px 42px rgba(23,37,66,.1);}
.fe10-product-card:focus-within{outline:4px solid rgba(47,102,232,.15);outline-offset:3px;}
.fe10-card-stretched-link{position:absolute;z-index:4;inset:0;border-radius:inherit;}
.fe10-card-stretched-link:focus{outline:0;}
.fe10-product-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.fe10-product-icon{display:inline-flex;width:49px;height:49px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid #dbe4f3;border:1px solid color-mix(in srgb,var(--fe10-card-accent) 15%,#fff);border-radius:16px;background:var(--fe10-card-soft);color:var(--fe10-card-accent);font-size:19px;font-weight:700;box-shadow:0 8px 20px rgba(47,102,232,.08);box-shadow:0 8px 20px color-mix(in srgb,var(--fe10-card-accent) 10%,transparent);}
.fe10-product-ready{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border:1px solid #dcebe4;border-radius:999px;background:#f5fbf8;color:#28704f;font-size:11px;font-weight:600;white-space:nowrap;}
.fe10-product-ready>span{width:7px;height:7px;box-shadow:none;}
.fe10-product-card-copy{display:flex;flex:1;flex-direction:column;margin-top:24px;}
.fe10-product-kicker{color:var(--fe10-card-accent);font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;}
.fe10-product-card-copy h3,.fe10-full-card-header h3{margin:8px 0 0;color:#152035;font-size:23px;font-weight:650;line-height:1.22;letter-spacing:-.025em;overflow-wrap:anywhere;}
.fe10-product-card-copy p{margin:13px 0 0;color:#5b6980;font-size:14px;line-height:1.65;}
.fe10-admin-group-meta{display:block;margin-top:12px;color:#768399;font-size:11px;line-height:1.5;}
.fe10-admin-group-meta code{font-size:11px;}
.fe10-product-card-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;padding-top:15px;border-top:1px solid #e7ecf4;color:var(--fe10-card-accent);font-size:13px;font-weight:650;}
.fe10-product-card-action span:last-child{font-size:18px;font-weight:400;transition:transform .18s ease;}
.fe10-product-card:hover .fe10-product-card-action span:last-child{transform:translateX(4px);}
.fe10-tone-1{--fe10-card-accent:#2f66e8;--fe10-card-soft:#edf3ff;}
.fe10-tone-2{--fe10-card-accent:#7654c7;--fe10-card-soft:#f3efff;}
.fe10-tone-3{--fe10-card-accent:#0d7b77;--fe10-card-soft:#eaf8f6;}
.fe10-tone-4{--fe10-card-accent:#bd6a19;--fe10-card-soft:#fff5e9;}
.fe10-tone-5{--fe10-card-accent:#ad4e77;--fe10-card-soft:#fff0f6;}
.fe10-tone-6{--fe10-card-accent:#39734d;--fe10-card-soft:#edf8f0;}
.fe10-content-list{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;}
.fe10-content-row{margin:0;}
.fe10-content-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center;min-height:72px;padding:12px 14px;border:1px solid #e0e7f1;border-radius:16px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 4px 14px rgba(22,35,61,.035);transition:border-color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease;}
.fe10-content-link:hover{transform:translateY(-1px);border-color:#bfd0ea;background:#fbfdff;box-shadow:0 9px 22px rgba(22,35,61,.07);}
.fe10-content-link:focus-visible{outline:4px solid rgba(47,102,232,.15);outline-offset:2px;}
.fe10-content-icon{position:relative;display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:13px;background:#eef4ff;color:#2f66e8;}
.fe10-content-icon::before{content:"";width:16px;height:19px;border:1.7px solid currentColor;border-radius:3px;background:#fff;}
.fe10-content-icon::after{content:"";position:absolute;width:7px;height:1.7px;top:17px;background:currentColor;box-shadow:0 5px 0 currentColor;}
.fe10-content-copy{display:flex;min-width:0;flex-direction:column;}
.fe10-content-copy small{color:#7a879a;font-size:10px;font-weight:700;letter-spacing:.065em;text-transform:uppercase;}
.fe10-content-copy strong{display:block;overflow:hidden;margin-top:2px;color:#1d2a40;font-size:14px;font-weight:600;line-height:1.4;text-overflow:ellipsis;white-space:nowrap;}
.fe10-content-action{display:inline-flex;align-items:center;gap:8px;color:#2d5ebf;font-size:12px;font-weight:650;white-space:nowrap;}
.fe10-content-action span:last-child{font-size:17px;font-weight:400;}
.fe10-dashboard-callout{display:flex;align-items:flex-start;gap:10px;margin-bottom:20px;padding:13px 14px;border:1px solid #cfe5da;border-radius:15px;background:#f3faf6;color:#315e49;}
.fe10-dashboard-callout>span{display:inline-flex;width:21px;height:21px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:50%;background:#dff3e8;color:#16814f;font-size:12px;font-weight:700;}
.fe10-dashboard-callout p{margin:0;font-size:13px;line-height:1.55;}
.fe10-empty-state{display:flex;align-items:center;gap:16px;padding:22px;border:1px dashed #c8d5e8;border-radius:18px;background:#f8faff;color:#4f5f77;}
.fe10-empty-icon{position:relative;display:inline-flex;width:52px;height:52px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:17px;background:#eaf1fd;color:#5677b9;}
.fe10-empty-icon::before{content:"";width:22px;height:16px;border:1.7px solid currentColor;border-radius:3px 3px 5px 5px;}
.fe10-empty-icon::after{content:"";position:absolute;width:11px;height:4px;top:16px;left:14px;border:1.7px solid currentColor;border-bottom:0;border-radius:3px 3px 0 0;}
.fe10-empty-state strong{display:block;color:#26364f;font-size:15px;font-weight:650;}
.fe10-empty-state p{margin:4px 0 0;font-size:13px;line-height:1.55;}
.fe10-full-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,390px),1fr));gap:19px;align-items:start;}
.fe10-full-card{--fe10-card-accent:#2f66e8;--fe10-card-soft:#edf3ff;padding:21px;border:1px solid #dce5f2;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(23,37,66,.055);}
.fe10-full-card-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:start;margin-bottom:18px;padding-bottom:17px;border-bottom:1px solid #e7ecf4;}
.fe10-full-card-header h3{font-size:21px;}
.fe10-full-card-count{margin:-2px 0 11px;color:#718096;font-size:11px;font-weight:600;}
.fe10-full-card .fe10-empty-state{padding:17px;}
.fe10-full-card .fe10-empty-icon{width:44px;height:44px;border-radius:14px;}
.fe10-full-card-note{margin:12px 0 0;color:#69778c;font-size:12px;line-height:1.55;}
.fe10-resource-hub-frame{min-width:0;}
.fe10-dashboard-footer{display:grid;grid-template-columns:minmax(0,1fr);gap:13px;padding:18px clamp(25px,4vw,44px);border-top:1px solid #e1e8f3;background:#f7f9fd;}
.fe10-dashboard-footer:has(.fe10-dashboard-portal){grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);}
.fe10-dashboard-help{display:flex;align-items:center;gap:13px;min-width:0;}
.fe10-dashboard-help-icon{display:inline-flex;width:38px;height:38px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid #d3def0;border-radius:12px;background:#fff;color:#4165a8;font-size:15px;font-weight:700;}
.fe10-dashboard-help strong{display:block;color:#28374e;font-size:13px;font-weight:650;}
.fe10-dashboard-help p{margin:3px 0 0;color:#6c798d;font-size:11px;line-height:1.5;}
.fe10-dashboard-portal{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px 13px;border:1px solid #d7e2f2;border-radius:15px;background:#fff;color:inherit;text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;}
.fe10-dashboard-portal:hover{transform:translateY(-1px);border-color:#b9cbe6;box-shadow:0 8px 20px rgba(22,35,61,.06);}
.fe10-dashboard-portal:focus-visible{outline:4px solid rgba(47,102,232,.15);outline-offset:2px;}
.fe10-dashboard-portal-icon{position:relative;display:inline-flex;width:37px;height:37px;align-items:center;justify-content:center;border-radius:12px;background:#edf3ff;color:#2e62c8;}
.fe10-dashboard-portal-icon::before{content:"";width:17px;height:13px;border:1.6px solid currentColor;border-radius:3px;}
.fe10-dashboard-portal-icon::after{content:"";position:absolute;width:17px;height:1.6px;top:15px;background:currentColor;}
.fe10-dashboard-portal>span:nth-child(2){display:flex;min-width:0;flex-direction:column;}
.fe10-dashboard-portal strong{color:#25344c;font-size:12px;font-weight:650;}
.fe10-dashboard-portal small{overflow:hidden;margin-top:2px;color:#738096;font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap;}
.fe10-dashboard-portal-arrow{color:#4266aa;font-size:17px;}
.fe10-dashboard-state{display:flex;max-width:720px;align-items:center;gap:17px;margin:clamp(20px,5vw,54px) auto;padding:24px;border:1px solid #d9e3f3;border-radius:22px;background:#fff;box-shadow:0 18px 48px rgba(27,43,75,.09);}
.fe10-dashboard-state-icon{position:relative;display:inline-flex;width:54px;height:54px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:17px;background:#edf3ff;color:#2f66e8;}
.fe10-dashboard-state-icon::before{content:"";width:18px;height:15px;border:1.8px solid currentColor;border-radius:4px;transform:translateY(4px);}
.fe10-dashboard-state-icon::after{content:"";position:absolute;width:11px;height:10px;top:12px;border:1.8px solid currentColor;border-bottom:0;border-radius:8px 8px 0 0;}
.fe10-dashboard-state h3{margin:0;color:#1b2940;font-size:20px;font-weight:650;}
.fe10-dashboard-state p{margin:6px 0 0;color:#627087;font-size:14px;line-height:1.6;}
.fe10-dashboard-state a{color:#2f66e8;font-weight:600;}

@media (max-width:900px){
  .fe10-dashboard-hero{grid-template-columns:1fr;gap:24px;}
  .fe10-dashboard-account{max-width:560px;}
  .fe10-dashboard-footer:has(.fe10-dashboard-portal){grid-template-columns:1fr;}
}
@media (max-width:780px){
  .fe10-auth-wrap{max-width:680px;padding-block:18px;}
  .fe10-auth-shell{grid-template-columns:1fr;min-height:0;border-radius:24px;}
  .fe10-auth-intro{min-height:240px;padding:34px 32px;}
  .fe10-auth-title{font-size:clamp(31px,8vw,43px);}
  .fe10-auth-lead{margin-top:13px;font-size:16px;line-height:1.6;}
  .fe10-auth-eyebrow{margin-bottom:18px;}
  .fe10-auth-trust{margin-top:23px;}
  .fe10-auth-panel{padding:34px 32px 38px;}
  .fe10-dashboard-shell{border-radius:23px;}
  .fe10-dashboard-hero{padding:31px;}
  .fe10-dashboard-main{padding:29px;}
  .fe10-dashboard-footer{padding:18px 29px;}
  .fe10-full-grid{grid-template-columns:1fr;}
}

@media (max-width:520px){
  .fe10-wrap{--fe10-wrap-pad:12px;}
  .fe10-auth-wrap{padding-block:8px;}
  .fe10-auth-shell{border-radius:19px;box-shadow:0 16px 40px rgba(29,45,84,.12);}
  .fe10-auth-intro{min-height:210px;padding:28px 23px;}
  .fe10-auth-eyebrow{gap:8px;margin-bottom:16px;font-size:11px;}
  .fe10-auth-mark{width:31px;height:31px;border-radius:10px;}
  .fe10-auth-title{font-size:31px;line-height:1.1;}
  .fe10-auth-lead{font-size:15px;}
  .fe10-auth-trust{display:none;}
  .fe10-auth-panel{padding:28px 22px 30px;}
  .fe10-auth-panel-heading{margin-bottom:21px;}
  .fe10-auth-panel-heading h2{font-size:24px;}
  .fe10-auth-options{align-items:flex-start;flex-direction:column;gap:12px;}
  .fe10-field input[type="text"],.fe10-field input[type="password"]{min-height:50px;}
  .fe10-js .fe10-password-control input{padding-right:55px;}
  .fe10-js .fe10-password-toggle{right:6px;width:42px;justify-content:center;padding-inline:8px;}
  .fe10-password-toggle-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
  .fe10-account-card strong{font-size:13px;}
  .fe10-card,.fe10-form,.fe10-login-hero,.fe10-section-card{padding:16px;}
  .fe10-dash-title{font-size:26px;}
  .fe10-section-title{font-size:20px;}
  .fe10-dashboard{padding-block:5px;}
  .fe10-dashboard-shell{border-radius:18px;box-shadow:0 16px 42px rgba(27,43,75,.1);}
  .fe10-dashboard-hero{padding:25px 21px;}
  .fe10-dash-title{font-size:30px;}
  .fe10-dash-intro{margin-top:12px;font-size:14px;line-height:1.65;}
  .fe10-dashboard-account{padding:14px;border-radius:16px;}
  .fe10-dashboard-avatar{width:41px;height:41px;border-radius:13px;}
  .fe10-dashboard-main{padding:23px 18px;}
  .fe10-dashboard-section-heading{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:17px;}
  .fe10-dashboard-section-heading h3{font-size:23px;}
  .fe10-product-grid{grid-template-columns:1fr;gap:14px;}
  .fe10-product-card{min-height:270px;padding:18px;border-radius:18px;}
  .fe10-product-card-copy h3{font-size:21px;}
  .fe10-content-link{grid-template-columns:auto minmax(0,1fr) auto;min-height:66px;padding:10px 11px;}
  .fe10-content-icon{width:38px;height:38px;border-radius:12px;}
  .fe10-content-action>span:first-child{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
  .fe10-content-copy strong{font-size:13px;}
  .fe10-full-card{padding:17px;border-radius:18px;}
  .fe10-full-card-header{grid-template-columns:auto minmax(0,1fr);}
  .fe10-full-card-header>.fe10-product-ready{grid-column:1/-1;justify-self:start;}
  .fe10-empty-state{align-items:flex-start;padding:18px;}
  .fe10-empty-icon{width:46px;height:46px;border-radius:15px;}
  .fe10-dashboard-footer{padding:17px 18px;}
  .fe10-dashboard-help{align-items:flex-start;}
  .fe10-dashboard-portal small{white-space:normal;}
  .fe10-dashboard-state{align-items:flex-start;padding:19px;border-radius:18px;}
  .fe10-dashboard-state-icon{width:47px;height:47px;border-radius:15px;}
}

@media (prefers-reduced-motion:reduce){
  .fe10-wrap *{scroll-behavior:auto;transition:none;animation:none;}
}
/* Keep specificity low so themes such as Divi can override deliberately. */

/* FE10 Membership Gate 2.10.0 — Clean Learning Experience */
body.fe10-learning-experience{
  --fe10-learning-ink:#172033;
  --fe10-learning-muted:#667085;
  --fe10-learning-border:#dfe6f2;
  --fe10-learning-soft:#f7f9fd;
  --fe10-learning-primary:#5b5ceb;
  --fe10-learning-primary-soft:#f0efff;
  --fe10-learning-success:#15835d;
  background:#f7f9fc;
}
body.fe10-learning-experience #main-content{background:#f7f9fc;}
body.fe10-learning-experience #main-content .container:before{display:none!important;}
body.fe10-learning-experience #left-area{width:100%!important;padding-right:0!important;float:none!important;}
body.fe10-learning-experience #sidebar{display:none!important;}
body.fe10-learning-experience .et_post_meta_wrapper>h1.entry-title,
body.fe10-learning-experience .et_post_meta_wrapper>.post-meta,
body.fe10-learning-experience article>.post-meta,
body.fe10-learning-experience .entry-meta,
body.fe10-learning-experience .comments-number{display:none!important;}
body.fe10-learning-experience article.et_pb_post{margin-bottom:0;}
body.fe10-learning-experience .entry-content{padding-bottom:clamp(28px,5vw,64px);}
body.fe10-learning-experience .fe10-learning-hero,
body.fe10-learning-experience .fe10-learning-content,
body.fe10-learning-experience .fe10-learning-discussion{box-sizing:border-box;width:min(100% - 32px,1120px);margin-left:auto;margin-right:auto;}

.fe10-learning-hero{margin-top:clamp(16px,2.4vw,30px);margin-bottom:22px;padding:clamp(20px,2.7vw,30px);border:1px solid var(--fe10-learning-border);border-radius:22px;background:linear-gradient(145deg,#fff 0%,#f5f6ff 62%,#eef7ff 100%);box-shadow:0 14px 38px rgba(31,41,55,.07);color:var(--fe10-learning-ink);}
.fe10-learning-back-link{display:inline-flex;min-height:36px;align-items:center;gap:8px;margin:0 0 13px;padding:7px 12px;border:1px solid #cbd5ff;border-radius:11px;background:#eef2ff;color:#3047a7!important;box-shadow:0 5px 14px rgba(79,70,229,.09);font-size:12px;font-weight:750;line-height:1.2;text-decoration:none!important;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease;}
.fe10-learning-back-link>span:first-child{display:inline-flex;width:21px;height:21px;align-items:center;justify-content:center;border-radius:7px;background:#fff;color:#4f46e5;font-size:13px;font-weight:800;box-shadow:0 2px 7px rgba(79,70,229,.10);}
.fe10-learning-back-link:hover{border-color:#aebdff;background:#e5eaff;color:#253f9d!important;box-shadow:0 7px 17px rgba(79,70,229,.13);transform:translateY(-1px);}
.fe10-learning-back-link:focus-visible{outline:3px solid rgba(79,70,229,.20);outline-offset:2px;}
.fe10-learning-back-short{display:none;}
.fe10-learning-eyebrow{margin-bottom:7px;color:#4f46e5;font-size:11px;font-weight:800;letter-spacing:.105em;text-transform:uppercase;}
.fe10-learning-title{margin:0!important;max-width:1000px;color:var(--fe10-learning-ink)!important;font-size:clamp(27px,3.5vw,39px)!important;font-weight:750!important;line-height:1.1!important;letter-spacing:-.03em!important;}
.fe10-learning-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px;}
.fe10-learning-meta span{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border:1px solid #d8dff0;border-radius:999px;background:rgba(255,255,255,.86);color:#43506a;font-size:11px;font-weight:700;}
.fe10-learning-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px;padding-top:15px;border-top:1px solid rgba(91,92,235,.14);}
.fe10-learning-path span{display:flex;align-items:center;gap:8px;min-width:0;color:#536078;font-size:12px;font-weight:650;}
.fe10-learning-path b{display:inline-flex;width:25px;height:25px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:8px;background:var(--fe10-learning-primary-soft);color:#5149d8;font-size:11px;}
.fe10-learning-content{color:var(--fe10-learning-ink);}
.fe10-learning-step-heading{display:flex;align-items:center;gap:13px;margin:30px 0 14px;padding:0 2px;color:var(--fe10-learning-ink);}
.fe10-learning-step-heading>span{display:inline-flex;width:38px;height:38px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:12px;background:#ebeaff;color:#5149d8;font-size:15px;font-weight:800;box-shadow:inset 0 0 0 1px rgba(91,92,235,.1);}
.fe10-learning-step-heading small{display:block;margin-bottom:2px;color:#778198;font-size:11px;font-weight:750;letter-spacing:.055em;text-transform:uppercase;}
.fe10-learning-step-heading h2{margin:0!important;color:var(--fe10-learning-ink)!important;font-size:clamp(21px,3vw,27px)!important;font-weight:730!important;letter-spacing:-.02em!important;line-height:1.2!important;}
.fe10-learning-content>.fe10sp,
.fe10-learning-content>.oe-app-root,
.fe10-learning-content>.fe10-preview-locked-practice{margin-bottom:34px!important;}
body.fe10-learning-experience .fe10-preview-locked-practice{border-color:#dfe3f2!important;border-radius:20px!important;box-shadow:0 12px 30px rgba(28,39,67,.055);}
.fe10-preview-cta-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px;}
.fe10-preview-cta-primary,.fe10-preview-cta-secondary{display:inline-flex;min-height:42px;align-items:center;justify-content:center;padding:9px 15px;border-radius:11px;font-size:13px;font-weight:700;text-decoration:none!important;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;}
.fe10-preview-cta-primary{border:1px solid #5b5ceb;background:#5b5ceb;color:#fff!important;box-shadow:0 8px 18px rgba(91,92,235,.17);}
.fe10-preview-cta-primary:hover{transform:translateY(-1px);background:#4f50db;color:#fff!important;}
.fe10-preview-cta-secondary{border:1px solid #cfd6e5;background:#fff;color:#34425a!important;}
.fe10-preview-cta-secondary:hover{transform:translateY(-1px);background:#f8faff;color:#26344a!important;}

/* Member Questions & Discussion */
.fe10-learning-discussion{margin-top:34px;margin-bottom:42px;padding:clamp(22px,4vw,34px);border:1px solid var(--fe10-learning-border);border-radius:24px;background:#fff;box-shadow:0 16px 42px rgba(31,41,55,.065);color:var(--fe10-learning-ink);}
.fe10-learning-discussion .fe10-learning-step-heading{margin-top:0;}
.fe10-learning-discussion-intro{max-width:760px;margin:0 0 22px;color:var(--fe10-learning-muted);font-size:15px;line-height:1.7;}
.fe10-discussion-empty{display:flex;flex-direction:column;gap:3px;margin:16px 0 24px;padding:18px;border:1px dashed #cbd5e1;border-radius:16px;background:#fafcff;color:#68758b;}
.fe10-discussion-empty strong{color:#344054;font-size:14px;}
.fe10-discussion-list,.fe10-discussion-list .children{list-style:none!important;margin:0!important;padding:0!important;}
.fe10-discussion-list>.comment{margin-bottom:14px;}
.fe10-discussion-list .children{margin:12px 0 0 44px!important;}
.fe10-discussion-comment-card{padding:17px 18px;border:1px solid #e1e7f0;border-radius:17px;background:#fbfcff;}
.fe10-discussion-comment.is-instructor>.fe10-discussion-comment-card{border-color:#d7d4ff;background:#f8f7ff;box-shadow:inset 3px 0 0 #6c63ff;}
.fe10-discussion-comment-head{display:flex;align-items:center;gap:11px;margin-bottom:12px;}
.fe10-discussion-avatar img{display:block;border-radius:12px;}
.fe10-discussion-author{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:6px 9px;}
.fe10-discussion-author strong{color:#28364d;font-size:14px;}
.fe10-discussion-author span{padding:3px 7px;border-radius:999px;background:#eae8ff;color:#5149d8;font-size:10px;font-weight:800;letter-spacing:.035em;text-transform:uppercase;}
.fe10-discussion-author small{width:100%;color:#8a94a6;font-size:11px;}
.fe10-discussion-comment-text{color:#344054;font-size:14px;line-height:1.7;}
.fe10-discussion-comment-text p:last-child{margin-bottom:0;}
.fe10-discussion-comment-actions{margin-top:10px;}
.fe10-discussion-comment-actions a{color:#5851d8;font-size:12px;font-weight:750;text-decoration:none;}
.fe10-comment-moderation{margin:0 0 10px;padding:8px 10px;border-radius:10px;background:#fff8e7;color:#8a5b12;font-size:12px;}
.fe10-discussion-form-wrap{margin-top:24px;padding-top:23px;border-top:1px solid #e6eaf1;}
.fe10-discussion-form-title{margin:0 0 16px!important;color:#25334a!important;font-size:20px!important;font-weight:720!important;}
.fe10-discussion-form-wrap .comment-form-comment{margin:0;}
.fe10-discussion-form-wrap label{display:block;margin-bottom:7px;color:#35445c;font-size:13px;font-weight:700;}
.fe10-discussion-form-wrap textarea{box-sizing:border-box;width:100%;min-height:126px;padding:13px 14px;border:1px solid #ccd6e5;border-radius:14px;outline:none;background:#fbfcff;color:#1f2937;font:inherit;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;}
.fe10-discussion-form-wrap textarea:focus{border-color:#7770e8;background:#fff;box-shadow:0 0 0 4px rgba(91,92,235,.11);}
.fe10-discussion-form-wrap .form-submit{margin:13px 0 0;}
.fe10-discussion-submit{min-height:44px;padding:10px 17px!important;border:1px solid #5b5ceb!important;border-radius:12px!important;background:#5b5ceb!important;color:#fff!important;font-size:13px!important;font-weight:750!important;cursor:pointer;}
.fe10-discussion-locked{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center;padding:18px;border:1px solid #dddff0;border-radius:17px;background:#f8f9fd;}
.fe10-discussion-lock{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:12px;background:#ececff;font-size:17px;}
.fe10-discussion-locked strong{display:block;color:#2e3a52;font-size:14px;}
.fe10-discussion-locked p{margin:4px 0 0;color:#6e798e;font-size:12px;line-height:1.55;}
.fe10-discussion-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;}
.fe10-discussion-login{display:inline-flex;min-height:40px;align-items:center;justify-content:center;padding:8px 13px;border-radius:11px;font-size:12px;font-weight:700;text-decoration:none!important;white-space:nowrap;}
.fe10-discussion-login.is-primary{border:1px solid #5b5ceb;background:#5b5ceb;color:#fff!important;}
.fe10-discussion-login.is-secondary{border:1px solid #cfd6e5;background:#fff;color:#34425a!important;}

/* Private feedback */
.fe10-learning-feedback{margin-top:22px;padding-top:18px;border-top:1px solid #e7ebf2;}
.fe10-learning-feedback summary{display:inline-flex;align-items:center;cursor:pointer;color:#58667d;font-size:12px;font-weight:700;}
.fe10-learning-feedback summary:hover{color:#5149d8;}
.fe10-feedback-form{display:grid;grid-template-columns:minmax(180px,.38fr) minmax(0,1fr);gap:13px;margin-top:15px;padding:16px;border:1px solid #e1e6ef;border-radius:15px;background:#fafcff;}
.fe10-feedback-form label{display:flex;flex-direction:column;gap:6px;color:#45536a;font-size:12px;font-weight:700;}
.fe10-feedback-form label:nth-of-type(2){grid-column:2;grid-row:1/span 2;}
.fe10-feedback-form select,.fe10-feedback-form textarea{box-sizing:border-box;width:100%;padding:10px 11px;border:1px solid #cfd8e6;border-radius:11px;background:#fff;color:#263449;font:inherit;font-size:13px;}
.fe10-feedback-form textarea{min-height:104px;resize:vertical;}
.fe10-feedback-form button{justify-self:start;min-height:39px;padding:8px 12px;border:1px solid #ccd5e5;border-radius:10px;background:#fff;color:#3c4a62;font-size:12px;font-weight:750;cursor:pointer;}
.fe10-feedback-form small{grid-column:1/-1;color:#7c8798;font-size:11px;}
.fe10-feedback-notice{margin-top:12px;padding:10px 12px;border-radius:11px;font-size:12px;font-weight:650;}
.fe10-feedback-notice.is-success{background:#edf9f4;color:#167250;}
.fe10-feedback-notice.is-error{background:#fff2f2;color:#a23c3c;}

@media (max-width:760px){
  .fe10-learning-path{grid-template-columns:1fr 1fr;}
  .fe10-discussion-locked{grid-template-columns:auto minmax(0,1fr);}
  .fe10-discussion-actions{grid-column:1/-1;width:100%;justify-content:stretch;}
  .fe10-discussion-login{flex:1 1 140px;justify-content:center;}
  .fe10-feedback-form{grid-template-columns:1fr;}
  .fe10-feedback-form label:nth-of-type(2){grid-column:auto;grid-row:auto;}
}
@media (max-width:520px){
  body.fe10-learning-experience .fe10-learning-hero,
  body.fe10-learning-experience .fe10-learning-content,
  body.fe10-learning-experience .fe10-learning-discussion{width:min(100% - 20px,1120px);}
  .fe10-learning-hero{padding:23px 19px;border-radius:20px;}
  .fe10-learning-title{font-size:27px!important;}
  .fe10-learning-path{display:flex;overflow-x:auto;gap:8px;margin-right:-5px;padding-bottom:3px;scrollbar-width:none;}
  .fe10-learning-path::-webkit-scrollbar{display:none;}
  .fe10-learning-path span{flex:0 0 auto;padding-right:7px;}
  .fe10-learning-discussion{padding:19px 16px;border-radius:19px;}
  .fe10-discussion-list .children{margin-left:20px!important;}
}


/* FE10 2.11.0 — Progress 2.0 */
.fe10-lesson-progress{max-width:none;margin:14px 0 0;padding:8px 10px;border:1px solid #dfe7f4;border-radius:12px;background:rgba(255,255,255,.86);box-shadow:none}
.fe10-lesson-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:5px;color:#66758c;font-size:11px;font-weight:700}
.fe10-lesson-progress[data-status="completed"] [data-fe10-progress-label]{color:#168255}.fe10-lesson-progress[data-status="in_progress"] [data-fe10-progress-label]{color:#315fb8}
.fe10-lesson-progress-track{height:5px;overflow:hidden;border-radius:999px;background:#e9eef7}
.fe10-continue-progress{height:7px;overflow:hidden;border-radius:999px;background:#e9eef7}.fe10-lesson-progress-track span,.fe10-continue-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#416fe5,#7658d6);transition:width .25s ease}
.fe10-learning-overview{margin:0 0 30px;padding:21px;border:1px solid #dce5f2;border-radius:22px;background:linear-gradient(145deg,#fbfdff,#f6f8ff);box-shadow:0 10px 28px rgba(23,37,66,.045)}
.fe10-progress-overview-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:16px}.fe10-progress-overview-head span{display:block;color:#6e7d92;font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.fe10-progress-overview-head h3{margin:3px 0 0;color:#1e2c43;font-size:21px}.fe10-progress-overview-head>a{color:#315fb8;font-size:12px;font-weight:700;text-decoration:none}
.fe10-progress-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:15px}.fe10-progress-stats>div{padding:12px;border:1px solid #e2e8f2;border-radius:14px;background:#fff}.fe10-progress-stats strong{display:block;color:#1d2c44;font-size:22px;line-height:1}.fe10-progress-stats span{display:block;margin-top:5px;color:#738096;font-size:10px;font-weight:650}
.fe10-continue-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:17px 18px;border:1px solid #cfdcf1;border-radius:17px;background:#fff}.fe10-continue-copy>span{color:#4266b1;font-size:10px;font-weight:750;letter-spacing:.075em;text-transform:uppercase}.fe10-continue-copy h4{margin:4px 0 8px;color:#1d2a40;font-size:17px}.fe10-continue-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:8px;color:#718096;font-size:10px;font-weight:650}.fe10-continue-card>a{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border-radius:12px;background:#315fca;color:#fff;font-size:12px;font-weight:700;text-decoration:none}.fe10-continue-card>a:hover{background:#2854ba}
.fe10-recent-completed{margin-top:15px;padding-top:14px;border-top:1px solid #e1e7f0}.fe10-recent-completed>strong{display:block;margin-bottom:8px;color:#536176;font-size:11px}.fe10-recent-completed>div{display:flex;flex-wrap:wrap;gap:7px}.fe10-recent-completed a{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:7px 9px;border:1px solid #dfe7f2;border-radius:11px;background:#fff;color:#34445c;font-size:10px;font-weight:650;text-decoration:none}.fe10-recent-completed a span{color:#168255}
.fe10-content-progress{display:flex;align-items:center;gap:8px;margin-top:5px;color:#7b8798;font-size:10px;font-weight:650}.fe10-content-status{padding:3px 7px;border-radius:999px;background:#edf1f7;color:#64748b}.fe10-content-status.is-in_progress{background:#edf3ff;color:#315fb8}.fe10-content-status.is-completed{background:#eaf8f0;color:#168255}
.fe10-lesson-navigation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;max-width:1080px;margin:24px auto 42px;padding:0 18px}.fe10-lesson-navigation>div:last-child{text-align:right}.fe10-lesson-nav-link{display:inline-flex;max-width:100%;flex-direction:column;gap:3px;padding:12px 14px;border:1px solid #dce5f2;border-radius:14px;background:#fff;color:#2b3a52;text-decoration:none;box-shadow:0 6px 18px rgba(24,39,69,.04)}.fe10-lesson-nav-link small{color:#78869a;font-size:9px;font-weight:750;letter-spacing:.07em;text-transform:uppercase}.fe10-lesson-nav-link strong{overflow:hidden;font-size:12px;line-height:1.35;text-overflow:ellipsis}.fe10-lesson-nav-link:hover{border-color:#b9cbe7;background:#fbfdff}
@media(max-width:680px){.fe10-progress-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.fe10-continue-card{grid-template-columns:1fr}.fe10-continue-card>a{justify-content:center}.fe10-lesson-navigation{grid-template-columns:1fr}.fe10-lesson-navigation>div:last-child{text-align:left}}

/* FE10 2.12.0 — My Vocabulary */
.fe10-vocabulary-panel{margin:0 0 30px;padding:21px;border:1px solid #dce5f2;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(23,37,66,.045)}
.fe10-vocabulary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.fe10-vocabulary-head>div:first-child>span{display:block;color:#6e7d92;font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.fe10-vocabulary-head h3{margin:3px 0 5px;color:#1e2c43;font-size:21px}.fe10-vocabulary-head p{margin:0;color:#748197;font-size:12px;line-height:1.55}.fe10-vocabulary-count{display:flex;min-width:66px;flex-direction:column;align-items:center;padding:10px 13px;border:1px solid #e1e7f2;border-radius:14px;background:#f8faff}.fe10-vocabulary-count strong{color:#315fb8;font-size:22px;line-height:1}.fe10-vocabulary-count span{margin-top:4px;color:#7b8798;font-size:9px;font-weight:700;text-transform:uppercase}
.fe10-vocabulary-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:9px;margin-bottom:13px}.fe10-vocabulary-toolbar input,.fe10-vocabulary-toolbar select{box-sizing:border-box;width:100%;min-height:39px;padding:8px 10px;border:1px solid #d5dfed;border-radius:11px;background:#fbfdff;color:#28384f;font:inherit;font-size:12px;outline:none}.fe10-vocabulary-toolbar input:focus,.fe10-vocabulary-toolbar select:focus{border-color:#7893dd;box-shadow:0 0 0 3px rgba(49,95,184,.09)}
.fe10-vocabulary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.fe10-vocab-card{display:flex;min-width:0;flex-direction:column;padding:14px;border:1px solid #e0e7f1;border-radius:15px;background:#fbfdff}.fe10-vocab-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.fe10-vocab-card-top strong{overflow-wrap:anywhere;color:#20304a;font-size:15px}.fe10-vocab-card-top span{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:#eef3ff;color:#315fb8;font-size:9px;font-weight:750;text-transform:uppercase}.fe10-vocab-definition{margin:9px 0 0;color:#4d5d73;font-size:12px;line-height:1.5}.fe10-vocab-example{margin:8px 0 0;color:#7a8798;font-size:11px;font-style:italic;line-height:1.45}.fe10-vocab-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:12px}.fe10-vocab-actions button{min-height:30px;padding:6px 8px;border:1px solid #d4deed;border-radius:9px;background:#fff;color:#40516b;font-size:10px;font-weight:700;cursor:pointer}.fe10-vocab-actions button:hover{border-color:#aebfdd;background:#f7f9ff}.fe10-vocab-actions button.is-remove{margin-left:auto;color:#a34747}.fe10-vocabulary-empty{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px;border:1px dashed #cad6e7;border-radius:14px;background:#fafcff;color:#6e7c91;font-size:12px}.fe10-vocabulary-empty strong{color:#33445d}.fe10-vocabulary-login{padding:16px;border:1px solid #dce5f2;border-radius:14px;background:#fff}
@media(max-width:860px){.fe10-vocabulary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.fe10-vocabulary-head{align-items:stretch;flex-direction:column}.fe10-vocabulary-count{align-self:flex-start}.fe10-vocabulary-toolbar{grid-template-columns:1fr}.fe10-vocabulary-grid{grid-template-columns:1fr}.fe10-vocabulary-empty{align-items:flex-start;flex-direction:column}}


/* FE10 Membership Gate 2.12.3 — Phase 6 RC5 mobile density polish */
@media (max-width:600px){
  /* Divi's default content width compounds with FE10's own inner width on phones. */
  body.fe10-learning-experience #main-content > .container{
    width:100%!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.fe10-learning-experience #main-content #content-area,
  body.fe10-learning-experience #main-content #left-area{
    width:100%!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.fe10-learning-experience .fe10-learning-hero,
  body.fe10-learning-experience .fe10-learning-content,
  body.fe10-learning-experience .fe10-learning-discussion{
    width:calc(100% - 12px);
  }
  .fe10-learning-hero{
    margin-top:7px;
    margin-bottom:12px;
    padding:14px 12px;
    border-radius:16px;
    box-shadow:0 8px 24px rgba(31,41,55,.055);
  }
  .fe10-learning-back-link{min-height:32px;margin-bottom:10px;padding:6px 9px;gap:6px;border-radius:9px;font-size:10.5px;}
  .fe10-learning-back-link>span:first-child{width:19px;height:19px;border-radius:6px;font-size:12px;}
  .fe10-learning-back-long{display:none;}
  .fe10-learning-back-short{display:inline;}
  .fe10-learning-eyebrow{margin-bottom:5px;font-size:9px;letter-spacing:.085em;}
  .fe10-learning-title{font-size:20px!important;line-height:1.14!important;letter-spacing:-.022em!important;font-weight:700!important;}
  .fe10-learning-meta{gap:5px;margin-top:10px;}
  .fe10-learning-meta span{min-height:24px;padding:4px 7px;font-size:9.5px;font-weight:650;}
  .fe10-lesson-progress{margin-top:10px;padding:7px 8px;border-radius:10px;}
  .fe10-lesson-progress>div:first-child{font-size:10px;margin-bottom:4px;}
  .fe10-lesson-progress-track{height:4px;}
  .fe10-learning-path{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    overflow:visible;
    gap:6px 8px;
    margin:10px 0 0;
    padding:10px 0 0;
  }
  .fe10-learning-path span{min-width:0;padding:0;font-size:10.5px;gap:6px;white-space:normal;line-height:1.25;}
  .fe10-learning-path b{width:22px;height:22px;border-radius:7px;font-size:10px;}
  .fe10-learning-step-heading{gap:9px;margin:18px 0 9px;padding:0 2px;}
  .fe10-learning-step-heading>span{width:30px;height:30px;border-radius:10px;font-size:12px;}
  .fe10-learning-step-heading small{margin-bottom:1px;font-size:8.5px;line-height:1.25;letter-spacing:.045em;}
  .fe10-learning-step-heading h2{font-size:19px!important;line-height:1.16!important;font-weight:700!important;}
  .fe10-learning-content>.fe10sp,
  .fe10-learning-content>.oe-app-root,
  .fe10-learning-content>.fe10-preview-locked-practice{margin-bottom:22px!important;}
  .fe10-learning-discussion{margin-top:22px;margin-bottom:28px;padding:15px 12px;border-radius:16px;}
  .fe10-learning-discussion-intro{margin-bottom:15px;font-size:13px;line-height:1.55;}

  /* Give the library back the horizontal space consumed by nested cards/gutters. */
  .fe10-wrap{--fe10-wrap-pad:6px;}
  .fe10-dashboard-main{padding:12px 7px;}
  .fe10-dashboard-shell{border-radius:14px;}
  .fe10-full-card:has(.fe10-resource-hub-frame){padding:5px;border-radius:14px;}
  .fe10-resource-hub-frame{width:100%;min-width:0;}
}
