:root{color:#13233f;font-synthesis:none;text-rendering:optimizelegibility;--navy:#031a36;--navy-light:#062850;--blue:#087cff;--blue-light:#39a3ff;--text:#13233f;--muted:#65758f;--border:#dce8f7;--background:#f5f9ff;--card:#fff;background:#f5f9ff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);min-width:320px;min-height:100vh;color:var(--text);margin:0}body,button,input{font-family:inherit}a{text-decoration:none}button{cursor:pointer}.app-shell{background:#f5f9ff;min-height:100vh}.topbar{z-index:100;background:#02162f;border-bottom:1px solid #ffffff14;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:30px;width:min(1180px,100% - 40px);min-height:72px;margin:0 auto;display:flex}.brand{flex-shrink:0;align-items:center;gap:10px;display:flex}.brand-icon{color:#1689ff;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;font-size:24px;display:flex}.brand-text{flex-direction:column;line-height:1.05;display:flex}.brand-text strong{color:#1689ff;letter-spacing:.03em;font-size:20px}.brand-text span{color:#fff;letter-spacing:.15em;margin-top:3px;font-size:12px}.main-nav{align-items:center;gap:28px;display:flex}.main-nav a{color:#d9e4f3;border-bottom:2px solid #0000;padding:26px 0 20px;font-size:14px;font-weight:500;transition:all .2s}.main-nav a:hover{color:#fff}.main-nav a.active{color:#42a7ff;border-bottom-color:#42a7ff}.user-menu{color:#fff;align-items:center;gap:10px;font-size:13px;display:flex}.user-avatar{background:linear-gradient(135deg,#1589ff,#0063e6);border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.signout-button{color:#fff;box-shadow:none;background:0 0;border:1px solid #fff3;border-radius:8px;padding:8px 13px}.signout-button:hover{background:#1689ff1f;border-color:#1689ff;transform:none}.builder-hero{color:#fff;background:radial-gradient(circle at 80% 40%,#0080ff59,#0000 28%),radial-gradient(circle at 65% 20%,#004fb82e,#0000 30%),linear-gradient(135deg,#031a37 0%,#00152f 60%,#021b3e 100%);overflow:hidden}.hero-inner{grid-template-columns:1.1fr .9fr;align-items:center;gap:50px;width:min(1180px,100% - 40px);min-height:330px;margin:0 auto;padding:48px 0;display:grid}.eyebrow{color:#78bbff;letter-spacing:.12em;margin-bottom:12px;font-size:13px;font-weight:700}.hero-copy h1{color:#fff;letter-spacing:-.04em;margin:0 0 10px;font-size:clamp(2.6rem,5vw,4.2rem)}.hero-copy h2{color:#a9ceff;margin:0 0 15px;font-size:clamp(1.2rem,2.3vw,1.65rem);line-height:1.35}.hero-copy>p{color:#cfdbeb;max-width:620px;font-size:16px;line-height:1.7}.hero-features{flex-wrap:wrap;gap:30px;margin-top:25px;display:flex}.hero-features span{color:#f1f7ff;font-size:14px}.hero-visual{justify-content:center;align-items:center;gap:22px;min-height:240px;display:flex;position:relative}.visual-card{border-radius:16px;justify-content:center;align-items:center;width:105px;height:135px;font-size:26px;font-weight:800;display:flex;box-shadow:0 20px 45px #00000059}.pdf-card{color:#e62c35;background:linear-gradient(150deg,#fff,#dbeaff);border:1px solid #fff6;transform:rotate(5deg)}.ai-card{color:#fff;background:radial-gradient(circle,#0e8fff,#0056c9);border-radius:50%;width:110px;height:110px;box-shadow:0 0 45px #1691ffbf}.visual-arrow{color:#75c5ff;font-size:40px}.visual-output{flex-direction:column;gap:10px;display:flex}.visual-output span{color:#fff;background:#0954b1a6;border:1px solid #40a4ff80;border-radius:9px;width:145px;padding:10px 14px;font-size:13px;box-shadow:0 8px 18px #0003}.page-content{width:min(1180px,100% - 40px);margin:0 auto;padding:22px 0 50px}.steps-card{background:linear-gradient(90deg,#f8fbff,#edf6ff);border:1px solid #dce9f7;border-radius:14px;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:18px;margin-bottom:20px;padding:16px 22px;display:grid;box-shadow:0 8px 24px #18477c0f}.step{opacity:.55;align-items:center;gap:14px;display:flex}.active-step{opacity:1}.step-number{color:#183354;background:#e4ecf5;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-weight:700;display:flex}.active-step .step-number{color:#fff;background:linear-gradient(135deg,#168bff,#0067ed);box-shadow:0 7px 18px #0077ff40}.step strong{color:#0d2a4e;margin-bottom:3px;display:block}.step span{color:#647892;font-size:12px;display:block}.step-arrow{color:#adc5df;font-size:25px}.dashboard-grid{grid-template-columns:minmax(0,2fr) minmax(250px,.8fr);gap:18px;display:grid}.dashboard-main,.dashboard-sidebar{flex-direction:column;gap:18px;display:flex}.dashboard-card,.side-card{background:#fff;border:1px solid #dce8f6;border-radius:14px;padding:22px;box-shadow:0 8px 25px #1c46760e}.card-heading{align-items:center;gap:12px;margin-bottom:18px;display:flex}.card-icon{color:#0c7dff;background:#e9f4ff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:21px;display:flex}.card-heading h2{color:#0d294c;margin:0;font-size:19px}.card-heading p{color:#76869b;margin:3px 0 0;font-size:13px}.upload-zone{text-align:center;background:linear-gradient(#fff,#fafdff);border:1.5px dashed #9fc8f3;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;min-height:260px;padding:26px;display:flex}.upload-symbol{color:#087cff;background:#e7f3ff;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:8px;font-size:24px;display:flex}.upload-zone h3{color:#15355c;margin:6px 0}.upload-zone>p{color:#72849b;margin:5px 0 18px}input[type=file]{color:#62738a;background:#fff;border:1px solid #cfdff0;border-radius:9px;width:min(100%,520px);margin-bottom:14px;padding:10px}input[type=file]::file-selector-button{color:#fff;cursor:pointer;background:#0a7cff;border:none;border-radius:7px;margin-right:12px;padding:8px 13px;font-weight:600}.upload-zone button{color:#fff;background:linear-gradient(135deg,#1189ff,#0068ed);border:none;border-radius:9px;padding:11px 25px;font-weight:700;box-shadow:0 8px 18px #0070ff38}.upload-zone button:disabled{opacity:.45;cursor:not-allowed}.selected-file{color:#566b87;margin-bottom:12px;font-size:13px}.status-text{color:#1f6fcf;margin-top:14px;font-weight:600}.processing-area{padding-top:5px}.processing-area>span,.processing-area>strong{color:#536985;font-size:14px}.progress-track{background:#e7eef6;border-radius:999px;width:100%;height:9px;margin-top:18px;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg,#1087ff,#2f9fff);height:100%;transition:width .5s}.empty-exercises{text-align:center;color:#8190a4;background:#fbfdff;border:1px dashed #cbdced;border-radius:11px;padding:30px}.exercise-section+.exercise-section{margin-top:28px}.exercise-title-row{justify-content:space-between;align-items:center;gap:15px;margin-bottom:12px;display:flex}.exercise-title-row h3{color:#0d2b50;margin:0}.exercise-badge{color:#0b76e7;background:#e6f3ff;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.question-card{background:linear-gradient(#fff,#fbfdff);border:1px solid #d8e5f3;border-radius:12px;margin-bottom:15px;padding:20px}.question-number{color:#107eea;margin-bottom:9px;font-size:12px;font-weight:700}.question-card h4{color:#142d50;margin:0 0 15px;font-size:16px;line-height:1.5}.options-list{flex-direction:column;gap:9px;display:flex}.option-row{color:#334a68;cursor:pointer;border:1px solid #d5e1ee;border-radius:9px;align-items:center;gap:10px;padding:11px 13px;transition:all .15s;display:flex}.option-row:hover{background:#f3f9ff;border-color:#318eff}input[type=radio]{accent-color:#087cff}input[type=text]{color:#263c59;border:1px solid #cedcec;border-radius:9px;outline:none;width:100%;padding:12px 14px}input[type=text]:focus{border-color:#1688ff;box-shadow:0 0 0 3px #1688ff1f}.side-card h3{color:#102d52;margin:0 0 17px;font-size:17px}.side-card p{color:#62758d;margin:10px 0;font-size:13px;line-height:1.6}.mini-step{color:#526882;align-items:center;gap:10px;margin-bottom:14px;font-size:13px;display:flex}.mini-step span{color:#087cff;background:#e5f2ff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-weight:700;display:flex}.quote-card{flex-direction:column;justify-content:center;min-height:170px;display:flex}.quote-mark{color:#168cff;font-size:48px;line-height:.8}.quote-card p{color:#162f52;font-size:18px;font-style:italic;line-height:1.55}.site-footer{color:#fff;background:linear-gradient(135deg,#02172f,#001326)}.footer-inner{grid-template-columns:1.5fr 1fr 1fr;gap:50px;width:min(1180px,100% - 40px);margin:0 auto;padding:38px 0;display:grid}.footer-brand p,.footer-contact p{color:#9dafc4;font-size:13px;line-height:1.6}.footer-links{flex-direction:column;gap:9px;display:flex}.footer-links h4,.footer-contact h4{color:#fff;margin:0 0 12px}.footer-links a{color:#aabbd0;font-size:13px}.footer-links a:hover{color:#3aa5ff}.footer-bottom{color:#8296ae;border-top:1px solid #ffffff14;width:min(1180px,100% - 40px);margin:0 auto;padding:18px 0 24px;font-size:12px}.login-page{background:radial-gradient(circle at 50% 20%,#073665,#0000 40%),#02162f;justify-content:center;align-items:center;min-height:100vh;padding:25px;display:flex}.login-card{text-align:center;background:#fff;border-radius:18px;width:min(430px,100%);padding:34px;box-shadow:0 25px 60px #0000004d}.login-card .brand{justify-content:center;margin-bottom:25px}.login-card .brand-icon{border-color:#0b315f}.login-card .brand span{color:#102a4a}.login-card h1{color:#102b4f;margin-bottom:10px}.login-card p{color:#708097;line-height:1.6}.login-card button{color:#fff;background:linear-gradient(135deg,#148cff,#0069ec);border:none;border-radius:9px;margin-top:12px;padding:12px 24px;font-weight:700}.loading-screen{justify-content:center;align-items:center;min-height:100vh;display:flex}@media (width<=1000px){.main-nav{display:none}.hero-inner{grid-template-columns:1fr}.hero-visual{display:none}.dashboard-grid{grid-template-columns:1fr}.dashboard-sidebar{grid-template-columns:repeat(3,1fr);display:grid}}@media (width<=750px){.topbar-inner{width:calc(100% - 24px);min-height:65px}.user-menu>span{display:none}.brand-text strong{font-size:17px}.hero-inner{width:calc(100% - 28px);min-height:auto;padding:38px 0}.hero-copy h1{font-size:2.6rem}.hero-features{gap:14px}.page-content{width:calc(100% - 20px)}.steps-card{grid-template-columns:1fr;gap:14px}.step-arrow{display:none}.dashboard-sidebar{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr;gap:28px;width:calc(100% - 30px)}.footer-bottom{width:calc(100% - 30px)}.upload-zone{padding:18px}}
