:root{--ink:#183c35;--muted:#647e76;--line:#dce8e2;--green:#137d66;--wash:#f3f7f5;--radius:18px}
html{scroll-padding-top:24px}body{background:var(--wash);color:var(--ink);line-height:1.65}main{max-width:1240px;margin:32px auto 60px;min-width:0}h1{font-size:clamp(25px,3.2vw,36px);line-height:1.4;margin:12px 0 24px;overflow-wrap:anywhere}h2{line-height:1.5;scroll-margin-top:24px}p{overflow-wrap:anywhere}.panel{border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 5px 24px #244d3810;min-width:0;background:#fff}.panel+.panel,main>form+form{margin-top:20px}.grid>* ,.cards>*{min-width:0}.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.grid{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr)}label{font-weight:500}input:not([type=hidden]),select,textarea{font:inherit;max-width:100%;width:100%;min-height:46px;display:block;padding:11px 13px;border:1px solid #cdded5;border-radius:10px;background:#fcfefd;color:var(--ink);margin-top:7px}input[type=checkbox],input[type=radio]{display:inline-block;width:20px;min-height:20px;vertical-align:middle}input[type=file]{font-size:13px}textarea{resize:vertical;min-height:110px}select{overflow:hidden;text-overflow:ellipsis}button,.button{border-radius:10px;background:var(--green);color:#fff;min-height:44px;max-width:100%;white-space:normal}.secondary{background:#e7f1eb;color:#245d48}.danger{background:#ffedeb;color:#a33830}button:disabled{cursor:not-allowed}.muted{color:var(--muted)}img,video,canvas,svg{max-width:100%}img{height:auto}code{overflow-wrap:anywhere;white-space:normal}.welcome{background:linear-gradient(120deg,#e0f1e6,#f0f8ed);border:1px solid #d4e8d9;padding:32px;border-radius:24px;margin-bottom:24px}.welcome h1{font-size:clamp(28px,4vw,42px);margin:0}.welcome p{color:#496a5c}.services{grid-template-columns:repeat(4,minmax(0,1fr))}.service{border-color:var(--line)}.service-icon{background:#e5f1e8;color:var(--green)}.brand{letter-spacing:0}.app-header{padding:18px max(24px,calc((100vw - 1192px)/2));display:flex;gap:20px;align-items:center;border-bottom:1px solid var(--line);background:white}.app-header .brand{flex-shrink:0}.app-header .brand b{background:var(--green)}.account-chip{margin-left:auto;font-size:13px;overflow-wrap:anywhere;min-width:0}.app-header form{margin:0}.app-header .brand small{font-weight:400;letter-spacing:0;color:var(--muted)}.app-menu{display:flex;flex-wrap:wrap;gap:8px;padding:12px max(24px,calc((100vw - 1192px)/2));background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:5}.menu-group{border:0;padding:0;position:relative}.menu-group summary{list-style:none;min-height:44px;padding:10px 14px;border-radius:10px;font-weight:500;display:flex;align-items:center;gap:16px}.menu-group summary::-webkit-details-marker{display:none}.menu-group summary:after{content:'⌄';color:var(--green);margin-left:auto}.menu-group[open] summary{background:#e7f3ec}.menu-items{position:absolute;top:calc(100% + 8px);left:0;min-width:250px;max-width:90vw;padding:8px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 16px 35px #183c3524}.menu-items a{display:block;padding:11px 12px;border-radius:8px;color:var(--ink);font-size:14px}.menu-items a:hover,.menu-items a[aria-current]{background:#eaf5ef;color:#0c6c50}.module-nav{display:flex;gap:8px;flex-wrap:wrap;padding:12px;margin:16px 0 24px;border:1px solid var(--line);background:white;border-radius:14px}.module-nav a{padding:9px 13px;border-radius:9px;background:#edf4ef;min-height:44px;display:inline-flex;align-items:center}.module-nav a[aria-current]{background:var(--green);color:white}.table-scroll{overflow:auto;max-width:100%;border-radius:12px;overscroll-behavior-inline:contain}.table-scroll:focus-visible{outline:3px solid #65b29b}th{background:#f1f6f3;color:#4b6b5d}td{vertical-align:top}summary{overflow-wrap:anywhere}summary:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8ac5b8;outline-offset:3px}.skip-link{position:fixed;top:-100px;left:12px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:12px}.room-links{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.room-links a{background:#edf5ef;border-radius:9px;padding:12px;font-size:13px}.section-group{padding:0;border:1px solid var(--line);border-radius:14px;background:#fff;margin:12px 0}.section-group>summary{padding:14px 18px;font-weight:600}.section-group>.module-nav{margin:0;border:0;border-top:1px solid var(--line);border-radius:0 0 14px 14px}
@media(min-width:761px){.menu-group:last-child .menu-items{left:auto;right:0}}
@media(max-width:1024px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.app-header{padding:16px 24px}.app-menu{padding:10px 24px}.services{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){main{padding:0 16px;margin-top:24px}.grid{grid-template-columns:minmax(0,1fr)}.app-header{padding:14px 16px;gap:10px;flex-wrap:wrap}.app-header .brand{font-size:22px}.account-chip{max-width:48%;font-size:12px}.app-header button{font-size:12px;padding:8px 12px}.app-menu{display:grid;grid-template-columns:1fr 1fr;padding:10px 16px;gap:6px;align-items:start}.menu-group summary{font-size:12px;padding:10px;gap:8px}.menu-items{position:static;min-width:0;max-width:none;box-shadow:none;margin-top:4px}.menu-items a{font-size:12px;padding:10px 8px}.panel{padding:20px}.welcome{padding:24px}.module-nav{gap:6px;padding:8px}.module-nav a{font-size:12px;padding:8px 10px}.table-scroll table{font-size:12px}th,td{padding:10px}.auth-layout .auth.panel{padding:24px 20px}}
@media(max-width:480px){.cards{grid-template-columns:minmax(0,1fr)}.services{gap:10px}.service{padding:14px}.brand small{display:none}.room-links{grid-template-columns:1fr}.app-menu{grid-template-columns:minmax(0,1fr)}.account-chip{max-width:50%}.auth-page{padding:0 16px}.auth-story h1{font-size:25px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Clearer hierarchy across the working app */
:root{--ink:#172f2b;--green:#007e68;--muted:#526e63;--line:#dce7e1}body{font-size:15px;background:#f4f7f6}.app-header{border-bottom:1px solid #e6ede9;padding-top:14px;padding-bottom:14px}.app-header .brand{font-size:25px;letter-spacing:-.7px}.app-header .brand b{border-radius:10px;width:38px;height:38px}.account-chip{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:500}.account-avatar{display:grid;place-items:center;background:#dceddf;color:#347352;border:1px solid #c7dfcc;width:33px;height:33px;border-radius:50%;flex-shrink:0}.app-menu{padding-top:8px;padding-bottom:8px;background:#fff;gap:10px}.menu-group summary{font-size:14px;color:#49635a}.menu-group[open] summary{background:#007e68;color:white}.menu-group[open] summary:after{color:white}.menu-items{border-radius:12px;padding:7px;box-shadow:0 12px 25px #153b2820}.menu-items a{padding:12px;font-size:14px}.panel{border-radius:14px;box-shadow:0 2px 9px #223b2b05;padding:24px}.cards>.panel+.panel{margin-top:0}main{margin-top:28px}h1{font-weight:700;color:#142e26;letter-spacing:-.8px}h2{font-size:21px;font-weight:600}.eyebrow{color:#4c7e64;font-size:11px;font-weight:600}.module-nav{background:transparent;border:0;padding:0;gap:8px}.module-nav a{background:white;border:1px solid #dce8df;font-size:14px;padding:9px 15px}.module-nav a[aria-current]{background:#007e68;border-color:#007e68}.section-group{border-radius:12px}.section-group>summary{padding:16px 20px;font-size:16px}.section-group>.module-nav{padding:12px}.welcome{background:#143d32;border:0;border-radius:18px;color:white;padding:32px}.welcome h1{color:white;font-size:34px}.welcome p{color:#bed8cb}.room-links a{background:#eff6f2;border:1px solid #dfebe3;font-size:14px;padding:14px}.room-links a:hover{background:#dcefe4}.muted{font-size:13px;color:#597368}.error{font-size:14px}label{font-size:14px;color:#385d4a}input:not([type=hidden]),select,textarea{font-size:16px;border-radius:9px;background:#fff;border-color:#cbdcd0}.button,button{font-weight:500;min-height:44px;padding:11px 18px;border-radius:9px}.secondary{background:#eaf2ed;color:#41664f}.danger{background:#ffefed;color:#b04438}.stats-grid .panel{display:flex;flex-direction:column;justify-content:space-between;min-height:135px;position:relative;padding:24px}.stats-grid .panel h2{font-size:38px;line-height:1.1;margin:16px 0 0;color:#007e68;font-weight:700}.stats-grid .panel:first-child{background:#113f34;color:#cbe5d8;border-color:#113f34}.stats-grid .panel:first-child h2{color:#b9f494}.stats-grid .panel:after{content:'↗';position:absolute;right:24px;top:20px;color:#75a284;font-size:20px}.dashboard-intro{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:28px}.dashboard-intro h1{margin:8px 0}.dashboard-intro p{margin:0;color:#657e70;font-size:14px}.dashboard-intro>a{flex-shrink:0}.table-scroll{border:1px solid #e1eae4}th{font-size:12px;white-space:nowrap;background:#f0f5f2}td{font-size:14px}.auth.panel{border-radius:18px}.auth-submit{font-size:15px}.password-control button{background:transparent;color:#007e68}.empty-panel{background:#fafcfb;border:1px dashed #cbded0;border-radius:12px;padding:24px;color:#658170;font-size:14px}
@media(max-width:760px){.app-menu{grid-template-columns:1fr 1fr;gap:5px}.menu-group summary{font-size:13px;padding:9px 10px}.app-header .brand{font-size:23px}.account-chip{font-size:12px}.account-avatar{width:29px;height:29px}.panel{padding:21px}.welcome{padding:26px}.welcome h1{font-size:29px}.module-nav a{font-size:13px}.section-group>summary{font-size:15px}.dashboard-intro{display:block}.dashboard-intro>a{margin-top:16px}.stats-grid{gap:12px}.stats-grid .panel{min-height:120px;padding:20px}.stats-grid .panel h2{font-size:34px}.stats-grid .panel:after{right:18px;top:16px}.auth-submit{font-size:15px}}
@media(max-width:480px){.app-menu{grid-template-columns:1fr}.account-chip{max-width:48%;line-height:1.4}.account-avatar{display:none}.dashboard-intro h1{font-size:28px}.stats-grid{grid-template-columns:1fr 1fr}.stats-grid>.panel:first-child{grid-column:1/-1;min-height:118px}.stats-grid .panel{font-size:13px;padding:18px}.stats-grid .panel:after{display:none}.room-links a{font-size:14px}}
.unread-count{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:12px;background:#007e68;color:#fff;font-size:11px}
