@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;600;700;800&display=swap";
:root{--bg:#f3f7fd;--ink:#163454;--muted:#8192a6;--surface:#ffffffc7;--primary:#194b85;--soft:#e8f1fd;--line:#6382a82b;--shadow:0 15px 55px #17406e14;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#081423;--ink:#f1f6ff;--muted:#93a7bf;--surface:#172a41cc;--primary:#8dbdff;--soft:#223b58;--line:#96b9e02b;--shadow:0 15px 55px #0000002e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root[data-theme=system]{--bg:#081423;--ink:#f1f6ff;--muted:#93a7bf;--surface:#172a41cc;--primary:#8dbdff;--soft:#223b58;--line:#96b9e02b;--shadow:0 15px 55px #0000002e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);background-image:radial-gradient(circle at 88% 2%,#6eacfa29,#0000 36%);margin:0;font:14px DM Sans,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.05em;font-family:Manrope,sans-serif}h1{margin-bottom:9px;font-size:clamp(30px,4vw,43px)}h2{margin:0;font-size:20px}h3{font-size:16px}.muted{color:var(--muted);line-height:1.65}.overline{color:#6997cc;letter-spacing:.15em;margin-bottom:12px;font-size:10px;font-weight:800}.glass{background:var(--surface);-webkit-backdrop-filter:blur(24px);box-shadow:var(--shadow);border:1px solid #ffffff4d;border-radius:22px}.shell{min-height:100vh;display:flex}.sidebar{flex-direction:column;flex:none;width:248px;height:calc(100vh - 32px);margin:16px 0 16px 16px;padding:28px 15px;display:flex;position:sticky;top:16px}.brand{align-items:center;gap:12px;font-size:24px;display:flex}.brand>b{letter-spacing:-.07em}.brand>b>span{color:#5198dc}.logo{color:#fff;background:#194b85;border-radius:13px;place-items:center;width:41px;height:41px;display:grid}.family-name{gap:8px;padding:43px 14px 24px;display:grid}.family-name small{letter-spacing:.12em;color:var(--muted);font-size:10px;font-weight:800}.sidebar nav{gap:5px;display:grid}.sidebar nav button{color:var(--muted);text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:13px;padding:13px 16px;font-weight:700;display:flex}.sidebar nav button.active{background:var(--soft);color:var(--primary)}.account{border-top:1px solid var(--line);align-items:center;gap:9px;margin-top:auto;padding-top:17px;display:flex}.account>div{flex:1;min-width:0}.account b,.account small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.account small{color:var(--muted);margin-top:5px;font-size:10px}.avatar{color:#1b4c89;background:#dceaff;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.main{flex:1;min-width:0}.top{height:89px;color:var(--muted);text-transform:capitalize;justify-content:space-between;align-items:center;padding:0 clamp(18px,4vw,60px);display:flex}.body{max-width:1250px;margin:auto;padding:6px clamp(18px,4vw,60px) 100px}.page-title{justify-content:space-between;align-items:center;gap:15px;margin-bottom:30px;display:flex}.page-title p{margin-bottom:0}.btn{background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:9px;min-height:43px;padding:12px 17px;font-size:12px;font-weight:800;display:inline-flex}.primary{color:#fff;background:#194b85}.secondary{background:var(--soft);color:var(--primary)}.icon{color:var(--muted);background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;padding:10px;display:inline-flex}.icon:hover{background:var(--soft)}.danger:hover{color:#e15252}.stats{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px;margin-bottom:22px;display:grid}.stat{cursor:default;padding:22px}.stat p{color:var(--muted);font-size:13px;font-weight:700}.stat strong{letter-spacing:-.05em;font-family:Manrope;font-size:37px;display:block}.stat small{color:var(--muted)}.card{margin-bottom:22px;padding:26px}.card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:23px;display:flex}.event-row{border-top:1px solid var(--line);align-items:center;gap:14px;padding:16px 0;display:flex}.time{min-width:76px;font-weight:800}.time small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.bar{background:#5e9be0;border-radius:8px;width:4px;height:41px}.event-info{flex:1;min-width:0}.event-info strong,.event-info small{display:block}.event-info small{color:var(--muted);margin-top:4px;font-size:11px}.ribbons{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.ribbon{color:var(--primary);background:var(--soft);border:0;border-radius:6px;padding:4px 8px;font-size:10px;font-weight:800}.empty{color:var(--muted);text-align:center;padding:25px}.segmented{background:var(--soft);border-radius:11px;gap:4px;padding:4px;display:inline-flex}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:9px 12px;font-size:11px;font-weight:800}.segmented button.on{background:var(--surface);color:var(--primary);box-shadow:0 2px 9px #00000012}.school-person{border-top:1px solid var(--line);padding:14px 0}.school-line{gap:19px;padding:10px 0;font-size:12px;display:flex}.school-line>span{color:var(--muted)}.school-week{grid-template-columns:repeat(5,minmax(125px,1fr));gap:10px;display:grid;overflow:auto}.school-week>div{background:var(--soft);border-radius:11px;padding:12px}.lesson{background:var(--surface);border-left:3px solid #5e9be0;border-radius:7px;gap:4px;margin-top:9px;padding:10px;font-size:11px;display:grid}.lesson small{color:var(--muted)}.week{grid-template-columns:repeat(7,1fr);gap:7px;margin-bottom:26px;display:grid}.week button{background:var(--soft);color:var(--ink);border:0;border-radius:11px;flex-direction:column;align-items:center;gap:8px;padding:15px 4px;display:flex}.week button.selected{color:#fff;background:#194b85}.week button b{font-size:21px}.week button small{font-size:10px}.row{align-items:center;gap:10px;display:flex}.row>.field{flex:1;min-width:0}.calendar-controls{gap:4px;display:flex}.fields{gap:17px;display:grid}.field{gap:7px;font-size:12px;font-weight:800;display:grid}.field input,.field select,.field textarea,.family-name select{border:1px solid var(--line);width:100%;color:var(--ink);background:var(--surface);border-radius:10px;outline:none;padding:12px}.checkbox{align-items:center;gap:9px;font-size:12px;font-weight:700;display:flex}.pills{flex-wrap:wrap;gap:7px;display:flex}.pill{background:var(--soft);color:var(--ink);border:0;border-radius:25px;padding:9px 13px;font-size:12px;font-weight:700}.pill.on{color:#fff;background:#194b85}.alert{background:var(--soft);color:var(--ink);border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:13px;display:flex}.admin-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;display:grid}.admin-grid>.card{min-width:0}.login-screen,.center{place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{width:min(460px,100%);padding:42px}.login-card .brand{margin-bottom:40px}.login-card h1 em{color:#4f91d2;font-style:normal}.login-card>.muted{margin-bottom:28px}.login-card .btn{width:100%}.link{color:var(--primary);background:0 0;border:0;margin-top:20px;font-size:12px;font-weight:800}.overlay{z-index:12;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0712217a;place-items:center;padding:12px;display:grid;position:fixed;inset:0}.dialog{background:var(--bg);width:min(520px,100%);max-height:94vh;padding:25px;overflow:auto}.dialog>header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.mobile-brand,.mobile-nav{display:none}@media (max-width:900px){.sidebar{width:210px}.school-week{overflow:auto}.card{padding:20px}}@media (max-width:720px){.sidebar{display:none}.top{height:70px;padding:0 17px}.top>span{display:none}.mobile-brand{font-size:19px;display:flex}.mobile-brand .logo{border-radius:10px;width:33px;height:33px}.body{padding:16px 15px 110px}.page-title{align-items:flex-start}.page-title h1{font-size:29px}.page-title>.btn{width:46px;padding:0;font-size:0}.page-title>.btn svg{width:20px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:15px}.stat strong{font-size:30px}.card{padding:19px 16px}.card-header{align-items:flex-start}.segmented{max-width:100%}.week{gap:3px}.week button{padding:12px 2px}.week button small:last-child{display:none}.week button small{font-size:9px}.week button b{font-size:18px}.mobile-nav{z-index:4;justify-content:space-around;gap:1px;padding:10px 3px;display:flex;position:fixed;bottom:10px;left:10px;right:10px}.mobile-nav button{color:var(--muted);background:0 0;border:0;justify-items:center;gap:4px;font-size:9px;display:grid}.mobile-nav button.active{color:var(--primary)}.mobile-nav small{font-size:9px}.mobile-nav .quick-add{color:#fff;background:#194b85;border-radius:15px;place-items:center;width:50px;height:50px;display:grid;position:absolute;bottom:66px;right:12px}.login-card{padding:27px}.row{flex-wrap:wrap}.row>.field{flex-basis:100%}.event-row{gap:10px}.time{min-width:64px}.school-week{grid-template-columns:repeat(5,135px)}}
