
/* My Lexis — private portal, visually matched to Lexis Ready */
.mylexis-portal{width:100%;max-width:1100px;margin:0 auto;color:#183247;font-family:"Fira Sans","Segoe UI",sans-serif}
.mylexis-intro{border-radius:24px;padding:clamp(24px,5vw,50px);background:linear-gradient(125deg,#103958,#087f80);color:#fff;margin-bottom:24px;box-shadow:0 18px 35px rgba(16,57,88,.13)}
.mylexis-intro h1{color:#fff!important;line-height:1.09;letter-spacing:-.03em;font-size:clamp(2rem,4.5vw,3.6rem);margin:7px 0 15px}
.mylexis-intro p{color:#e2f5f3!important;max-width:680px;margin:0;font-size:1.09rem}
.mylexis-intro a{color:#fff;text-decoration:underline;font-weight:800}
.mylexis-kicker{font-weight:900;font-size:.75rem;letter-spacing:.14em;color:#0b8584}
.mylexis-intro .mylexis-kicker{color:#c4f1ed}
.mylexis-auth,.mylexis-card{background:white;border:1px solid #dde9ee;border-radius:20px;padding:clamp(22px,4vw,38px);margin-bottom:20px;box-shadow:0 9px 30px rgba(18,59,93,.05)}
.mylexis-auth{max-width:550px;margin:0 auto 24px}
.mylexis-card h2,.mylexis-auth h2{color:#123b5d;font-size:clamp(1.35rem,2.6vw,1.9rem);line-height:1.2;margin:7px 0 22px}
.mylexis-card h3{color:#087f80;font-size:1.25rem;margin:26px 0 10px}
.mylexis-card p{color:#607589}
.mylexis-auth label,.mylexis-form label,.mylexis-row label{display:block;font-weight:700;color:#183247;margin-bottom:14px}
.mylexis-auth input[type=text],.mylexis-auth input[type=password],.mylexis-form input,.mylexis-form select,.mylexis-row input,.mylexis-row select,.mylexis-card table select{display:block;background:#fff;color:#183247;width:100%;font:inherit;border:1px solid #bccdd7;border-radius:10px;padding:10px 12px;margin-top:6px;max-width:100%}
.mylexis-auth input:focus,.mylexis-form input:focus,.mylexis-form select:focus,.mylexis-row select:focus,.mylexis-row input:focus{outline:3px solid #c4e9e5;border-color:#087f80}
.mylexis-auth input[type=checkbox]{width:auto}
.mylexis-auth input[type=submit],.mylexis-card button,.mylexis-primary{display:inline-flex;border:0;background:#087f80;color:#fff;border-radius:11px;padding:12px 20px;font:inherit;font-weight:850;cursor:pointer;text-align:center}
.mylexis-auth input[type=submit]:hover,.mylexis-card button:hover,.mylexis-primary:hover{background:#05696a}
.mylexis-auth .login-remember label{display:flex;align-items:center;gap:9px}
.mylexis-auth .login-remember input{margin:0}
.mylexis-auth p{color:#607589}
.mylexis-form{display:grid;gap:6px}
.mylexis-form label{margin:0 0 6px}
.mylexis-two{display:grid;grid-template-columns:1.05fr .95fr;gap:20px}
.mylexis-row{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:20px}
.mylexis-row label{min-width:180px;margin-bottom:0;flex:1}
.mylexis-scroll{overflow-x:auto;max-width:100%;margin:12px 0 22px}
.mylexis-scroll table{width:100%;border-collapse:collapse;white-space:normal;min-width:450px;font-size:.94rem}
.mylexis-scroll th,.mylexis-scroll td{text-align:left;border-bottom:1px solid #e4ebf0;padding:12px 9px;vertical-align:middle}
.mylexis-scroll th{font-weight:850;background:#eff7f7;color:#123b5d}
.mylexis-scroll tr:hover td{background:#fafdfd}
.mylexis-scroll td select{min-width:155px}
.mylexis-note{border:1px solid #d3e8e5;background:#eff9f7;border-radius:12px;color:#145d55;padding:13px 18px}
/* Registration after email verification + school approval */
.mylexis-register{max-width:750px;margin:28px auto 50px}
.mylexis-signup-notice{padding:18px 20px;background:#edf8f7;border:1px solid #a8dcd5;border-radius:14px;color:#075651;font-weight:700;line-height:1.55}
.mylexis-register-details{border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(18,59,93,.055);border:1px solid #d9e7ed;overflow:hidden}
.mylexis-register-details>summary{list-style:none;cursor:pointer;padding:26px 30px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;color:#163b59}
.mylexis-register-details>summary::-webkit-details-marker{display:none}
.mylexis-register-details>summary span{color:#5f7587}
.mylexis-register-details>summary strong{color:#087f80;font-weight:850}
.mylexis-register-details[open]>summary{border-bottom:1px solid #d9e7ed;background:#f2f9f9}
.mylexis-register-inner{padding:28px 30px 32px}
.mylexis-register-inner h2{color:#123b5d;margin:0 0 12px;font-size:1.8rem}
.mylexis-register-inner>p{color:#607589;max-width:60ch;line-height:1.6}
.mylexis-register-form{display:grid;gap:18px;margin:22px 0}
.mylexis-register-form>label{display:grid;gap:7px;font-weight:750;color:#183247}
.mylexis-register-form input:not([type="checkbox"]),.mylexis-register-form select{display:block;width:100%;padding:13px 14px;border:1px solid #b8cbd7;border-radius:11px;font:inherit;background:#fff;color:#183247}
.mylexis-register-form input:focus,.mylexis-register-form select:focus{outline:3px solid #c4e9e5;border-color:#087f80}
.mylexis-register-form .mylexis-privacy{display:flex;align-items:flex-start;gap:11px;font-size:.96rem;font-weight:500}
.mylexis-register-form .mylexis-privacy input{margin-top:7px;flex:0 0 auto}
.mylexis-register-form .mylexis-trap{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.mylexis-register-note{font-size:.9rem}
@media(max-width:600px){.mylexis-register-details>summary{padding:20px}.mylexis-register-inner{padding:24px 20px}}
@media(max-width:800px){.mylexis-two{grid-template-columns:1fr}}
@media(max-width:600px){.mylexis-scroll table{font-size:.87rem}.mylexis-card{padding:20px 16px}.mylexis-row{display:block}.mylexis-row button{margin-top:10px}}
