
:root{--fm-blue:#0b63ce;--fm-blue2:#1684ed;--fm-navy:#10233f;--fm-text:#172033;--fm-muted:#64748b;--fm-line:#dce7f3;--fm-soft:#f5f9ff;--fm-green:#16a36a}
.fmlms-auth-app,.fmlms-auth-success-page{max-width:1180px;margin:36px auto;display:grid;grid-template-columns:minmax(340px,.95fr) minmax(440px,1.05fr);background:#fff;border:1px solid var(--fm-line);border-radius:28px;overflow:hidden;box-shadow:0 28px 80px rgba(15,35,65,.14);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--fm-text)}
.fmlms-auth-app *,.fmlms-auth-success-page *{box-sizing:border-box}
.fmlms-auth-hero,.fmlms-success-aside{position:relative;display:flex;flex-direction:column;min-height:690px;padding:34px;color:#fff;background:radial-gradient(circle at 85% 16%,rgba(73,183,255,.36),transparent 26%),linear-gradient(145deg,#092f61 0%,#0b63ce 58%,#1684ed 100%);overflow:hidden}
.fmlms-auth-hero:after,.fmlms-success-aside:after{content:"";position:absolute;width:390px;height:390px;border:70px solid rgba(255,255,255,.06);border-radius:50%;right:-210px;bottom:-210px}
.fmlms-hero-brand{position:relative;z-index:1;display:flex;align-items:center;gap:13px}.fmlms-hero-logo{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#fff;color:var(--fm-blue);font-weight:950;box-shadow:0 12px 28px rgba(0,0,0,.15)}
.fmlms-hero-brand strong{display:block;font-size:20px}.fmlms-hero-brand small{display:block;margin-top:3px;opacity:.8}
.fmlms-hero-content{position:relative;z-index:1;margin:auto 0}.fmlms-hero-kicker{font-size:12px;font-weight:850;letter-spacing:.14em;color:#bfe2ff}.fmlms-hero-content h2{font-size:42px;line-height:1.08;margin:13px 0 18px;color:#fff}.fmlms-hero-content>p{font-size:17px;line-height:1.65;margin:0 0 26px;color:#e7f4ff}
.fmlms-hero-features{display:grid;gap:15px}.fmlms-hero-features>div{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid rgba(255,255,255,.16);border-radius:15px;background:rgba(255,255,255,.09);backdrop-filter:blur(8px)}.fmlms-hero-features b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#fff;color:var(--fm-green)}.fmlms-hero-features strong,.fmlms-hero-features small{display:block}.fmlms-hero-features small{margin-top:2px;color:#dceeff}.fmlms-hero-footer{position:relative;z-index:1;display:flex;justify-content:space-between;gap:10px;font-size:12px;font-weight:700;color:#dceeff}
.fmlms-auth-shell{min-width:0;background:#fff;font-family:inherit;color:var(--fm-text)}.fmlms-auth-shell>header{display:flex;align-items:center;gap:15px;padding:32px 38px 22px}.fmlms-auth-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,var(--fm-blue),#35a0ff);color:#fff;font-size:20px;font-weight:950;box-shadow:0 12px 26px rgba(11,99,206,.22)}.fmlms-auth-shell h1{font-size:27px;line-height:1.2;margin:0 0 4px;color:var(--fm-text)}.fmlms-auth-shell header p{margin:0;color:var(--fm-muted)}
.fmlms-auth-tabs{display:grid;grid-template-columns:repeat(4,1fr);margin:0 38px;padding:5px;background:#eef5fc;border-radius:14px}.fmlms-auth-tabs a{text-align:center;padding:12px 8px;border-radius:10px;text-decoration:none;color:#536a80;font-size:13px;font-weight:800}.fmlms-auth-tabs a.active{color:#fff;background:linear-gradient(135deg,var(--fm-blue),var(--fm-blue2));box-shadow:0 8px 18px rgba(11,99,206,.2)}
.fmlms-auth-body{padding:30px 38px}.fmlms-auth-body section{max-width:680px;margin:auto}.fmlms-auth-body h2{font-size:27px;margin:0 0 7px;color:var(--fm-text)}.fmlms-auth-body section>p{margin:0 0 24px;color:var(--fm-muted);line-height:1.55}.fmlms-auth-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fmlms-auth-form label{display:grid;gap:7px;font-weight:750;color:#344e63}.fmlms-auth-form label span{font-size:13px}.fmlms-auth-form input{width:100%;min-height:50px;border:1px solid #cbd9e7;border-radius:12px;padding:11px 13px;font:inherit;background:#fbfdff;transition:.2s}.fmlms-auth-form input:focus{border-color:var(--fm-blue);box-shadow:0 0 0 4px rgba(11,99,206,.1);outline:0;background:#fff}.fmlms-auth-form button,.fmlms-auth-actions .primary{grid-column:1/-1;min-height:52px;border:0;border-radius:12px;padding:13px 20px;background:linear-gradient(135deg,var(--fm-blue),var(--fm-blue2));color:#fff;text-decoration:none;font-size:16px;font-weight:850;cursor:pointer;text-align:center;box-shadow:0 10px 22px rgba(11,99,206,.22)}.fmlms-auth-form button:hover,.fmlms-auth-actions .primary:hover{filter:brightness(.96);color:#fff;transform:translateY(-1px)}.fmlms-check{display:flex!important;grid-column:1/-1;grid-template-columns:auto 1fr!important;align-items:center!important;font-weight:550!important}.fmlms-check input{width:auto!important;min-height:auto!important}.fmlms-forgot{grid-column:1/-1;text-align:center;color:var(--fm-blue);font-weight:700}.fmlms-auth-footer{display:flex;justify-content:space-between;padding:18px 38px;border-top:1px solid #edf2f7;color:#7890a7;font-size:12px}.fmlms-auth-notice{margin:18px 38px 0;padding:13px 16px;border-radius:11px;font-weight:650}.fmlms-auth-notice.error{background:#fff0f0;color:#9b1c1c;border:1px solid #ffcaca}.fmlms-auth-notice.success{background:#ecfdf3;color:#146c3a;border:1px solid #b7e8ca}.fmlms-auth-api-message{display:none;margin:0 0 14px;padding:12px 14px;border-radius:10px;font-weight:650;line-height:1.45;grid-column:1/-1}.fmlms-auth-api-message.success{display:block;background:#ecfdf3;border:1px solid #86efac;color:#166534}.fmlms-auth-api-message.error{display:block;background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}.fmlms-auth-form button[disabled]{opacity:.65;cursor:wait}
.fmlms-auth-success-page{grid-template-columns:.8fr 1.2fr;max-width:1020px}.fmlms-success-aside{min-height:570px}.fmlms-success-graphic{position:relative;z-index:1;margin:auto 0;text-align:center}.fmlms-success-graphic>span{display:grid;place-items:center;width:92px;height:92px;margin:0 auto 20px;border-radius:50%;background:#fff;color:var(--fm-green);font-size:44px;font-weight:950;box-shadow:0 18px 38px rgba(0,0,0,.18)}.fmlms-success-graphic h2{font-size:34px;margin:0 0 10px;color:#fff}.fmlms-success-graphic p{margin:0;color:#e1f1ff}.fmlms-success-note{position:relative;z-index:1;padding:15px;border:1px solid rgba(255,255,255,.17);border-radius:14px;background:rgba(255,255,255,.09);font-size:13px;line-height:1.55;color:#e1f1ff}
.fmlms-welcome-card{padding:44px;background:#fff}.fmlms-welcome-top{display:flex;align-items:center;gap:17px;padding-bottom:24px;border-bottom:1px solid #edf2f7}.fmlms-welcome-person small{display:block;color:var(--fm-blue);font-weight:850;letter-spacing:.1em;margin-bottom:5px}.fmlms-welcome-person h1{font-size:29px;margin:0 0 5px;color:var(--fm-text)}.fmlms-welcome-person p{margin:0;color:var(--fm-muted)}.fmlms-account-status{display:flex;align-items:center;gap:12px;margin:22px 0;padding:15px;border-radius:14px;background:#f0fdf7;border:1px solid #bbf0d3}.fmlms-status-dot{width:13px;height:13px;border-radius:50%;background:#19a66b;box-shadow:0 0 0 5px rgba(25,166,107,.12)}.fmlms-account-status strong,.fmlms-account-status small{display:block}.fmlms-account-status small{margin-top:2px;color:#5b7469}.fmlms-student-code{position:relative;padding:20px 145px 20px 20px;border-radius:16px;background:linear-gradient(135deg,#eff6ff,#fbfdff);border:1px solid #bfdbfe}.fmlms-student-code span,.fmlms-student-code small{display:block}.fmlms-student-code span{font-size:12px;font-weight:850;letter-spacing:.08em;color:#34688f}.fmlms-student-code strong{display:block;font-size:28px;letter-spacing:2px;color:#0b5f9c;margin:7px 0}.fmlms-student-code small{line-height:1.45;color:var(--fm-muted)}.fmlms-copy-code{position:absolute;right:17px;top:50%;transform:translateY(-50%);border:1px solid #93c5fd;border-radius:10px;background:#fff;color:#1d4ed8;padding:10px 13px;font-weight:850;cursor:pointer}.fmlms-auth-actions{display:grid;grid-template-columns:1.35fr .85fr;gap:12px;margin:22px 0 0}.fmlms-auth-actions a{min-height:52px;padding:13px;border:1px solid #cbd9e7;border-radius:12px;text-align:center;text-decoration:none;font-weight:850;display:flex;align-items:center;justify-content:center;gap:8px}.fmlms-auth-actions .secondary{background:#f8fafc;color:#334155}
@media(max-width:900px){.fmlms-auth-app,.fmlms-auth-success-page{grid-template-columns:1fr;margin:18px}.fmlms-auth-hero{min-height:auto;padding:26px}.fmlms-hero-content{margin:42px 0}.fmlms-hero-content h2{font-size:34px}.fmlms-hero-footer{display:none}.fmlms-success-aside{min-height:300px}.fmlms-welcome-card{padding:30px}}
@media(max-width:620px){.fmlms-auth-app,.fmlms-auth-success-page{margin:10px;border-radius:18px}.fmlms-auth-hero{display:none}.fmlms-auth-shell>header,.fmlms-auth-body{padding-left:20px;padding-right:20px}.fmlms-auth-tabs{margin:0 20px;grid-template-columns:1fr 1fr}.fmlms-auth-form{grid-template-columns:1fr}.fmlms-auth-form button,.fmlms-forgot,.fmlms-check,.fmlms-auth-api-message{grid-column:1}.fmlms-auth-footer{padding:16px 20px}.fmlms-success-aside{display:none}.fmlms-welcome-card{padding:22px}.fmlms-welcome-person h1{font-size:23px}.fmlms-student-code{padding:18px}.fmlms-copy-code{position:static;transform:none;margin-top:12px;width:100%}.fmlms-auth-actions{grid-template-columns:1fr}}
