.mom-profile-nav-button{appearance:none;border:1px solid var(--line,#d7e2df);background:#fff;color:var(--ink,#17324d);padding:8px 12px;border-radius:999px;font:inherit;font-weight:800;cursor:pointer}.mom-profile-nav-button:hover{background:var(--mint,#eaf6f1)}body.mom-profile-open{overflow:hidden}.mom-profile-modal[hidden]{display:none!important}.mom-profile-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:18px}.mom-profile-backdrop{position:absolute;inset:0;background:rgba(15,35,43,.58);backdrop-filter:blur(2px)}.mom-profile-dialog{position:relative;width:min(820px,100%);max-height:min(88vh,900px);overflow:auto;background:#fff;border:1px solid var(--line,#d7e2df);border-radius:22px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.24)}.mom-profile-x{position:absolute;top:12px;right:14px;width:38px;height:38px;border:0;border-radius:50%;background:#eef4f2;color:var(--ink,#17324d);font:700 1.45rem/1 system-ui;cursor:pointer}.mom-profile-kicker{text-transform:uppercase;letter-spacing:.11em;color:var(--teal,#167b73);font-size:.72rem;font-weight:900;margin:0}.mom-profile-dialog h2{font:700 clamp(1.7rem,4vw,2.25rem)/1.1 Georgia,serif;margin:.3rem 0 .55rem}.mom-profile-lead{color:var(--muted,#5c7082);margin:0 45px 18px 0}.mom-profile-section{border-top:1px solid var(--line,#d7e2df);padding-top:16px;margin-top:16px}.mom-profile-section h3{font:700 1.25rem Georgia,serif;margin:0 0 .45rem}.mom-profile-section p{margin:.35rem 0;color:var(--muted,#5c7082)}.mom-profile-grid,.mom-person-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:12px 0}.mom-profile-dialog label{font-weight:800}.mom-profile-dialog input,.mom-profile-dialog select{display:block;width:100%;margin-top:5px;padding:10px 11px;border:1.5px solid #aabdc5;border-radius:9px;background:#fff;color:var(--ink,#17324d);font:inherit}.mom-profile-dialog input:focus,.mom-profile-dialog select:focus{outline:none;border-color:var(--teal,#167b73);box-shadow:0 0 0 3px rgba(22,123,115,.12)}.mom-person-row{grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) auto;align-items:end;padding:10px;background:#f7faf9;border:1px solid #e0e9e6;border-radius:12px}.mom-profile-remove,.mom-profile-add,.mom-profile-secondary,.mom-profile-save{border-radius:10px;padding:10px 13px;font:inherit;font-weight:850;cursor:pointer}.mom-profile-remove{border:1px solid #d5c0b8;background:#fff;color:#7d4436}.mom-profile-add{border:1px solid #bcd0ca;background:#f8fbfa;color:var(--ink,#17324d)}.mom-teacher-section{background:#eef6ff;border:1px solid #cfe0ef;border-radius:16px;padding:16px;margin-top:20px}.mom-teacher-section h3{margin-top:0}.mom-teacher-preview{margin-top:12px;padding:12px 14px;background:#fff;border:1px solid #cfe0ef;border-radius:12px}.mom-teacher-preview span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--muted,#5c7082);margin-bottom:4px}.mom-teacher-preview strong{display:block;color:var(--ink,#17324d)}.mom-profile-small{font-size:.82rem}.mom-profile-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.mom-profile-secondary{border:1px solid #bcd0ca;background:#fff;color:var(--ink,#17324d)}.mom-profile-save{border:1px solid var(--teal,#167b73);background:var(--teal,#167b73);color:#fff}.mom-profile-status{min-height:1.4em;text-align:right;color:#176a4e;font-weight:800}.mom-personalize{background:#fffdf5;border:2px solid var(--gold,#f4bd54);border-radius:18px;padding:18px;margin:22px 0}.mom-personalize h3{margin:.1rem 0 .45rem;font-family:Georgia,serif}.mom-personalize p{margin:.35rem 0}.mom-personalize .mom-profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:12px 0}.mom-personalize .mom-profile-grid label{font-weight:750}.mom-personalize .mom-profile-grid input,.mom-personalize .mom-profile-grid select{display:block;width:100%;margin-top:5px;padding:10px;border:1px solid #aabdc5;border-radius:9px;font:inherit}.mom-personalize button{background:var(--teal,#167b73);color:#fff;border:0;border-radius:10px;padding:10px 14px;font:inherit;font-weight:800}.mom-profile-preview{margin-top:10px;padding:10px 12px;background:#fff;border:1px solid #ead7a5;border-radius:10px;font-weight:750}@media(max-width:650px){.mom-profile-dialog{padding:18px;border-radius:16px}.mom-person-row{grid-template-columns:1fr}.mom-profile-remove{justify-self:start}.mom-profile-actions{flex-direction:column-reverse}.mom-profile-actions button{width:100%}.mom-profile-nav-button{width:auto}}