
:root{font-family:system-ui,sans-serif;color:#193a3d;background:var(--background,#f3f6f4)}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}aside{width:235px;background:var(--sidebar,#153d3d);color:#fff;padding:30px 22px;position:fixed;height:100vh}.logo{font-size:28px;font-weight:750;letter-spacing:-1px}.logo span{color:#bce0cd}.tag{font-size:11px;letter-spacing:3px;margin:4px 0 48px;color:#b4d2c8}nav button{display:block;width:100%;text-align:left;border:0;background:transparent;color:#d7e8e2;padding:14px;border-radius:10px;margin:6px 0}nav button.active{background:#315855;color:white}.asidefoot{margin-top:55px;color:#b4d2c8;font-size:13px;line-height:1.8}main{margin-left:235px;padding:32px 45px;max-width:1550px}.notice{background:#fff2d7;color:#73551d;padding:12px 18px;border-radius:10px;font-size:13px;margin-bottom:30px}header{display:flex;justify-content:space-between;align-items:center;gap:20px}h1{font-size:32px;letter-spacing:-1px;margin:8px 0}p{color:#637b79;line-height:1.5}.eyebrow{color:#567774;font-size:12px;letter-spacing:2px;text-transform:uppercase}.primary{background:var(--primary,#1b6057);color:white;border:0;padding:12px 20px;border-radius:9px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:28px 0}.card,.panel{background:white;border:1px solid #e1e9e5;border-radius:16px;padding:24px}.card strong{display:block;font-size:34px;margin:10px 0}.card small{color:#627c75}.columns{display:grid;grid-template-columns:1.6fr 1fr;gap:22px}h2{font-size:19px;margin:0 0 20px}.appointment{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid #edf1ee}.time{font-weight:700;color:#216456;min-width:50px}.details{flex:1}.details small{display:block;color:#718681;margin-top:5px}.badge{display:inline-block;background:#e9f3eb;color:#396648;padding:6px 10px;border-radius:20px;font-size:12px}.pending{background:#fff0d6;color:#8a6325}.subtle{background:#edf3ef;border:0;border-radius:8px;padding:8px 12px;color:#24584f}.task{padding:15px;background:#f5f8f5;border-radius:10px;margin-bottom:12px}.task p{font-size:13px;margin:5px 0}input{padding:12px;border:1px solid #cbdad3;border-radius:9px;width:100%;margin:8px 0 20px}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:12px;color:#647f76}td,th{padding:17px 10px;border-bottom:1px solid #e8eeea}section[hidden]{display:none}dialog{border:0;border-radius:18px;width:min(440px,90vw);padding:28px}dialog::backdrop{background:#12363388}label{display:block;font-size:14px}.actions{display:flex;justify-content:flex-end;gap:10px}#feedback{min-height:24px;color:#24584f;font-size:14px}footer{font-size:12px;color:#728680;margin:26px 0}button:focus-visible,input:focus-visible{outline:3px solid #bd9c50;outline-offset:3px}@media(max-width:900px){aside{position:static;width:auto;height:auto;padding:18px}.tag,.asidefoot{display:none}nav{display:flex;gap:5px}nav button{text-align:center}.logo{font-size:23px}main{margin:0;padding:22px}.columns{grid-template-columns:1fr}.cards{gap:8px}.card{padding:15px}.card strong{font-size:27px}header{align-items:flex-start}h1{font-size:27px}.panel{overflow:auto;padding:18px}}@media(max-width:500px){.cards{grid-template-columns:1fr}.card strong{display:inline;margin-left:15px}.appointment{flex-wrap:wrap}header{flex-direction:column}}

[hidden]{display:none!important}.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:white}.login-story{background:var(--sidebar);color:white;padding:clamp(30px,7vw,100px);display:flex;flex-direction:column;justify-content:center}.login-story h1{font-size:clamp(32px,4vw,54px);max-width:550px;margin:45px 0 20px}.login-story p{color:#bfd7cd}.login-box{padding:clamp(25px,6vw,80px);display:flex;flex-direction:column;justify-content:center}.login-box form{max-width:420px;width:100%;margin:auto}.login-box .primary{width:100%}.login-error{color:#973628;min-height:24px}.demo-access{background:#f1f6f2;padding:15px;border-radius:10px;font-size:13px;line-height:1.8;margin:20px 0}.module-option{display:flex;gap:15px;align-items:center;padding:16px;border-bottom:1px solid #edf1ee}.module-option input{width:auto;margin:0}.session-tools{display:flex;gap:10px;align-items:center;margin-bottom:20px;justify-content:flex-end;font-size:13px}.management a{color:#1b6057}@media(max-width:700px){.login-page{grid-template-columns:1fr}.login-story{padding:30px}.login-story h1{margin:20px 0}.login-box{padding:25px}nav{flex-wrap:wrap}.session-tools{flex-wrap:wrap}}

textarea{font:inherit;width:100%;padding:12px;border:1px solid #cbdad3;border-radius:9px;margin:8px 0 20px;resize:vertical}dialog{max-height:90vh;overflow:auto}#modal{width:min(560px,95vw)}.field-hint{font-size:12px;margin:5px 0 18px}dt{font-size:12px;color:#627c75;margin-top:18px}dd{margin:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}

.appointment{flex-wrap:wrap}.appointment .time{min-width:130px}dialog label{display:block;margin:12px 0}dialog input{display:block;width:100%;padding:10px;margin-top:6px}
