:root{--ink:#193f3b;--green:#286c61;--soft:#edf2ee;--paper:#f7f6f2;--line:#dbe4dd;--muted:#637a73;--warm:#f3e9d5;--error:#8e382d;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:white;color:var(--green);padding:12px 17px;border-radius:10px;font-weight:650;transition:background .15s}button:hover{background:var(--soft)}button:disabled{cursor:wait;opacity:.6}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ba9440;outline-offset:3px}.primary{background:var(--green);color:white;border-color:var(--green)}.primary:hover{background:#1b554c}input,select,textarea{width:100%;border:1px solid #cbd8d0;background:white;border-radius:9px;color:var(--ink);padding:12px 13px;min-height:45px}input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--green);margin:0}input::placeholder{color:#7c8b84}label,.label{display:block;font-size:14px;font-weight:650;line-height:1.5}label>input,label>select,label>textarea{margin-top:7px}small,.hint{font-size:12px;color:var(--muted);line-height:1.6}h1,h2,h3,p{margin-top:0}h1{font-size:34px;letter-spacing:-1.1px;margin-bottom:10px;font-weight:650}h2{font-size:22px;letter-spacing:-.5px;margin-bottom:9px}h3{font-size:16px;margin-bottom:13px}p{color:var(--muted);line-height:1.55;margin-bottom:16px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:1.7px;display:block;margin-bottom:14px;color:var(--muted)}.brand{font-size:33px;font-weight:750;letter-spacing:-1.6px;line-height:1.2}.brand span{display:block;font-size:11px;letter-spacing:1px;font-weight:500;margin-top:8px}.layout{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:100vh}aside{padding:35px 20px;background:var(--soft);display:flex;flex-direction:column;border-right:1px solid var(--line)}aside .brand{padding:0 10px}nav{margin-top:46px}nav>button{width:100%;display:flex;gap:12px;align-items:center;text-align:left;background:transparent;border:0;margin-bottom:6px;padding:15px 13px;font-size:14px}.selected{background:var(--green);color:white}.selected:hover{background:var(--green)}.nav-later{padding:26px 13px 0;color:var(--muted)}.nav-later>span{font-size:9px;letter-spacing:1.2px;font-weight:700}.nav-later p{font-size:13px;margin:22px 0;color:#7a8b84}.account{margin-top:auto;background:transparent;text-align:left;border:0;padding:24px 10px 0}.account span{display:block;font-size:11px;font-weight:400;margin-top:7px}.workspace{padding:28px 38px 16px;max-width:1500px;width:100%;margin:auto}header{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:38px}header form{display:flex;max-width:630px;flex:1;gap:8px}header input{background:#efefe9;border-color:transparent}.demo-pill{font-size:9px;letter-spacing:1.2px;font-weight:700;color:#756329;background:var(--warm);padding:9px 12px;border-radius:20px;white-space:nowrap}.page-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.page-title p{margin:0;font-size:14px}.center-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:26px}.center-card{border:1px solid var(--line);border-radius:16px;background:white;padding:27px 28px}.center-card:nth-child(2){background:#f4f6ee}.center-card .eyebrow{margin-bottom:12px}.center-card h2{font-size:27px}.center-numbers{display:flex;align-items:center;gap:17px;margin:25px 0 20px}.center-numbers strong{font-size:50px;font-weight:550;letter-spacing:-2px}.center-numbers span{font-size:13px;line-height:1.7;color:var(--muted)}.center-card p{font-size:12px}.center-card button{border:0;border-top:1px solid var(--line);border-radius:0;padding:18px 0 0;width:100%;text-align:left;font-size:13px;background:transparent}.center-card button span{float:right}.panel{padding:26px 28px;background:white;border:1px solid var(--line);border-radius:15px;margin-bottom:20px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.section-title p{font-size:13px;margin-bottom:0}.section-title button{font-size:12px}.family-list{display:grid;gap:2px}.family-row{display:flex;width:100%;text-align:left;gap:16px;align-items:center;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:21px 4px;background:transparent;font-size:13px;font-weight:400}.family-row:last-child{border:0}.avatar{width:40px;height:44px;border-radius:16px 16px 12px 12px;background:#f1e6cf;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:19px}.family-row:nth-child(2n) .avatar{background:#e4eadf}.row-main{flex:1;min-width:0}.row-main strong{display:block;font-size:14px;margin-bottom:6px}.row-main>span{display:block;color:var(--muted);font-size:12px;line-height:1.6}.row-main small{font-size:11px}.row-center{font-size:11px;color:var(--muted);max-width:130px}.badge{background:#eaf2eb;color:#3e6955;padding:6px 10px;border-radius:16px;font-size:10px;white-space:nowrap}.badge.muted{background:#edece9;color:#746d60}.next-note{display:flex;gap:18px;padding:21px 25px;border-radius:12px;background:#eeeae0;font-size:12px;line-height:1.6}.next-note strong{white-space:nowrap}.next-note span{color:var(--muted)}footer{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-top:28px;padding:18px 0;border-top:1px solid var(--line)}.filters{display:flex;align-items:center;gap:18px;margin-bottom:20px}.filters label{min-width:190px;font-size:12px}.filters p{margin:25px 0 0;font-size:11px}.empty{background:white;padding:45px;text-align:center;border:1px dashed var(--line);border-radius:13px}.empty.compact{padding:24px;font-size:13px}.empty p{margin:0}.back{border:0;background:transparent;padding:0;margin-bottom:25px;font-size:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:22px}.checks{display:flex;gap:17px;flex-wrap:wrap;margin-top:12px;margin-bottom:6px}.checks label,.check-line{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500}.checks input{margin:0}.subform{border-top:1px solid var(--line);padding:22px 0 5px}.contact-row{display:grid;grid-template-columns:150px 1fr;gap:15px;margin-top:16px}.text-button{border:0;padding:13px 0 5px;font-size:12px}.check-line{margin:20px 0}.check-line input{margin:0}fieldset{border:0;padding:0;margin:0;min-width:0}.relation{padding:18px;background:var(--paper);border-radius:10px;margin:12px 0}.relation label{margin-top:12px}.savebar{display:flex;justify-content:space-between;align-items:center;position:sticky;bottom:15px;padding:15px 20px;border:1px solid var(--line);background:#f9faf7;box-shadow:0 8px 28px #193f3b10;border-radius:12px;z-index:2}.savebar span{font-size:12px;color:var(--muted)}.archive-line{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:26px;padding:12px 0}.archive-line p{margin:0;font-size:12px}.archive-line button{font-size:12px}details{margin-top:14px}summary{cursor:pointer;font-size:13px;font-weight:600;padding:12px 0;color:var(--green)}.session-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.session-row p{font-size:11px;word-break:break-word;max-width:620px;margin:8px 0}.login{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;background:radial-gradient(ellipse at top right,#e5ebdf,transparent 65%),var(--paper)}.login .brand{text-align:center;margin-bottom:35px;font-size:40px}.login-card{max-width:440px;width:100%;background:white;border:1px solid var(--line);border-radius:20px;padding:35px}.login-card h1{font-size:29px}.login-card p{font-size:14px}.login-card label{margin:20px 0}.login-card button{width:100%}.demo-note{font-size:11px;margin:24px 0}.error{color:var(--error)!important}.error-box{background:#fff0e8;color:var(--error);border:1px solid #e5c1b0;border-radius:10px;padding:20px;margin-bottom:20px;font-size:13px}.error-box p{color:var(--error)}.error-box span{display:block;margin-top:8px}#notice{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:white;padding:15px 23px;border-radius:10px;box-shadow:0 5px 30px #0002;opacity:0;pointer-events:none;transition:.2s;max-width:90vw;z-index:10;font-size:13px}#notice.visible{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid var(--line);border-radius:17px;padding:27px;max-width:780px;width:90vw;max-height:85vh;color:var(--ink)}dialog::backdrop{background:#183e3b66;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.dialog-head button{border:0;padding:0 10px;font-size:26px}.dialog-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:25px}dialog li{margin-bottom:20px;font-size:14px;line-height:1.8}dialog li button{font-size:12px;padding:6px 12px}.compare{display:grid;grid-template-columns:1fr 1fr;gap:20px}.compare section{padding:17px;background:var(--paper);border-radius:10px;min-width:0}.compare p{font-size:13px;overflow-wrap:anywhere}.history{border-top:1px solid var(--line)}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.loading{text-align:center;margin-top:40vh}.mobile-hint{display:none}
@media(max-width:1050px){.layout{grid-template-columns:180px minmax(0,1fr)}.workspace{padding:24px}aside{padding:30px 14px}.brand{font-size:28px}.demo-pill{font-size:8px;padding:8px}.page-title{align-items:flex-start}h1{font-size:29px}.center-card{padding:22px}.panel{padding:22px}.row-center{display:none}.page-title .primary{font-size:12px;white-space:nowrap}.next-note{flex-direction:column;gap:5px}.filters p{display:none}}
@media(max-width:800px){.layout{grid-template-columns:155px minmax(0,1fr)}aside{padding:28px 10px}.brand{font-size:25px}.brand span{font-size:9px}nav>button{font-size:12px;padding:12px 8px;gap:8px}.nav-later{padding-left:8px}.nav-later p{font-size:11px}.workspace{padding:20px}.demo-pill{display:none}.center-grid{gap:12px}.center-card{padding:18px}.center-card h2{font-size:23px}.center-numbers{gap:10px}.center-numbers strong{font-size:40px}.center-numbers span{font-size:11px}.center-card p{font-size:10px}.page-title{flex-direction:column;gap:15px}.form-grid{gap:15px}.filters label{min-width:160px}.family-row{gap:10px}.badge{font-size:9px}.avatar{width:33px;height:36px}}
@media(max-width:600px){.layout{display:block}aside{padding:18px 20px;border-right:0;border-bottom:1px solid var(--line);display:block}.brand{font-size:27px}.brand span{display:none}nav{display:flex;margin:18px 0 0;gap:8px}nav>button{width:auto;margin:0;padding:10px 14px;font-size:12px}.nav-later{display:none}.account{position:absolute;top:20px;right:20px;padding:0;font-size:12px}.account span{font-size:10px}.workspace{padding:22px 17px}.full-edit{display:none!important}.mobile-hint{display:block;font-size:12px;background:var(--warm);padding:13px;border-radius:10px}.center-grid{grid-template-columns:1fr 1fr;gap:10px}.center-card{padding:17px 14px}.center-card h2{font-size:22px}.center-numbers{display:block;margin:18px 0 12px}.center-numbers strong{display:block;font-size:41px;margin-bottom:5px}.center-numbers span{font-size:10px;line-height:1.6}.center-card p{line-height:1.6}.center-card button{font-size:11px}.panel{padding:20px 17px}.section-title{gap:10px}.section-title button{white-space:nowrap;padding:9px;font-size:10px}.section-title p{font-size:11px}h2{font-size:20px}.family-row{flex-wrap:wrap;padding:17px 0}.row-main{flex-basis:65%}.row-main strong{font-size:13px}.family-row>.badge{margin-left:43px}.family-row>span:last-child{margin-left:auto}.filters{gap:10px}.filters label{min-width:0;flex:1}.form-grid{grid-template-columns:1fr}.contact-row{grid-template-columns:120px 1fr;gap:10px}.contact-row input{min-width:0}.compare{grid-template-columns:1fr}.dialog-actions{flex-direction:column}header{margin-bottom:28px}header button{font-size:12px;padding:10px}header input{font-size:12px}footer{gap:15px;font-size:9px}.edit-fields:disabled input,.edit-fields:disabled textarea,.edit-fields:disabled select{color:var(--ink);opacity:1;-webkit-text-fill-color:var(--ink);background:#f7f8f4}dialog{padding:20px}.login-card{padding:28px}.login-card h1{font-size:27px}}

.mobile-contacts{display:none}@media(max-width:600px){.mobile-contacts{display:block;background:white;border:1px solid var(--line);border-radius:15px;padding:20px 17px;margin-bottom:20px}.mobile-contacts div{margin-top:15px}.mobile-contacts strong{font-size:13px}.mobile-contacts a{display:block;overflow-wrap:anywhere;color:var(--green);font-size:14px;line-height:1.6;margin-top:7px}.mobile-contacts p{font-size:14px;overflow-wrap:anywhere}}

/* Preparación de prueba privada 0.4.2: aviso persistente y recorrido sin gestor de tareas. */
.trial-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-8px 0 20px;padding:11px 15px;border:1px solid #dbcba9;border-radius:11px;background:#fbf3df;color:#654f25;font-size:11px}.trial-strip strong{letter-spacing:.08em}.trial-strip button{border:0;padding:5px 0;background:transparent;color:#654f25;text-decoration:underline;font-size:11px}.trial-warning{display:grid;gap:5px;margin:16px 0;padding:16px;border-radius:11px;background:#fbf3df;color:#654f25}.trial-warning span{font-size:12px;line-height:1.6}.trial-guide{padding-left:24px}.trial-guide li{margin:0 0 13px;padding-left:4px;font-size:13px;line-height:1.6}.trial-guide strong{color:var(--green)}
@media(max-width:600px){.trial-strip{margin:-5px 0 15px;padding:10px 12px;font-size:10px}.trial-strip button{font-size:10px;white-space:nowrap}.trial-guide{padding-left:20px}.trial-guide li{font-size:12px}}

/* Incremento 02: histórico y matrícula, con la misma navegación. */
.academic-intro{display:flex;gap:24px;align-items:center;justify-content:space-between;margin-bottom:24px}.academic-intro p{max-width:680px}.enrollment-card .form-grid p{margin:8px 0}.renewal-note{background:#eef3eb;padding:16px;border-radius:12px;margin:16px 0}#enrollment-form details{margin:18px 0}#enrollment-form .form-grid{margin-top:18px}#enrollment-form .error{white-space:normal}#enrollment-form input,#enrollment-form textarea{max-width:100%}.enrollment-card p{overflow-wrap:anywhere}@media(max-width:600px){.academic-intro{display:block}.enrollment-card .section-title{align-items:flex-start;flex-direction:column}.enrollment-card h2{font-size:21px}.session-row{flex-wrap:wrap}}

/* Agenda compartida: calendario, contactos y citas; no tareas. */
.action-group{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.agenda-toolbar{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:22px 0}.agenda-toolbar select{width:auto;max-width:100%}.agenda-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:20px;align-items:start}.calendar-panel{background:white;border:1px solid var(--line,#d7e2db);border-radius:18px;overflow:hidden}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day{min-width:0;padding:10px 6px;border-right:1px solid #e2e8e2;border-bottom:1px solid #e2e8e2;min-height:140px}.calendar-grid.week .calendar-day{min-height:400px}.calendar-date{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 12px;color:#54797a;font-size:12px}.calendar-date strong{font-size:19px}.calendar-day.chosen{background:#f2f5ef}.calendar-event{display:flex;flex-direction:column;align-items:flex-start;text-align:left;width:100%;padding:10px 7px;border:0;border-left:3px solid #2a7268;border-radius:7px;background:#e9f3ec;margin-bottom:8px;font-size:11px;overflow-wrap:anywhere;white-space:normal;gap:5px;line-height:1.35}.calendar-event strong{font-size:12px}.calendar-event small{font-size:10px}.calendar-event.center-2{background:#f5eddf;border-left-color:#bb944b}.calendar-event.center-0{background:#eeeaf6;border-left-color:#8b72a9}.free-slot{font-size:11px;color:#879f9d;text-align:center;margin-top:30px}.agenda-pending{background:#edf3ef;padding:20px;border-radius:18px}.agenda-pending h2{font-size:21px}.agenda-pending p{font-size:13px}.pending-card{background:white;border:1px solid #dce6df;padding:16px;border-radius:12px;margin:16px 0}.pending-card h3 button{padding:0;border:0;text-align:left;background:transparent;font-size:17px}.contact-links{display:flex;flex-direction:column;gap:8px;overflow-wrap:anywhere;line-height:1.5}.contact-links a{color:#266b65}.contact-links span{color:#416668}.badge.amber{background:#f2e6ce;color:#795d24}.button-link{display:inline-block;background:#256c62;color:white!important;padding:12px 18px;border-radius:9px;text-decoration:none}#prospect-form .form-grid,#agenda-entry-form .form-grid{margin:16px 0}#agenda-entry-form details{margin-top:18px}#agenda-form-error{margin:16px 0}#agenda-form-error button{margin:8px 0}#reminders-button{white-space:nowrap}.agenda-pending .section-title{gap:8px}.agenda-pending .section-title h2{margin:0}@media(max-width:1200px){.agenda-layout{grid-template-columns:1fr}.agenda-pending{display:block}.pending-card{display:inline-block;vertical-align:top;width:calc(50% - 10px);margin-right:10px}.calendar-grid.week .calendar-day{min-height:280px}}@media(max-width:600px){.calendar-grid.week{display:block}.calendar-grid.week .calendar-day{min-height:80px;border-bottom:1px solid #dce6df;padding:12px}.calendar-grid.week .calendar-date{justify-content:flex-start;gap:12px}.calendar-grid.week .calendar-event{font-size:13px;padding:12px}.calendar-event strong{font-size:14px}.calendar-grid.week .calendar-event small{font-size:12px}.free-slot{text-align:left;margin:6px}.calendar-grid.month .calendar-day{padding:3px;min-height:96px}.calendar-grid.month .calendar-event{padding:4px;border-left-width:2px}.calendar-grid.month .calendar-event strong{font-size:9px}.calendar-grid.month .calendar-event span{font-size:8px}.calendar-grid.month .calendar-date{padding:3px;font-size:8px;display:block}.calendar-grid.month .calendar-date strong{font-size:13px;display:block}.pending-card{width:100%;margin-right:0}.agenda-toolbar{gap:8px}.agenda-toolbar strong{order:-1;width:100%}.action-group{width:100%}.agenda-pending{padding:16px}.workspace header{flex-wrap:wrap}#reminders-button{margin-left:auto}}
@media(max-width:600px){nav{flex-wrap:wrap}.workspace header form{min-width:0;flex-basis:100%}.workspace header input{min-width:0}}
.panel p,.panel small,.session-row strong,.page-title h1{overflow-wrap:anywhere}
.room-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-top:16px}.room-card{text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:13px;padding:20px;background:#f6f9f5;min-height:165px}.room-card strong{font-size:19px}.room-card span{font-size:12px;color:var(--muted)}.room-card small{margin-top:auto;color:var(--green)}.room-card.room-closed{background:#f7f4ec}.student-profile{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:18px;align-items:start}.student-profile .panel{height:100%}.student-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px}.student-facts dt,.student-person small{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.student-facts dd{margin:0;font-size:15px}.student-person{display:grid;gap:4px;border-top:1px solid var(--line);padding:15px 0}.student-person span{font-size:12px;overflow-wrap:anywhere}.sibling-button{display:block;width:100%;text-align:left;margin:7px 0}.enrollment-card{border-top:1px solid var(--line);padding:22px 0}.enrollment-card h3{margin:0}.enrollment-card .eyebrow{margin-bottom:5px}@media(max-width:800px){.student-profile{grid-template-columns:1fr}.student-profile .panel{height:auto}}@media(max-width:600px){.student-facts{grid-template-columns:1fr 1fr}.room-grid{grid-template-columns:1fr 1fr}.room-card{min-height:145px;padding:14px}.room-card strong{font-size:15px}}
@media(min-width:601px) and (max-width:1050px){.calendar-grid.week{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-grid.week .calendar-day{min-height:150px}.calendar-grid.week .calendar-event{font-size:13px;padding:12px}.calendar-grid.week .calendar-event strong{font-size:14px}.calendar-grid.week .calendar-event small{font-size:12px}}
@media(max-width:600px){.calendar-grid.month .calendar-event{min-height:30px;justify-content:center}.calendar-grid.month .calendar-event strong{display:none}.calendar-grid.month .calendar-event span{white-space:nowrap;font-size:8px}}
