*{box-sizing:border-box}body{margin:0;background:#f5f7f6;color:#203632;font-family:system-ui,-apple-system,'Apple SD Gothic Neo',sans-serif}a{color:#157467;text-decoration:none}h1{font-size:29px}button{background:#147669;color:#fff;border:0;border-radius:10px;padding:13px 18px;font-weight:700;cursor:pointer}input{display:block;width:100%;padding:12px;margin:8px 0 18px;border:1px solid #cbd9d4;border-radius:9px}label{display:block;font-weight:600}.login,.page{max-width:500px;margin:8vh auto;padding:35px;background:white;border:1px solid #e2e9e5;border-radius:16px}.page{max-width:760px}.wide{max-width:1200px}.error{color:#b53030}.shell{display:flex;min-height:100vh}aside{background:white;border-right:1px solid #e0e9e5;width:240px;padding:28px;display:flex;flex-direction:column;gap:20px}aside a{padding:10px;background:#edf6f2;border-radius:8px}main{flex:1}.shell main{padding:48px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.card{background:white;padding:24px;border:1px solid #e2e9e5;border-radius:14px;color:inherit}.card p,.note{color:#758782}.scroll{overflow:auto;margin-top:24px}table{border-collapse:collapse;width:100%;min-width:850px;background:white}th,td{border-bottom:1px solid #e3ebe7;padding:12px;text-align:left;font-size:13px}@media(max-width:850px){.shell{display:block}aside{width:auto}.shell main{padding:22px}.grid{grid-template-columns:1fr}.login,.page{margin:20px}}

.filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:24px 0}.filters label{margin:0;min-width:130px}.filters input,.filters select{display:block;margin-top:6px;padding:10px;width:100%;border:1px solid #dce4e0;border-radius:8px}.filters button{height:40px}.secondary{background:#516c66}.region-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:10px}.mini{background:#fff;border:1px solid #e2e9e5;padding:14px;border-radius:10px}.mini span{display:block;color:#607a70;font-size:12px}.mini strong{font-size:24px}.scroll{overflow:auto}.scroll table{width:100%;border-collapse:collapse;background:#fff}.scroll th,.scroll td{padding:11px;text-align:left;border-bottom:1px solid #e5eae8;font-size:13px;vertical-align:top}.scroll th{white-space:nowrap;background:#eff6f3}

/* v1.2 controls */
.filters-v12{display:grid;grid-template-columns:minmax(155px,1fr) minmax(150px,1fr) minmax(210px,1.25fr) auto;align-items:end;gap:14px}
.filters-v12>label,.date-fields label{min-width:0;margin:0}
.filters-v12 input,.filters-v12 select,.schedule select{height:46px;width:100%;margin:8px 0 0;padding:10px 12px;background:#fff;border:1px solid #d3ded9;border-radius:9px;font:inherit}
.filters-v12 button{height:46px;white-space:nowrap}
.filter-actions{display:flex;align-items:end;gap:8px}
.date-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;grid-column:span 1}
[hidden]{display:none!important}
.schedule{margin:18px 0 26px;background:#f2f8f5;border:1px solid #d7e7df;border-radius:12px;padding:16px}
.schedule summary{cursor:pointer;font-weight:700}.schedule-form{margin-top:14px}.schedule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}
.schedule-grid label{font-size:13px}.cutoff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px;margin-bottom:20px}.cutoff-grid strong{font-size:17px}.cutoff-grid small{display:block;color:#72847d}
@media(max-width:1000px){.filters-v12{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-actions{grid-column:1/-1}.schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:550px){.filters-v12{grid-template-columns:1fr}.filter-actions{grid-column:1;flex-wrap:wrap}.date-fields{grid-column:1}.schedule-grid{grid-template-columns:1fr}}

.route-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.route-group{background:#fff;border:1px solid #dce7e2;border-radius:14px;padding:15px}.route-group h3{margin:4px 0 14px}.route-group h3 small{display:block;font-size:12px;font-weight:400;color:#6b8277}.route-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.route-tiles .mini strong{font-size:16px;margin-top:8px;display:block}.route-assign{display:flex;gap:6px}.route-assign select{min-width:170px;max-width:220px;padding:8px;border:1px solid #dce7e2;border-radius:8px}.route-assign button{padding:8px 12px}.success{background:#e4f7e9;color:#18683b;padding:12px;border-radius:8px}@media(max-width:700px){.route-groups{grid-template-columns:1fr}}
/* MANNA v1.9 consistent nested navigation */
.shell{min-height:100vh;display:flex;align-items:stretch}
.shell>.manna-sidebar{position:sticky;top:0;align-self:flex-start;height:100vh;overflow-y:auto;flex:0 0 238px;width:238px;padding:22px 15px;gap:9px}
.manna-logo{font-size:20px;font-weight:800;display:block;color:#214a3e;padding:8px 10px 20px}
.manna-logo small{display:block;font-size:10px;color:#759086;letter-spacing:2px}
.manna-sidebar .manna-nav-link{display:block;padding:12px 13px;border-radius:9px;background:transparent;color:#28584a}
.manna-sidebar .manna-nav-link.active,.manna-subnav a.active{background:#e3f3eb;color:#136953;font-weight:800}
.manna-nav-group{border-bottom:1px solid #e9efeb;padding:3px 0 10px}
.manna-nav-group summary{cursor:pointer;padding:13px 10px;font-weight:750;list-style:none}
.manna-nav-group summary::-webkit-details-marker{display:none}
.manna-nav-group summary:after{content:'⌄';float:right;color:#758782}
.manna-nav-group[open] summary:after{content:'⌃'}
.manna-subnav{display:flex;flex-direction:column;gap:3px;padding:3px 0 3px 14px}
.manna-subnav a{display:block;font-size:13px;padding:10px;border-radius:8px;background:transparent}
.manna-side-note{margin-top:32px;padding:12px 8px;font-size:11px;line-height:1.8;color:#87978f}
.shell>.content-panel{min-width:0;flex:1;max-width:none;margin:0;padding:30px 34px;border:0;border-radius:0;background:#f5f7f6}
.shell>.content-panel>.scroll{background:#fff}
.shell>.content-panel .manna-filters input[type=date],.shell>.content-panel .foods-filters input[type=date]{width:165px;padding:8px;margin:0;max-width:100%}
.shell>.content-panel .manna-filters select,.shell>.content-panel .foods-filters select{padding:9px;max-width:180px}
@media(max-width:800px){.shell{display:block}.shell>.manna-sidebar{position:relative;width:100%;height:auto;padding:12px 20px}.shell>.content-panel{padding:18px}.manna-side-note{display:none}}
