:root{font-family:"Instrument Sans","Noto Sans Devanagari",Arial,sans-serif;color:#111;background:#fff9ea;font-size:15px;font-variant-numeric:tabular-nums}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}h1,h2,h3,p{margin:0}h1{font-size:32px;line-height:1.15}h2{font-size:24px;line-height:1.25}h3{font-size:18px}a{color:#244c2c}a:hover{text-decoration:none}:focus-visible{outline:2px solid #111;outline-offset:3px}small,.muted{color:#526957}small{font-size:12px}.narrow{display:none;min-height:100vh;align-items:center;justify-content:center;padding:32px}.narrow .card{max-width:480px;padding:32px}.narrow img{width:60px}.narrow h1{margin:16px 0}
.login{display:grid;grid-template-columns:45% 55%;min-height:100vh}.login-brand{position:relative;background:#f9e24c;padding:64px;overflow:hidden}.login-brand img{width:94px}.login-brand h1{position:absolute;top:45%;font-size:64px}.login-brand:after{content:"";position:absolute;left:-10%;bottom:-120px;width:120%;height:220px;border-radius:50%;background:#4a842c}.login-form{display:grid;place-items:center;padding:48px}.login-form .card{width:460px;padding:40px;display:grid;gap:22px}
.shell{display:grid;grid-template-columns:258px 1fr;min-height:100vh}.sidebar{background:#244c2c;color:#fff9ea;padding:30px 18px;display:flex;flex-direction:column;gap:28px;position:sticky;top:0;height:100vh}.sidebar img{width:78px;margin:0 12px}.nav{display:grid;gap:4px}.nav button{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;text-align:left;padding:0 12px;background:transparent;border:0;border-radius:8px;color:inherit;font-weight:500}.nav button:hover{background:#111}.nav button.active{background:#f9e24c;color:#111}.sidebar footer{margin-top:auto;border-top:1px solid #68806d;padding:20px 12px 0;display:grid;gap:12px}.sidebar footer button{border:0;background:none;color:inherit;text-align:left;padding:0;text-decoration:underline}
.main{min-width:0;padding:28px 32px 72px;display:grid;align-content:start;gap:22px}.top{display:flex;align-items:center;justify-content:space-between;gap:16px}.top p{color:#244c2c;margin-top:5px}.top .who{font-size:13px;color:#244c2c}.grid{display:grid;gap:16px}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:#fff;border:1px solid #dcd8c9;border-radius:16px}.panel{padding:24px;display:grid;gap:16px}.metric{padding:20px 24px;display:grid;gap:4px}.metric strong{font-size:38px;line-height:1}.metric.lemon{background:#f9e24c;border-color:#f9e24c}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.toolbar .grow{flex:1}.input{min-height:44px;border:1px solid #244c2c;border-radius:12px;background:#fff;padding:9px 12px;min-width:0}.input.search{width:300px}.input.small{width:160px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 18px;border:1px solid #244c2c;border-radius:999px;background:#244c2c;color:#fff9ea;font-weight:600;white-space:nowrap}.btn:hover{background:#111;border-color:#111}.btn.secondary{background:#fff9ea;color:#244c2c}.btn.secondary:hover{background:#f1eddd;border-color:#244c2c}.btn.danger{background:#fff9ea;color:#be472b;border-color:#be472b}.btn.danger:hover{background:#be472b;color:#fff}.btn.small{min-height:36px;padding:0 12px;font-size:13px}.link{border:0;background:none;padding:4px;color:#244c2c;text-decoration:underline;font-weight:600}.pill{display:inline-flex;align-items:center;justify-content:center;min-height:36px;border:1px solid #244c2c;border-radius:999px;padding:0 12px;background:#fff;font-size:13px}.pill.selected{background:#f9e24c;border:2px solid #111;font-weight:600}.badge{display:inline-flex;align-items:center;min-height:27px;border-radius:999px;padding:3px 10px;background:#f1eddd;color:#244c2c;font-size:12px;font-weight:600}.badge.good{background:#244c2c;color:#fff9ea}.badge.warn{background:#f9e24c;color:#111}.badge.danger{border:1px solid #be472b;color:#be472b;background:#fff}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{background:#f1eddd;color:#244c2c;font-weight:500;text-align:left;padding:13px 16px;white-space:nowrap}.table td{border-top:1px solid #dcd8c9;padding:14px 16px;vertical-align:middle}.table tr:hover td{background:#fff9ea}.table td strong{display:block}.table td small{display:block}.table .actions{display:flex;gap:6px;align-items:center}.table .actions select{max-width:170px}.empty{padding:36px;text-align:center;color:#244c2c}.error{border:1px solid #be472b;background:#fff5f0;color:#a83820;border-radius:12px;padding:12px 16px}.hint{border-radius:12px;background:#f1eddd;color:#244c2c;padding:12px 16px}.stack{display:grid;gap:12px}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.55fr);gap:18px}.fields{display:grid;gap:12px}.field{display:grid;gap:5px}.field label{font-size:13px;color:#244c2c;font-weight:600}.field textarea{min-height:105px;resize:vertical}.chips{display:flex;gap:7px;flex-wrap:wrap}.day-pill{display:grid;gap:0;text-align:left;min-width:112px;padding:9px 12px;border:1px solid #244c2c;border-radius:16px;background:#fff}.day-pill.selected{background:#244c2c;color:#fff9ea}.day-pill strong{font-size:18px}.day-pill small{color:inherit}.slots{display:flex;flex-wrap:wrap;gap:6px}.modal-back{position:fixed;inset:0;background:rgba(17,17,17,.5);display:grid;place-items:center;z-index:20;padding:24px}.modal{width:min(100%,920px);max-height:92vh;overflow:auto;padding:28px;background:#fff;border-radius:20px;display:grid;gap:18px;box-shadow:0 24px 70px #1115}.modal-head{display:flex;justify-content:space-between;align-items:start;gap:16px}.modal-head button{border:0;background:none;font-size:26px}.brief{white-space:pre-wrap;background:#fff9ea;border-radius:12px;padding:16px;max-height:340px;overflow:auto;font-family:inherit;font-size:14px}.rows{display:grid;gap:8px}.row{border:1px solid #dcd8c9;border-radius:12px;padding:12px 14px;display:flex;gap:12px;justify-content:space-between;align-items:center}.row div{min-width:0}.row small{display:block}.divider{height:1px;background:#dcd8c9}.tabs{display:flex;gap:6px;border-bottom:1px solid #dcd8c9}.tabs button{border:0;background:none;padding:9px 13px;font-weight:600;color:#244c2c}.tabs button.active{border-bottom:3px solid #244c2c}.right{text-align:right}.nowrap{white-space:nowrap}#toast{position:fixed;bottom:20px;right:20px;z-index:30;max-width:420px;padding:12px 16px;border-radius:12px;background:#244c2c;color:#fff;box-shadow:0 10px 25px #1113;display:none}#toast.show{display:block}
@media(max-width:1279px){#app{display:none}.narrow{display:flex}}
