@font-face{font-family:Onest;src:url('/Onest.ttf') format('truetype');font-display:swap}*{box-sizing:border-box}body{margin:0;background:#f5f5f2;color:#242424;font-family:Onest,system-ui,sans-serif;font-size:15px;line-height:1.6;background-image:radial-gradient(ellipse at 15% 0%,#e5dcc7 0,transparent 50%),radial-gradient(ellipse at 90% 30%,#f4e8dd 0,transparent 45%);min-height:100vh}button,select{font:inherit}button{cursor:pointer;border:1px solid transparent;border-radius:12px;padding:12px 18px;font-weight:600;transition:transform .15s,background .15s}button:hover{transform:translateY(-1px)}button:disabled{opacity:.55;cursor:wait;transform:none}.primary{color:#fff;background:#66553a}.secondary{background:#fff9;border-color:#d8cdb8;color:#4b4234}.brand{display:inline-flex;gap:14px;align-items:center;text-decoration:none;color:inherit;font-size:22px;font-weight:650;line-height:1.35}.brand small{display:block;font-size:11px;font-weight:400;letter-spacing:.09em;color:#807666}.mark{display:grid;place-items:center;border-radius:15px;width:50px;height:50px;background:linear-gradient(140deg,#dac9a7,#b69860);box-shadow:inset 0 1px 1px #fff9;color:white;font-size:26px}.gate{max-width:630px;margin:auto;padding:12vh 24px 50px}.gate>.brand{margin-bottom:34px}.glass{padding:36px;border:1px solid #fff;border-radius:26px;background:linear-gradient(120deg,#ffffffde,#f1eadedb);box-shadow:0 15px 65px #6858350a}.eyebrow{font-size:10px;letter-spacing:.15em;color:#877451;font-weight:700}h1{font-size:clamp(27px,3vw,40px);line-height:1.2;letter-spacing:-.035em;margin:18px 0}h2{font-size:24px;line-height:1.3;letter-spacing:-.025em;margin:0 0 12px}p{color:#756e62;margin:0 0 20px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.fine{margin-top:24px;font-size:12px;text-align:center;color:#92887b}.error{color:#a12f32;background:#fff1ef;border:1px solid #e6bbb4;border-radius:12px;padding:12px 16px;margin:20px 0}.workspace{max-width:1440px;margin:auto;padding:24px 36px 60px}header{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:6px 0 30px}.identity{display:flex;gap:18px;align-items:center}.identity span{font-size:13px;text-align:right}.identity small,.member small{display:block;font-size:12px;color:#857867}.workspace main{display:grid;gap:24px}.hero{display:flex;align-items:center;justify-content:space-between;gap:25px}.hero h1{max-width:800px}.hero p{margin-bottom:0}.badge{display:inline-block;white-space:nowrap;border:1px solid #ddcfb5;color:#74603d;background:#f9f3e7;border-radius:999px;padding:7px 13px;font-size:12px}.section-title{display:flex;justify-content:space-between;gap:20px;align-items:start}.section-title p{max-width:680px}.member-list{display:grid;gap:12px;margin-top:24px}.member{display:flex;align-items:center;flex-wrap:wrap;gap:16px;background:#fff9;border:1px solid #e8dfd1;border-radius:16px;padding:20px}.member>div{flex:1;min-width:220px}.member label{display:grid;gap:6px;font-size:11px;color:#857867}.member select{border:1px solid #d9cdbb;border-radius:9px;padding:8px;background:#fff;color:#242424;max-width:220px}.member strong{font-size:15px}@media(max-width:800px){.workspace{padding:20px}.glass{padding:24px}.hero,header{align-items:start;flex-direction:column}.identity{width:100%;justify-content:space-between}.identity span{text-align:left}.member{align-items:stretch;flex-direction:column}.member select{max-width:none;width:100%}.gate{padding-top:8vh}.badge{white-space:normal}}.school-nav{display:flex;flex-wrap:wrap;gap:8px}.school-nav button{padding:10px 16px}.compact{margin:0;align-items:center;gap:6px}.compact button{padding:8px 12px}.compact input,.compact select{max-width:180px;padding:8px}.school-panel{min-width:0}.calendar-scroll,.table-scroll{overflow-x:auto;max-width:100%}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(135px,1fr));gap:9px;min-width:980px}.calendar-day{min-width:0;background:#ffffff68;border:1px solid #e9deca;border-radius:16px;padding:10px}.calendar-day h3{font-size:14px;display:flex;justify-content:space-between;margin:3px 2px 16px}.calendar-day h3 small{font-weight:400;color:#84745e}.calendar-day.is-today{border-color:#b99b66;background:#f1e7d8}.lesson{display:block;width:100%;text-align:left;border:1px solid #dfcfb5;background:linear-gradient(120deg,#fffaf2,#efe0c8);padding:10px;margin-bottom:9px;overflow-wrap:anywhere}.lesson strong{display:block;font-size:12px;margin:7px 0}.lesson span,.lesson small{display:block;font-size:10px;color:#7a6952}.lesson.cancelled{opacity:.55;text-decoration:line-through;background:#eceae6}.muted{font-size:12px;text-align:center;color:#a09585}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr));gap:14px}.record{padding:22px;border-radius:18px;background:#fff9;border:1px solid #e7ddcd;min-width:0}.record h3{margin:7px 0 12px;line-height:1.4}.record p{font-size:13px}.record .actions{margin-top:18px}.record strong small,td small{display:block;font-weight:400;font-size:11px;color:#897861}.record strong{font-size:22px}progress{width:100%;accent-color:#af9361;height:7px;margin-bottom:12px}.table-scroll table{border-collapse:collapse;width:100%;min-width:650px;text-align:left}.table-scroll th{font-size:12px;color:#8e8069;font-weight:500}.table-scroll td,.table-scroll th{padding:15px 9px;border-bottom:1px solid #e7ddcf}.table-scroll td{font-size:13px}.table-scroll{margin-top:24px}.inline-form{display:flex;flex-wrap:wrap;align-items:end;gap:14px;padding-top:30px}.inline-form h3,.inline-form p{width:100%}.inline-form label{flex:1;min-width:160px}.inline-form p{font-size:12px}input,select,textarea{font:inherit;border:1px solid #d9cbb3;border-radius:10px;background:#fff;color:#242424;padding:10px;min-width:0}label{display:grid;gap:6px;font-size:12px;color:#81725b}dialog{border:1px solid #ded2be;background:#faf7f0;color:#242424;border-radius:24px;padding:28px;width:min(650px,calc(100% - 30px));max-height:90vh;overflow:auto;box-shadow:0 30px 150px #45351f45}dialog::backdrop{background:#27201566;backdrop-filter:blur(5px)}dialog form{display:grid;gap:18px}dialog p{font-size:13px;margin-bottom:8px}.dialog-heading{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:24px}.dialog-heading button{padding:4px 13px;font-size:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.check{display:inline-flex;align-items:center;gap:6px;margin-right:9px}.check input{width:17px;height:17px;accent-color:#937844}fieldset{border:1px solid #e3d7c1;border-radius:12px;padding:12px}legend{font-size:12px;color:#81725b}.notes{display:grid;gap:12px;max-height:350px;overflow:auto;margin-bottom:20px}.preline{white-space:pre-wrap}.notice{padding:15px;border:1px solid #ddca9e;border-radius:12px;background:#fff4d9}.school-panel>.section-title{flex-wrap:wrap}@media(max-width:800px){.school-nav{gap:6px}.school-nav button{font-size:12px}.identity{flex-wrap:wrap}.identity span{width:100%}.compact{flex-wrap:wrap}.compact input,.compact select{max-width:100%}.form-row{grid-template-columns:1fr}.calendar-grid{gap:7px}.hero h1{font-size:28px}.school-panel{padding:18px}}
.free-slot{display:block;width:100%;margin:5px 0;padding:6px;font-size:10px;background:#e4eee4;color:#507254;border:1px dashed #aec4ae}
