@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&family=Inter:wght@400;500;600;700;800&display=swap');
:root{--navy:#0d2a48;--navy2:#05172b;--blue:#153c60;--gold:#e7bd71;--border:#d8e2ec;--muted:#688097;--paper:#f3f6fa;--text:#112b46}*{box-sizing:border-box}body{margin:0;font:14px/1.55 Inter,Arial,sans-serif;color:var(--text);background:var(--paper)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1190px,calc(100% - 36px));margin:auto}.brand img{max-width:160px;max-height:70px;object-fit:contain}.top-nav{background:#06192c;border-bottom:2px solid #b78b43}.top-nav .nav-inner{min-height:77px;display:flex;align-items:center;gap:18px}.top-nav .btn{margin-left:8px}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #d8b061;background:var(--gold);color:#10213a;font-weight:800;padding:11px 18px;border-radius:7px;transition:.18s}.btn:hover{filter:brightness(1.07)}.btn.outline{background:transparent;color:#fff}.btn.dark{background:#103859;color:#fff;border-color:#103859}.btn.light{background:#fff;color:#14324f}.btn.sm{padding:8px 12px;font-size:12px}.btn.wide{width:100%}.eyebrow{color:#a27028;font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:800}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;line-height:1.13;margin:.2em 0 .6em}h1{font-size:46px}h2{font-size:30px}h3{font-size:23px}p{margin:0 0 14px}.form-page{padding:50px 0 80px}.form-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,.85fr);gap:20px;align-items:start}.panel{background:white;border:1px solid #dae4ee;border-radius:14px;padding:26px;box-shadow:0 12px 35px rgba(8,31,54,.055)}.field{display:flex;flex-direction:column;gap:7px;margin:15px 0}.field label,.app-form label{font-size:12px;color:#405a73;font-weight:750}.field input,.field select,.field textarea,.codes input,.app-form input,.app-form select,.app-form textarea{background:#fff;color:#102b49;border:1px solid #c5d4e3;padding:12px 13px;border-radius:8px;width:100%;outline:none;min-width:0}.field input:focus,.field select:focus,.field textarea:focus,.codes input:focus{border-color:#c49246;box-shadow:0 0 0 3px #c4924622}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.segment{display:flex;gap:8px}.segment button{flex:1;background:#eef3f8;border:1px solid #cfdae4;border-radius:7px;padding:11px 7px;font-weight:750}.segment button.active{background:#153959;color:white;border-color:#d1a452}.note{padding:13px 15px;border:1px solid #e7d6b2;background:#fcf8ef;color:#684c25;border-radius:8px;font-size:12px;line-height:1.6;margin:10px 0}.checkline{display:flex;gap:8px;align-items:flex-start;font-size:12px;line-height:1.6;margin:14px 0}.checkline input{margin-top:4px;flex-shrink:0}.codes{display:flex;gap:8px}.codes input{flex:1}.summary{position:sticky;top:18px}.summary-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #ebf0f5}.summary-total{font:700 39px/1 'Cormorant Garamond',Georgia,serif;margin:10px 0;color:#1c624c}.divider{height:1px;background:#dce4ec;margin:20px 0}.muted{color:#6c8197}.hidden{display:none!important}.action-bar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:20px}.invoice-card,.data-row{padding:12px 0;border-bottom:1px solid #e2e8ef}.invoice-card strong{color:#103652}.invoice-card small{color:#62788d}.invoice-card .note{margin-top:8px}.preview-notice{background:#fff6dd;color:#755218;padding:9px 15px;font-size:12px;text-align:center;border-bottom:1px solid #e6cf95}
/* Portal */body[data-page=portal]{background:#06192e;color:#e9f2fc}.app-shell{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,#031326,#0d2847);border-right:1px solid #2b4966;padding:22px 13px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar .brand{display:flex;justify-content:center;padding:5px 0 18px}.side-nav{display:grid;gap:4px}.side-nav button{display:flex;gap:12px;align-items:center;text-align:left;border:1px solid transparent;background:none;padding:11px 12px;color:#d5e2ef;border-radius:8px;font-size:13px}.side-nav button span{font-size:18px;color:#e9c478;width:22px;text-align:center}.side-nav button:hover,.side-nav button.active{background:#173c5f;color:#fff;border-color:#9b7940}.app-main{padding:22px 23px 60px;min-width:0}.app-top{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #294662;margin-bottom:21px;padding-bottom:14px}.app-top h1{font-size:35px;color:#fff}.app-top .eyebrow{color:#e6bc70}.only-screen{display:none}.only-screen.active{display:block}.dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:15px}.dashboard-card,.app-workspace{background:linear-gradient(140deg,#0e2b49,#102e4d 65%,#071b31);border:1px solid #2e506d;border-radius:12px;padding:20px;color:#e8f2fc;min-width:0}.dashboard-card h2,.app-workspace h2{font-size:27px;color:#fff}.dashboard-card p,.app-workspace p{color:#b6c8d8}.dash-hero{background:linear-gradient(100deg,#143658bb,#0d284bde),url('../images/executive-trading-desk.webp') center/cover}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-6{grid-column:span 6}.span-7{grid-column:span 7}.span-8{grid-column:span 8}.span-12{grid-column:span 12}.dashboard-card .eyebrow,.app-workspace .eyebrow{color:#e4bd77}.dashboard-card .btn.outline,.app-workspace .btn.outline{border-color:#a98a50;color:#f2d18d}.kpis{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;margin:12px 0}.kpi strong{display:block;font-size:21px;color:#f3c879}.kpi small{font-size:11px;color:#b3c2d1}.progress{background:#2c4963;border-radius:20px;height:8px;overflow:hidden;margin:15px 0}.progress>div{background:linear-gradient(90deg,#aa813e,#f1d18b);height:100%;transition:width .3s}.fake-market{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:14px 0}.market-item{background:#071a30;border:1px solid #2e5270;border-radius:7px;padding:13px 10px;min-height:82px}.market-item strong{display:block}.market-item small{color:#68d7a4}.data-row{display:flex;justify-content:space-between;align-items:center;color:#e8f0fa;border-color:#2a4e6d;gap:12px}.app-workspace{max-width:1100px;min-height:300px}.banner{background:#153c61;border:1px solid #3a5c79;padding:18px;border-radius:8px;margin-bottom:18px}.app-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:860px}.app-form>div{display:grid;gap:5px}.app-form textarea{min-height:100px}.app-workspace .field input,.app-workspace .app-form input,.app-workspace .app-form textarea,.app-workspace .app-form select{background:#071e36;color:#fff;border-color:#45607a}.app-workspace input::placeholder,.app-workspace textarea::placeholder{color:#a4b6c9}.app-workspace .btn{margin-top:10px}.app-workspace .note{color:#734b16}.app-workspace .panel{background:#122f4b;color:#fff}.cert-tile{background:#102b47;border:1px solid #55728a;border-radius:10px;padding:19px}.cert-tile h3{color:#fff}.portal-item{background:#102b47;border:1px solid #3c5572;padding:13px;margin:9px 0;border-radius:8px}.portal-item p{font-size:13px}.portal-item button{margin-top:7px}.app-workspace .muted,.dashboard-card .muted{color:#b1c2d1}body[data-page=portal] .btn.outline{color:#f5d18d}.app-workspace .note{background:#f9f3e7}
@media(max-width:1000px){.app-shell{grid-template-columns:205px 1fr}.span-4,.span-5,.span-6,.span-7,.span-8{grid-column:span 12}.form-layout{grid-template-columns:1fr}.summary{position:static}}@media(max-width:680px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.side-nav{grid-template-columns:repeat(2,1fr)}.app-main{padding:17px 12px}.app-top{flex-wrap:wrap}.form-grid,.app-form{grid-template-columns:1fr}.segment{flex-wrap:wrap}.fake-market{grid-template-columns:1fr}.codes{flex-wrap:wrap}}

/* V3: solo-first enrollment, optional friend invitation */
.invite-feature{margin:19px 0 15px;padding:19px;border-radius:12px;border:1px solid #d8e2ec;background:linear-gradient(135deg,#f8fbff,#fff)}
.invite-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.invite-heading strong{font-size:15px;color:#163a5a}.invite-heading p{font-size:12px;color:#587089;line-height:1.55;margin:5px 0 0;max-width:500px}.invite-tag{white-space:nowrap;border-radius:25px;color:#77501c;background:#fcecc8;padding:6px 10px;font-weight:800;font-size:11px}.invite-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:15px}.invite-actions button{padding:12px 16px}.invite-caption{color:#637b91;font-size:12px}.invite-savings-detail{font-size:12px;color:#57718a;margin-top:10px}.additional-student-card{border:1px solid #dbe5ee;background:#f8fbff;border-radius:10px;padding:17px 18px;margin:18px 0}.added-student-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.added-student-top h3{font-size:21px;margin:0}.remove-friend{border:0;background:transparent;color:#9b3c2b;font-size:12px;font-weight:800;padding:6px;cursor:pointer}.remove-friend:hover{text-decoration:underline}@media(max-width:680px){.invite-heading{flex-wrap:wrap}.invite-actions button{width:100%}}
