.mathix-public, .mathix-public * { box-sizing: border-box; font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.mathix-public { --mx-ink:#17233c; --mx-muted:#64748b; --mx-purple:#6d3fd1; --mx-blue:#176b87; background:linear-gradient(145deg,#fbfaff,#f3fbff); border:1px solid #ded8f5; border-radius:24px; box-shadow:0 18px 55px rgba(49,35,97,.1); color:var(--mx-ink); margin:24px auto; max-width:1120px; overflow:hidden; padding:clamp(22px,4vw,48px); }
.mathix-public__hero { align-items:flex-start; display:flex; gap:24px; justify-content:space-between; margin-bottom:32px; }
.mathix-public__hero h2 { color:var(--mx-ink); font-size:clamp(28px,4vw,46px); letter-spacing:-.035em; line-height:1.05; margin:8px 0 12px; }
.mathix-public__hero p { color:var(--mx-muted); font-size:17px; line-height:1.6; margin:0; max-width:720px; }
.mathix-public__eyebrow { color:var(--mx-purple); font-size:11px; font-weight:850; letter-spacing:.18em; }
.mathix-public__pilot,.mathix-public__step,.mathix-choice__tag { border-radius:999px; display:inline-block; font-size:11px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.mathix-public__pilot { background:#ece5ff; color:#5530ad; flex:0 0 auto; padding:8px 12px; }
.mathix-public__choices { display:grid; gap:20px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.mathix-choice { background:#fff; border:1px solid #e4def7; border-radius:19px; display:flex; flex-direction:column; min-height:330px; padding:28px; }
.mathix-choice.is-teacher { background:linear-gradient(150deg,#ffffff,#edfbff); border-color:#b9e4ee; }
.mathix-choice.is-instructor { background:linear-gradient(150deg,#fff,#fff8e9); border-color:#f4d59a; }
.mathix-choice__icon { align-items:center; background:#efe9ff; border-radius:14px; color:var(--mx-purple); display:flex; font-size:25px; font-weight:900; height:52px; justify-content:center; width:52px; }
.mathix-choice.is-teacher .mathix-choice__icon { background:#dff6fa; color:var(--mx-blue); }
.mathix-choice.is-instructor .mathix-choice__icon { background:#fff0cc; color:#a45b0a; }
.mathix-choice__tag { color:var(--mx-purple); margin:20px 0 4px; }
.mathix-choice h3,.mathix-public__panel h3 { color:var(--mx-ink); font-size:25px; margin:5px 0 10px; }
.mathix-choice p,.mathix-public__panel p { color:var(--mx-muted); font-size:16px; line-height:1.55; }
.mathix-public__button { align-items:center; align-self:flex-start; background:var(--mx-purple); border:0; border-radius:11px; color:#fff!important; cursor:pointer; display:inline-flex; font-size:15px; font-weight:800; justify-content:center; margin-top:auto; min-height:46px; padding:11px 18px; text-decoration:none!important; }
.mathix-choice.is-teacher .mathix-public__button { background:var(--mx-blue); }
.mathix-choice.is-instructor .mathix-public__button { background:#a45b0a; }
.mathix-public__button[disabled] { cursor:not-allowed; opacity:.55; }
.mathix-public__privacy { color:var(--mx-muted); font-size:13px; margin:20px 4px 0; text-align:center; }
.mathix-public__back { color:var(--mx-purple)!important; display:inline-block; font-weight:750; margin-bottom:18px; text-decoration:none!important; }
.mathix-public__panel { background:#fff; border:1px solid #e4def7; border-radius:19px; padding:clamp(20px,4vw,34px); }
.mathix-public__step { background:#ece5ff; color:#5530ad; padding:7px 10px; }
.mathix-public__form { margin-top:24px; }
.mathix-public__form-grid { display:grid; gap:16px; grid-template-columns:repeat(2,minmax(0,1fr)); margin-bottom:20px; }
.mathix-public__form label { color:var(--mx-ink); display:grid; font-size:14px; font-weight:780; gap:7px; }
.mathix-public__form label.is-wide { grid-column:1/-1; }
.mathix-public__form input,.mathix-public__form select { background:#fff; border:1px solid #cbd5e1; border-radius:10px; box-shadow:none; color:var(--mx-ink); font-size:16px; min-height:48px; padding:10px 12px; width:100%; }
.mathix-public__upload { background:#f8fafc; border:1px dashed #a9b8ca; border-radius:13px; padding:16px; }
.mathix-public__upload small { color:var(--mx-muted); font-weight:500; }
.mathix-public__notice { background:#f4f0ff; border-left:4px solid var(--mx-purple); border-radius:8px; color:#493c66; line-height:1.5; margin-top:22px; padding:14px 16px; }
.mathix-public__error { background:#fff1f2; border:1px solid #fda4af; border-radius:9px; color:#9f1239; font-weight:700; margin-top:18px; padding:12px 14px; }
.mathix-public__verified { align-items:center; background:#ecfdf5; border:1px solid #86efac; border-radius:12px; display:flex; gap:12px; margin:20px 0; padding:14px; }
.mathix-public__verified>span { align-items:center; background:#16a34a; border-radius:50%; color:#fff; display:flex; font-weight:900; height:34px; justify-content:center; width:34px; }
.mathix-public__verified p { margin:2px 0 0; }
.mathix-teacher-front { display:grid; gap:14px; grid-template-columns:repeat(3,minmax(0,1fr)); margin:24px 0; }
.mathix-teacher-front article { background:#f8fafc; border:1px solid #dbe3ed; border-radius:13px; display:grid; gap:5px; padding:17px; }
.mathix-teacher-front span,.mathix-teacher-front small { color:var(--mx-muted); }
.mathix-teacher-front strong { color:var(--mx-purple); font-size:22px; overflow-wrap:anywhere; }
.mathix-instructor-grid { display:grid; gap:18px; grid-template-columns:minmax(260px,.7fr) minmax(480px,1.3fr); }
.mathix-instructor-grid>article { border:1px solid #e2e8f0; border-radius:14px; padding:20px; }
.mathix-instructor-grid h4 { font-size:18px; margin:0 0 8px; }
.mathix-front-table { overflow-x:auto; }
.mathix-front-table table { border-collapse:collapse; font-size:14px; min-width:780px; width:100%; }
.mathix-front-table th,.mathix-front-table td { border-bottom:1px solid #e2e8f0; padding:10px 8px; text-align:left; }
.mathix-download-link { color:var(--mx-purple)!important; font-weight:800; white-space:nowrap; }
.mathix-muted { color:var(--mx-muted); font-size:13px; }
.mathix-package-links { display:flex; flex-wrap:wrap; gap:7px; min-width:190px; }
.mathix-package-links .mathix-download-link { background:#f1edff; border:1px solid #ddd2ff; border-radius:7px; font-size:12px; padding:5px 7px; text-decoration:none!important; }
.mathix-credit-rule { background:#fff8e9; border:1px solid #f4d59a; border-radius:9px; color:#75420a; font-size:13px; line-height:1.45; margin:16px 0; padding:11px 12px; }
@media(max-width:900px){.mathix-public__choices{grid-template-columns:1fr}.mathix-teacher-front{grid-template-columns:1fr}.mathix-instructor-grid{grid-template-columns:1fr}}
@media(max-width:720px){.mathix-public__form-grid{grid-template-columns:1fr}.mathix-public__hero{display:block}.mathix-public__pilot{margin-top:16px}.mathix-public__form label.is-wide{grid-column:auto}.mathix-choice{min-height:0}.mathix-public__button{margin-top:18px;width:100%}}
