
:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:#112b56;background:#f2f5fa}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ffce37;outline-offset:2px}.shell{max-width:1240px;margin:auto;min-height:100dvh;display:grid;grid-template-columns:240px 1fr}.side{background:#112b56;color:#fff;padding:30px 18px;display:flex;flex-direction:column;gap:30px}.brand{font-size:23px;font-weight:850;letter-spacing:-1px;padding:0 12px}.brand span{color:#ffd348}.brand small{font-size:11px;font-weight:550;letter-spacing:2px;display:block;color:#b8cbe4;margin-top:5px}.nav{display:grid;gap:6px}.nav button{border:0;background:transparent;color:#c5d5e9;text-align:left;padding:13px 14px;border-radius:12px;font-weight:650}.nav button.active,.nav button:hover{color:#112b56;background:#ffd348}.side-note{margin-top:auto;padding:15px;border-radius:14px;background:#213e69;color:#c4d7ed;font-size:12px;line-height:1.5}.main{padding:34px 38px 70px;min-width:0}.top{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:28px}.eyebrow{color:#577192;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:2px}h1{font-size:clamp(28px,4vw,42px);letter-spacing:-1.6px;margin:6px 0 8px}h2{font-size:20px;letter-spacing:-.5px;margin:0 0 17px}p{line-height:1.55}.muted{color:#71839a}.top-right{display:flex;gap:10px;align-items:center}.chip,.selector{border:1px solid #dbe5ef;border-radius:12px;background:#fff;padding:10px 12px;color:#1c395c;font-weight:700}.chip{font-size:12px}.notice{background:#fff8d9;border:1px solid #f6e7a7;padding:12px 16px;border-radius:12px;color:#785c13;font-size:13px;margin-bottom:24px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:25px}.stat,.card{background:white;border:1px solid #e4ebf2;box-shadow:0 5px 24px #173c7210;border-radius:18px}.stat{padding:19px}.stat b{display:block;font-size:31px;letter-spacing:-1px;margin:10px 0 0}.stat span{font-size:12px;color:#667f9c;font-weight:700}.stat .tiny{font-size:12px;color:#336092;margin:3px 0 0}.grid{display:grid;grid-template-columns:1.35fr 1fr;gap:17px}.card{padding:23px;margin-bottom:17px}.row{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #edf1f6;padding:14px 0}.row:first-of-type{border-top:0}.row strong{display:block}.row small{display:block;color:#7487a0;margin-top:4px}.tag{font-size:11px;font-weight:800;padding:7px 9px;border-radius:100px;white-space:nowrap;background:#e9f1fb;color:#245682}.tag.warn{background:#fff2ca;color:#83610b}.tag.done{background:#e3f5eb;color:#23734b}.actions{display:flex;gap:8px;flex-wrap:wrap}.primary{background:#ffd348;color:#152e50;border:0;border-radius:11px;padding:11px 16px;font-weight:800}.secondary{background:#eef3f8;color:#21466c;border:0;border-radius:10px;padding:9px 12px;font-weight:700}.danger{color:#9b3942}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.section-head h2{margin:0}.filters{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.filters button{border:1px solid #dce6f1;background:white;border-radius:100px;padding:8px 13px;color:#506985}.filters button.active{background:#173c6d;color:white}.field{display:grid;gap:6px;margin-bottom:15px;font-size:13px;font-weight:750;color:#355475}.field input,.field select,.field textarea{width:100%;border:1px solid #d9e3ee;border-radius:10px;padding:11px;background:#fff;color:#193959}.field textarea{min-height:85px;resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.shift-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.day{border:1px solid #e3eaf2;border-radius:12px;padding:9px;min-height:135px;background:#fbfdff}.day>strong{font-size:13px}.day>small{display:block;color:#869bb0;margin:3px 0 8px}.shift{font-size:11px;background:#eaf2fc;color:#1b4a7e;padding:6px;border-radius:7px;margin:5px 0;line-height:1.25}.shift.mine{background:#fff0b9;color:#654f0b}.lesson{background:#f3f7fc;border-radius:13px;padding:17px;margin:18px 0}.lesson ol{padding-left:20px;line-height:1.9}.empty{text-align:center;color:#7689a1;padding:30px}.mobilebar{display:none}dialog{border:0;border-radius:18px;padding:24px;width:min(460px,calc(100% - 30px));box-shadow:0 25px 80px #09244355}dialog::backdrop{background:#09244388}.dialoghead{display:flex;justify-content:space-between;align-items:center}dialog h2{margin:0 0 16px}.close{border:0;background:transparent;font-size:25px;color:#4b6888}@media(max-width:850px){.shell{display:block}.side{display:none}.main{padding:23px 16px 100px}.top{align-items:start}.top-right{flex-direction:column;align-items:end}.stats{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}.mobilebar{display:flex;position:fixed;bottom:0;left:0;right:0;justify-content:space-around;background:#112b56;padding:8px 2px calc(8px + env(safe-area-inset-bottom));z-index:4;box-shadow:0 -5px 25px #173c7230}.mobilebar button{border:0;background:none;color:#c6d8ee;font-size:10px;font-weight:700;min-width:58px;padding:5px 0}.mobilebar button.active{color:#ffd348}.mobilebar button span{display:block;font-size:21px;margin-bottom:3px}.shift-grid{grid-template-columns:repeat(7,minmax(95px,1fr));overflow-x:auto}.scroll{overflow-x:auto}.day{min-height:130px}.chip{display:none}}@media(max-width:420px){.stat{padding:14px}.stat b{font-size:25px}.top-right{max-width:138px}.selector{max-width:138px;font-size:12px}}
.avatar{width:38px;height:38px;border-radius:50%;background:#dce9fb;color:#173c6d;display:inline-flex;align-items:center;justify-content:center;font-weight:850;flex:none;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.person{display:flex;align-items:center;gap:12px;min-width:0}.person small{line-height:1.4}.status-note{font-size:13px;color:#6f8197}.info-card{border-left:4px solid #3879bd}.info-card.alert{border-left-color:#d77238}.info-card.sale{border-left-color:#e4b021}.info-meta{font-size:12px;color:#67809c;font-weight:750;margin:0 0 8px}.info-card p{margin:8px 0 0;white-space:pre-wrap}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.profile-avatar{width:82px;height:82px;font-size:30px}.account-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.account-row{align-items:flex-start}.account-row .actions{justify-content:flex-end;align-items:center;gap:8px}.account-row .actions .secondary{min-height:36px;padding:8px 12px;font-size:13px;line-height:20px;white-space:nowrap}.account-row .actions .tag{min-height:36px;display:inline-flex;align-items:center;font-size:12px;padding:8px 11px;line-height:20px}.warning-inline{padding:10px 13px;background:#fff8d9;border-radius:10px;color:#785c13;font-size:13px;margin:12px 0}.nav button span{margin-right:7px}@media(max-width:850px){.mobilebar{overflow-x:auto;justify-content:flex-start;gap:5px}.mobilebar button{flex:0 0 69px}.mobilebar button span{margin:0 0 3px}.profile-grid{grid-template-columns:1fr}.account-row{flex-direction:column;align-items:stretch}.account-row .actions{justify-content:flex-start}} 
/* Refined blue glass theme */
:root{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display",Inter,ui-sans-serif,system-ui,sans-serif;color:#172b4b;background:#eaf0fa}
body{background:radial-gradient(ellipse 52% 36% at 85% 0%,#cfdfff 0%,transparent 78%),radial-gradient(ellipse 48% 45% at 8% 82%,#d9e9ff 0%,transparent 75%),linear-gradient(145deg,#f5f8ff,#e9f0fa 60%,#f4f7fc);background-attachment:fixed}
.shell{max-width:1440px;grid-template-columns:246px minmax(0,1fr);min-height:100dvh}
.side{background:linear-gradient(164deg,#122c60 0%,#1b4382 48%,#123264 100%);box-shadow:16px 0 50px #173d741a;position:relative;overflow:hidden;gap:35px}
.side:before{content:"";position:absolute;top:-130px;left:-150px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,#84bcff48,transparent 66%);pointer-events:none}
.side:after{content:"";position:absolute;bottom:-180px;right:-170px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,#7497ff3b,transparent 68%);pointer-events:none}
.side>*{position:relative;z-index:1}.brand{font-size:25px;letter-spacing:-1.3px}.brand span{color:#add9ff}.brand small{color:#c7dfff;letter-spacing:2.4px}
.nav{gap:6px}.nav button{border:1px solid transparent;border-radius:15px;padding:13px 15px;color:#d2e2fb;transition:background .2s,transform .2s,border-color .2s;display:flex;align-items:center;gap:10px}
.nav button span{width:21px;text-align:center;font-size:20px;line-height:1;margin-right:0}.nav button:hover{background:#ffffff20;color:white;transform:translateX(2px)}
.nav button.active{color:white;background:linear-gradient(115deg,#ffffff35,#ffffff17);border-color:#ffffff50;box-shadow:inset 0 1px #ffffff66,0 10px 20px #061e4550;backdrop-filter:blur(14px)}
.side-note{background:#ffffff18;border:1px solid #ffffff2b;color:#d6e7ff;backdrop-filter:blur(16px);border-radius:18px}
.main{padding:42px clamp(22px,4vw,58px) 86px}.top{position:relative;align-items:center;gap:20px;padding:28px 30px;margin-bottom:20px;border:1px solid #ffffffd6;border-radius:26px;background:linear-gradient(119deg,#ffffffdc 0%,#f4f8ffdb 55%,#dbe9ffcb 100%);box-shadow:0 15px 48px #3e65a51a,inset 0 1px 1px #fff;overflow:hidden}
.top:after{content:"";position:absolute;width:320px;height:320px;right:8%;top:-260px;border-radius:50%;background:#97bfff6b;filter:blur(35px);pointer-events:none}.top>*{position:relative;z-index:1}
.eyebrow{font-size:11px;letter-spacing:1.7px;color:#5274a8}h1{font-size:clamp(30px,3.5vw,43px);font-weight:780;letter-spacing:-1.9px;line-height:1.12;margin:10px 0 8px;color:#102c58}h2{color:#17365f;font-weight:760;letter-spacing:-.6px}.muted{color:#607590}
.chip,.selector{background:#ffffffb8;border:1px solid #fff;box-shadow:0 4px 16px #2f5a9416,inset 0 1px #fff;border-radius:13px;color:#234b78;backdrop-filter:blur(16px)}.selector{min-height:43px}
.notice{background:linear-gradient(105deg,#eaf3ffeb,#f4f8ffeb);border:1px solid #cfdef1;border-radius:16px;color:#37587e;padding:12px 17px;box-shadow:0 6px 20px #335d9310}
.stat,.card{background:linear-gradient(145deg,#ffffffed,#f9fbffec);border:1px solid #ffffff;box-shadow:0 10px 36px #31588913,0 1px 5px #3158890b,inset 0 1px 0 #fff;border-radius:22px}
.stat{min-height:148px;padding:21px 22px;position:relative;overflow:hidden}.stat:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#5a98eb,#9fbbff 70%,transparent)}.stat:nth-child(2):before{background:linear-gradient(90deg,#766ae8,#c0abff 70%,transparent)}.stat:nth-child(3):before{background:linear-gradient(90deg,#20a8c1,#9bdee9 70%,transparent)}.stat:nth-child(4):before{background:linear-gradient(90deg,#d29a53,#f4d7a1 70%,transparent)}
.stat span{color:#547397;font-size:11px;letter-spacing:.55px}.stat b{font-size:38px;color:#173f79;line-height:1.1}.stat .tiny{color:#68809e}
.card{padding:25px}.row{border-color:#e9eff8;padding:16px 0}.row strong{color:#234064;font-weight:710}.row small{color:#7489a3}
.primary,.secondary,.filters button{transition:transform .18s,box-shadow .18s,background .18s}.primary{color:#fff;background:linear-gradient(120deg,#2669bb,#497ee0 72%,#6b8ff1);box-shadow:0 7px 17px #326cb73d,inset 0 1px #ffffff50;border-radius:12px}.primary:hover{transform:translateY(-2px);box-shadow:0 10px 22px #326cb74a}.secondary{background:linear-gradient(135deg,#eef4ff,#e6effb);border:1px solid #dae7f6;color:#29578a;border-radius:11px}.secondary:hover{background:#dcecff;transform:translateY(-1px)}.secondary:disabled{opacity:.5;cursor:not-allowed;transform:none}
.tag{background:#e6f0ff;color:#235b97;border:1px solid #d5e6fa}.tag.warn{background:#fff2d8;border-color:#f8e5bd}.tag.done{background:#e1f6ec;border-color:#ccebdc}
.filters button{border-color:#d5e3f4;color:#45658b;background:#ffffffbf}.filters button.active{background:linear-gradient(110deg,#245ca2,#4e80ce);color:#fff;border-color:transparent;box-shadow:0 5px 14px #2760a533}
.avatar{background:linear-gradient(145deg,#d7e9ff,#e9e3ff);color:#345d9a;box-shadow:inset 0 1px #fff;border:1px solid #d8e5f7}.lesson{background:linear-gradient(130deg,#eef5ff,#e7efff);border:1px solid #dbe8fa}.day{background:linear-gradient(150deg,#fff,#f6f9ff);border-color:#e2ebf7}.shift{background:#e3eeff}.shift.mine{background:#fff0c9}
.field input,.field select,.field textarea{border-color:#d4e2f2;background:#fbfdff}.field input:focus,.field select:focus,.field textarea:focus{border-color:#7ba8e1}dialog{background:linear-gradient(140deg,#fff,#f5f9ff);border:1px solid #fff;border-radius:24px;box-shadow:0 30px 90px #0a285b55}dialog::backdrop{background:#0b245880;backdrop-filter:blur(7px)}
@media(max-width:1100px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.grid{grid-template-columns:1fr}}
@media(max-width:850px){.main{padding:18px 14px 110px}.top{padding:22px 20px;border-radius:22px;align-items:flex-start}.mobilebar{left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom));width:auto;justify-content:flex-start;border:1px solid #ffffff62;border-radius:22px;padding:7px;background:linear-gradient(110deg,#183f78e8,#225494eb);box-shadow:0 12px 36px #09274a4d,inset 0 1px #ffffff4d;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);scrollbar-width:none}.mobilebar::-webkit-scrollbar{display:none}.mobilebar button{border-radius:15px;min-width:70px;flex:0 0 70px;color:#e5f1ff;padding:7px 3px}.mobilebar button.active{background:#ffffff29;color:#fff;box-shadow:inset 0 1px #ffffff50}.mobilebar button span{font-size:20px}.card{padding:21px}.stat{min-height:132px}}
@media(max-width:520px){.top{display:block}.top-right{margin-top:18px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;max-width:none;gap:8px}.selector{max-width:min(64vw,260px);font-size:12px}.chip{font-size:11px;padding:9px}.stats{gap:9px}.stat{padding:17px;min-height:123px}.stat b{font-size:32px}.stat span{font-size:10px}.section-head{align-items:flex-start;flex-wrap:wrap}.account-row .actions{gap:6px}.account-row .actions .secondary{font-size:12px;padding:7px 9px}.account-row .actions .tag{font-size:11px;padding:7px 9px}}
@media(max-width:420px){.top-right{max-width:none}.selector{max-width:min(62vw,240px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
@media(prefers-contrast:more){.top,.stat,.card,.chip,.selector,.secondary{background:#fff;border-color:#637b9b}.side,.mobilebar{background:#123361}.nav button.active{background:#fff;color:#123361}}

/* Clearer, lighter desktop typography */
:root{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400}
body,button,input,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;-webkit-font-smoothing:auto;text-rendering:optimizeLegibility}
.brand{font-weight:600;letter-spacing:-.7px}.brand small{font-weight:400;letter-spacing:1.8px}
.nav button,.mobilebar button{font-weight:500}.eyebrow{font-weight:500;letter-spacing:1.4px}
h1{font-weight:600;letter-spacing:-1.2px}h2{font-weight:500;letter-spacing:-.3px}
.row strong,.lesson strong,.day>strong,.person strong{font-weight:500}
.stat b{font-weight:500;letter-spacing:-.7px}.stat span{font-weight:500;letter-spacing:.3px}
.primary,.secondary,.chip,.selector,.filters button,.tag{font-weight:500}
.field{font-weight:500}.shift b{font-weight:500}

.auth-screen{min-height:100dvh;display:grid;place-items:center;padding:24px}.auth-card{width:min(460px,100%);padding:35px}.auth-card h1{margin:20px 0 12px}.auth-card p{color:#607590}.auth-card .primary{margin-top:12px}.auth-error{color:#a63440}.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.item-form{display:grid;gap:12px}.item-form label{display:grid;gap:5px;font-size:14px;color:#45658b}.item-form input,.item-form select,.item-form textarea{padding:10px 12px;border-radius:10px;border:1px solid #d4e2f2;width:100%;background:#fff}.item-form textarea{min-height:80px}.slot{display:flex;align-items:center;gap:10px;justify-content:space-between}.slot>div{min-width:0}.app-message{margin-bottom:16px;border:1px solid #cae1f1;background:#eff8ff;padding:12px 16px;border-radius:12px}.app-message.error{border-color:#edcaca;background:#fff0f0;color:#91353b}.account-row .person{min-width:0;overflow-wrap:anywhere}.account-row .actions{flex:0 0 auto}.tiny-link{border:0;background:transparent;color:#3b6da9;padding:5px;cursor:pointer}.form-actions{display:flex;justify-content:flex-end;gap:8px}.fifobox{line-height:1.65}.fifobox li{margin:7px 0}.section-head .primary{white-space:nowrap}@media(max-width:650px){.top-right{max-width:none}.row{align-items:flex-start;flex-direction:column}.row .actions{width:100%}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
