@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@500;600;700&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap";:root{--ink:#16241f;--muted:#718079;--green:#174a3b;--lime:#c9f04c;--cream:#f5f6f0;--line:#e3e8e2;--white:#fff;--orange:#ff865d;--blue:#598ee5;--purple:#8a6cdc;--shadow:0 12px 35px #1b3d3212}*{box-sizing:border-box}body{color:var(--ink);background:#f7f8f4;margin:0;font-family:Noto Sans KR,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex}.sidebar{color:#fff;z-index:5;background:#153d33;flex-direction:column;width:248px;padding:30px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:10px;display:flex}.brand-mark{background:var(--lime);color:#183c32;border-radius:13px;place-items:center;width:43px;height:43px;display:grid}.brand>div{line-height:.95;display:grid}.brand strong{letter-spacing:1px;font:800 22px DM Sans}.brand b{letter-spacing:4.3px;color:var(--lime);margin-top:5px;font:700 10px DM Sans}.school-chip{background:#ffffff0d;border:1px solid #ffffff13;border-radius:14px;align-items:center;gap:10px;margin:28px 0 22px;padding:12px;display:flex}.school-chip>span{width:35px;height:35px;color:var(--lime);background:#2b5a4e;border-radius:10px;place-items:center;font:700 11px DM Sans;display:grid}.school-chip div{display:grid}.school-chip b{font-size:13px}.school-chip small{color:#9cb5ad;margin-top:3px;font-size:10px}.sidebar nav{gap:4px;display:grid}.sidebar a{color:#b8cac4;border-radius:12px;align-items:center;gap:13px;padding:12px 13px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.sidebar a:hover,.sidebar a.active{color:#173f35;background:#fff}.sidebar a.active svg{color:#5e8d00}.admin-link{margin-top:16px;border-top:1px solid #ffffff15!important;border-radius:0!important;padding-top:22px!important}.admin-link.active{border-radius:12px!important}.admin-link span{color:#fff;background:#ff775c;border-radius:20px;place-items:center;width:22px;height:22px;margin-left:auto;font-size:11px;display:grid}.side-footer{margin-top:auto}.side-footer p{color:#829f96;font:500 12px/1.6 DM Sans}.side-footer p b{color:var(--lime)}.side-footer button{color:#93aaa3;background:0 0;border:0;align-items:center;gap:9px;padding:8px 0;display:flex}.topbar{border-bottom:1px solid var(--line);z-index:4;background:#fff;justify-content:space-between;align-items:center;height:82px;padding:0 42px;display:flex;position:sticky;top:0}.date{display:grid}.date b{font-size:14px}.date small{color:var(--muted);margin-top:3px;font-size:11px}.top-actions{align-items:center;gap:16px;display:flex}.bell{border:1px solid var(--line);background:#fff;border-radius:13px;place-items:center;width:42px;height:42px;display:grid;position:relative}.bell i{background:#ff654b;border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:8px;right:9px}.role-select{align-items:center;gap:9px;display:flex}.avatar{width:38px;height:38px;color:var(--green);background:#e5f0ec;border-radius:12px;place-items:center;font-size:13px;font-weight:800;display:grid}.avatar.teacher{color:#c66a22;background:#fff0df}.avatar.parent{color:#7452bd;background:#eee8fc}.role-select label{display:grid}.role-select small{color:var(--muted);font-size:9px}.role-select select{appearance:none;background:0 0;border:0;outline:none;padding:0 20px 0 0;font-size:13px;font-weight:700}.content{max-width:1530px;margin:auto;padding:38px 42px 70px}.mobile-brand,.bottom-nav{display:none}.eyebrow{color:#5b8b75;letter-spacing:2.2px;font:700 10px DM Sans}.welcome{background:#dcebe2;border-radius:24px;min-height:230px;padding:40px 44px;display:flex;position:relative;overflow:hidden}.welcome h1{margin:12px 0;font-size:34px;line-height:1.28}.welcome h1 em{color:#38715d;font-style:normal}.welcome p{color:#647a70;font-size:13px}.welcome-art{background:#17483a;border-radius:50% 0 0 50%;width:46%;height:100%;position:absolute;top:0;right:0;overflow:hidden}.welcome-art .sun{background:var(--lime);border-radius:50%;width:90px;height:90px;position:absolute;top:30px;right:70px}.welcome-art .track{border:2px solid #ffffff2b;border-radius:50%;width:330px;height:130px;position:absolute;bottom:13px;right:-35px;transform:rotate(-20deg)}.welcome-art .t2{width:280px;right:-10px}.welcome-art .t3{width:230px;right:15px}.welcome-art svg{color:var(--lime);width:58px;height:58px;position:absolute;bottom:60px;right:105px;transform:rotate(-12deg)}.metric-grid{grid-template-columns:repeat(5,1fr);gap:13px;margin-top:18px;display:grid}.metric-grid article{border:1px solid var(--line);background:#fff;border-radius:16px;gap:12px;padding:17px;display:flex}.metric-icon{border-radius:11px;flex:none;place-items:center;width:38px;height:38px;display:grid}.metric-icon svg{width:18px}.c0{color:#5a8515;background:#e7f5cc}.c1{color:#4779c7;background:#e7f0fd}.c2{color:#e3724c;background:#fff0e7}.c3{color:#3f826b;background:#e6f3ed}.c4{color:#7552b3;background:#f0eafa}.metric-grid article div{display:grid}.metric-grid small{color:var(--muted);font-size:10px}.metric-grid b{margin-top:2px;font:700 23px DM Sans}.metric-grid b em{margin-left:2px;font:600 10px Noto Sans KR}.metric-grid p{color:#75927e;margin:2px 0 0;font-size:9px}.dashboard-grid{grid-template-columns:1.45fr 1fr;gap:18px;margin-top:18px;display:grid}.panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:20px;padding:25px}.panel-head{justify-content:space-between;align-items:center;margin-bottom:19px;display:flex}.panel-head h2,.section-title h2{margin:5px 0 0;font-size:19px}.text-btn{color:#66766f;background:0 0;border:0;align-items:center;gap:5px;font-size:11px;display:flex}.text-btn svg{width:14px}.timeline{display:grid}.schedule-row{border-bottom:1px solid #edf0ed;grid-template-columns:50px 12px 1fr auto;align-items:center;gap:12px;height:57px;display:grid}.schedule-row time{color:#74827d;font:600 11px DM Sans}.schedule-row>i{background:#78a38f;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #edf4f0}.schedule-row>i.paps{background:#608dde}.schedule-row>i.swim{background:#3fb5c8}.schedule-row>i.archery{background:#9a6ac8}.schedule-row div{display:grid}.schedule-row b{font-size:13px}.schedule-row small{color:var(--muted);margin-top:2px;font-size:10px}.schedule-row>span{color:#7b847f;background:#f0f2ef;border-radius:20px;padding:5px 9px;font-size:9px}.schedule-row .live{color:#567f16;background:#e9f8d0}.room-status{background:#f2f7f4;border-radius:12px;align-items:center;gap:10px;margin-top:14px;padding:12px;display:flex}.room-status svg{color:#4f826d;width:18px}.room-status div{display:grid}.room-status b{font-size:11px}.room-status small{color:var(--muted);font-size:9px}.room-status>span{margin-left:auto;font-size:9px}.todo-panel .count{color:#fff;background:#ff7256;border-radius:20px;padding:4px 8px;font-size:10px}.todo{text-align:left;background:#fff;border:0;border-top:1px solid #edf0ed;align-items:center;gap:12px;width:100%;padding:14px 0;display:flex}.todo>span:first-child{color:#587c25;background:#edf5e2;border-radius:11px;place-items:center;width:39px;height:39px;display:grid}.todo>span svg{width:18px}.todo div{display:grid}.todo b{font-size:12px}.todo small{color:var(--muted);margin-top:3px;font-size:9px}.todo>svg,.todo .new{margin-left:auto}.todo>svg{color:#a6b0ac;width:15px}.todo .new{color:#ef6b4c;background:#fff0eb;border-radius:10px;padding:5px 7px;font:700 8px DM Sans}.quick-section{margin-top:32px}.section-title{justify-content:space-between;align-items:end;margin-bottom:16px;display:flex}.section-title p{color:var(--muted);font-size:11px}.quick-grid{grid-template-columns:repeat(6,1fr);gap:12px;display:grid}.quick-grid button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:15px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:17px;display:grid}.quick-grid button>span{color:#5e8c25;background:#e7f3df;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.quick-grid button span.q1,.quick-grid button span.q4{color:#4c79ad;background:#e5f0fa}.quick-grid button span.q2,.quick-grid button span.q5{color:#d37844;background:#fff0e6}.quick-grid button span.q3{color:#7b59a9;background:#eee7f8}.quick-grid svg{width:17px}.quick-grid button>svg{color:#9aa5a0;width:13px}.quick-grid b{font-size:11px}.lower-grid{grid-template-columns:1.55fr 1fr;gap:18px;margin-top:32px;display:grid}.cal-nav{align-items:center;gap:9px;display:flex}.cal-nav button{border:1px solid var(--line);background:#fff;border-radius:8px;place-items:center;width:27px;height:27px;display:grid}.cal-nav b{font:600 11px DM Sans}.week,.days{grid-template-columns:repeat(5,1fr);display:grid}.week span{text-align:center;color:#9aa49f;padding-bottom:9px;font-size:9px}.day{border-top:1px solid #edf0ed;flex-direction:column;align-items:center;height:50px;padding:5px;display:flex}.day b{color:#6f7d77;font:500 9px DM Sans}.day.today b{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:18px;height:18px;display:grid}.tag{color:#547921;background:#e8f2df;border-radius:6px;margin-top:3px;padding:2px 5px;font-size:7px}.tag.paps{color:#4d77b0;background:#e6effb}.tag.swim{color:#368491;background:#ddf3f5}.tag.event{color:#bd6643;background:#fff0e8}.tag.archery{color:#7854a3;background:#eee7f7}.legend{flex-wrap:wrap;gap:12px;margin-top:12px;display:flex}.legend span{color:#78847e;font-size:7px}.legend i{background:#78a34e;border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block}.legend i.paps{background:#5a86ca}.legend i.swim{background:#40a8b7}.legend i.event{background:#e27d57}.legend i.archery{background:#8761b0}.notice-panel article{border-top:1px solid #edf0ed;gap:12px;padding:14px 0;display:flex}.notice-level{white-space:nowrap;color:#69756f;background:#eef1ef;border-radius:7px;height:min-content;padding:4px 7px;font-size:8px;font-weight:700}.notice-level.긴급{color:#e56045;background:#ffebe6}.notice-level.필독{color:#638127;background:#edf4db}.notice-panel article div{display:grid}.notice-panel article b{font-size:11px}.notice-panel article p{color:var(--muted);margin:4px 0;font-size:9px}.notice-panel article small{color:#a1aaa5;font-size:8px}.parent-hero{color:#fff;background:#17483a;border-radius:24px;justify-content:space-between;align-items:center;padding:34px;display:flex}.parent-hero span{color:var(--lime);font-size:11px;font-weight:700}.parent-hero h1{margin:8px 0;font-size:27px}.parent-hero p{color:#bed1c9;margin:0;font-size:13px}.weather{text-align:right;display:grid}.weather b{color:var(--lime);font:700 35px DM Sans}.weather small{font-size:10px}.child-strip{border:1px solid var(--line);background:#fff;border-radius:17px;align-items:center;gap:12px;margin-top:14px;padding:15px 20px;display:flex}.child-avatar{color:#396552;background:#e9f1e7;border-radius:13px;place-items:center;width:42px;height:42px;font-weight:800;display:grid}.child-strip>div:nth-child(2){display:grid}.child-strip b{font-size:13px}.child-strip small{color:var(--muted);font-size:10px}.child-strip>span{color:#557b1d;background:#eaf5da;border-radius:20px;gap:4px;margin-left:auto;padding:8px 12px;font-size:10px;display:flex}.child-strip svg{width:13px}.parent-cards{grid-template-columns:repeat(5,1fr);gap:14px;margin-top:20px;display:grid}.parent-card{text-align:left;box-shadow:var(--shadow);background:#fff;border:0;border-radius:19px;min-height:170px;padding:24px 19px;display:grid}.parent-card>span{color:#3f725c;background:#e3f0e5;border-radius:15px;place-items:center;width:48px;height:48px;display:grid}.parent-card.p1>span,.parent-card.p2>span{color:#698722;background:#f0f6d7}.parent-card.p3>span{color:#507bb3;background:#e7effb}.parent-card.p4>span{color:#7b58a4;background:#f2eafa}.parent-card div{margin-top:18px;display:grid}.parent-card b{font-size:14px}.parent-card small{color:var(--muted);margin-top:4px;font-size:10px}.parent-card>svg{color:#98a39e;justify-self:end;width:16px}.parent-today{border:1px solid var(--line);background:#fff;border-radius:20px;margin-top:26px;padding:26px}.date-chip{background:#eff3ef;border-radius:9px;padding:7px 11px;font-size:10px}.parent-event{border-top:1px solid var(--line);grid-template-columns:55px 10px 1fr auto;align-items:center;gap:12px;height:62px;display:grid}.parent-event time{font:600 12px DM Sans}.parent-event>i{background:#789f50;border-radius:50%;width:8px;height:8px}.parent-event>i.paps{background:#5d89cc}.parent-event>i.swim{background:#39a6b3}.parent-event div{display:grid}.parent-event b{font-size:13px}.parent-event small{color:var(--muted);font-size:10px}.parent-event>svg{color:#a1aaa5;width:15px}.page-stack{gap:20px;display:grid}.page-title h1{margin:8px 0;font-size:30px}.page-title p{color:var(--muted);margin:0;font-size:12px}.row-title{justify-content:space-between;align-items:center;display:flex}.primary-btn,.outline-btn{background:var(--green);color:#fff;border:0;border-radius:12px;align-items:center;gap:7px;padding:12px 17px;font-size:11px;font-weight:700;display:flex}.primary-btn svg{width:17px}.primary-btn:disabled{background:#76938a}.outline-btn{color:var(--green);background:#fff;border:1px solid #cad7d1}.summary-cards,.admin-summary{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.summary-cards article{border:1px solid var(--line);background:#fff;border-radius:17px;grid-template-columns:auto 1fr;column-gap:12px;padding:22px;display:grid}.summary-cards svg{color:#58803f;background:#e6f2e5;border-radius:11px;grid-row:span 2;width:41px;height:41px;padding:10px}.summary-cards small{color:var(--muted);font-size:10px}.summary-cards b{font:700 23px DM Sans}.summary-cards em{margin-left:2px;font:500 10px Noto Sans KR}.primary-small{color:#5a7929;background:#e9f2dd;border:0;border-radius:9px;padding:8px 11px;font-size:10px}.student-grid{grid-template-columns:repeat(6,1fr);gap:10px;display:grid}.student-grid button{border:1px solid var(--line);background:#fafbf9;border-radius:13px;justify-items:center;gap:5px;padding:15px 8px;display:grid}.student-grid button span{background:#edf0ed;border-radius:50%;place-items:center;width:35px;height:35px;font-size:12px;display:grid}.student-grid button b{font-size:11px}.student-grid button small{color:#9aa49f;font-size:8px}.student-grid button.on{background:#f7faef;border-color:#c7df9e}.student-grid button.on span{color:#54762a;background:#dff0c4}.student-grid button.on small{color:#5d812d}.walk-hero{color:#fff;background:#194b3c;border-radius:24px;align-items:center;gap:35px;padding:35px;display:flex}.walk-ring{border:10px solid #ffffff18;border-right-color:var(--lime);border-radius:50%;align-content:center;place-items:center;width:155px;height:155px;display:grid}.walk-ring svg{color:var(--lime)}.walk-ring b{margin:2px;font:700 24px DM Sans}.walk-ring small{color:#b7cbc3;font-size:9px}.live-dot{color:var(--lime);font-size:10px}.walk-hero h2{margin:11px 0;font-size:25px}.walk-hero p{color:#bdd0c8;gap:5px;font-size:11px;display:flex}.walk-hero p svg{width:14px}.walk-hero .primary-btn{background:var(--lime);color:#244132;margin-top:16px}.upload-panel{align-items:center;gap:15px;display:flex}.upload-panel>svg{color:#617d30;background:#eef5df;border-radius:13px;width:48px;height:48px;padding:13px}.upload-panel h2{margin:0;font-size:15px}.upload-panel p{color:var(--muted);margin:4px 0;font-size:10px}.upload-panel button{border:1px solid var(--line);background:#fff;border-radius:9px;margin-left:auto;padding:9px 13px;font-size:10px}.tabs{gap:7px;display:flex}.tabs button{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:6px;padding:10px 16px;font-size:11px;display:flex}.tabs svg{width:16px}.tabs .active{background:var(--green);color:#fff}.room-overview{background:#dcebe2;border-radius:20px;justify-content:space-between;align-items:center;padding:26px;display:flex}.room-overview>div>span{color:#668075;font-size:10px}.room-overview h2{margin:5px 0;font-size:20px}.room-overview p{color:#6e8179;gap:5px;font-size:10px;display:flex}.room-overview p svg{width:14px}.room-live{color:#fff;background:#174b3b;border-radius:20px;padding:7px 11px;font-size:9px}.booking-grid{grid-template-columns:55px repeat(5,1fr);display:grid}.booking-grid>b{text-align:center;padding:10px;font-size:10px}.booking-grid time{color:#7d8984;padding-top:8px;font:500 9px DM Sans}.booking-grid>div:not(:first-child){border:1px solid #edf0ed;height:50px}.booking-grid .booked{padding:4px}.booking-grid .booked span{color:#315f4e;background:#e1eee7;border-radius:6px;height:100%;padding:4px;font-size:8px;display:grid}.booking-grid .booked small{font-size:7px}.search{border:1px solid var(--line);border-radius:9px;align-items:center;padding:7px 10px;display:flex}.search svg{width:14px}.search input{border:0;outline:0;width:100px;font-size:10px}.gear-list article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto auto;align-items:center;gap:13px;padding:14px;display:grid}.box-icon{color:#5f7e3c;background:#edf3e6;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.box-icon svg{width:19px}.gear-list article>div{display:grid}.gear-list b{font-size:12px}.gear-list small{color:var(--muted);font-size:9px}.gear-list div div{background:#edf0ed;border-radius:3px;width:150px;height:3px;margin-top:5px}.gear-list div i{background:#6b966c;height:100%;display:block}.gear-list article>span:last-of-type{color:#62803b;font-size:9px}.gear-list .danger{color:#e0644e!important}.gear-list article>svg{color:#9ba6a1;width:15px}.featured-notice{color:#fff;background:#173f35;border-radius:20px;align-items:center;gap:18px;padding:26px;display:flex}.featured-notice>span{background:var(--lime);color:#31503f;border-radius:13px;place-items:center;width:50px;height:50px;display:grid}.featured-notice div{display:grid}.featured-notice small{color:var(--lime);font-size:9px}.featured-notice h2{margin:5px 0;font-size:17px}.featured-notice p{color:#b9cbc4;margin:0;font-size:10px}.featured-notice button{background:#fff;border:0;border-radius:10px;margin-left:auto;padding:10px 13px;font-size:10px}.notice-list article{border-top:1px solid var(--line);align-items:center;gap:14px;padding:16px 0;display:flex}.doc-icon{color:#698054;background:#edf2ea;border-radius:12px;place-items:center;width:45px;height:45px;display:grid}.doc-icon svg{width:20px}.notice-list article div{flex:1;gap:3px;display:grid}.notice-list article div>.notice-level{width:min-content}.notice-list b{font-size:12px}.notice-list p{color:var(--muted);margin:0;font-size:9px}.notice-list small{color:#98a19d;gap:4px;font-size:8px;display:flex}.notice-list small svg{width:11px}.notice-list article>button{background:0 0;border:0}.notice-list article>button svg{color:#7e8a84;width:17px}.admin-summary article{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:12px;padding:18px;display:flex}.admin-summary article>span{color:#d6744d;background:#fff0e7;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.admin-summary article div{display:grid}.admin-summary small{color:var(--muted);font-size:9px}.admin-summary b{font:700 21px DM Sans}.admin-summary em{color:#d7684f;background:#fff0ea;border-radius:8px;margin-left:auto;padding:5px 7px;font-size:9px;font-style:normal}.admin-summary em.good{color:#59812e;background:#eef6df}.approval-table .tr{border-top:1px solid var(--line);grid-template-columns:.7fr 1.6fr 1.2fr .6fr .7fr .6fr;align-items:center;gap:10px;min-height:53px;font-size:10px;display:grid}.approval-table .th{color:#8c9792;min-height:35px;font-size:8px}.approval-table .tr b{font-size:11px}.status{border-radius:10px;width:min-content;padding:4px 8px;font-size:8px}.status-대기{color:#d96d45;background:#fff0e8}.status-승인{color:#61812d;background:#eaf4dc}.status-처리중{color:#5175a6;background:#e6eef9}.status-반려{color:#a65347;background:#f2e8e6}.status-처리완료{color:#3e7561;background:#e5f1eb}.row-actions{gap:5px;display:flex}.row-actions button{border:1px solid var(--line);background:#fff;border-radius:7px;place-items:center;width:27px;height:27px;display:grid}.row-actions svg{width:13px}.report-section{margin-top:10px}.report-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.report-card{border:1px solid var(--line);background:#fff;border-radius:17px;padding:20px;position:relative;overflow:hidden}.report-card>div:first-child{justify-content:space-between;display:flex}.report-card small{color:var(--muted);font-size:10px}.report-card svg{color:#6b8e79;width:16px}.report-card>b{margin-top:7px;font:700 22px DM Sans;display:block}.report-card p{color:#6e8a75;margin:3px 0 20px;font-size:9px}.mini-bars{opacity:.35;align-items:end;gap:5px;height:35px;display:flex;position:absolute;bottom:17px;right:17px}.mini-bars i{background:#2c785d;border-radius:3px;width:5px;display:block}.report-card button{color:#87928d;background:0 0;border:0;gap:3px;padding:0;font-size:9px;display:flex}.report-card button svg{width:11px}.account-maker{max-width:850px}.class-info{background:#edf4e8;border-radius:13px;align-items:center;gap:12px;padding:15px;display:flex}.class-info>span{width:40px;height:40px;color:var(--lime);background:#17483a;border-radius:11px;place-items:center;font-weight:800;display:grid}.class-info div{display:grid}.class-info b{font-size:13px}.class-info small{color:var(--muted);font-size:9px}.form-row{grid-template-columns:1.5fr 1fr;gap:18px;margin:22px 0;display:grid}.form-row label{gap:7px;font-size:10px;font-weight:700;display:grid}.form-row textarea{border:1px solid var(--line);resize:vertical;border-radius:12px;min-height:160px;padding:13px}.form-hint{background:#f7f8f5;border-radius:14px;align-content:start;padding:20px;display:grid}.form-hint svg{color:#58806a}.form-hint b{margin-top:10px;font-size:11px}.form-hint strong{margin:4px 0;font:700 28px DM Sans}.form-hint p{color:var(--muted);font-size:9px;line-height:1.6}.accounts-result{border:1px solid #cfe1c7;border-radius:13px;margin-top:20px;overflow:hidden}.accounts-result>div{background:#edf6e5;align-items:center;gap:7px;padding:12px;display:flex}.accounts-result>div svg{color:#5a822b;width:16px}.accounts-result>div b{font-size:11px}.accounts-result>div button{background:#fff;border:0;border-radius:8px;margin-left:auto;padding:7px 9px;font-size:9px}.accounts-result p{border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;margin:0;padding:10px 14px;font-size:10px;display:grid}.accounts-result code{font-size:9px}.coming{text-align:center;align-content:center;place-items:center;min-height:65vh;display:grid}.coming>span{color:#62832b;background:#e7f3d1;border-radius:22px;place-items:center;width:72px;height:72px;display:grid}.coming small{letter-spacing:3px;color:#6b8b79;margin-top:20px;font:700 10px DM Sans}.coming h1{margin:10px;font-size:33px}.coming p{color:var(--muted);font-size:12px;line-height:1.8}.coming button{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;gap:7px;padding:10px 14px;display:flex}.coming button svg{width:15px}.login-page{background:#fff;grid-template-columns:1.1fr .9fr;min-height:100vh;display:grid}.login-visual{color:#fff;background:#153f34;padding:45px 60px;position:relative;overflow:hidden}.login-visual:after{content:"";border:90px solid #ffffff08;border-radius:50%;width:480px;height:480px;position:absolute;bottom:-170px;right:-200px}.login-copy{z-index:2;position:absolute;top:48%;transform:translateY(-50%)}.hero-kicker{color:var(--lime);font-size:11px;font-weight:700}.login-copy h1{margin:17px 0;font-size:43px;line-height:1.3}.login-copy h1 em{color:var(--lime);font-style:normal}.login-copy p{color:#afc3bb;font-size:13px;line-height:1.8}.brand-meaning{color:#94aea5;margin-top:35px;font:500 13px DM Sans}.brand-meaning b{color:var(--lime)}.floating-stat{color:var(--ink);z-index:2;background:#fff;border-radius:17px;position:absolute;box-shadow:0 15px 40px #0b241f50}.floating-stat.a{width:170px;padding:18px;display:grid;top:23%;right:55px}.floating-stat.a span{color:var(--muted);font-size:9px}.floating-stat.a b{font:700 30px DM Sans}.floating-stat.a small{font:500 10px Noto Sans KR}.floating-stat.a i{color:#5f8527;font-size:9px;font-style:normal}.floating-stat.b{grid-template-columns:auto 1fr;gap:2px 8px;padding:14px 17px;display:grid;bottom:12%;right:80px}.floating-stat.b svg{color:#6d9a39;grid-row:span 2}.floating-stat.b span{color:var(--muted);font-size:8px}.floating-stat.b b{font-size:10px}.login-box{flex-direction:column;justify-content:center;padding:10% 13%;display:flex}.login-box h2{margin:10px 0 6px;font-size:27px}.login-box>div:first-child>p{color:var(--muted);font-size:11px}.role-cards{gap:12px;margin-top:26px;display:grid}.role-cards button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:16px;align-items:center;gap:13px;padding:17px;display:flex}.role-cards button:hover{box-shadow:var(--shadow);border-color:#7da18f}.role-icon{color:#46725f;background:#e6f0ec;border-radius:13px;place-items:center;width:45px;height:45px;display:grid}.role-icon.teacher{color:#c37139;background:#fff0e2}.role-icon.parent{color:#7757ae;background:#eee9f8}.role-icon svg{width:20px}.role-cards button div{flex:1;display:grid}.role-cards b{font-size:13px}.role-cards small{color:var(--muted);margin-top:4px;font-size:9px}.role-cards button>svg{color:#9ba5a1;width:17px}.demo-note{text-align:center;color:#9ba4a0;margin-top:20px;font-size:9px}@media (width<=1100px){.metric-grid,.quick-grid,.parent-cards{grid-template-columns:repeat(3,1fr)}.report-grid{grid-template-columns:repeat(2,1fr)}.login-visual{padding:35px}.floating-stat{display:none}}@media (width<=760px){.sidebar{display:none}.main{width:100%;margin:0}.topbar{height:68px;padding:0 18px}.mobile-brand{display:block}.mobile-brand .brand-mark{width:36px;height:36px}.mobile-brand .brand>div,.date,.role-select label small,.role-select>svg{display:none}.content{padding:20px 16px 90px}.bottom-nav{border-top:1px solid var(--line);z-index:6;background:#fff;grid-template-columns:repeat(5,1fr);padding:8px 5px 10px;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav.parent-bottom{grid-template-columns:repeat(4,1fr)}.bottom-nav a{color:#84908a;place-items:center;gap:2px;text-decoration:none;display:grid}.bottom-nav a.active{color:var(--green)}.bottom-nav small{font-size:8px}.welcome{min-height:220px;padding:27px}.welcome h1{font-size:27px}.welcome-art{opacity:.25;width:60%}.metric-grid{grid-template-columns:repeat(2,1fr)}.metric-grid article{padding:13px}.dashboard-grid,.lower-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:repeat(2,1fr)}.quick-grid button{padding:14px}.section-title p{display:none}.panel{padding:20px}.parent-hero{padding:25px 22px}.parent-hero h1{font-size:21px}.weather{display:none}.child-strip>span{padding:8px;font-size:0}.parent-cards{grid-template-columns:1fr}.parent-card{grid-template-columns:auto 1fr auto;align-items:center;gap:14px;min-height:auto;padding:17px}.parent-card div{margin:0}.parent-card>svg{justify-self:auto}.row-title{align-items:flex-start;gap:15px}.row-title .primary-btn{padding:11px;font-size:0}.summary-cards,.admin-summary{grid-template-columns:1fr}.student-grid{grid-template-columns:repeat(3,1fr)}.walk-hero{text-align:center;justify-items:center;padding:25px;display:grid}.walk-hero p{justify-content:center}.booking{overflow-x:auto}.booking-grid{min-width:650px}.approval-table{overflow-x:auto}.approval-table .tr{min-width:700px}.report-grid,.form-row,.login-page{grid-template-columns:1fr}.login-visual{display:none}.login-box{padding:50px 22px}.login-box h2{font-size:24px}.page-title h1{font-size:25px}.featured-notice{display:grid}.featured-notice button{margin:0}.gear-list div div{width:90px}}.notice-only{grid-template-columns:1fr}.parent-monthly{margin-top:26px}.photo-upload strong{color:#b26042;align-items:center;gap:5px;margin-top:5px;font-size:9px;display:flex}.photo-upload strong svg{width:13px}.walking-wall .panel-head p,.keyword-panel .panel-head p,.allergy-settings .panel-head p{color:var(--muted);margin:4px 0 0;font-size:9px}.live-count{color:#587d21;background:#eef7df;border-radius:20px;padding:7px 10px;font-size:9px}.live-count i{background:#79a52e;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.walker-list{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.walker-list article{border:1px solid var(--line);background:#fafbf8;border-radius:13px;grid-template-columns:auto 1fr;align-items:center;gap:2px 9px;padding:11px;display:grid;position:relative}.walker-avatar{color:#396a56;background:#dfeee5;border-radius:12px;grid-row:span 2;place-items:center;width:36px;height:36px;font-weight:800;display:grid}.walker-avatar.wa1{color:#71812e;background:#edf0d6}.walker-avatar.wa2{color:#5370a2;background:#e6ebf8}.walker-avatar.wa3{color:#ad6849;background:#f6e8e1}.walker-avatar.wa4{color:#755798;background:#eee7f5}.walker-list b{font-size:10px}.walker-list small{color:var(--muted);font-size:8px}.walker-list em{color:#6d8278;grid-column:1/2;font-size:8px;font-style:normal}.walker-list em svg,.has-photo svg{width:10px;height:10px;margin-right:3px}.has-photo{color:#60806f;background:#e8f1ed;border-radius:8px;padding:3px 5px;font-size:7px;position:absolute;bottom:8px;right:8px}.visibility-note,.privacy-note{color:#748079;background:#f2f5f2;border-radius:10px;align-items:center;gap:6px;margin-top:14px;padding:10px;font-size:8px;display:flex}.visibility-note svg,.privacy-note svg{width:13px}.monthly-progress{color:#fff;background:linear-gradient(120deg,#173f35,#286956);justify-content:space-between;align-items:center;display:flex;overflow:hidden}.monthly-progress .eyebrow{color:var(--lime)}.progress-copy h2{margin:5px 0 14px;font-size:20px}.progress-copy>div b{color:var(--lime);font:700 38px DM Sans}.progress-copy>div small{color:#b8cbc4}.progress-copy p{color:#a9beb6;font-size:10px}.progress-copy p strong{color:var(--lime)}.progress-visual{align-items:center;gap:18px;display:flex}.progress-ring{border:9px solid #ffffff1c;border-top-color:var(--lime);border-right-color:var(--lime);border-radius:50%;align-content:center;place-items:center;width:108px;height:108px;display:grid}.progress-ring b{font:700 22px DM Sans}.progress-ring small{color:#b6c9c1;font-size:8px}.streak{background:#ffffff0d;border-radius:12px;align-items:center;gap:8px;padding:10px 12px;display:flex}.streak svg{color:#ffd65a}.streak span{display:grid}.streak b{font-size:13px}.streak small{color:#a8bdb5;font-size:8px}.reward-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.reward-grid article{color:#fff;background:linear-gradient(145deg,#366b50,#173c33);border-radius:20px;min-height:220px;padding:20px;position:relative;overflow:hidden;box-shadow:0 14px 25px #1a493426}.reward-grid .reward-1{background:linear-gradient(145deg,#f0a73a,#d86d3f)}.reward-grid .reward-2{background:linear-gradient(145deg,#7263ad,#443773)}.reward-grid .reward-3{background:linear-gradient(145deg,#4c96a5,#315d7f)}.reward-shine{border:35px solid #ffffff0a;border-radius:50%;width:150px;height:150px;position:absolute;top:-60px;right:-50px}.reward-icon{background:#ffffff20;border:1px solid #ffffff26;border-radius:16px;place-items:center;width:52px;height:52px;margin-bottom:28px;display:grid}.reward-icon svg{width:28px}.reward-grid article>small{letter-spacing:1.3px;color:#fffa;font:600 8px DM Sans}.reward-grid h3{margin:5px 0;font-size:16px}.reward-grid p{color:#ffffffad;font-size:9px}.reward-grid article>b{align-items:center;gap:4px;margin-top:14px;font-size:8px;display:flex}.reward-grid article>b svg{width:12px}.reward-grid article.locked{filter:saturate(.25);opacity:.72}.lock{background:#0003;border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:absolute;top:14px;right:14px}.lock svg{width:13px}.survey-intro{background:#e3eee4;border-radius:19px;align-items:center;gap:15px;padding:24px;display:flex}.survey-intro>span{width:50px;height:50px;color:var(--lime);background:#17483a;border-radius:14px;place-items:center;display:grid}.survey-intro div{display:grid}.survey-intro div small{color:#5e7a6c;font-size:9px}.survey-intro h2{margin:4px 0;font-size:18px}.survey-intro p{color:#6e8078;margin:0;font-size:9px}.survey-intro>strong{text-align:right;margin-left:auto;font:700 25px DM Sans;display:grid}.survey-intro>strong small{color:var(--muted);font:500 8px Noto Sans KR}.step-chip{color:#5d792d;background:#edf4e4;border-radius:10px;padding:6px 9px;font-size:9px}.survey-question{border-top:1px solid var(--line);grid-template-columns:auto 1fr;gap:12px;padding:17px 0;display:grid}.survey-question>span{color:#39705b;background:#e4efe9;border-radius:9px;place-items:center;width:28px;height:28px;font:700 11px DM Sans;display:grid}.survey-question div{gap:8px;display:grid}.survey-question b{font-size:11px}.survey-question textarea{border:1px solid var(--line);resize:vertical;background:#fafbf9;border-radius:10px;min-height:65px;padding:11px;font-size:10px}.survey-submit{margin-left:40px}.keyword-panel .panel-head>svg{color:#7c9f32}.word-spread{background:radial-gradient(circle,#f4f8eb,#edf3ef);border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:15px 23px;min-height:210px;padding:30px;display:flex}.word-spread button{color:#275f4d;background:0 0;border:0;font-weight:800;line-height:1;position:relative}.word-spread button:nth-child(3n){color:#de744e}.word-spread button:nth-child(3n+2){color:#6e62a6}.word-spread button small{opacity:.65;margin-left:3px;font-size:7px}.word-spread button.voted:after{content:"♥";color:#ee6d55;font-size:10px;position:absolute;top:-13px;right:-4px}.keyword-vote-title{justify-content:space-between;align-items:center;margin:22px 0 10px;display:flex}.keyword-vote-title div{align-items:center;gap:7px;display:flex}.keyword-vote-title svg{color:#65853b;width:16px}.keyword-vote-title b{font-size:12px}.keyword-vote-title small{color:var(--muted);font-size:8px}.keyword-votes{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.keyword-votes button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:12px;align-items:center;padding:12px;display:flex;position:relative;overflow:hidden}.keyword-votes button div{z-index:1;display:grid}.keyword-votes b{font-size:10px}.keyword-votes small{color:var(--muted);font-size:7px}.keyword-votes span{color:#8a9690;z-index:1;gap:4px;margin-left:auto;font-size:9px;display:flex}.keyword-votes span svg{width:13px}.keyword-votes>button>i{background:#7ea267;height:3px;position:absolute;bottom:0;left:0}.keyword-votes button.voted{border-color:#efb4a5}.keyword-votes button.voted span{color:#e66751}.allergy-alert{background:#fff1e9;border:1px solid #f4d2c2;border-radius:16px;align-items:center;gap:12px;padding:17px 20px;display:flex}.allergy-alert>svg{color:#dd6b48}.allergy-alert div{display:grid}.allergy-alert b{font-size:11px}.allergy-alert p{color:#9a614e;margin:3px 0;font-size:9px}.allergy-alert>span{color:#b6654b;background:#fff;border-radius:8px;margin-left:auto;padding:6px 8px;font-size:8px}.meal-grid{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.meal-grid article{border:1px solid var(--line);border-radius:14px;overflow:hidden}.meal-grid article.today-meal{border-color:#9db781;box-shadow:0 8px 22px #46693214}.meal-day{background:#f4f6f2;padding:12px;display:grid}.today-meal .meal-day{background:#eaf3df}.meal-day small{color:#6f8b58;font-size:7px}.meal-day b{margin:3px 0;font-size:10px}.meal-day span{color:#89938e;font:500 8px DM Sans}.meal-menu{gap:7px;min-height:140px;padding:12px;display:grid}.meal-menu span{gap:4px;font-size:9px;display:flex}.meal-menu svg{color:#6e9160;width:10px}.meal-allergy{border-top:1px solid var(--line);gap:6px;padding:9px;display:flex}.meal-allergy>svg{color:#a0aaa5;width:12px}.meal-allergy div{display:grid}.meal-allergy small{color:#8e9793;font-size:7px}.meal-allergy b{color:#68746e;font-size:7px}.meal-allergy em{color:#dc6545;margin-top:3px;font-size:7px;font-style:normal}.meal-allergy.has-warning{background:#fff1ec}.meal-allergy.has-warning>svg{color:#dd6b48}.allergy-settings .panel-head>svg{color:#638d58}.allergy-options{flex-wrap:wrap;gap:8px;display:flex}.allergy-options button{border:1px solid var(--line);background:#fff;border-radius:20px;align-items:center;gap:4px;padding:8px 12px;font-size:9px;display:flex}.allergy-options button svg{width:11px}.allergy-options button.selected{color:#fff;background:#17483a;border-color:#17483a}@media (width<=1000px){.walker-list,.reward-grid,.meal-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.bottom-nav.parent-bottom{grid-template-columns:repeat(5,1fr)}.walker-list,.reward-grid,.keyword-votes,.meal-grid{grid-template-columns:1fr}.monthly-progress{gap:20px;display:grid}.progress-visual{justify-content:space-between}.photo-upload{align-items:flex-start}.photo-upload button{white-space:nowrap}.survey-intro{align-items:flex-start}.survey-intro>strong{display:none}.survey-submit{margin-left:0}.word-spread{min-height:180px;padding:20px}.keyword-vote-title{flex-direction:column;align-items:flex-start;gap:5px}.allergy-alert>span{display:none}.meal-menu{min-height:auto}.parent-monthly .calendar-panel{padding:18px}}.consent-guide{color:#fff;background:linear-gradient(120deg,#173f35,#286652);border-radius:20px;align-items:center;gap:16px;padding:24px;display:flex}.consent-guide>span{background:var(--lime);color:#24483a;border-radius:15px;place-items:center;width:50px;height:50px;display:grid}.consent-guide div{display:grid}.consent-guide small{color:var(--lime);font-size:9px}.consent-guide h2{margin:4px 0;font-size:18px}.consent-guide p{color:#b6cac2;margin:0;font-size:9px}.consent-guide button{background:#fff;border:0;border-radius:10px;align-items:center;gap:5px;margin-left:auto;padding:10px 12px;font-size:9px;display:flex}.consent-guide button svg{width:14px}.consent-count{color:#5d7f2e;background:#edf5df;border-radius:10px;padding:6px 9px;font-size:9px}.consent-row{border-top:1px solid var(--line);grid-template-columns:.45fr 1fr .8fr .8fr .8fr .9fr;align-items:center;gap:8px;min-height:48px;font-size:9px;display:grid}.consent-row.head{color:#89948f;min-height:32px;font-size:8px}.consent-row button{border:1px solid var(--line);color:#8b9590;background:#f7f8f6;border-radius:8px;width:max-content;padding:5px 8px;font-size:8px}.consent-row button.done{color:#5d7f31;background:#e9f4df;border-color:#d5e6c1}.consent-row button svg{width:10px;height:10px}.consent-row em{color:#b96d53;background:#fff0eb;border-radius:8px;width:max-content;padding:5px 7px;font-style:normal}.consent-row em.ready{color:#44725f;background:#e7f1eb}.account-maker .panel-head>svg{color:#628570}.id-rule{color:#738179;background:#f2f6ef;border-radius:14px;align-items:center;gap:9px;padding:20px;font-size:10px;display:flex}.id-rule span{color:#1d503e;background:#fff;border:1px solid #cad9d1;border-radius:9px;padding:9px 12px;font:700 18px DM Sans}.id-rule i{background:#b9c8c0;width:13px;height:1px}.id-rule b{color:#17483a;margin-left:8px;font:800 22px DM Sans}.id-explain{color:var(--muted);margin:13px 0 18px;font-size:9px}.id-explain strong{color:#17483a}.account-maker .primary-btn:disabled{opacity:.5}.photo-upload h2 em{color:#d86548;background:#ffebe5;border-radius:7px;margin-left:4px;padding:3px 6px;font-size:8px;font-style:normal}.photo-upload>label{color:#fff;cursor:pointer;background:#17483a;border-radius:9px;align-items:center;gap:5px;margin-left:auto;padding:9px 13px;font-size:9px;font-weight:700;display:flex}.photo-upload>label.uploaded{color:#577d29;background:#e8f3dd}.photo-upload>label input{display:none}.photo-upload>label svg{width:14px}.photo-days{grid-template-columns:repeat(15,1fr);gap:5px;margin-bottom:17px;display:grid}.photo-days button{border:1px solid var(--line);background:#fff;border-radius:8px;height:30px;font:600 9px DM Sans;position:relative}.photo-days button.has i{background:#7e9f3e;border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px;left:50%}.photo-days button.active{color:#fff;background:#17483a;border-color:#17483a}.photo-feed{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.photo-feed article{border:1px solid var(--line);border-radius:14px;position:relative;overflow:hidden}.photo-placeholder{background:linear-gradient(145deg,#cbe4cd,#eef5dd);align-content:center;place-items:center;height:105px;display:grid}.photo-placeholder.ph1{background:linear-gradient(145deg,#ffe8b2,#fff6d9)}.photo-placeholder.ph2{background:linear-gradient(145deg,#d5e4fa,#eef4fd)}.photo-placeholder.ph3{background:linear-gradient(145deg,#eadcf5,#f6edfb)}.photo-placeholder span{font-size:32px}.photo-placeholder small{color:#496b5a;margin-top:4px;font-size:8px}.photo-feed article>div:nth-child(2){padding:9px;display:grid}.photo-feed b{font-size:9px}.photo-feed small{color:var(--muted);font-size:7px}.photo-feed em{color:#6a7d73;font-size:7px;font-style:normal;position:absolute;bottom:8px;right:8px}.photo-feed em svg{width:10px;height:10px}.reward-grid.twelve{grid-template-columns:repeat(4,1fr)}.reward-grid.twelve article{background:radial-gradient(circle at 50% 30%,#527dc4,#192956 70%);border:3px solid #e5bd5f;min-height:245px;box-shadow:inset 0 0 0 2px #573b8e,0 14px 25px #1a493426}.reward-grid.twelve article:nth-child(2),.reward-grid.twelve article:nth-child(4){background:radial-gradient(circle at 50% 30%,#f38aaf,#7b2459 70%)}.reward-grid.twelve article:nth-child(3),.reward-grid.twelve article:nth-child(5){background:radial-gradient(circle at 50% 30%,#7bc56d,#275a3c 70%)}.reward-grid.twelve article:nth-child(7),.reward-grid.twelve article:nth-child(8){background:radial-gradient(circle at 50% 30%,#f39b41,#8c381f 70%)}.reward-grid.twelve article:nth-child(9),.reward-grid.twelve article:nth-child(11){background:radial-gradient(circle at 50% 30%,#8f72cf,#332460 70%)}.reward-grid.twelve article.current{opacity:1;filter:none;border-color:#8ecbff}.reward-month{color:#4f3473;background:#f7d468;border-radius:9px;padding:5px 8px;font-weight:900;position:absolute;top:12px;left:13px}.reward-character{filter:drop-shadow(0 5px 3px #0003);place-items:center;height:105px;margin-top:6px;font-size:58px;display:grid}.reward-grid.twelve .reward-icon{display:none}.top-voice{color:#fff;background:linear-gradient(120deg,#57468c,#8e69bd);border-radius:20px;padding:28px}.top-voice>span{color:#eadbff;font-size:9px}.top-voice h2{margin:8px 0;font-size:22px}.top-voice div{align-items:center;gap:5px;font-size:10px;display:flex}.top-voice svg{color:#ff9db3;width:15px}.top-voice em{background:#ffffff18;border-radius:8px;margin-left:5px;padding:4px 7px;font-style:normal}.teacher-opinions article{border-top:1px solid var(--line);grid-template-columns:32px 1fr auto;align-items:center;min-height:58px;display:grid;position:relative}.teacher-opinions article>b{background:#edf1e7;border-radius:8px;place-items:center;width:23px;height:23px;font:700 9px DM Sans;display:grid}.teacher-opinions article:first-of-type>b{color:#725416;background:#f9d66c}.teacher-opinions article div{display:grid}.teacher-opinions strong{font-size:11px}.teacher-opinions small{color:var(--muted);font-size:8px}.teacher-opinions article span{color:#d45f70;align-items:center;gap:4px;font-size:9px;display:flex}.teacher-opinions article span svg{width:13px}.teacher-opinions article>i{background:#7c9e70;height:2px;position:absolute;bottom:0;left:32px}.teacher-suggestion p{color:var(--muted);font-size:10px}@media (width<=1000px){.reward-grid.twelve,.photo-feed{grid-template-columns:repeat(2,1fr)}.photo-days{grid-template-columns:repeat(10,1fr)}}@media (width<=760px){.consent-guide{align-items:flex-start}.consent-guide button{font-size:0}.consent-table{overflow-x:auto}.consent-row{min-width:650px}.id-rule{gap:4px;padding:12px}.id-rule span{padding:7px;font-size:14px}.id-rule b{font-size:16px}.photo-days{grid-template-columns:repeat(7,1fr)}.photo-feed,.reward-grid.twelve{grid-template-columns:repeat(2,1fr)}.reward-grid.twelve article{min-height:220px;padding:14px}.reward-character{height:90px;font-size:44px}.reward-grid h3{font-size:13px}.top-voice h2{font-size:18px}}.avatar.student{color:#587a28;background:#e8f3dd}.role-icon.student{color:#4f7b38;background:#e6f2df}.student-hero{background:linear-gradient(120deg,#17483a,#2f745c)}.consent-ok{background:#edf6e5;border:1px solid #d4e8c7;border-radius:16px;align-items:center;gap:11px;margin-top:14px;padding:14px 17px;display:flex}.consent-ok>svg{color:#5f8430;width:20px}.consent-ok div{display:grid}.consent-ok b{font-size:10px}.consent-ok small{color:#70806f;margin-top:2px;font-size:8px}.consent-ok>span{color:#315d4c;background:#fff;border-radius:9px;margin-left:auto;padding:7px 10px;font:700 10px DM Sans}.student-actions .parent-card:nth-child(4){background:#fbfdf4;border:2px solid #cbdc9a}.student-actions .parent-card:nth-child(5){background:#fdfaff;border:2px solid #e5d1f1}.consent-overlay{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:50;background:#102d26dd;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.consent-modal{background:#fff;border-radius:24px;width:min(580px,100%);max-height:94vh;padding:30px;overflow:auto;box-shadow:0 30px 80px #071c1755}.modal-back{color:#738079;background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:9px;display:flex}.modal-back svg{width:14px}.consent-symbol{color:#5d812d;background:#e9f4dd;border-radius:16px;place-items:center;width:54px;height:54px;margin:22px 0 12px;display:grid}.consent-modal h2{margin:5px 0;font-size:24px}.consent-lead{color:var(--muted);font-size:10px;line-height:1.65}.account-id-field{background:#f4f7f3;border-radius:13px;gap:6px;margin:18px 0;padding:14px;display:grid}.account-id-field b{font-size:10px}.account-id-field input{letter-spacing:2px;background:#fff;border:1px solid #cdd9d2;border-radius:9px;padding:10px;font:700 16px DM Sans}.account-id-field small{color:#7e8983;font-size:8px}.consent-checks{gap:7px;display:grid}.consent-checks button{border:1px solid var(--line);text-align:left;color:#5f6c66;background:#fff;border-radius:11px;align-items:flex-start;gap:9px;padding:11px;font-size:9px;display:flex}.consent-checks button>span{border:1px solid #c9d4ce;border-radius:6px;flex:none;place-items:center;width:19px;height:19px;display:grid}.consent-checks button span svg{width:12px}.consent-checks button.checked{color:#345d47;background:#f6faef;border-color:#a9c58e}.consent-checks button.checked>span{color:#fff;background:#618b42;border-color:#618b42}.teacher-submit-note{background:#edf2fa;border-radius:11px;align-items:center;gap:9px;margin:14px 0;padding:11px;display:flex}.teacher-submit-note>svg{color:#557aab;width:18px}.teacher-submit-note div{display:grid}.teacher-submit-note b{font-size:9px}.teacher-submit-note small{color:#6f7d89;font-size:8px}.consent-submit{color:#fff;background:#17483a;border:0;border-radius:12px;justify-content:center;align-items:center;gap:7px;width:100%;padding:13px;font-size:11px;font-weight:700;display:flex}.consent-submit:disabled{opacity:.35;cursor:not-allowed}.consent-submit svg{width:16px}.identity-chip{color:#4e733a;background:#e8f2e3;border-radius:10px;padding:7px 10px;font:700 9px DM Sans}.apply-fields{grid-template-columns:1fr 2fr;gap:13px;margin-bottom:15px;display:grid}.apply-fields label{gap:6px;display:grid}.apply-fields label.full{grid-column:1/-1}.apply-fields b{font-size:9px}.apply-fields input,.apply-fields select,.apply-fields textarea{border:1px solid var(--line);background:#fafbf9;border-radius:10px;outline:none;padding:11px;font-size:10px}.apply-fields textarea{resize:vertical;min-height:90px}.survey-apply .primary-btn:disabled{opacity:.35}.opinion-community .panel-head p{color:var(--muted);margin:4px 0 0;font-size:9px}.sort-buttons{background:#f2f4f1;border-radius:10px;align-items:center;gap:5px;padding:4px;display:flex}.sort-buttons>svg{width:13px;margin:0 3px}.sort-buttons button{background:0 0;border:0;border-radius:7px;padding:6px 8px;font-size:8px}.sort-buttons button.active{color:#315f4d;background:#fff;box-shadow:0 2px 6px #223a3014}.opinion-feed{grid-template-columns:repeat(2,1fr);gap:11px;display:grid}.opinion-feed article{border:1px solid var(--line);border-radius:15px;padding:17px;position:relative}.opinion-feed article.top{background:#fffdf5;border:2px solid #e8c95f}.popular-badge{color:#87650f;background:#fff0b9;border-radius:9px;padding:5px 7px;font-size:7px;font-weight:700;position:absolute;top:12px;right:12px}.popular-badge svg{width:10px}.opinion-meta{align-items:center;gap:6px;display:flex}.opinion-meta>span{color:#356650;font:700 9px DM Sans}.opinion-meta em{color:#607b4c;background:#edf3e9;border-radius:7px;padding:4px 6px;font-size:7px;font-style:normal}.opinion-meta small{color:#97a09c;gap:3px;margin-left:auto;font-size:7px;display:flex}.opinion-meta small svg{width:9px}.opinion-feed h3{margin:12px 0 5px;font-size:12px}.opinion-feed p{color:var(--muted);min-height:30px;font-size:9px;line-height:1.55}.opinion-feed article>button{color:#7d7478;background:#fff;border:1px solid #e4dfe2;border-radius:10px;align-items:center;gap:5px;padding:7px 10px;font-size:8px;display:flex}.opinion-feed article>button svg{width:14px}.opinion-feed article>button span{background:#f1eff0;border-radius:8px;padding:2px 5px}.opinion-feed article>button.liked{color:#df5f72;background:#fff6f7;border-color:#efb3bc}.top-opinion-hero{color:#fff;background:linear-gradient(120deg,#574488,#8b67b7);border-radius:20px;align-items:center;gap:16px;padding:25px;display:flex}.top-opinion-hero>svg{color:#ffdc67;background:#ffffff18;border-radius:13px;width:44px;height:44px;padding:11px}.top-opinion-hero div{display:grid}.top-opinion-hero small{color:#e5d8f3;font-size:8px}.top-opinion-hero h2{margin:4px 0;font-size:18px}.top-opinion-hero p{color:#d5c8e2;margin:0;font-size:9px}.top-opinion-hero strong{align-items:center;gap:5px;margin-left:auto;font:700 19px DM Sans;display:flex}.top-opinion-hero strong svg{color:#ff91a9;width:17px}.teacher-opinion-list article{border-top:1px solid var(--line);grid-template-columns:35px 1fr auto;align-items:center;padding:13px 0;display:grid}.teacher-opinion-list article>b{background:#edf1e8;border-radius:8px;place-items:center;width:25px;height:25px;font:700 10px DM Sans;display:grid}.teacher-opinion-list article:first-of-type>b{color:#805e10;background:#ffe69c}.teacher-opinion-list article div{display:grid}.teacher-opinion-list article span{color:#62806d;font-size:7px}.teacher-opinion-list h3{margin:3px 0;font-size:11px}.teacher-opinion-list small{color:#929c97;font-size:7px}.teacher-opinion-list strong{color:#dc6073;gap:4px;font:700 11px DM Sans;display:flex}.teacher-opinion-list strong svg{width:13px}.card-vault-summary{color:#fff;background:linear-gradient(120deg,#172753,#46347b);border:3px solid #e8c45c;border-radius:22px;padding:24px;box-shadow:inset 0 0 0 2px #ffffff18}.card-vault-summary>div:first-child{align-items:center;gap:14px;display:flex}.card-vault-summary>div>span:first-child{color:#5b3c73;background:#f4d56b;border-radius:15px;place-items:center;width:49px;height:49px;display:grid}.card-vault-summary div div{display:grid}.card-vault-summary small{color:#d4c9e5;font-size:8px}.card-vault-summary h2{margin:3px 0;font-size:20px}.card-vault-summary p{color:#c5bbd6;margin:0;font-size:9px}.vault-progress{background:#ffffff18;border-radius:10px;height:8px;margin-top:18px;position:relative}.vault-progress i{background:linear-gradient(90deg,#f3be45,#fff1a3);border-radius:10px;height:100%;display:block}.vault-progress span{color:#f5d56d;font:700 10px DM Sans;position:absolute;top:-25px;right:0}.card-vault-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.card-vault-grid article{color:#fff;background:radial-gradient(circle at 50% 32%,#567fc1,#172751 72%);border:4px solid #e8bd58;border-radius:19px;min-height:270px;padding:17px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #684990,0 12px 25px #1c24552e}.card-vault-grid article:nth-child(3n+2){background:radial-gradient(circle at 50% 32%,#ed87a8,#702453 72%)}.card-vault-grid article:nth-child(3n){background:radial-gradient(circle at 50% 32%,#80bd65,#23543a 72%)}.card-vault-grid article.current{filter:none;opacity:1;border-color:#79c8f5}.card-vault-grid article.locked:not(.current){filter:saturate(.22);opacity:.58}.vault-card-glow{border:35px solid #ffffff0a;border-radius:50%;width:170px;height:170px;position:absolute;top:-70px;right:-60px}.vault-month{color:#573b75;background:#f7d66d;border-radius:9px;padding:5px 9px;font-weight:900;position:absolute;top:12px;left:12px}.vault-lock{background:#0004;border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:absolute;top:12px;right:12px}.vault-lock svg{width:13px}.vault-character{filter:drop-shadow(0 7px 4px #0003);place-items:center;height:120px;font-size:66px;display:grid}.card-vault-grid article>small{letter-spacing:1px;color:#fff9;font:700 7px DM Sans}.card-vault-grid h3{margin:5px 0;font-size:15px}.card-vault-grid p{color:#ffffffb0;font-size:8px}.card-stats{gap:5px;margin:10px 0;display:flex}.card-stats span{background:#111d3aaa;border:1px solid #ffffff18;border-radius:6px;padding:4px 5px;font:700 7px DM Sans}.card-vault-grid article>b{align-items:center;gap:5px;font-size:8px;display:flex}.card-vault-grid article>b svg{width:12px}.reward-rule{background:#eef5e3;border-radius:15px;align-items:center;gap:12px;padding:16px;display:flex}.reward-rule>svg{color:#698d35}.reward-rule div{display:grid}.reward-rule b{font-size:10px}.reward-rule p{color:var(--muted);margin:3px 0;font-size:8px}@media (width<=1000px){.card-vault-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=760px){.consent-modal{padding:21px}.apply-fields{grid-template-columns:1fr}.apply-fields label.full{grid-column:auto}.opinion-feed{grid-template-columns:1fr}.opinion-community .panel-head{flex-direction:column;align-items:flex-start;gap:10px}.card-vault-grid{grid-template-columns:repeat(2,1fr)}.card-vault-grid article{min-height:235px;padding:13px}.vault-character{height:100px;font-size:49px}.top-opinion-hero{align-items:flex-start}.top-opinion-hero strong{display:none}}.empty-consent{text-align:center;background:#f6f8f5;border-radius:13px;place-items:center;padding:25px;display:grid}.empty-consent svg{color:#8ca097}.empty-consent b{margin-top:7px;font-size:10px}.empty-consent small{color:var(--muted);margin-top:3px;font-size:8px}.consent-submission{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto auto;align-items:center;gap:11px;padding:13px 0;display:grid}.consent-submission>span{color:#5c7e42;background:#e9f2e3;border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.consent-submission>span svg{width:17px}.consent-submission div{display:grid}.consent-submission b{font-size:10px}.consent-submission small{color:var(--muted);font-size:8px}.consent-submission em{color:#bd6c4c;background:#fff0e8;border-radius:8px;padding:5px 7px;font-size:8px;font-style:normal}.consent-submission em.done{color:#5b7e35;background:#e8f3df}.consent-submission>button{color:#fff;background:#17483a;border:0;border-radius:8px;align-items:center;gap:4px;padding:7px 9px;font-size:8px;display:flex}.consent-submission>button svg{width:11px}.gate-page{background:radial-gradient(circle at 20% 20%,#2a6956,#12372e 65%);place-items:center;min-height:100vh;padding:24px;display:grid;position:relative}.gate-brand{color:var(--lime);letter-spacing:4px;font:700 11px DM Sans;position:absolute;top:28px;left:35px}.gate-brand span{color:#fff;letter-spacing:1px;font-size:19px}.gate-card{text-align:center;background:#fff;border-radius:25px;width:min(540px,100%);padding:36px;box-shadow:0 30px 70px #071d174d}.gate-icon{color:#d08133;background:#fff2dc;border-radius:22px;place-items:center;width:70px;height:70px;margin:0 auto 18px;display:grid}.gate-icon.rejected{color:#c85949;background:#ffebe7}.gate-card>small{letter-spacing:2px;color:#718a7e;font:700 9px DM Sans}.gate-card h1{margin:8px 0;font-size:24px}.gate-card>p{color:var(--muted);font-size:10px;line-height:1.7}.gate-account{text-align:left;background:#f3f6f2;border-radius:13px;align-items:center;gap:10px;margin:20px 0;padding:13px;display:flex}.gate-account>svg{color:#668275}.gate-account div{display:grid}.gate-account b{font:700 15px DM Sans}.gate-account small{color:var(--muted);font-size:8px}.gate-account>span{color:#bc7133;background:#fff0e1;border-radius:9px;margin-left:auto;padding:6px 8px;font-size:8px}.gate-steps{justify-content:center;align-items:center;gap:7px;margin:21px 0;display:flex}.gate-steps span{color:#9ba49f;place-items:center;gap:3px;font-size:7px;display:grid}.gate-steps span.done{color:#4f7b61}.gate-steps svg{width:17px}.gate-steps i{background:#dce3de;width:35px;height:1px;display:block}.gate-refresh{color:#fff;background:#17483a;border:0;border-radius:11px;justify-content:center;align-items:center;gap:6px;width:100%;padding:12px;font-size:10px;font-weight:700;display:flex}.gate-logout{color:#89928e;background:0 0;border:0;align-items:center;gap:5px;margin-top:13px;font-size:8px;display:inline-flex}.gate-logout svg,.gate-refresh svg{width:14px}.home-mini-widgets{grid-template-columns:1fr 1fr;gap:13px;margin-top:20px;display:grid}.home-mini-widgets>button,.home-mini-widgets>article{border:1px solid var(--line);text-align:left;background:#fff;border-radius:17px;align-items:center;gap:12px;padding:16px;display:flex}.home-mini-widgets>button>span,.home-mini-widgets>article>span:first-child{border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.meal-widget-icon{color:#608231;background:#eaf3dc}.notice-widget-icon{color:#5278a8;background:#e7effa}.home-mini-widgets svg{width:18px}.home-mini-widgets>button>div,.home-mini-widgets>article>div{flex:1;display:grid}.home-mini-widgets small{color:var(--muted);font-size:8px}.home-mini-widgets b{margin:2px 0;font-size:11px}.home-mini-widgets p{color:#8a958f;margin:0;font-size:8px}.home-mini-widgets>button>svg{color:#9aa49f;width:14px}.home-mini-widgets .new{color:#d66b48;background:#fff0ea;border-radius:8px;padding:5px 7px;font-size:7px;width:auto!important;height:auto!important}.admin-authority{color:#fff;background:#17483a;border-radius:11px;align-items:center;gap:6px;padding:9px 12px;font-size:9px;display:flex}.admin-authority svg{width:14px}.admin-tabs{gap:6px;padding-bottom:3px;display:flex;overflow-x:auto}.admin-tabs button{white-space:nowrap;border:1px solid var(--line);color:#6f7c76;background:#fff;border-radius:10px;align-items:center;gap:6px;padding:9px 12px;font-size:9px;display:flex}.admin-tabs button svg{width:14px}.admin-tabs button.active{color:#fff;background:#17483a;border-color:#17483a}.admin-metrics{margin-top:0}.admin-command-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.admin-command-grid button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:16px;align-items:center;gap:12px;padding:18px;display:flex}.admin-command-grid button>svg:first-child{color:#4c775f;background:#e7f1e8;border-radius:11px;width:39px;height:39px;padding:10px}.admin-command-grid button div{flex:1;display:grid}.admin-command-grid b{font-size:11px}.admin-command-grid small{color:var(--muted);font-size:8px}.admin-command-grid button>svg:last-child{color:#9ca6a1;width:14px}.manager-panel .panel-head p,.admin-control .panel-head p{color:var(--muted);margin:3px 0;font-size:8px}.sync-badge{color:#598238;background:#eaf5df;border-radius:8px;padding:6px 8px;font-size:8px}.inline-create{background:#f4f7f3;border-radius:12px;grid-template-columns:140px 100px 1fr auto;gap:8px;padding:12px;display:grid}.inline-create input,.inline-create select{background:#fff;border:1px solid #dbe3de;border-radius:8px;padding:8px;font-size:9px}.inline-create button{color:#fff;background:#17483a;border:0;border-radius:8px;align-items:center;gap:4px;padding:8px 11px;font-size:9px;display:flex}.inline-create svg{width:12px}.managed-list{margin-top:14px}.managed-list article{border-top:1px solid var(--line);grid-template-columns:70px 80px 1fr auto auto;align-items:center;gap:9px;padding:11px;display:grid}.managed-list time{font:600 9px DM Sans}.managed-list span{color:#5e7a49;background:#e9f2e4;border-radius:8px;width:max-content;padding:5px;font-size:8px}.managed-list b{font-size:10px}.managed-list button,.admin-meal-list button,.equipment-db article>button,.archery-admin-list article>button{color:#89958f;background:0 0;border:0}.managed-list svg,.admin-meal-list svg,.equipment-db article>button svg,.archery-admin-list article>button svg{width:14px}.meal-admin-banner{background:#e7f2df;border-radius:18px;align-items:center;gap:13px;padding:20px;display:flex}.meal-admin-banner>svg{color:#60813d;background:#fff;border-radius:12px;width:43px;height:43px;padding:11px}.meal-admin-banner div{display:grid}.meal-admin-banner b{font-size:13px}.meal-admin-banner p{color:#6f7c73;margin:3px 0;font-size:9px}.meal-admin-banner label{color:#fff;cursor:pointer;background:#17483a;border-radius:9px;align-items:center;gap:5px;margin-left:auto;padding:9px 11px;font-size:8px;display:flex}.meal-admin-banner label svg{width:13px}.meal-admin-banner input,.equipment-photo input{display:none}.admin-meal-list article{border-top:1px solid var(--line);grid-template-columns:140px 1fr 90px auto;align-items:center;gap:9px;padding:10px;display:grid}.admin-meal-list b{font-size:9px}.admin-meal-list input{border:1px solid var(--line);border-radius:8px;padding:7px;font-size:9px}.admin-meal-list span{color:#718079;font:600 8px DM Sans}.grade-bars{gap:10px;display:grid}.grade-bars article{grid-template-columns:55px 1fr 45px 35px;align-items:center;gap:9px;display:grid}.grade-bars b{font-size:9px}.grade-bars article>div{background:#eef1ee;border-radius:8px;height:8px}.grade-bars i{background:linear-gradient(90deg,#7fa55a,#b3d568);border-radius:8px;height:100%;display:block}.grade-bars strong,.grade-bars span{font-size:8px}.recent-proof{margin-top:25px}.recent-proof h3{font-size:11px}.recent-proof>span{border-top:1px solid var(--line);grid-template-columns:1fr .7fr .7fr auto;align-items:center;padding:8px;display:grid}.recent-proof b{font:700 9px DM Sans}.recent-proof small{color:var(--muted);font-size:8px}.recent-proof em{color:#547550;font-size:8px;font-style:normal}.recent-proof button{color:#567832;background:#e9f3df;border:0;border-radius:7px;padding:5px 8px;font-size:8px}.equipment-toolbar{gap:8px;display:flex}.equipment-toolbar select,.equipment-toolbar label{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px;font-size:8px}.equipment-toolbar label{align-items:center;display:flex}.equipment-toolbar svg{width:12px}.equipment-toolbar input{border:0;outline:0;font-size:8px}.equipment-db{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px;display:grid}.equipment-db article{border:1px solid var(--line);border-radius:13px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:11px;padding:11px;display:grid}.equipment-photo{cursor:pointer;background:#eef2eb;border-radius:10px;align-content:center;place-items:center;width:58px;height:58px;display:grid}.equipment-photo svg{color:#72867a;width:17px}.equipment-photo small{font-size:7px}.equipment-db article div{display:grid}.equipment-db article div span{color:#6c8660;font-size:7px}.equipment-db h3{margin:3px 0;font-size:10px}.equipment-db p{color:var(--muted);margin:0;font-size:8px}.equipment-db em{color:#62813e;font-size:8px;font-style:normal}.equipment-db em.danger{color:#d5664c}.archery-admin-list article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:13px;display:grid}.archery-admin-list>article>span{color:#aa7d16;background:#fff1c6;border-radius:12px;place-items:center;width:41px;height:41px;display:grid}.archery-admin-list div{display:grid}.archery-admin-list small{color:var(--muted);font-size:7px}.archery-admin-list h3{margin:2px 0;font-size:11px}.archery-admin-list p{color:var(--muted);margin:0;font-size:8px}.archery-admin-list strong{color:#80601b;font-size:9px}.admin-request-list article{border-top:1px solid var(--line);grid-template-columns:34px 1fr auto;gap:10px;padding:14px 0;display:grid}.request-rank{background:#edf1e8;border-radius:8px;place-items:center;width:25px;height:25px;font:700 9px DM Sans;display:grid}.admin-request-list article.top .request-rank{color:#896615;background:#ffe9a4}.request-rank svg{width:12px}.request-main>span{color:#6e7c75;align-items:center;gap:3px;font-size:8px;display:flex}.request-main>span svg{color:#d65f75;width:10px}.request-main h3{margin:4px 0;font-size:11px}.request-main>p{color:#4d6a58;background:#edf3e9;border-radius:8px;padding:8px;font-size:9px}.request-main>p svg{width:12px}.request-main>div{gap:6px;display:flex}.request-main input{border:1px solid var(--line);border-radius:8px;flex:1;padding:7px;font-size:8px}.request-main button{color:#fff;background:#17483a;border:0;border-radius:7px;padding:6px 8px;font-size:8px}.admin-request-list article>em{color:#6a7d73;font-size:8px;font-style:normal}.class-code{color:#fff;background:#17483a;border-radius:11px;align-items:center;gap:5px;padding:9px 12px;font-size:9px;display:flex}.class-code svg{width:14px}.class-code b{color:var(--lime);font:700 15px DM Sans}.teacher-kpis{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.teacher-kpis article{border:1px solid var(--line);background:#fff;border-radius:14px;align-items:center;gap:10px;padding:14px;display:flex}.teacher-kpis article>span{color:#577b47;background:#e9f2e4;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.teacher-kpis svg{width:16px}.teacher-kpis div{display:grid}.teacher-kpis small{color:var(--muted);font-size:7px}.teacher-kpis b{font:700 17px DM Sans}.class-setup{justify-content:space-between;align-items:center;display:flex}.class-setup>div{align-items:center;gap:11px;display:flex}.class-setup>div>span{color:#4d735f;background:#e5efe8;border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.class-setup>div>div{display:grid}.class-setup small{color:var(--muted);font-size:8px}.class-setup h2{margin:2px 0;font-size:15px}.class-setup p{color:var(--muted);margin:0;font-size:8px}.class-setup button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 10px;font-size:8px}.proof-approval-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.proof-approval-grid article{border:1px solid var(--line);border-radius:13px;overflow:hidden}.proof-thumb{color:#51725f;background:linear-gradient(145deg,#cce4cf,#edf4dc);align-content:center;place-items:center;height:74px;display:grid}.proof-thumb.pt1,.proof-thumb.pt4{background:linear-gradient(145deg,#f7e0b7,#fff5db)}.proof-thumb.pt2,.proof-thumb.pt5{background:linear-gradient(145deg,#d5e4f8,#edf3fb)}.proof-thumb svg{width:20px}.proof-thumb span{font-size:7px}.proof-approval-grid article>div:nth-child(2){padding:8px;display:grid}.proof-approval-grid b{font:700 9px DM Sans}.proof-approval-grid small{color:var(--muted);font-size:7px}.proof-approval-grid button{color:#fff;background:#17483a;border:0;border-radius:7px;width:calc(100% - 16px);margin:0 8px 8px;padding:6px;font-size:7px}.proof-approval-grid button.done{color:#567d35;background:#e7f2df}.neis-export .panel-head>button{color:#fff;background:#17483a;border:0;border-radius:9px;align-items:center;gap:5px;padding:9px 11px;font-size:8px;display:flex}.neis-export button svg{width:13px}.stats-preview{grid-template-columns:repeat(4,1fr);display:grid}.stats-preview>span{color:#79847e;background:#f0f3ef;padding:8px;font-size:7px}.stats-preview>b,.stats-preview>em{border-top:1px solid var(--line);padding:9px;font-size:8px}.stats-preview>em{color:#5d803d;font-style:normal}.teacher-resource-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.resource-now{background:#edf4ea;border-radius:11px;align-items:center;gap:9px;padding:11px;display:flex}.resource-now>svg{color:#60804e}.resource-now div{display:grid}.resource-now b{font-size:9px}.resource-now small{color:var(--muted);font-size:7px}.resource-now button{background:#fff;border:0;border-radius:7px;margin-left:auto;padding:5px;font-size:7px}.resource-add{background:#fff;border:1px dashed #cdd8d1;border-radius:9px;width:100%;margin-top:8px;padding:8px;font-size:8px}.loan-item{border-top:1px solid var(--line);padding:10px;display:grid}.loan-item>span{color:#6f7c75;font-size:8px}.loan-item>b{font-size:9px}.loan-item>small{color:#66806f;font-size:7px}.loan-item.overdue{background:#fff3ed;border-radius:9px;padding:9px}.loan-item.overdue small{color:#c86b4c}.loan-item button{color:#fff;background:#d86b4d;border:0;border-radius:7px;width:max-content;margin-top:5px;padding:5px 7px;font-size:7px}.archery-hero{color:#fff;background:linear-gradient(120deg,#172d5a,#4b327c);border-radius:23px;align-items:center;gap:16px;padding:28px;display:flex}.archery-hero>span{color:#55366d;background:#f0cc5c;border-radius:17px;place-items:center;width:56px;height:56px;display:grid}.archery-hero div{display:grid}.archery-hero small{letter-spacing:2px;color:#e8d477;font:700 8px DM Sans}.archery-hero h1{margin:4px 0;font-size:25px}.archery-hero p{color:#c5b9d8;margin:0;font-size:9px}.archery-hero>svg{color:#ffffff17;width:70px;height:70px;margin-left:auto}.archery-page-grid{grid-template-columns:1fr 280px;gap:14px;display:grid}.archery-page-grid main{gap:14px;display:grid}.archery-post{border:1px solid var(--line);background:#fff;border-radius:18px;overflow:hidden}.archery-cover{color:#fff;background:radial-gradient(circle,#e9c967,#593a79 65%,#192653);align-content:center;place-items:center;height:160px;display:grid}.archery-cover.ac1{background:radial-gradient(circle,#b8d9e8,#496b9d 65%,#172750)}.archery-cover>span{border:3px solid #f5d975;border-radius:50%;place-items:center;width:60px;height:60px;display:grid}.archery-cover>span svg{color:#ffe48b}.archery-cover b{margin-top:8px;font-size:17px}.archery-cover small{letter-spacing:2px;font:700 7px DM Sans}.archery-post-body{padding:18px}.post-date{color:#728179;align-items:center;gap:4px;font-size:8px;display:flex}.post-date svg{width:12px}.archery-post h2{margin:7px 0;font-size:16px}.archery-post p{color:var(--muted);font-size:9px}.cheer-actions{gap:6px;margin:12px 0;display:flex}.cheer-actions button{background:#fff;border:1px solid #eedce0;border-radius:9px;padding:6px 9px;font-size:8px}.cheer-actions button svg{color:#db6478;width:13px}.cheer-actions button.liked{color:#d9546a;background:#fff0f3}.cheer-actions button.sticker{padding:4px 7px;font-size:14px}.comment-list p{background:#f4f6f3;border-radius:8px;gap:5px;margin:4px 0;padding:7px;font-size:8px;display:flex}.comment-list svg{width:11px}.comment-write{gap:6px;margin-top:8px;display:flex}.comment-write input{border:1px solid var(--line);border-radius:8px;flex:1;padding:8px;font-size:8px}.comment-write button{color:#fff;background:#17483a;border:0;border-radius:8px;width:34px}.comment-write svg{width:13px}.archery-schedule{height:max-content}.archery-schedule h2{font-size:15px}.archery-schedule>article{border-top:1px solid var(--line);gap:9px;padding:11px 0;display:flex}.archery-schedule>article>b{color:#604c82;font:700 13px DM Sans}.archery-schedule article div{display:grid}.archery-schedule strong{font-size:9px}.archery-schedule small{color:var(--muted);font-size:7px}.archery-schedule>div{background:#f2ecf6;border-radius:10px;padding:10px}.archery-schedule>div svg{color:#8260a6}.archery-schedule>div p{color:#695d73;font-size:8px}@media (width<=1000px){.teacher-kpis{grid-template-columns:repeat(2,1fr)}.archery-page-grid,.equipment-db{grid-template-columns:1fr}}@media (width<=760px){.home-mini-widgets,.admin-command-grid,.teacher-resource-grid{grid-template-columns:1fr}.admin-authority,.class-code{display:none}.admin-tabs{margin-right:-16px}.inline-create,.admin-meal-list article{grid-template-columns:1fr}.meal-admin-banner{align-items:flex-start}.meal-admin-banner label{font-size:0}.proof-approval-grid,.teacher-kpis{grid-template-columns:repeat(2,1fr)}.class-setup{align-items:flex-start}.class-setup button{font-size:0}.equipment-db,.archery-page-grid{grid-template-columns:1fr}.archery-hero>svg{display:none}.gate-card{padding:25px}.consent-submission{grid-template-columns:auto 1fr}.consent-submission>em,.consent-submission>.consent-actions{grid-column:2}.consent-actions{display:flex}}.personal-fields{background:#f4f7f3;border-radius:13px;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px;padding:13px;display:grid}.personal-fields label{gap:5px;display:grid}.personal-fields b{font-size:8px}.personal-fields input{background:#fff;border:1px solid #d7e0db;border-radius:8px;padding:8px;font-size:9px}.personal-fields .profile-field{grid-column:1/-1}.profile-field span{text-align:center;color:#60756a;cursor:pointer;border:1px dashed #aebfb6;border-radius:8px;padding:9px;font-size:8px}.profile-field span.added{color:#567b32;background:#eaf4df}.profile-field input{display:none}.request-warning{color:#9e5d43;background:#fff2e9;border:1px solid #f0d2c1;border-radius:13px;align-items:flex-start;gap:9px;padding:12px;display:flex}.request-warning>svg{flex:none;width:17px}.request-warning p{margin:0;font-size:9px;line-height:1.5;display:grid}.request-warning b{color:#be6142;font-size:10px}.consent-actions{gap:5px;display:flex}.consent-actions button{color:#fff;background:#17483a;border:0;border-radius:7px;padding:6px 8px;font-size:8px}.consent-actions button:last-child{color:#bd664d;background:#fff0eb}.teacher-center-link{margin-top:4px!important}.teacher-center-link.active{color:#173f35!important;background:#fff!important}.consent-submission>em{white-space:nowrap}.consent-approved-login{background:#e8f4df;border:1px solid #cfe3bf;border-radius:11px;align-items:center;gap:9px;margin-bottom:10px;padding:11px;display:flex}.consent-approved-login>svg{color:#5f8235;width:18px}.consent-approved-login div{display:grid}.consent-approved-login b{font-size:9px}.consent-approved-login small{color:#677962;font-size:8px}.photo-placeholder img{object-fit:cover;border-radius:inherit;width:100%;height:100%}.shared-data-note{color:#3e6e5a;background:#e8f3ee;border-radius:10px;padding:9px;font-size:8px}.admin-password-modal{background:#fff;border-radius:22px;width:min(420px,100%);padding:28px;box-shadow:0 30px 80px #071c1755}.admin-lock{color:#17483a;background:#e8f1ed;border-radius:17px;place-items:center;width:58px;height:58px;margin:24px 0 12px;display:grid}.admin-password-modal>small{letter-spacing:2px;color:#6b8679;font:700 8px DM Sans}.admin-password-modal h2{margin:6px 0;font-size:23px}.admin-password-modal>p{color:var(--muted);font-size:9px}.admin-password-modal>label{gap:6px;margin:18px 0 8px;display:grid}.admin-password-modal label b{font-size:9px}.admin-password-modal label input{border:1px solid #ccd9d2;border-radius:10px;outline:none;padding:11px;font:600 13px DM Sans}.password-error{color:#d45e4d;margin-bottom:9px;font-size:8px;display:block}.shared-admin-reply{color:#4f6958;background:#edf4e9;border-radius:9px;gap:7px;margin:9px 0;padding:9px;display:flex}.shared-admin-reply>svg{flex:none;width:14px}.shared-admin-reply span{font-size:8px;display:grid}.shared-admin-reply b{color:#315b47;font-size:8px}.grade-bars article{cursor:pointer;border-radius:9px;padding:7px}.grade-bars article:hover,.grade-bars article.selected{background:#eef5e9}.class-drilldown,.class-student-detail{border-top:1px solid var(--line);margin-top:20px;padding-top:17px}.drill-head{justify-content:space-between;align-items:center;display:flex}.drill-head small{color:var(--muted);font-size:8px}.drill-head h3{margin:3px 0;font-size:13px}.drill-head button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 8px;font-size:8px}.drill-head>span{color:#567a36;background:#e9f3df;border-radius:8px;padding:6px 8px;font-size:8px}.class-choice-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px;display:grid}.class-choice-grid button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:12px;padding:12px;display:grid}.class-choice-grid button.active{background:#f2f7f3;border-color:#699078}.class-choice-grid button>span{color:#527360;font:700 9px DM Sans}.class-choice-grid b{margin:2px 0;font-size:10px}.class-choice-grid small{color:var(--muted);font-size:7px}.class-choice-grid button>i{background:#edf0ed;border-radius:5px;height:4px;margin-top:8px}.class-choice-grid button>i em{background:#77a065;border-radius:5px;height:100%;display:block}.student-proof-table{margin-top:10px}.student-proof-row{border-top:1px solid var(--line);grid-template-columns:1fr .8fr .6fr 1fr .7fr;align-items:center;min-height:39px;font-size:8px;display:grid}.student-proof-row.head{color:#8a9590;min-height:29px}.student-proof-row b{font:700 9px DM Sans}.student-proof-row span svg{width:11px;margin-right:3px}.student-proof-row em{border-radius:8px;width:max-content;padding:4px 6px;font-style:normal}.student-proof-row em.approved{color:#577d36;background:#e8f3df}.student-proof-row em.pending{color:#bc7141;background:#fff1e5}.student-proof-row em.missing{color:#838b87;background:#f1f2f1}.firebase-form-error{color:#b85d43;background:#fff0eb;border:1px solid #efc9bc;border-radius:11px;padding:10px 12px;font-size:9px}.firestore-saved{color:#567a35;background:#e9f4df;border:1px solid #cfe3bf;border-radius:11px;align-items:center;gap:6px;padding:10px 12px;font-size:9px;display:flex}.firestore-saved svg{width:15px}.firestore-form h2{margin-top:0;font-size:15px}.firestore-form>div{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.firestore-form label{gap:5px;font-size:8px;font-weight:700;display:grid}.firestore-form input,.firestore-form select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px;font-size:9px}.firestore-form>button{color:#fff;background:#17483a;border:0;border-radius:9px;align-items:center;gap:5px;margin-top:13px;padding:9px 11px;font-size:8px;display:flex}.firestore-form>button svg{width:13px}.firestore-list{border:1px solid var(--line);border-radius:11px;margin-bottom:14px;display:grid;overflow:hidden}.firestore-list article{border-top:1px solid var(--line);grid-template-columns:.6fr 1.3fr 1fr .5fr;align-items:center;padding:9px 11px;font-size:8px;display:grid}.firestore-list article:first-child{border-top:0}.firestore-list b{font:700 9px DM Sans}.firestore-list small{color:var(--muted)}.firestore-list em{color:#b96f42;background:#fff0e5;border-radius:7px;width:max-content;padding:4px 6px;font-style:normal}.photo-coming-soon{background:#f7f8f5}.coming-chip{color:#6f7974;background:#e8ece9;border-radius:9px;align-items:center;gap:5px;margin-left:auto;padding:8px 11px;font-size:8px;display:flex}.coming-chip svg{width:13px}.firebase-form-error{white-space:pre-line}@media (width<=760px){.personal-fields{grid-template-columns:1fr}.personal-fields .profile-field{grid-column:auto}.class-choice-grid{grid-template-columns:repeat(2,1fr)}.student-proof-table{overflow-x:auto}.student-proof-row{min-width:560px}.firestore-form>div,.firestore-list article{grid-template-columns:1fr 1fr}.firestore-list em{margin-top:4px}}.calendar-editor .cancel-edit{border:1px solid var(--line);background:#fff;border-radius:9px;gap:4px;padding:7px 9px;font-size:8px;display:flex}.calendar-editor .cancel-edit svg{width:12px}.calendar-form-grid{grid-template-columns:2fr 1fr repeat(5,1fr);gap:9px;display:grid}.calendar-form-grid label{gap:5px;display:grid}.calendar-form-grid label.wide{grid-column:1/-1}.calendar-form-grid b,.week-range label,.recognized-text>b{font-size:8px}.calendar-form-grid input,.calendar-form-grid select,.week-range input,.recognized-text textarea{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px;font-size:8px}.save-calendar-event,.publish-meal,.archery-event-form>button,.add-equipment-button{color:#fff;background:#17483a;border:0;border-radius:9px;align-items:center;gap:5px;margin-top:12px;padding:9px 12px;font-size:8px;font-weight:700;display:flex}.save-calendar-event svg,.publish-meal svg,.archery-event-form>button svg,.add-equipment-button svg{width:13px}.save-calendar-event:disabled,.publish-meal:disabled,.add-equipment-button:disabled{opacity:.4}.year-month-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.year-month{border:1px solid var(--line);background:#fff;border-radius:13px;padding:10px}.year-month h3{margin:0 0 8px;font-size:11px}.month-week,.month-days{grid-template-columns:repeat(7,1fr);display:grid}.month-week span{text-align:center;color:#929d97;font-size:6px}.month-days>button,.month-days>i{text-align:left;background:#fff;border:0;border-top:1px solid #eef1ee;height:38px;padding:3px;overflow:hidden}.month-days>button b{color:#6d7873;font:500 7px DM Sans}.month-days>button.has-event{background:#f8fbf5}.month-days>button span{white-space:nowrap;text-overflow:ellipsis;border-radius:4px;margin-top:1px;padding:2px;font-size:5px;display:block;overflow:hidden}.month-days span.green,.live-month-days span.green{color:#54743b;background:#e5f1df}.month-days span.blue,.live-month-days span.blue{color:#4c72a4;background:#e1ecfa}.month-days span.orange,.live-month-days span.orange{color:#b76842;background:#fff0e6}.month-days span.purple,.live-month-days span.purple{color:#7653a0;background:#ece4f5}.event-admin-list>article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:11px;display:grid}.event-color{background:#6f9b68;border-radius:5px;width:9px;height:30px}.event-color.blue{background:#5788c8}.event-color.orange{background:#dc7955}.event-color.purple{background:#8462ad}.event-admin-list article div{display:grid}.event-admin-list article b{font-size:10px}.event-admin-list article small{color:var(--muted);font-size:7px}.event-admin-list article button{border:1px solid var(--line);background:#fff;border-radius:7px;gap:3px;padding:5px 7px;font-size:7px;display:flex}.event-admin-list article button.delete{color:#c45d49}.event-admin-list svg{width:11px}.empty-firestore{text-align:center;background:#f7f9f6;border-radius:13px;place-items:center!important;padding:27px!important;display:grid!important}.empty-firestore>svg{color:#849a8e}.empty-firestore>b{margin-top:7px;font-size:10px}.empty-firestore>small{color:var(--muted);margin-top:3px;font-size:7px}.live-month-week,.live-month-days{grid-template-columns:repeat(7,1fr);display:grid}.live-month-week span{text-align:center;color:#919c96;padding-bottom:6px;font-size:7px}.live-month-days>div,.live-month-days>i{border-top:1px solid #edf0ed;min-height:55px;padding:5px;overflow:hidden}.live-month-days>div>b{color:#66736d;font:500 8px DM Sans}.live-month-days>div.has-event{background:#fafcf8}.live-month-days>div span{white-space:nowrap;text-overflow:ellipsis;border-radius:5px;margin-top:2px;padding:2px 4px;font-size:6px;display:block;overflow:hidden}.calendar-empty,.calendar-error{text-align:center;color:#7b8781;background:#f5f7f4;border-radius:8px;margin-top:8px;padding:8px;font-size:7px}.calendar-error{color:#b9654a;background:#fff0eb}.cal-nav button:disabled{opacity:.3}.meal-upload-panel .panel-head>svg{color:#5b816c}.meal-upload-zone{grid-template-columns:1fr 1fr;gap:10px;display:grid}.meal-upload-zone>label{cursor:pointer;background:#f5f8f4;border:1px dashed #9fb4a9;border-radius:13px;align-content:center;place-items:center;min-height:95px;display:grid}.meal-upload-zone>label svg{color:#5d806d}.meal-upload-zone>label b{margin-top:5px;font-size:9px}.meal-upload-zone>label small{color:var(--muted);font-size:7px}.meal-upload-zone input{display:none}.selected-meal-file{border:1px solid var(--line);border-radius:13px;align-items:center;gap:9px;padding:14px;display:flex}.selected-meal-file>svg{color:#5b7d49;background:#e7f0e2;border-radius:9px;width:31px;height:31px;padding:7px}.selected-meal-file div{display:grid}.selected-meal-file b{font-size:9px}.selected-meal-file small{color:var(--muted);font-size:7px}.selected-meal-file>span{color:#5c7d45;margin-left:auto;font-size:7px}.ocr-progress{color:#58724e;background:#edf4ea;border-radius:9px;align-items:center;gap:6px;margin-top:9px;padding:8px;font-size:8px;display:flex}.ocr-progress svg{width:13px}.week-range{gap:9px;margin:12px 0;display:flex}.week-range label{gap:4px;display:grid}.recognized-text{gap:5px;display:grid}.recognized-text textarea{resize:vertical;min-height:180px;line-height:1.6}.recognized-allergens{background:#fff4ec;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;padding:10px;display:flex}.recognized-allergens>b{align-items:center;gap:4px;font-size:8px;display:flex}.recognized-allergens svg{color:#c86d4c;width:12px}.recognized-allergens span{color:#a55d43;background:#fff;border-radius:7px;padding:4px 6px;font-size:7px}.recognized-allergens small{color:#8a817c;font-size:7px}.published-meals article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:11px;display:grid}.published-meals article>span{color:#5a7b42;background:#e7f2e1;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.published-meals article div{display:grid}.published-meals b{font-size:9px}.published-meals small{color:var(--muted);font-size:7px}.published-meals em{color:#597b40;font-size:7px;font-style:normal}.published-meals button{color:#b65e4d;background:0 0;border:0}.published-meals svg{width:14px}.has-live-meal .meal-panel{display:none}.live-meal-documents{gap:12px;display:grid}.live-meal-documents>.panel-head{margin-bottom:0}.live-meal-documents>article{border:1px solid var(--line);border-radius:13px;padding:14px}.live-meal-documents article.latest{background:#fbfdf8;border-color:#aac69b}.meal-document-head{align-items:center;gap:9px;display:flex}.meal-document-head>span{color:#5b7e47;background:#e9f2e4;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.meal-document-head div{display:grid}.meal-document-head small{color:#66815c;font-size:7px}.meal-document-head b{font-size:10px}.meal-document-head p{color:var(--muted);margin:0;font-size:7px}.meal-text-preview{white-space:pre-wrap;background:#f5f7f4;border-radius:9px;max-height:170px;margin:10px 0;padding:10px;font-size:8px;line-height:1.6;overflow:auto}.published-allergy{background:#edf4ea;border-radius:9px;gap:7px;padding:8px;display:flex}.published-allergy.warning{background:#fff0e8}.published-allergy>svg{color:#678057;width:14px}.published-allergy.warning>svg{color:#c56649}.published-allergy div{display:grid}.published-allergy small{color:var(--muted);font-size:6px}.published-allergy b{font-size:8px}.published-allergy em{color:#c15e43;font-size:7px;font-style:normal}.equipment-manage-grid{grid-template-columns:.8fr 1.2fr;gap:13px;display:grid}.category-manager .panel-head>svg,.item-manager .panel-head>svg{color:#5d7e69}.category-add{gap:6px;display:flex}.category-add input{border:1px solid var(--line);border-radius:8px;flex:1;padding:8px;font-size:8px}.category-add button{color:#fff;background:#17483a;border:0;border-radius:8px;padding:7px 9px;font-size:8px}.category-list{margin-top:10px}.category-list article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px;padding:8px;display:grid}.category-list article>span{color:#5d7b4d;background:#e9f1e5;border-radius:8px;place-items:center;width:29px;height:29px;display:grid}.category-list svg{width:13px}.category-list b{font-size:9px}.category-list small{color:var(--muted);font-size:7px}.category-list button{color:#b36252;background:0 0;border:0}.equipment-item-form{grid-template-columns:1fr 1.5fr .7fr .6fr;gap:8px;display:grid}.equipment-item-form label{gap:4px;display:grid}.equipment-item-form label.wide{grid-column:1/-1}.equipment-item-form b{font-size:7px}.equipment-item-form input,.equipment-item-form select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px;font-size:8px}.equipment-category-group{border-top:1px solid var(--line);padding:13px 0}.equipment-category-group h3{margin:0 0 7px;font-size:11px}.equipment-category-group h3 span{color:#607d52;background:#edf3e9;border-radius:7px;margin-left:6px;padding:4px 6px;font-size:7px}.equipment-category-group>div{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.equipment-category-group article{border:1px solid var(--line);border-radius:11px;grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:8px;padding:9px;display:grid}.equipment-category-group article>span{color:#607c53;background:#edf2e9;border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.equipment-category-group article div{display:grid}.equipment-category-group article b{font-size:9px}.equipment-category-group article small{color:var(--muted);font-size:7px}.equipment-category-group strong{font-size:8px}.equipment-category-group button{color:#87938d;background:0 0;border:0}.equipment-category-group button:last-child{color:#b86352}.request-kind{grid-column:1/-1;gap:5px;display:flex}.request-kind button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 8px;font-size:7px}.equipment-request-form .wide{grid-column:1/-1}.archery-event-form .panel-head>svg{color:#6f55a0}.archery-event-form>div:nth-child(2){grid-template-columns:.7fr 1.5fr repeat(4,1fr);gap:8px;display:grid}.archery-event-form label{gap:4px;display:grid}.archery-event-form input,.archery-event-form select,.student-archery-calendar select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px;font-size:8px}.archery-event-list article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:11px;display:grid}.archery-event-list article>span{color:#7858a1;background:#eee7f5;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.archery-event-list article div{display:grid}.archery-event-list b{font-size:9px}.archery-event-list small{color:var(--muted);font-size:7px}.archery-event-list strong{color:#715499;font-size:8px}.archery-event-list button{color:#b76152;background:0 0;border:0}.archery-live-cover{color:#fff;background:radial-gradient(circle,#e6c867,#5d3f83 65%,#1d2c59);align-content:center;place-items:center;height:120px;display:grid}.archery-live-cover svg{color:#ffe58e;width:36px}.archery-live-cover b{margin-top:5px;font-size:13px}.archery-live-feed{gap:13px;display:grid}.archery-live-days>div{min-height:62px}@media (width<=1100px){.year-month-grid{grid-template-columns:repeat(2,1fr)}.calendar-form-grid{grid-template-columns:repeat(3,1fr)}.equipment-manage-grid{grid-template-columns:1fr}.archery-event-form>div:nth-child(2){grid-template-columns:repeat(3,1fr)}}@media (width<=760px){.year-month-grid{grid-template-columns:1fr}.calendar-form-grid,.equipment-item-form,.archery-event-form>div:nth-child(2){grid-template-columns:1fr 1fr}.meal-upload-zone{grid-template-columns:1fr}.week-range{grid-template-columns:1fr 1fr;display:grid}.equipment-category-group>div{grid-template-columns:1fr}.calendar-form-grid label.wide,.equipment-item-form label.wide{grid-column:1/-1}}.meal-panel{display:none!important}:root{--ink:#13251f;--muted:#53675e;--line:#d6e0da;--shadow:0 12px 35px #1b3d321a}body{-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:15px;line-height:1.55}.content{line-height:1.55}.content p,.login-page p,.consent-overlay p,.gate-page p{font-size:13px!important;line-height:1.65!important}.content small,.login-page small,.consent-overlay small,.gate-page small{line-height:1.5;font-size:12px!important}.content input,.content select,.content textarea,.login-page input,.consent-overlay input{min-height:42px;color:var(--ink)}.content input::placeholder,.content textarea::placeholder,.login-page input::placeholder{color:#798981;opacity:1}.eyebrow{letter-spacing:1.8px;font-size:11px!important}.page-title h1{font-size:32px;line-height:1.25}.panel-head h2,.section-title h2{font-size:21px;line-height:1.35}.panel{border-color:#d8e2dc}.sidebar a{padding-block:13px;font-size:15px}.sidebar .school-chip small,.sidebar .side-footer p{color:#b6c9c1;font-size:12px}.role-select small,.date small{color:#5d7067;font-size:11px}.metric-grid small,.summary-cards small,.admin-summary small,.teacher-kpis small,.report-card small,.metric-grid p,.report-card p{font-size:12px!important}.quick-grid b,.todo b,.schedule-row b,.notice-panel article b,.parent-card b,.gear-list b,.notice-list b{font-size:14px}.quick-grid button,.parent-card,.todo,.admin-command-grid button{min-height:64px}.tag,.legend span,.status,.notice-level,.sync-badge,.date-chip,.identity-chip,.popular-badge{line-height:1.35;font-size:11px!important}.admin-tabs button{padding:11px 15px;font-size:13px!important}.admin-authority,.class-code{font-size:12px}.calendar-form-grid b,.week-range label,.recognized-text>b,.firestore-form label,.apply-fields b,.account-id-field b,.personal-fields b{font-size:12px!important}.calendar-form-grid input,.calendar-form-grid select,.week-range input,.recognized-text textarea,.firestore-form input,.firestore-form select,.apply-fields input,.apply-fields select,.apply-fields textarea{padding:10px 11px;font-size:13px!important}.save-calendar-event,.publish-meal,.archery-event-form>button,.add-equipment-button,.firestore-form>button,.consent-submit,.primary-btn,.outline-btn{min-height:43px;padding:11px 15px;font-size:13px!important}.event-admin-list article b,.equipment-category-group article b,.published-meals b,.archery-event-list b,.firestore-list b,.teacher-opinions strong,.opinion-feed h3{font-size:14px!important}.event-admin-list article small,.equipment-category-group article small,.published-meals small,.archery-event-list small,.firestore-list,.student-proof-row,.consent-row,.consent-submission small{font-size:12px!important}.year-month-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.year-month{padding:14px}.year-month h3{margin-bottom:10px;font-size:16px}.month-week span{color:#64766d;padding-bottom:5px;font-size:11px;font-weight:700}.month-days>button,.month-days>i{height:56px;padding:5px}.month-days>button b{color:#44574e;font-size:11px}.month-days>button span{padding:3px 4px;font-size:10px;line-height:1.3}.live-month-week span,.live-month-days>div>b,.live-month-days span{font-size:11px!important}.meal-text-preview{font-size:13px;line-height:1.7}.allergy-options button,.recognized-allergens span,.published-allergy b,.published-allergy em{font-size:12px!important}.consent-checks button,.teacher-submit-note b,.request-warning p,.privacy-note,.shared-data-note,.firebase-form-error,.firestore-saved{line-height:1.6;font-size:12px!important}.opinion-feed p,.archery-post p,.reward-rule p,.card-vault-grid p{color:#53675e}@media (width<=1100px){.year-month-grid{grid-template-columns:1fr}}@media (width<=760px){body{font-size:15px}.content{padding-inline:18px}.content p,.login-page p,.consent-overlay p,.gate-page p{font-size:14px!important}.content small,.login-page small,.consent-overlay small,.gate-page small{font-size:12px!important}.content input,.content select,.content textarea,.login-page input,.consent-overlay input{font-size:16px!important}.page-title h1{font-size:28px}.panel-head h2,.section-title h2{font-size:20px}.panel{padding:21px}.bottom-nav small{font-size:11px!important}.year-month{padding:12px}.month-days>button,.month-days>i{height:52px}.month-days>button span{font-size:9px}}body{font-size:17px}.content p,.login-page p,.consent-overlay p,.gate-page p{font-size:16px!important}.content small,.login-page small,.consent-overlay small,.gate-page small{font-size:14px!important}.content label,.content input,.content select,.content textarea,.content button,.login-page input,.login-page button,.consent-overlay input,.consent-overlay button{font-size:16px!important}.content input,.content select,.content textarea,.login-page input,.consent-overlay input{min-height:48px;padding:12px 14px}.primary-btn,.outline-btn,.consent-submit,.save-calendar-event,.publish-meal,.add-equipment-button,.firestore-form>button,.admin-tabs button,.tabs button{min-height:48px}.page-title h1{font-size:36px}.page-title p{max-width:850px}.panel-head h2,.section-title h2{font-size:24px}.eyebrow{font-size:13px!important}.quick-grid b,.todo b,.schedule-row b,.notice-panel article b,.parent-card b,.gear-list b,.notice-list b,.admin-command-grid b,.teacher-opinions strong,.opinion-feed h3{font-size:16px!important}.metric-grid small,.summary-cards small,.admin-summary small,.teacher-kpis small,.report-card small,.event-admin-list article small,.equipment-category-group article small,.published-meals small,.archery-event-list small,.consent-submission small{font-size:14px!important}.tag,.legend span,.status,.notice-level,.sync-badge,.date-chip,.identity-chip,.popular-badge{font-size:13px!important}.panel{padding:28px}.quick-grid button,.parent-card,.admin-command-grid button{padding:22px}.sidebar{width:268px}.sidebar a{min-height:48px;font-size:16px}.main{width:calc(100% - 268px);margin-left:268px}.signature-field{background:#fbfdfb;border:2px solid #cbd8d1;border-radius:18px;margin:18px 0;padding:18px}.signature-field.signed{background:#f5fbf6;border-color:#75a384}.signature-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.signature-heading>div{gap:4px;display:grid}.signature-heading span{color:#28705a;align-items:center;gap:6px;font-size:14px;font-weight:800;display:flex}.signature-heading span svg,.signature-heading em svg{width:18px}.signature-heading b{font-size:17px}.signature-heading em{white-space:nowrap;color:#3e744f;background:#e3f2e5;border-radius:10px;align-items:center;gap:5px;padding:8px 10px;font-size:13px;font-style:normal;font-weight:800;display:flex}.signature-canvas-wrap{background:#fff;border:2px dashed #aebdb5;border-radius:14px;height:210px;position:relative;overflow:hidden}.signature-canvas-wrap canvas{touch-action:none;cursor:crosshair;z-index:2;width:100%;height:100%;display:block;position:relative}.signature-canvas-wrap p{color:#84928b;pointer-events:none;place-items:center;margin:0;display:grid;position:absolute;inset:0;font-size:15px!important}.signature-clear{border:1px solid var(--line);color:#5d6e66;background:#fff;border-radius:11px;align-items:center;gap:6px;min-height:44px;margin-top:10px;padding:9px 13px;display:flex}.signature-clear svg{width:17px}.teacher-signature-preview{background:#fff;border:1px solid #d5dfd9;border-radius:10px;grid-template-columns:auto 140px;align-items:center;gap:8px;width:max-content;max-width:100%;margin-top:8px;padding:7px 9px;display:grid}.teacher-signature-preview b{color:#557066;font-size:12px}.teacher-signature-preview img{object-fit:contain;background:#fff;width:140px;height:44px}.calendar-click-guide{color:#fff;background:linear-gradient(120deg,#17483a,#2f745c);border-radius:16px;align-items:center;gap:14px;padding:18px 21px;display:flex}.calendar-click-guide>svg{width:34px;height:34px;color:var(--lime)}.calendar-click-guide div{display:grid}.calendar-click-guide b{font-size:18px}.calendar-click-guide p{color:#d7e7df;margin:3px 0 0}.calendar-first .month-days>button{cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s}.calendar-first .month-days>button:hover{background:#edf7ed;transform:translateY(-1px);box-shadow:inset 0 0 0 2px #8caf91}.calendar-first .month-days>button.selected-date{background:#e2f2e4;box-shadow:inset 0 0 0 3px #36755f}.calendar-first .month-days>button.selected-date>b{color:#17483a;font-weight:900}.calendar-quick-editor{border:2px solid #91b39d;scroll-margin-top:100px;box-shadow:0 18px 40px #17483a21}.calendar-quick-editor .event-title-field{grid-column:span 2}.calendar-save-row{align-items:center;gap:9px;margin-top:16px;display:flex}.calendar-save-row>span{color:#456556;background:#edf4ea;border-radius:10px;align-items:center;gap:6px;min-height:42px;padding:8px 11px;font-size:14px;font-weight:700;display:flex}.calendar-save-row span svg{width:17px}.calendar-save-row .save-calendar-event{margin:0 0 0 auto}.month-days>button,.month-days>i{height:68px}.month-days>button b{font-size:13px}.month-days>button span{font-size:12px}@media (width<=760px){body{font-size:17px}.sidebar{width:248px}.main{width:100%;margin:0}.content{padding:22px 18px 104px}.content p,.login-page p,.consent-overlay p,.gate-page p{font-size:16px!important}.content small,.login-page small,.consent-overlay small,.gate-page small{font-size:14px!important}.page-title h1{font-size:31px}.panel-head h2,.section-title h2{font-size:23px}.panel{border-radius:18px;padding:22px}.parent-card,.quick-grid button,.admin-command-grid button{min-height:82px;padding:19px}.bottom-nav{min-height:74px}.bottom-nav small{font-size:12px!important}.consent-overlay{padding:0}.consent-modal{border-radius:0;width:100%;min-height:100vh;max-height:100vh;padding:24px 20px 36px}.consent-modal h2{font-size:29px}.consent-checks button{min-height:58px;font-size:15px!important}.signature-canvas-wrap{height:230px}.signature-heading{align-items:flex-start}.signature-heading em{padding:8px;font-size:0}.signature-heading em svg{width:20px}.calendar-click-guide{align-items:flex-start;padding:18px}.calendar-click-guide b{font-size:17px}.calendar-form-grid{grid-template-columns:1fr}.calendar-quick-editor .event-title-field,.calendar-form-grid label.wide{grid-column:auto}.calendar-save-row{grid-template-columns:1fr;display:grid}.calendar-save-row .save-calendar-event{justify-content:center;width:100%;margin:0}.month-days>button,.month-days>i{height:64px}.month-days>button span{font-size:11px}.event-admin-list>article{grid-template-columns:auto 1fr}.event-admin-list>article>button{min-height:44px}.teacher-signature-preview{grid-template-columns:1fr;width:100%}.teacher-signature-preview img{width:100%;height:64px}}.calendar-first .month-week span:first-child,.live-month-week span:last-child,.archery-year-calendar .month-week span:last-child{color:#d9574f}.calendar-first .month-week span:last-child,.live-month-week span:nth-child(6),.archery-year-calendar .month-week span:nth-child(6){color:#3978c5}.month-days>:nth-child(7n+1)>b,.live-month-days>:nth-child(7n+1)>b{color:#d9574f!important}.month-days>:nth-child(7n)>b,.live-month-days>:nth-child(7n)>b{color:#3978c5!important}.live-month-week span:nth-child(7),.archery-year-calendar .month-week span:nth-child(7),.year-calendar:not(.calendar-first) .month-week span:nth-child(7){grid-area:1/1}.live-month-week span:first-child,.archery-year-calendar .month-week span:first-child,.year-calendar:not(.calendar-first) .month-week span:first-child{grid-area:1/2}.live-month-week span:nth-child(2),.archery-year-calendar .month-week span:nth-child(2),.year-calendar:not(.calendar-first) .month-week span:nth-child(2){grid-area:1/3}.live-month-week span:nth-child(3),.archery-year-calendar .month-week span:nth-child(3),.year-calendar:not(.calendar-first) .month-week span:nth-child(3){grid-area:1/4}.live-month-week span:nth-child(4),.archery-year-calendar .month-week span:nth-child(4),.year-calendar:not(.calendar-first) .month-week span:nth-child(4){grid-area:1/5}.live-month-week span:nth-child(5),.archery-year-calendar .month-week span:nth-child(5),.year-calendar:not(.calendar-first) .month-week span:nth-child(5){grid-area:1/6}.live-month-week span:nth-child(6),.archery-year-calendar .month-week span:nth-child(6),.year-calendar:not(.calendar-first) .month-week span:nth-child(6){grid-area:1/7}.academic-importer>.panel-head>svg{color:#573;background:#eaf4df;border-radius:13px;width:44px;height:44px;padding:10px}.academic-file-drop{cursor:pointer;background:#f8faf7;border:2px dashed #9db3a7;border-radius:16px;align-items:center;gap:15px;min-height:105px;padding:18px;display:flex}.academic-file-drop>svg{color:#2f6d58;background:#e2efe8;border-radius:12px;flex:none;width:42px;height:42px;padding:9px}.academic-file-drop>div{flex:1;display:grid}.academic-file-drop b{font-size:17px}.academic-file-drop small{color:var(--muted)}.academic-file-drop>span{color:#fff;background:#17483a;border-radius:11px;align-items:center;gap:6px;min-height:44px;padding:9px 13px;font-weight:800;display:flex}.academic-file-drop>span svg{width:18px}.academic-file-drop input{display:none}.academic-import-progress{color:#4c6883;background:#edf2f8;border-radius:12px;align-items:center;gap:8px;margin-top:12px;padding:12px 14px;font-size:14px;font-weight:700;display:flex}.academic-import-progress.done{color:#4f7434;background:#e9f4df}.academic-import-progress svg{width:19px}.academic-import-progress:not(.done) svg{animation:1s linear infinite academic-spin}@keyframes academic-spin{to{transform:rotate(360deg)}}.academic-import-preview{border:1px solid var(--line);border-radius:14px;margin-top:16px;overflow:hidden}.import-preview-head{background:#eff4ef;justify-content:space-between;padding:13px 15px;display:flex}.import-preview-head b{font-size:16px}.import-preview-head span{color:#44705e;font-size:14px;font-weight:700}.academic-import-preview article{border-top:1px solid var(--line);background:#fff;grid-template-columns:auto 1fr 120px auto;align-items:center;gap:11px;padding:12px 14px;display:grid}.academic-import-preview article.selected{background:#f8fcf5}.academic-import-preview article.duplicate{opacity:.58}.import-check{background:#fff;border:2px solid #b8c7bf;border-radius:10px;place-items:center;width:38px;height:38px;display:grid;min-height:38px!important}.selected .import-check{color:#fff;background:#4f8065;border-color:#4f8065}.import-check svg{width:19px}.import-event-fields{gap:3px;display:grid}.import-event-fields input{background:#fff;border:1px solid #d5dfd9;border-radius:9px;min-height:40px;font-weight:700}.import-event-fields span{color:#60736a;font-size:13px}.academic-import-preview select{background:#fff;border:1px solid #d5dfd9;border-radius:9px;min-height:42px}.academic-import-preview em{white-space:nowrap;color:#577348;font-size:12px;font-style:normal}.import-save-all{color:#fff;background:#17483a;border:0;border-radius:12px;justify-content:center;align-items:center;gap:7px;width:calc(100% - 28px);min-height:50px;margin:14px;font-weight:800;display:flex}.import-save-all:disabled{opacity:.4}.import-save-all svg{width:19px}@media (width<=760px){.academic-file-drop{grid-template-columns:auto 1fr;align-items:flex-start;display:grid}.academic-file-drop>span{grid-column:1/-1;justify-content:center}.academic-import-preview article{grid-template-columns:auto 1fr}.academic-import-preview article>select,.academic-import-preview article>em{grid-column:2}}.calendar-target-field{grid-column:1/-1;gap:8px;display:grid}.calendar-target-field>b{font-size:14px!important}.calendar-target-options{flex-wrap:wrap;gap:8px;display:flex}.calendar-target-options button{color:#56685f;background:#fff;border:1px solid #cdd9d2;border-radius:12px;min-height:44px;padding:9px 14px;font-weight:700}.calendar-target-options button.selected{color:#225b45;background:#e6f2e8;border-color:#3d765f;box-shadow:inset 0 0 0 1px #609078}.calendar-target-options button span{color:#fff;background:#3d765f;border-radius:6px;place-items:center;width:20px;height:20px;margin-right:6px;display:inline-grid}.archery-event-form>div:nth-child(2){grid-template-columns:repeat(3,minmax(0,1fr))}.archery-event-form label.wide{grid-column:1/-1}.archery-event-form label b{font-size:13px!important}.archery-event-form input,.archery-event-form select{min-height:46px;font-size:15px!important}@media (width<=760px){.calendar-target-options{grid-template-columns:repeat(2,1fr);display:grid}.calendar-target-options button{text-align:left}.archery-event-form>div:nth-child(2){grid-template-columns:1fr}.archery-event-form label.wide{grid-column:auto}}.schedule-excel-button,.meal-calendar-toolbar label{color:#fff;cursor:pointer;background:#17483a;border-radius:12px;align-items:center;gap:7px;min-height:50px;padding:12px 16px;font-weight:800;display:flex}.schedule-excel-button input,.meal-calendar-toolbar input{display:none}.schedule-excel-button svg,.meal-calendar-toolbar label svg{width:20px}.facility-tabs{gap:8px;display:flex}.facility-tabs button{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:48px;padding:10px 18px;font-weight:800}.facility-tabs button.active{color:#fff;background:#17483a}.weekly-schedule-panel{overflow-x:auto}.weekly-schedule-grid{border-top:1px solid var(--line);grid-template-columns:100px repeat(7,1fr);min-width:900px;display:grid}.weekly-schedule-grid.header{background:#f0f4f0;border:0;border-radius:12px 12px 0 0}.weekly-schedule-grid>b,.weekly-schedule-grid>strong{text-align:center;padding:14px}.weekly-schedule-grid .sun{color:#d9574f}.weekly-schedule-grid .sat{color:#3978c5}.schedule-cell{border-left:1px solid var(--line);align-content:start;gap:5px;min-height:78px;padding:6px;display:grid}.schedule-cell span{color:#24342e;border-radius:9px;padding:8px;font-size:13px;font-weight:800;box-shadow:inset 0 0 0 1px #0000000a}.schedule-change-form>div:nth-child(2),.equipment-create-grid,.equipment-request-grid,.notice-editor-grid,.opinion-create-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.schedule-change-form label,.equipment-create-grid label,.equipment-request-grid label,.notice-editor-grid label,.opinion-create-grid label{gap:6px;font-weight:800;display:grid}.schedule-change-form label.wide,.equipment-create-grid .wide,.equipment-request-grid .wide,.notice-editor-grid .wide,.opinion-create-grid .wide{grid-column:1/-1}.schedule-change-form input,.schedule-change-form select,.equipment-create-grid input,.equipment-create-grid select,.equipment-request-grid input,.equipment-request-grid select,.notice-editor-grid input,.notice-editor-grid select,.notice-editor-grid textarea,.opinion-create-grid input,.opinion-create-grid select,.opinion-create-grid textarea{border:1px solid var(--line);background:#fff;border-radius:10px;min-height:46px;padding:11px}.schedule-change-form>button{color:#fff;background:#17483a;border:0;border-radius:11px;align-items:center;gap:6px;min-height:48px;margin-top:14px;padding:10px 15px;font-weight:800;display:flex}.schedule-request-admin article,.equipment-request-admin article{border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1.4fr auto auto;align-items:center;gap:10px;padding:14px;display:grid}.schedule-request-admin article small,.equipment-request-admin article small{color:var(--muted)}.schedule-request-admin article em,.equipment-request-admin article em{color:#b86642;background:#fff0e7;border-radius:9px;padding:6px 8px;font-style:normal}.schedule-request-admin article>div,.equipment-request-admin article>div{gap:6px;display:flex}.schedule-request-admin article button,.equipment-request-admin article button{color:#557632;background:#e7f2df;border:0;border-radius:9px;padding:8px 10px;font-weight:800}.schedule-request-admin article button:last-child,.equipment-request-admin article button:last-child{color:#b45d49;background:#fff0eb}.equipment-admin-create{grid-template-columns:.7fr 1.3fr;gap:18px;display:grid}.single-add-row{gap:8px;display:flex}.single-add-row input{border:1px solid var(--line);border-radius:10px;flex:1;padding:11px}.single-add-row button{color:#fff;background:#17483a;border:0;border-radius:10px;padding:10px 15px;font-weight:800}.equipment-photo-input{cursor:pointer;color:#496f5d;border:2px dashed #aebfb6;border-radius:12px;grid-column:1/-1;justify-content:center;align-items:center;min-height:62px;display:flex!important}.equipment-photo-input input{display:none}.equipment-live-list>.live-category{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.live-category h3{font-size:20px}.live-category>div{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.live-category article{border:1px solid var(--line);border-radius:15px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:13px;display:grid}.live-category article>img,.live-category article>span{object-fit:cover;background:#edf3e8;border-radius:12px;place-items:center;width:64px;height:64px;display:grid}.live-category article>div{display:grid}.live-category article b{font-size:16px}.live-category article small{color:var(--muted)}.live-category article strong{font-size:15px}.live-category article em{color:#4f7c51;grid-column:2/-1;font-style:normal}.request-kind{gap:8px;margin-bottom:12px;display:flex}.request-kind button{border:1px solid var(--line);background:#fff;border-radius:11px;padding:10px 14px}.request-kind button.active{color:#fff;background:#17483a}.notice-editor textarea,.opinion-create-grid textarea{resize:vertical;min-height:150px}.attachment-label{cursor:pointer;border:2px dashed #acbbb3;border-radius:12px;grid-column:1/-1;justify-content:center;align-items:center;min-height:60px;display:flex!important}.attachment-label input{display:none}.live-notices article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;gap:13px;padding:16px 0;display:grid}.live-notices article>span{color:#4f745e;background:#e8f2e5;border-radius:13px;place-items:center;width:48px;height:48px;display:grid}.live-notices article>div{gap:4px;display:grid}.live-notices em{color:#58744e;font-size:13px;font-style:normal}.live-notices b{font-size:17px}.live-notices p{margin:0!important}.live-notices a{color:#346c58;font-weight:800;text-decoration:none}.live-notices>article>button{color:#b75d4d;background:0 0;border:0}.opinion-board-live{gap:12px;display:grid}.top-request-chip{color:#806112;background:#fff0bb;border-radius:10px;align-items:center;gap:5px;padding:8px 10px;font-weight:800;display:flex}.opinion-board-live>article{border:1px solid var(--line);border-radius:15px;padding:18px}.opinion-board-live>article.top{background:#fffdf3;border:2px solid #e3c057}.opinion-live-meta{align-items:center;gap:8px;display:flex}.opinion-live-meta span,.opinion-live-meta em{background:#edf3e9;border-radius:8px;padding:5px 8px;font-style:normal}.opinion-live-meta strong{color:#d65d70;margin-left:auto}.opinion-board-live h3{margin:12px 0 5px;font-size:19px}.opinion-board-live>article>button{color:#c9576a;background:#fff;border:1px solid #ebd8dc;border-radius:10px;padding:9px 12px}.admin-reply-live{background:#edf4ea;border-radius:10px;margin:10px 0;padding:12px}.admin-reply-live p{margin:2px 0!important}.reply-write-live{gap:8px;display:flex}.reply-write-live input{border:1px solid var(--line);border-radius:10px;flex:1;padding:10px}.reply-write-live button{color:#fff;background:#17483a;border:0;border-radius:10px;padding:10px 13px}.meal-calendar-toolbar>div:last-child{gap:10px;display:flex}.meal-calendar-toolbar select,.month-large-select{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:50px;padding:10px 15px;font-size:16px}.meal-calendar-week,.meal-calendar-days{grid-template-columns:repeat(7,1fr);display:grid}.meal-calendar-week span{text-align:center;padding:10px;font-weight:800}.meal-calendar-week span:first-child{color:#d9574f}.meal-calendar-week span:last-child{color:#3978c5}.meal-calendar-days>i,.meal-calendar-days>article{border-top:1px solid var(--line);border-left:1px solid var(--line);min-height:155px;padding:10px}.meal-calendar-days article>b{font-size:15px}.meal-calendar-days article:nth-child(7n+1)>b{color:#d9574f}.meal-calendar-days article:nth-child(7n)>b{color:#3978c5}.meal-calendar-days article p{white-space:pre-wrap;font-size:13px!important;line-height:1.55!important}.meal-calendar-days article small{color:#c26148;background:#fff0e9;border-radius:8px;gap:4px;padding:6px;display:flex}.meal-calendar-days article em{color:#a0aaa5;font-size:12px;font-style:normal}.live-home-hero{color:#fff;background:linear-gradient(120deg,#17483a,#2e715b);border-radius:25px;justify-content:space-between;align-items:end;padding:38px;display:flex}.live-home-hero span{color:var(--lime);font-weight:800}.live-home-hero h1{margin:10px 0;font-size:38px;line-height:1.25}.live-home-hero p{margin:0;color:#d4e5dd!important}.live-home-hero>b{text-align:right;color:var(--lime);font-family:DM Sans;font-size:17px}.live-home-metrics{grid-template-columns:repeat(4,1fr);gap:13px;display:grid}.live-home-metrics a{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:16px;gap:12px;padding:18px;text-decoration:none;display:flex}.live-home-metrics a>span,.live-admin-metrics article>svg{color:#527b43;background:#e8f2e2;border-radius:12px;width:43px;height:43px;padding:10px}.live-home-metrics a div{display:grid}.live-home-metrics a b{font-size:21px}.home-live-widgets{grid-template-columns:1fr 1fr;gap:14px;display:grid}.home-live-widgets article{border:1px solid var(--line);background:#fff;border-radius:17px;gap:12px;padding:18px;display:flex}.home-live-widgets article>span{color:#54793f;background:#e9f3df;border-radius:13px;flex:none;place-items:center;width:48px;height:48px;display:grid}.home-live-widgets article>div{display:grid}.home-live-widgets article b{font-size:16px}.home-live-widgets article p{color:var(--muted);margin:2px 0!important}.walking-progress-live{align-items:center;gap:14px;display:flex}.walking-progress-live>svg:first-child{color:#567b34;background:#e9f4df;border-radius:15px;width:54px;height:54px;padding:13px}.walking-progress-live>div{display:grid}.walking-progress-live b{font-size:24px}.walking-progress-live p{margin:0!important}.walking-progress-live>svg:last-child{color:#d8a92d;width:44px;margin-left:auto}.walking-upload-row{grid-template-columns:1.5fr .6fr 1fr;gap:10px;margin-top:18px;display:grid}.walking-upload-row label{border:1px solid var(--line);border-radius:12px;align-items:center;gap:7px;padding:10px 13px;font-weight:800;display:flex}.walking-upload-row label:first-child{cursor:pointer;background:#edf5e7}.walking-upload-row input[type=file]{display:none}.walking-upload-row input[type=number]{background:0 0;border:0;width:90px}.walking-upload-row button{color:#fff;background:#17483a;border:0;border-radius:12px;font-weight:800}.walking-upload-row button:disabled{opacity:.35}.photo-public-warning{background:#fff1e9;border-radius:10px;gap:7px;padding:10px;display:flex;color:#a65d45!important;margin-bottom:0!important}.walking-photo-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.walking-photo-grid article{border:1px solid var(--line);border-radius:15px;position:relative;overflow:hidden}.walking-photo-grid article>img,.walking-photo-grid article>span{object-fit:cover;background:#e7f0e5;place-items:center;width:100%;height:150px;display:grid}.walking-photo-grid article>div{padding:11px;display:grid}.walking-photo-grid article em{background:#fff;border-radius:8px;padding:5px 7px;font-style:normal;position:absolute;top:8px;right:8px}.walking-photo-grid article button{color:#fff;background:#17483a;border:0;border-radius:9px;margin:0 10px 10px;padding:8px}.live-admin-metrics{grid-template-columns:repeat(4,1fr);gap:13px;display:grid}.live-admin-metrics article{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:12px;padding:18px;display:flex}.live-admin-metrics article div{display:grid}.live-admin-metrics b{font-size:24px}.admin-live-links{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.admin-live-links a{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:16px;align-items:center;gap:12px;padding:18px;text-decoration:none;display:flex}.admin-live-links a>svg{color:#4f745f;background:#e7f1e7;border-radius:12px;width:43px;height:43px;padding:10px}.admin-live-links a div{display:grid}.admin-live-links a b{font-size:16px}.archery-event-list strong{background:#f1e8fb;border-radius:10px;padding:9px 12px;font-weight:900;color:#684294!important;font-size:17px!important}.archery-live-cover b{font-size:20px!important}.archery-post-body h2{font-size:22px!important}.live-card-vault article p{font-size:14px!important}@media (width<=1000px){.live-home-metrics,.live-admin-metrics{grid-template-columns:repeat(2,1fr)}.equipment-admin-create,.home-live-widgets{grid-template-columns:1fr}.live-category>div,.walking-photo-grid{grid-template-columns:repeat(2,1fr)}.meal-calendar-days>i,.meal-calendar-days>article{min-height:130px}}@media (width<=760px){.schedule-change-form>div:nth-child(2),.equipment-create-grid,.equipment-request-grid,.notice-editor-grid,.opinion-create-grid{grid-template-columns:1fr}.schedule-change-form label.wide,.equipment-create-grid .wide,.equipment-request-grid .wide,.notice-editor-grid .wide,.opinion-create-grid .wide{grid-column:auto}.schedule-request-admin article,.equipment-request-admin article,.live-category>div{grid-template-columns:1fr}.meal-month-calendar{overflow-x:auto}.meal-calendar-week,.meal-calendar-days{min-width:850px}.live-home-hero{gap:20px;padding:26px;display:grid}.live-home-hero h1{font-size:30px}.live-home-hero>b{text-align:left}.live-home-metrics{grid-template-columns:1fr 1fr}.live-home-metrics a{padding:14px}.walking-upload-row{grid-template-columns:1fr}.walking-upload-row button{min-height:50px}.walking-photo-grid{grid-template-columns:1fr 1fr}.admin-live-links{grid-template-columns:1fr}.live-admin-metrics{grid-template-columns:1fr 1fr}.reply-write-live{display:grid}.schedule-excel-button{justify-content:center;width:100%}.row-title,.meal-calendar-toolbar>div:last-child{display:grid}.community-page-live .panel-head{align-items:flex-start}}.card-vault-link{color:#fff;background:#172753;border-radius:13px;align-items:center;gap:7px;min-height:50px;padding:12px 16px;font-weight:800;text-decoration:none;display:flex}.walking-filter-bar{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:16px;display:grid}.walking-filter-bar label{gap:6px;font-weight:800;display:grid}.walking-filter-bar select{border:1px solid var(--line);background:#fff;border-radius:11px;min-height:48px;padding:10px 13px}.walking-filter-bar>div{background:#e9f4df;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 15px;display:flex}.walking-filter-bar strong{font-size:21px}.monthly-ranking .panel-head>svg{color:#9b7213;background:#fff0ba;border-radius:13px;width:45px;height:45px;padding:10px}.ranking-list{display:grid}.ranking-list article{border-top:1px solid var(--line);grid-template-columns:42px 100px 1fr 60px;align-items:center;gap:10px;min-height:54px;display:grid}.ranking-list article>b{background:#eef1ee;border-radius:10px;place-items:center;width:32px;height:32px;display:grid}.ranking-list .rank-1>b{color:#76540c;background:#f7d669}.ranking-list .rank-2>b{color:#586269;background:#dfe4e7}.ranking-list .rank-3>b{color:#805229;background:#edc49b}.ranking-list article>span{font-weight:800}.ranking-list article>div{background:#edf1ed;border-radius:10px;height:8px}.ranking-list i{background:linear-gradient(90deg,#5d8f70,#a6cf64);border-radius:10px;height:100%;display:block}.ranking-list strong{text-align:right}.walking-pending article{border-top:1px solid var(--line);grid-template-columns:1fr 1fr auto;align-items:center;padding:12px;display:grid}.walking-pending button{color:#fff;background:#17483a;border:0;border-radius:9px;padding:9px 12px}.reward-threshold-info{grid-template-columns:1fr 1fr;gap:12px;display:grid}.reward-threshold-info span{color:#fff;text-align:center;background:#172753;border:2px solid #e8c45c;border-radius:15px;padding:15px}.reward-threshold-info b{color:#f4d568;margin-right:6px;font-size:24px}.walking-card-collection article{min-height:340px}.walking-card-collection article.ice,.walking-card-collection article.rain,.walking-card-collection article.wave{background:radial-gradient(circle at 50% 28%,#68a9e8,#172751 72%)}.walking-card-collection article.heart,.walking-card-collection article.blossom{background:radial-gradient(circle at 50% 28%,#f299b6,#742452 72%)}.walking-card-collection article.sprout{background:radial-gradient(circle at 50% 28%,#8bcf71,#23543a 72%)}.walking-card-collection article.sun,.walking-card-collection article.flame,.walking-card-collection article.maple{background:radial-gradient(circle at 50% 28%,#f5a446,#86351e 72%)}.walking-card-collection article.moon,.walking-card-collection article.star{background:radial-gradient(circle at 50% 28%,#8b76d2,#2b235d 72%)}.walking-card-collection article.guardian{background:radial-gradient(circle at 50% 28%,#b5e3f7,#315b9d 72%)}.walking-card-collection article.locked{filter:saturate(.25);opacity:.62}.walking-card-collection article.complete{box-shadow:0 0 0 3px #80d9ff,0 0 30px #71cfff88,inset 0 0 0 2px #684990}.walking-card-collection .vault-character{height:115px;font-size:72px}.walking-card-collection h3{font-size:22px}.walking-card-collection p{color:#ffffffd0;min-height:42px;font-size:13px!important}.walking-card-stats{grid-template-columns:1fr 1fr;gap:5px;margin:10px 0;display:grid}.walking-card-stats span{background:#111d3aaa;border:1px solid #fff2;border-radius:8px;padding:6px;font-size:12px;font-weight:800}.complete-badge{color:#153d59;background:#72d7ff;border-radius:9px;padding:5px 8px;font-style:normal;font-weight:900;position:absolute;top:48px;right:12px}.equipment-space-toggle{background:#e9efeb;border-radius:14px;grid-template-columns:1fr 1fr;gap:8px;padding:6px;display:grid}.equipment-space-toggle button{color:#66776e;background:0 0;border:0;border-radius:11px;min-height:52px;font-size:16px;font-weight:900}.equipment-space-toggle button.active{color:#fff;background:#17483a;box-shadow:0 5px 14px #163e3229}.community-segmented{background:#e9efeb;border-radius:14px;grid-template-columns:1fr 1fr;gap:8px;padding:6px;display:grid}.community-segmented button{color:#61736a;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:7px;min-height:54px;font-size:16px;font-weight:900;display:flex}.community-segmented button.active{color:#fff;background:#17483a}.opinion-sort{background:#eef2ef;border-radius:11px;align-items:center;gap:5px;padding:5px;display:flex}.opinion-sort button{background:0 0;border:0;border-radius:8px;padding:8px 11px}.opinion-sort button.active{color:#225c46;background:#fff;box-shadow:0 3px 8px #173f3518}.opinion-card-grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.opinion-card-grid>article{border:1px solid var(--line);border-radius:16px;flex-direction:column;padding:18px;display:flex;position:relative}.opinion-card-grid>article.top{background:#fffdf3;border:2px solid #e3c057}.opinion-card-grid h3{margin:13px 0 6px;font-size:19px}.opinion-card-grid>article>p{flex:1}.opinion-card-grid>article>button{color:#c9576a;background:#fff;border:1px solid #ebd8dc;border-radius:10px;width:max-content;padding:9px 12px}.opinion-card-grid .popular-badge{top:12px;right:12px}.meal-pdf-viewer iframe{border:1px solid var(--line);background:#f2f3f2;border-radius:13px;width:100%;height:680px}.allergen-profile .panel-head>svg{color:#c55e43;background:#fff0e9;border-radius:13px;width:45px;height:45px;padding:10px}.allergen-check-grid{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.allergen-check-grid button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:11px;align-items:center;gap:7px;min-height:50px;padding:10px;display:flex}.allergen-check-grid button>span{border:2px solid #bdc9c2;border-radius:7px;flex:none;place-items:center;width:24px;height:24px;display:grid}.allergen-check-grid button>span svg{width:16px}.allergen-check-grid button>b{color:#789087}.allergen-check-grid button.selected{color:#a94734;background:#fff1ed;border-color:#d9634b}.allergen-check-grid button.selected>span{color:#fff;background:#d9634b;border-color:#d9634b}.save-allergens{color:#fff;background:#17483a;border:0;border-radius:12px;align-items:center;gap:7px;min-height:50px;margin-top:14px;padding:11px 16px;font-weight:900;display:flex}.meal-calendar-days article.allergy-warning-day{background:#fff0ec;box-shadow:inset 0 0 0 2px #e06b54}.meal-calendar-days article>strong{color:#fff;background:#d95f49;border-radius:8px;gap:4px;margin-top:7px;padding:7px;font-size:12px;display:flex}.meal-calendar-days article>strong svg{flex:none;width:14px}@media (width<=1000px){.allergen-check-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=760px){.walking-filter-bar{grid-template-columns:1fr 1fr}.walking-filter-bar>div{grid-column:1/-1}.ranking-list article{grid-template-columns:36px 78px 1fr 48px}.reward-threshold-info{grid-template-columns:1fr}.walking-card-collection{grid-template-columns:1fr!important}.walking-card-collection article{min-height:360px}.opinion-card-grid{grid-template-columns:1fr}.opinion-card-board .panel-head{gap:12px;display:grid}.allergen-check-grid{grid-template-columns:repeat(2,1fr)}.meal-pdf-viewer iframe{height:520px}}.walking-grade-chart,.walking-personal-calendar,.walking-reward-widget,.live-loan-ledger,.equipment-borrow-form,.secret-letter-form,.secret-letter-inbox,.role-allergy-dashboard,.school-allergy-dashboard{font-size:16px}.grade-bar-chart,.allergy-stat-bars{gap:12px;display:grid}.grade-bar-chart article,.allergy-stat-bars article{grid-template-columns:90px minmax(120px,1fr) 64px 72px;align-items:center;gap:12px;display:grid}.grade-bar-chart article>div,.allergy-stat-bars article>div{background:#e8efea;border-radius:999px;height:14px;overflow:hidden}.grade-bar-chart article i,.allergy-stat-bars article i{border-radius:inherit;background:linear-gradient(90deg,#25705a,#9cca60);height:100%;display:block}.grade-bar-chart strong,.allergy-stat-bars strong{color:#17483a;font-size:20px}.grade-bar-chart small{color:#738078}.walking-personal-dashboard{grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:16px;display:grid}.mini-calendar-week,.mini-calendar-days{grid-template-columns:repeat(7,1fr);gap:7px;display:grid}.mini-calendar-week{color:#738078;text-align:center;margin-bottom:8px;font-weight:800}.mini-calendar-week span:first-child{color:#d14d4d}.mini-calendar-week span:last-child{color:#4276c4}.mini-calendar-days>span,.mini-calendar-days>i{background:#fff;border:1px solid #e1e9e3;border-radius:12px;min-height:64px;padding:8px;position:relative}.mini-calendar-days>span.walked{background:#e7f6e4;border:2px solid #69a966}.mini-calendar-days>span svg{color:#fff;background:#2e7859;border-radius:50%;width:25px;height:25px;padding:4px;position:absolute;bottom:7px;right:7px}.walking-reward-widget{text-align:center;color:#fff;background:linear-gradient(145deg,#142451,#32266e);border:3px solid #d9b951;flex-direction:column;align-items:center;display:flex}.walking-reward-widget .reward-card-mini{background:#fff2;border-radius:24px;place-items:center;width:118px;height:118px;font-size:64px;display:grid;box-shadow:inset 0 0 0 2px #fff5,0 12px 35px #0005}.walking-reward-widget>strong{color:#ffe27d;font-size:44px}.walking-reward-widget p{font-weight:800}.reward-progress{background:#ffffff24;border-radius:99px;width:100%;height:12px;overflow:hidden}.reward-progress i{background:linear-gradient(90deg,#74d6ff,#ffe171);height:100%;display:block}.schedule-empty-note{color:#725d16;background:#fff8d8;grid-column:1/-1;align-items:center;gap:8px;padding:14px;display:flex}.schedule-cell.editable{cursor:pointer;min-height:68px}.schedule-cell.editable:hover{outline-offset:-4px;outline:2px dashed #47886e}.schedule-cell span svg{width:13px;margin-left:5px}.schedule-editor-overlay{z-index:500;background:#13251dcc;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.schedule-cell-editor{background:#fff;border-radius:24px;width:min(520px,100%);padding:26px;box-shadow:0 25px 70px #0006}.schedule-cell-editor label{gap:7px;margin:14px 0;font-weight:900;display:grid}.schedule-cell-editor input{border:1px solid var(--line);min-height:52px;font:inherit;border-radius:12px;padding:10px 13px}.schedule-cell-editor>div{gap:10px;display:flex}.danger-btn{color:#fff;background:#a93d3d;border:0;border-radius:11px;align-items:center;gap:6px;padding:12px 16px;font-weight:900;display:flex}.loan-card-grid{gap:10px;display:grid}.loan-card-grid article{border:1px solid var(--line);border-radius:14px;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;padding:14px;display:grid}.loan-card-grid article>span{color:#235f48;background:#e8f3e7;border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.loan-card-grid article div{gap:4px;display:grid}.loan-card-grid button{color:#fff;background:#17483a;border:0;border-radius:10px;gap:6px;padding:10px 13px;font-weight:800;display:flex}.equipment-borrow-form>div:last-of-type{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.equipment-borrow-form label{gap:6px;font-weight:900;display:grid}.equipment-borrow-form label.wide{grid-column:1/-1}.equipment-borrow-form input,.equipment-borrow-form select{border:1px solid var(--line);background:#fff;border-radius:11px;min-height:50px;padding:9px 12px}.category-crud-list{gap:8px;margin-top:14px;display:grid}.category-crud-list article{border:1px solid var(--line);border-radius:11px;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.category-crud-list article input{border:1px solid var(--line);border-radius:8px;min-height:42px;padding:7px}.category-crud-list article button{color:#245f49;background:#eaf1ec;border:0;border-radius:8px;width:40px;height:40px}.category-crud-list article button.danger{color:#af4339;background:#fde9e7}.equipment-card-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.equipment-card-grid article{border:1px solid var(--line);border-radius:15px;grid-template-columns:62px 1fr auto;align-items:center;gap:11px;padding:12px;display:grid}.equipment-card-grid img,.equipment-card-grid article>span{object-fit:cover;background:#edf3ee;border-radius:12px;place-items:center;width:62px;height:62px;display:grid}.equipment-card-grid article>div{gap:3px;display:grid}.equipment-card-grid em{color:#5d816f;font-size:12px}.equipment-card-grid strong{font-size:18px}.community-v3 .community-segmented{grid-template-columns:repeat(3,1fr)}.community-v3 .community-segmented button{font-size:17px}.interaction-type-picker,.poll-buttons,.moderation-actions{flex-wrap:wrap;gap:8px;display:flex}.interaction-type-picker{margin:14px 0}.interaction-type-picker button,.poll-buttons button,.empathy-button{background:#fff;border:1px solid #d9e2db;border-radius:11px;align-items:center;gap:6px;padding:11px 14px;font-weight:900;display:flex}.interaction-type-picker button.active{color:#fff;background:#17483a}.strong-community-warning,.privacy-note{color:#8c3e2a;background:#fff1e9;border-radius:12px;padding:14px;font-weight:900;line-height:1.55}.opinion-card-grid>article.blinded{opacity:.72;background:#f3f3f3}.moderation-actions{margin-top:12px}.moderation-actions input{border:1px solid var(--line);border-radius:9px;flex:1;min-width:180px;padding:9px}.moderation-actions button{border:0;border-radius:9px;padding:9px 11px}.moderation-actions button.danger{color:#fff;background:#a93d3d}.secret-letter-form>div:last-of-type{grid-template-columns:1fr 2fr;gap:12px;display:grid}.secret-letter-form label{gap:6px;font-weight:900;display:grid}.secret-letter-form label.wide{grid-column:1/-1}.secret-letter-form input,.secret-letter-form select,.secret-letter-form textarea,.secret-letter-inbox input{border:1px solid var(--line);min-height:50px;font:inherit;border-radius:11px;padding:10px 12px}.secret-letter-form textarea{min-height:140px}.secret-letter-inbox>article{border-top:1px solid var(--line);grid-template-columns:1fr minmax(220px,.45fr);gap:15px;padding:18px 0;display:grid}.secret-letter-inbox article>div{gap:7px;display:grid}.secret-letter-inbox blockquote{background:#eef7ef;border-left:4px solid #5d9976;margin:0;padding:10px 13px}.secret-letter-inbox button{color:#fff;background:#17483a;border:0;border-radius:9px;padding:9px;font-weight:900}.allergy-student-list{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:18px;display:grid}.allergy-student-list span{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px}.archery-result-large{color:#7e3d9d;margin:6px 0 12px;font-size:26px;display:block}.archery-admin-cheers article{border-top:1px solid var(--line);grid-template-columns:90px 1fr auto;align-items:center;gap:12px;padding:14px 0;display:grid}.archery-admin-cheers article strong{font-size:19px}.archery-admin-cheers button{color:#a33d35;background:#fde9e7;border:0;border-radius:9px;padding:9px}.forced-password-change{background:#fff9de;border:2px solid #e5b947;border-radius:16px;gap:12px;margin:14px 0;padding:16px;display:grid}.forced-password-change>svg{color:#8f6b0e}.forced-password-change label{gap:6px;font-weight:900;display:grid}.forced-password-change input{min-height:52px;font:inherit;border:1px solid #d8c887;border-radius:10px;padding:10px 12px}@media (width<=1000px){.walking-personal-dashboard{grid-template-columns:1fr}.equipment-card-grid{grid-template-columns:repeat(2,1fr)}.equipment-borrow-form>div:last-of-type{grid-template-columns:1fr 1fr}}@media (width<=760px){.grade-bar-chart article,.allergy-stat-bars article{grid-template-columns:65px 1fr 48px}.grade-bar-chart article small{display:none}.mini-calendar-days>span,.mini-calendar-days>i{min-height:52px}.equipment-card-grid,.allergy-student-list,.equipment-borrow-form>div:last-of-type,.secret-letter-form>div:last-of-type{grid-template-columns:1fr}.secret-letter-form label.wide{grid-column:auto}.community-v3 .community-segmented,.secret-letter-inbox>article{grid-template-columns:1fr}.loan-card-grid article{grid-template-columns:42px 1fr}.loan-card-grid article>button{grid-column:1/-1;justify-content:center}.walking-reward-widget>strong{font-size:38px}}.external-quick-link{z-index:35;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f1f8f3ee;border:1px solid #b9d2c3;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex;position:sticky;bottom:14px;box-shadow:0 10px 28px #173f3524}.external-quick-link>div{gap:2px;display:grid}.external-quick-link small{color:#687a70;font-size:11px}.external-quick-link b{color:#17483a;font-size:14px}.external-quick-link a{color:#fff;white-space:nowrap;background:#17483a;border-radius:10px;align-items:center;gap:6px;min-height:40px;padding:9px 12px;font-size:13px;font-weight:900;text-decoration:none;display:flex}.external-quick-link a svg{width:15px}.external-quick-link.purple{background:#f8f3fcee;border-color:#d7c6e9}.external-quick-link.purple b{color:#643a7c}.external-quick-link.purple a{background:#673d7d}.sidebar nav .sidebar-sub-link{color:#b9d8c7;background:#ffffff0d;border-radius:8px;align-items:center;min-height:30px;margin:-4px 8px 4px 40px;padding:5px 9px;font-size:11px;font-weight:800;text-decoration:none;display:flex}.sidebar nav .sidebar-sub-link:hover{color:#fff;background:#ffffff18}.sidebar nav .sidebar-sub-link.purple{color:#dbc6ee}.sidebar nav a{position:relative}.nav-unread-badge{color:#fff;background:#e24444;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-style:normal;font-weight:900;display:grid;position:absolute;top:7px;right:9px;box-shadow:0 0 0 2px #153e31}.notice-title-button{text-align:left;cursor:pointer;color:#18382d!important;background:0 0!important;border:0!important;padding:0!important;font-size:18px!important;font-weight:900!important}.notice-preview-list article p{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.notice-modal-overlay{z-index:600;background:#10251dcc;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.notice-modal{background:#fff;border-radius:24px;width:min(680px,100%);max-height:84vh;padding:28px;overflow:auto;box-shadow:0 28px 80px #0007}.notice-modal-close{float:right;background:#edf2ee;border:0;border-radius:9px;gap:5px;padding:8px 11px;display:flex}.notice-modal h2{margin:18px 0;font-size:28px}.notice-modal>p{white-space:pre-wrap;font-size:17px;line-height:1.75}.notice-modal>a{color:#fff;background:#17483a;border-radius:10px;gap:7px;margin-top:18px;padding:10px 13px;text-decoration:none;display:inline-flex}@media (width<=760px){.external-quick-link{padding:10px;bottom:76px}.external-quick-link small{display:none}.external-quick-link b{font-size:12px}.external-quick-link a{padding:8px 10px;font-size:12px}}.walking-schedule-form{grid-template-columns:180px 1fr auto;align-items:end;gap:12px;display:grid}.walking-schedule-form label{gap:6px;font-weight:900;display:grid}.walking-schedule-form input{border:1px solid var(--line);border-radius:10px;min-height:50px;padding:9px}.walking-schedule-form>div{flex-wrap:wrap;gap:6px;display:flex}.walking-schedule-form>div button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:10px}.walking-schedule-form>div button.active{color:#fff;background:#17483a}.walking-schedule-list{gap:7px;margin-top:16px;display:grid}.walking-schedule-list article{border-top:1px solid var(--line);grid-template-columns:130px 1fr auto;align-items:center;padding:10px;display:grid}.walking-schedule-list button{color:#a33d35;background:#fde9e7;border:0;border-radius:8px;padding:8px}.walking-today-target{border-radius:15px;grid-template-columns:46px 1fr auto;align-items:center;gap:12px;padding:15px 17px;display:grid}.walking-today-target.target{background:#e4f5e1;border:2px solid #70ab6d}.walking-today-target.rest{background:#eff1ef;border:1px solid #d9dfda}.walking-today-target>strong{background:#fff;border-radius:999px;padding:7px 11px}.admin-walking-review article{grid-template-columns:1fr 1fr auto!important}.admin-walking-review article>div{gap:5px;display:flex}.admin-walking-review button.reject{background:#bc772e}.admin-walking-review button.delete{background:#a63e3e}.student-detail-link{text-align:left;cursor:pointer;border:0;font-weight:900;color:#17483a!important;background:0 0!important;padding:0!important}.student-walk-modal-overlay{z-index:650;background:#10251dcc;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.student-walk-modal{background:#fff;border-radius:24px;width:min(850px,100%);max-height:90vh;padding:26px;overflow:auto}.student-walk-summary{grid-template-columns:1fr 1fr;gap:10px;display:grid}.student-walk-summary article{background:#eaf4ec;border-radius:13px;padding:14px}.student-walk-summary b{font-size:25px;display:block}.student-card-mini-list{flex-wrap:wrap;gap:8px;display:flex}.student-card-mini-list span{background:#fff9dc;border:1px solid #e4cf7f;border-radius:11px;align-items:center;gap:7px;padding:9px;font-size:25px;display:flex}.student-card-mini-list b{font-size:13px}.student-photo-history{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.student-photo-history article{background:#eef2ee;border-radius:11px;overflow:hidden}.student-photo-history img{aspect-ratio:1;object-fit:cover;width:100%}.student-photo-history small{padding:6px;display:block}.camera-capture-button{color:#fff;background:#17483a;border:0;border-radius:11px;align-items:center;gap:7px;min-height:52px;padding:11px 14px;font-weight:900;display:flex}.camera-capture-button.captured{background:#356e29}.camera-overlay{z-index:700;background:#07130fe8;place-items:center;padding:14px;display:grid;position:fixed;inset:0}.camera-overlay section{background:#fff;border-radius:22px;gap:12px;width:min(680px,100%);padding:18px;display:grid}.camera-overlay video{object-fit:cover;background:#000;border-radius:15px;width:100%;max-height:65vh}.camera-close{border:0;border-radius:8px;justify-self:end;padding:8px}.camera-shutter{color:#fff;background:#17483a;border:0;border-radius:13px;justify-content:center;align-items:center;gap:8px;min-height:54px;font-size:17px;font-weight:900;display:flex}@media (width<=760px){.walking-schedule-form,.walking-schedule-list article{grid-template-columns:1fr}.student-photo-history{grid-template-columns:repeat(2,1fr)}.admin-walking-review article{grid-template-columns:1fr!important}.walking-today-target{grid-template-columns:38px 1fr}.walking-today-target>strong{text-align:center;grid-column:1/-1}}.poll-buttons button.active,.empathy-button.active{color:#fff!important;background:#17483a!important;border-color:#17483a!important}.reward-gift-message{background:#ffffff18;border:1px solid #ffe28c;border-radius:11px;margin-top:12px;padding:10px;font-size:13px}.schedule-row-add{grid-template-columns:1fr auto;gap:8px;display:grid}.schedule-row-add input{border:1px solid var(--line);border-radius:10px;min-height:48px;padding:9px 12px}.schedule-row-add button{color:#fff;background:#17483a;border:0;border-radius:10px;padding:10px 14px;font-weight:900}.schedule-row-chips{flex-wrap:wrap;gap:8px;margin-top:13px;display:flex}.schedule-row-chips>span{border:1px solid var(--line);border-radius:10px;display:flex;overflow:hidden}.schedule-row-chips button{background:#edf4ef;border:0;padding:9px 11px;font-weight:800}.schedule-row-chips button.delete{color:#a63d37;background:#fde7e5;padding:8px}.schedule-row-presets{flex-wrap:wrap;gap:7px;margin-bottom:12px;display:flex}.schedule-row-presets button{color:#17483a;background:#eef7f0;border:1px solid #b8d1c0;border-radius:9px;padding:9px 12px;font-weight:900}.schedule-row-presets button:disabled{opacity:.42;cursor:not-allowed}.schedule-row-order-list{gap:7px;margin-top:14px;display:grid}.schedule-row-order-list article{border:1px solid var(--line);border-radius:11px;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;padding:8px;display:grid}.schedule-row-order-list article>b{background:#e8f0ea;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.schedule-row-order-list .row-name{text-align:left;background:0 0;border:0;align-items:center;gap:6px;font-size:16px;font-weight:900;display:flex}.schedule-row-order-list .row-name svg{width:14px}.schedule-row-order-list article>div{gap:5px;display:flex}.schedule-row-order-list article>div button{color:#17483a;background:#e8f0ea;border:0;border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.schedule-row-order-list article>div button:disabled{opacity:.3}.schedule-row-order-list article>div button.delete{color:#a63d37;background:#fde7e5}.schedule-row-order-list svg{width:17px}.schedule-copy-tray{z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff9dfee;border:2px solid #d5b83d;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 13px;display:grid;position:sticky;top:76px;box-shadow:0 8px 24px #5a481a24}.schedule-copy-tray>span{border-radius:9px;align-items:center;gap:6px;min-height:40px;padding:8px 12px;font-weight:900;display:flex}.schedule-copy-tray p{margin:0}.schedule-copy-tray>button{color:#7a6120;background:#fff;border:0;border-radius:8px;gap:5px;padding:8px;display:flex}.schedule-block-with-actions{align-items:center;gap:4px;display:flex!important}.schedule-block-with-actions>b{flex:1}.schedule-block-with-actions>button{color:#3e563e;background:#ffffffb8;border:0;border-radius:6px;place-items:center;width:24px;height:24px;padding:4px;display:grid}.schedule-block-with-actions>button svg{width:14px;height:14px}.cell-paste-button{color:#6f5b17;background:#fff9d8;border:1px dashed #9d852d;border-radius:7px;justify-content:center;align-items:center;gap:4px;width:100%;min-height:30px;margin-top:4px;font-size:11px;font-weight:900;display:flex}.cell-paste-button svg{width:13px}.copy-editor-btn{color:#6e5714;background:#fff3bd;border:0;border-radius:11px;align-items:center;gap:6px;padding:12px 16px;font-weight:900;display:flex}@media (width<=760px){.schedule-copy-tray{grid-template-columns:1fr auto;top:64px}.schedule-copy-tray p{grid-column:1/-1;font-size:12px}}.walking-photo-grid article{position:relative}.approved-photo-delete{color:#fff;background:#a83f3fee;border:0;border-radius:8px;align-items:center;gap:4px;padding:7px 9px;font-size:11px;font-weight:900;display:flex;position:absolute;top:8px;right:8px}.approved-photo-delete svg{width:14px}.mobile-header-left,.mobile-sidebar-close,.mobile-menu-backdrop{display:none}@media (width<=760px){.mobile-header-left{align-items:center;gap:10px;display:flex}.mobile-menu-toggle{color:#fff;background:#17483a;border:0;border-radius:13px;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 6px 16px #173f3533}.mobile-menu-toggle svg{width:24px}.mobile-header-left .mobile-brand{display:block}.sidebar{transition:transform .24s;overflow-y:auto;transform:translate(-105%);box-shadow:18px 0 45px #0b201a66;z-index:1000!important;width:min(88vw,340px)!important;padding:24px 18px 30px!important;display:flex!important}.sidebar.mobile-open{transform:translate(0)}.mobile-sidebar-close{color:#fff;z-index:2;background:#ffffff15;border:0;border-radius:11px;place-items:center;width:40px;height:40px;display:grid;position:absolute;top:14px;right:14px}.mobile-sidebar-close svg{width:21px}.sidebar>.brand{padding-right:50px}.sidebar .school-chip{margin:22px 0 15px}.sidebar nav{gap:6px}.sidebar nav>a:not(.sidebar-sub-link){min-height:54px;padding:13px 14px;font-size:16px}.sidebar nav .sidebar-sub-link{min-height:38px;margin:-3px 5px 2px 42px;font-size:13px}.sidebar .admin-link,.sidebar .teacher-center-link{min-height:54px;font-size:16px}.mobile-menu-backdrop{z-index:999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#07130fa8;border:0;display:block;position:fixed;inset:0}.topbar{gap:8px;padding:0 14px!important}.top-actions{gap:8px}.bell{width:42px;height:42px}.role-select .avatar{width:40px;height:40px}.role-select label{display:none}.content{padding:18px 14px 104px!important}.page-title h1{line-height:1.25;font-size:28px!important}.page-title p{font-size:15px!important}.panel{padding:18px!important}.panel-head{align-items:flex-start;gap:10px}.panel-head h2{font-size:21px!important}.admin-tabs{scroll-snap-type:x mandatory;padding-bottom:6px;overflow-x:auto;display:flex!important}.admin-tabs button{scroll-snap-align:start;min-width:max-content}.meal-month-calendar,.weekly-schedule-panel,.archery-year-calendar{overflow-x:auto}.meal-calendar-week,.meal-calendar-days,.weekly-schedule-grid{min-width:760px}.allergy-click-grid{grid-template-columns:1fr 1fr}.live-admin-metrics{grid-template-columns:1fr 1fr!important}.admin-live-links,.equipment-admin-create,.walking-personal-dashboard{grid-template-columns:1fr!important}.bottom-nav{z-index:50!important}}.secret-letter-inbox .secret-delete-button{justify-content:center;align-items:center;gap:5px;display:flex;color:#fff!important;background:#a6403a!important}.secret-letter-inbox .secret-delete-button svg{width:15px}.allergy-click-grid{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.allergy-click-grid>button{text-align:left;background:#fff3f0;border:1px solid #e6b2aa;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;min-height:72px;padding:10px;display:grid}.allergy-click-grid button>span{color:#fff;background:#d86653;border-radius:9px;place-items:center;width:32px;height:32px;font-size:12px;font-weight:900;display:grid}.allergy-click-grid button>b{font-size:16px}.allergy-click-grid button>strong{color:#b54434}.allergy-student-overlay{z-index:700;background:#10251dcc;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.allergy-student-overlay>section{background:#fff;border-radius:24px;width:min(760px,100%);max-height:88vh;padding:26px;overflow:auto}.allergy-matched-students{gap:8px;display:grid}.allergy-matched-students article{border:1px solid var(--line);border-radius:11px;grid-template-columns:70px 90px 1fr 90px;align-items:center;gap:9px;padding:12px;display:grid}.allergy-matched-students article>span{color:#c04b3c;font-weight:900}.allergy-matched-students article>b{color:#17483a}.allergy-matched-students article>strong{font-size:17px}.allergy-matched-students article>small{text-align:right;color:#708078}@media (width<=760px){.allergy-click-grid{grid-template-columns:repeat(2,1fr)}.allergy-matched-students article{grid-template-columns:60px 70px 1fr}.allergy-matched-students article>small{text-align:left;grid-column:1/-1}}.opinion-reaction-audit>article{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:12px;padding:14px 0;display:grid}.opinion-reaction-audit article>div{gap:4px;display:grid}.opinion-reaction-audit article p{margin:4px 0 0;line-height:1.55}.opinion-reaction-audit article>button{color:#fff;background:#a6403a;border:0;border-radius:9px;align-items:center;gap:5px;padding:10px 12px;font-weight:900;display:flex}.opinion-reaction-audit article>button:disabled{opacity:.35}.archery-reaction-audit>article{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:12px;padding:14px 0;display:grid}.archery-reaction-audit article>div{gap:4px;display:grid}.archery-reaction-audit article p{margin:3px 0;line-height:1.55}.archery-reaction-audit article>button{color:#fff;background:#713f82;border:0;border-radius:9px;align-items:center;gap:5px;padding:10px 12px;font-weight:900;display:flex}.archery-reaction-audit article>button:disabled{opacity:.35}.equipment-card-grid.square{grid-template-columns:repeat(3,minmax(0,1fr))}.equipment-card-grid.square>article{aspect-ratio:1;flex-direction:column;align-items:stretch;padding:16px;display:flex}.equipment-card-grid.square h3{margin:0;font-size:21px}.equipment-card-grid.square img,.equipment-card-grid.square>article>span{aspect-ratio:1.5;object-fit:cover;width:100%;height:auto}.equipment-card-grid.square>article>div:not(.equipment-item-actions){gap:4px;width:100%;display:grid}.equipment-card-grid.square .equipment-item-actions{gap:6px;margin-top:auto;display:flex}.equipment-item-actions button{background:#e7f0e9;border:0;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:4px;padding:8px;font-weight:800;display:flex}.equipment-item-actions button.danger{color:#a64039;background:#fde8e6}@media (width<=760px){.equipment-card-grid.square{grid-template-columns:repeat(2,minmax(0,1fr))}.equipment-card-grid.square>article{aspect-ratio:auto;min-height:330px}}.equipment-category-filter .panel-head p,.equipment-live-list .panel-head p{color:var(--muted);margin:5px 0 0;font-size:14px}.equipment-category-chips{flex-wrap:wrap;gap:9px;display:flex}.equipment-category-chips button{border:1px solid var(--line);color:#31483f;background:#fff;border-radius:999px;align-items:center;gap:7px;min-height:46px;padding:10px 15px;font-weight:900;display:flex}.equipment-category-chips button b{color:#557466;background:#eef4ef;border-radius:999px;place-items:center;min-width:26px;height:26px;font:900 13px DM Sans;display:grid}.equipment-category-chips button.active{color:#fff;background:#17483a;border-color:#17483a;box-shadow:0 8px 18px #17483a2a}.equipment-category-chips button.active b{color:#fff;background:#fff2}.equipment-import-panel .panel-head p{color:var(--muted);margin:6px 0 0;font-size:14px;line-height:1.55}.equipment-bulk-upload{cursor:pointer;background:#f5faf5;border:2px dashed #9bb6a9;border-radius:18px;align-items:center;gap:16px;min-height:96px;padding:18px;display:flex}.equipment-bulk-upload>svg{color:#17573f;width:36px;height:36px}.equipment-bulk-upload div{gap:5px;display:grid}.equipment-bulk-upload b{font-size:20px}.equipment-bulk-upload small{color:var(--muted);font-size:14px}.equipment-bulk-upload input{display:none}.equipment-import-progress{color:#225a43;background:#e8f4e9;border-radius:12px;margin:12px 0 0;padding:12px 14px;font-weight:800}.equipment-import-guide{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.equipment-import-guide b{color:#345548;font-size:14px}.equipment-import-guide span{border:1px solid var(--line);color:#557466;background:#fff;border-radius:999px;padding:7px 10px;font-size:13px}.equipment-review-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.equipment-review-toolbar button{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;gap:6px;min-height:46px;padding:10px 14px;font-weight:900;display:flex}.equipment-review-toolbar button.danger{color:#ae4439;background:#fff0ed;border-color:#ffd0c8}.equipment-review-toolbar .primary-btn{color:#fff;background:#17483a;border:0;margin-left:auto}.equipment-review-toolbar .primary-btn:disabled{opacity:.45}.equipment-import-table{gap:12px;display:grid}.equipment-import-table article{border:1px solid var(--line);background:#fff;border-radius:17px;grid-template-columns:70px 1fr 150px 1.2fr 110px 90px;align-items:end;gap:10px;padding:14px;display:grid}.equipment-import-table article.muted{opacity:.55}.equipment-import-table label{gap:6px;font-size:13px;font-weight:900;display:grid}.equipment-import-table input,.equipment-import-table select{border:1px solid var(--line);background:#fff;border-radius:10px;min-height:46px;padding:9px 11px;font-size:15px}.equipment-import-table .wide{grid-column:2/7}.import-check{place-items:center}.import-check input{width:24px;height:24px;min-height:auto}.import-check span{color:#547060;font:900 16px DM Sans}.import-photo-cell{cursor:pointer;color:#52705f;border:1px dashed #b8c8bd;border-radius:13px;grid-column:1/3;align-content:center;place-items:center;min-height:118px}.import-photo-cell img,.import-photo-cell>span{object-fit:cover;background:#edf3ee;border-radius:11px;place-items:center;width:92px;height:68px;display:grid}.import-photo-cell svg{width:24px}.import-photo-cell small{color:#52705f;font-size:13px}.import-photo-cell input{display:none}.remove-import-row{color:#a64138;background:#fde9e7;border:0;border-radius:11px;grid-column:6/7;justify-content:center;align-items:center;gap:5px;min-height:46px;font-weight:900;display:flex}.remove-import-row svg{width:17px}.equipment-edit-overlay{z-index:1200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#07130faa;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.equipment-edit-modal{width:min(980px,100%);max-height:min(92vh,860px);overflow:auto;box-shadow:0 28px 80px #06140f66}.equipment-edit-modal .panel-head p{color:var(--muted);margin:5px 0 0;font-size:14px}.equipment-edit-close{color:#244f40;background:#eef3ef;border:0;border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.equipment-edit-close svg{width:21px}.equipment-edit-body{grid-template-columns:290px 1fr;gap:18px;display:grid}.equipment-edit-photo{border:1px solid var(--line);background:#f7faf7;border-radius:18px;align-content:start;gap:12px;padding:14px;display:grid}.equipment-edit-photo>img,.equipment-edit-photo>span{aspect-ratio:1.18;object-fit:cover;color:#52705f;background:#e7f0eb;border-radius:15px;place-items:center;width:100%;display:grid}.equipment-edit-photo>span svg{width:44px;height:44px}.equipment-edit-photo>div{gap:8px;display:grid}.equipment-edit-photo label,.equipment-edit-photo button{color:#fff;cursor:pointer;background:#17483a;border:0;border-radius:12px;justify-content:center;align-items:center;gap:7px;min-height:48px;font-weight:900;display:flex}.equipment-edit-photo button{color:#a64138;background:#fde9e7}.equipment-edit-photo input{display:none}.equipment-edit-photo svg{width:18px}.equipment-edit-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.equipment-edit-grid label{gap:7px;font-weight:900;display:grid}.equipment-edit-grid .wide{grid-column:1/-1}.equipment-edit-grid input,.equipment-edit-grid select,.equipment-edit-grid textarea{border:1px solid var(--line);background:#fff;border-radius:11px;min-height:50px;padding:11px 12px;font-size:16px}.equipment-edit-grid textarea{resize:vertical;min-height:132px;line-height:1.55}.equipment-edit-actions{justify-content:flex-end;gap:9px;margin-top:18px;display:flex}.equipment-edit-actions button{border:1px solid var(--line);background:#fff;border-radius:12px;justify-content:center;align-items:center;gap:6px;min-height:50px;padding:11px 16px;font-weight:900;display:flex}.equipment-edit-actions .primary-btn{color:#fff;background:#17483a;border:0}.equipment-edit-actions .primary-btn:disabled{opacity:.45}@media (width<=1100px){.equipment-import-table article{grid-template-columns:54px repeat(3,1fr)}.equipment-import-table .wide{grid-column:2/5}.import-photo-cell{grid-column:1/3}.remove-import-row{grid-column:4/5}}@media (width<=760px){.equipment-category-chips{grid-template-columns:1fr 1fr;display:grid}.equipment-category-chips button{justify-content:center;min-height:52px;font-size:15px}.equipment-bulk-upload{align-items:flex-start}.equipment-bulk-upload b{font-size:18px}.equipment-bulk-upload small{font-size:13px}.equipment-review-toolbar .primary-btn{justify-content:center;width:100%;margin-left:0}.equipment-import-table article{grid-template-columns:1fr 1fr;padding:12px}.equipment-import-table .wide,.import-photo-cell,.remove-import-row{grid-column:1/-1}.import-check{grid-column:1/-1;justify-content:flex-start;gap:10px;display:flex!important}.equipment-import-table input,.equipment-import-table select{font-size:16px}.import-photo-cell{min-height:130px}.equipment-edit-overlay{align-items:end;padding:10px}.equipment-edit-modal{border-radius:22px 22px 0 0;max-height:94vh}.equipment-edit-body,.equipment-edit-grid{grid-template-columns:1fr}.equipment-edit-actions{grid-template-columns:1fr;display:grid}.equipment-edit-photo>img,.equipment-edit-photo>span{aspect-ratio:1.55}}.facility-writing-notice,.sensitive-allergy-notice{color:#7d4724;background:#fff5e8;border-radius:16px;align-items:flex-start;gap:14px;padding:17px 19px;font-weight:900;line-height:1.7;display:flex}.facility-writing-notice svg,.sensitive-allergy-notice svg{color:#d47732;flex:none;width:26px}.facility-writing-notice p,.sensitive-allergy-notice p{margin:0}.facility-category-picker{grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0;display:grid}.facility-category-picker button{border:1px solid var(--line);background:#fff;border-radius:14px;min-height:58px;font-weight:900}.facility-category-picker button.active{color:#fff;background:#17483a;border-color:#17483a}.facility-form-grid{grid-template-columns:1fr 1fr 220px;gap:12px;display:grid}.facility-form-grid label{gap:7px;font-weight:900;display:grid}.facility-form-grid .wide{grid-column:1/-1}.facility-form-grid input,.facility-form-grid select,.facility-form-grid textarea,.facility-admin-filters input,.facility-admin-filters select{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:52px;padding:11px 13px}.facility-form-grid textarea{resize:vertical;min-height:170px;line-height:1.7}.facility-image-input{color:#426b59;cursor:pointer;border:2px dashed #aebfb6;border-radius:15px;grid-column:1/-1;justify-content:center;align-items:center;min-height:76px;display:flex!important}.facility-image-input input{display:none}.facility-image-input svg{width:22px}.facility-submit{margin-top:16px}.facility-list-panel .panel-head p{color:var(--muted);margin:5px 0 0;font-size:14px}.facility-admin-filters{grid-template-columns:150px 130px 160px 1fr;gap:10px;margin-bottom:16px;display:grid}.facility-admin-filters label{border:1px solid var(--line);border-radius:12px;align-items:center;gap:6px;padding:0 11px;display:flex}.facility-admin-filters label svg{color:#6f8078;width:18px}.facility-admin-filters label input{border:0;outline:0;flex:1;min-height:50px;padding:0}.facility-request-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.facility-request-grid article{border:1px solid var(--line);background:#fff;border-radius:17px;gap:10px;padding:16px;display:grid}.facility-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.facility-card-head>span{color:#315d4c;background:#e8f1e9;border-radius:999px;padding:7px 10px;font-size:13px;font-weight:900}.status-badge{border-radius:999px;padding:7px 10px;font-size:13px;font-style:normal;font-weight:900}.status-badge.received{color:#416aa1;background:#e8effb}.status-badge.working{color:#9a6115;background:#fff0cf}.status-badge.done{color:#33763d;background:#e4f5e6}.facility-request-grid h3{margin:0;font-size:20px}.facility-request-grid p{color:#63736c;margin:0}.facility-card-meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.urgency-badge{border-radius:10px;padding:7px 9px;font-size:13px}.urgency-badge.normal{color:#566b61;background:#eef3ef}.urgency-badge.soon{color:#986816;background:#fff3d8}.urgency-badge.urgent{color:#b43d31;background:#ffe8e4}.facility-date{color:#76857e}.facility-request-grid article>button{color:#fff;background:#17483a;border:0;border-radius:12px;justify-content:center;align-items:center;gap:6px;min-height:48px;font-weight:900;display:flex}.facility-request-grid article>button strong{background:#fff2;border-radius:99px;padding:4px 7px}.facility-detail-overlay,.roster-edit-overlay{z-index:1300;background:#0b211bcc;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.facility-detail-modal,.roster-edit-overlay>section{background:#fff;border-radius:24px;width:min(780px,100%);max-height:90vh;padding:26px;overflow:auto;box-shadow:0 24px 70px #06140f66}.facility-detail-modal h2{margin:12px 0;font-size:28px}.facility-detail-info{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0;display:grid}.facility-detail-info span{background:#f3f6f4;border-radius:10px;padding:10px;font-weight:800}.facility-detail-image{object-fit:contain;background:#f5f7f5;border-radius:16px;width:100%;max-height:360px;margin:12px 0}.facility-detail-modal blockquote{background:#f2f8f2;border-left:5px solid #5e9972;border-radius:10px;margin:12px 0;padding:15px;line-height:1.7}.facility-admin-answer{background:#eaf4eb;border-radius:14px;margin-top:12px;padding:14px}.facility-admin-answer p{margin:5px 0 0}.facility-status-actions{gap:9px;margin:14px 0;display:flex}.facility-status-actions button{color:#fff;background:#f3b33d;border:0;border-radius:11px;min-height:48px;padding:10px 14px;font-weight:900}.facility-status-actions button.done{background:#3f8c4f}.facility-admin-memo{gap:7px;font-weight:900;display:grid}.facility-admin-memo textarea{border:1px solid var(--line);resize:vertical;border-radius:12px;min-height:130px;padding:12px;line-height:1.6}.meal-sub-tabs{gap:8px;margin:14px 0 18px;display:flex;overflow-x:auto}.meal-sub-tabs button{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:12px;min-height:48px;padding:10px 14px;font-weight:900}.meal-sub-tabs button.active{color:#fff;background:#17483a;border-color:#17483a}.allergy-file-upload{cursor:pointer;background:#f5faf5;border:2px dashed #9bb6a9;border-radius:18px;align-items:center;gap:16px;min-height:96px;padding:18px;display:flex}.allergy-file-upload>svg{color:#17483a;width:34px}.allergy-file-upload input{display:none}.allergy-file-upload div{display:grid}.allergy-file-upload b{font-size:20px}.allergy-file-upload small{color:var(--muted)}.upload-summary-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0;display:grid}.upload-summary-grid article{border:1px solid var(--line);background:#fff;border-radius:14px;padding:14px}.upload-summary-grid small{color:var(--muted)}.upload-summary-grid b{color:#17483a;font-size:28px;display:block}.upload-mode-row{flex-wrap:wrap;align-items:center;gap:13px;margin:12px 0;display:flex}.upload-mode-row label{align-items:center;gap:7px;font-weight:900;display:flex}.upload-mode-row input{width:20px;height:20px}.allergy-preview-table,.roster-table,.allergy-history-list{gap:8px;display:grid}.allergy-preview-table article{border:1px solid var(--line);border-radius:12px;grid-template-columns:34px 110px 1fr 1.6fr 1fr;align-items:center;gap:8px;padding:10px;display:grid}.allergy-preview-table input{width:22px;height:22px}.allergy-preview-table em{color:#b34837;font-style:normal}.roster-filter-bar{grid-template-columns:110px 110px 160px 1fr 130px;gap:9px;margin-bottom:15px;display:grid}.roster-filter-bar input,.roster-filter-bar select{border:1px solid var(--line);border-radius:12px;min-height:50px;padding:10px}.roster-table article{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:70px 110px 1fr 1fr 120px auto;align-items:center;gap:10px;padding:12px;display:grid}.roster-table article>div{flex-wrap:wrap;gap:5px;display:flex}.roster-table span{color:#b33d31;background:#ffe8e4;border-radius:999px;padding:6px 9px;font-size:13px;font-weight:900}.roster-table p{color:#607069;margin:0}.roster-table em{color:#66776f;font-style:normal}.roster-table button{color:#275945;background:#e8f1e9;border:0;border-radius:10px;align-items:center;gap:5px;padding:9px 11px;font-weight:900;display:flex}.allergy-history-list article{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:1fr auto;padding:14px;display:grid}.allergy-history-list small{color:var(--muted);grid-column:1/-1}.roster-edit-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.roster-edit-grid label{gap:6px;font-weight:900;display:grid}.roster-edit-grid .wide{grid-column:1/-1}.roster-edit-grid input{border:1px solid var(--line);border-radius:11px;min-height:50px;padding:10px}@media (width<=1000px){.facility-request-grid{grid-template-columns:repeat(2,1fr)}.facility-admin-filters,.roster-filter-bar{grid-template-columns:1fr 1fr}.roster-table article{grid-template-columns:70px 1fr}.roster-table article>div,.roster-table p,.roster-table em,.roster-table button{grid-column:1/-1}.facility-form-grid{grid-template-columns:1fr 1fr}.upload-summary-grid{grid-template-columns:repeat(2,1fr)}.allergy-preview-table article{grid-template-columns:34px 90px 1fr}.allergy-preview-table em,.allergy-preview-table small{grid-column:2/-1}}@media (width<=760px){.facility-category-picker,.facility-request-grid,.facility-form-grid,.facility-admin-filters,.roster-filter-bar,.upload-summary-grid,.roster-edit-grid,.facility-detail-info{grid-template-columns:1fr}.facility-status-actions{display:grid}.allergy-file-upload{align-items:flex-start}.allergy-preview-table article{grid-template-columns:32px 1fr}.allergy-preview-table span,.allergy-preview-table em,.allergy-preview-table small{grid-column:2/-1}.roster-table article{grid-template-columns:60px 1fr}.meal-sub-tabs button{font-size:14px!important}.sensitive-allergy-notice,.facility-writing-notice{font-size:15px}}.editable-meal-day{cursor:pointer}.editable-meal-day:hover{outline-offset:-3px;outline:3px solid #4a8c6b}.meal-day-editor-overlay{z-index:650;background:#10251dcc;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.meal-day-editor-overlay>section{background:#fff;border-radius:22px;gap:13px;width:min(620px,100%);padding:24px;display:grid}.meal-day-editor-overlay textarea{border:1px solid var(--line);min-height:250px;font:inherit;border-radius:12px;padding:12px;line-height:1.6}.meal-day-editor-overlay>section>button:first-child{border:0;border-radius:8px;justify-self:end;padding:8px}.meal-export-actions{justify-content:flex-end;gap:8px;display:flex}.meal-export-actions button{color:#fff;background:#17483a;border:0;border-radius:11px;align-items:center;gap:6px;min-height:48px;padding:10px 14px;font-weight:900;display:flex}@media print{body *{visibility:hidden!important}.printable-meal-calendar,.printable-meal-calendar *{visibility:visible!important}.printable-meal-calendar{background:#fff;width:100%;position:absolute;inset:0}.printable-meal-calendar .panel{box-shadow:none;border:0}.sidebar,.topbar,.bottom-nav,.meal-export-actions{display:none!important}}.login-v2 .login-box{position:relative}.login-v2-role-cards button{cursor:pointer;touch-action:manipulation;z-index:1;min-height:82px;position:relative}.login-v2-role-cards .role-icon.student{color:#7757ae;background:#eee9f8}.master-account-hint{color:#62726b;justify-content:center;align-items:center;gap:7px;margin:20px 0 0;display:flex;font-size:13px!important}.master-account-hint svg{color:#17483a;width:17px}.auth-overlay{z-index:3000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0b241fd9;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow:hidden}.auth-modal{overscroll-behavior:contain;background:#fff;border-radius:26px;width:min(520px,100%);max-height:calc(100dvh - 40px);padding:34px;position:relative;overflow-y:auto;box-shadow:0 30px 90px #05161266}.auth-close{color:#344a41;cursor:pointer;z-index:3;background:#eff4f1;border:0;border-radius:50%;place-items:center;width:42px;height:42px;display:grid;position:absolute;top:18px;right:18px}.auth-close svg{width:21px}.auth-back{color:#60726a;background:0 0;border:0;align-items:center;gap:7px;padding:0 50px 18px 0;font-size:14px;font-weight:700;display:flex}.auth-back svg{width:18px}.auth-role-icon{color:#356552;background:#e6f0ec;border-radius:18px;place-items:center;width:62px;height:62px;margin:4px 0 17px;display:grid}.auth-role-icon.teacher{color:#b9622b;background:#fff0e2}.auth-role-icon.student,.auth-role-icon.signup{color:#6a4aa0;background:#eee9f8}.auth-role-icon.consent{color:#547b28;background:#eaf4dc}.auth-role-icon.password{color:#3e6498;background:#e8f0fb}.auth-role-icon svg{width:27px;height:27px}.auth-modal h2{margin:7px 0;font-size:28px;line-height:1.25}.auth-modal>p{color:#687870;margin:0 0 22px;font-size:15px;line-height:1.6}.auth-form{gap:16px;margin-top:23px;display:grid}.auth-form label{gap:7px;display:grid}.auth-form label>b{color:#24362f;font-size:15px}.auth-form input{color:#17251f;background:#fff;border:1px solid #c8d4ce;border-radius:13px;outline:none;width:100%;min-height:54px;padding:12px 14px;font:700 17px Noto Sans KR,sans-serif}.auth-form input:focus{border-color:#4c856f;box-shadow:0 0 0 4px #4c856f18}.auth-form label small{color:#718078;font-size:13px;line-height:1.5}.auth-primary{color:#fff;cursor:pointer;touch-action:manipulation;background:#17483a;border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:56px;font:800 16px Noto Sans KR,sans-serif;display:flex}.auth-primary:disabled{opacity:.55;cursor:wait}.auth-primary svg{width:18px}.auth-error{color:#a3362d;background:#fff2f0;border:1px solid #f2b8b2;border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.5}.auth-signup-link{color:#315d4d;cursor:pointer;touch-action:manipulation;background:#f7faf8;border:1px solid #b9cbc3;border-radius:13px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:52px;margin-top:13px;font-size:15px;display:flex}.auth-signup-link svg{width:18px}.auth-master-note{text-align:center;color:#76827d;margin-top:14px;font-size:12px;display:block}.consent-account-summary{background:#eff5f1;border-radius:12px;align-items:center;gap:8px;font-weight:800;display:flex;color:#315848!important;padding:11px 13px!important}.consent-account-summary svg{width:19px}.consent-scroll-area{gap:11px;display:grid}.consent-notice{background:#eff5fb;border:1px solid #d6e2ee;border-radius:14px;align-items:flex-start;gap:12px;padding:14px;display:flex}.consent-notice svg{color:#416e9c;flex:none;width:22px}.consent-notice p{color:#405468;margin:0;line-height:1.55;font-size:14px!important}.consent-check{cursor:pointer;background:#fff;border:1px solid #d4ddd8;border-radius:13px;align-items:flex-start;gap:11px;padding:13px;display:flex;position:relative}.consent-check.checked{background:#f1f8eb;border-color:#91b773}.consent-check input{opacity:0;pointer-events:none;position:absolute}.consent-check>span{border:2px solid #aab8b1;border-radius:7px;flex:none;place-items:center;width:24px;height:24px;display:grid}.consent-check.checked>span{color:#fff;background:#5d8b3d;border-color:#5d8b3d}.consent-check svg{width:16px}.consent-check>b{font-size:14px;line-height:1.55}.consent-sticky-submit{z-index:4;background:linear-gradient(#0000,#fff 24%);padding:25px 0 2px;position:sticky;bottom:-34px}.auth-mode-consent{padding-bottom:34px}.auth-mode-consent .signature-field{margin-top:3px}@media (width<=760px){.login-v2{min-height:100dvh}.login-v2 .login-box{justify-content:flex-start;min-height:100dvh;padding:34px 20px 28px}.login-v2 .login-box h2{font-size:28px}.login-v2 .login-box>div:first-child>p{font-size:15px}.login-v2-role-cards{gap:13px;margin-top:22px}.login-v2-role-cards button{border-radius:18px;min-height:94px;padding:17px 15px}.login-v2-role-cards b{font-size:18px}.login-v2-role-cards small{font-size:14px;line-height:1.45}.login-v2-role-cards .role-icon{flex:none;width:52px;height:52px}.auth-overlay{background:#0b241fcc;place-items:end center;padding:0}.auth-modal{width:100%;max-height:94dvh;padding:26px 20px calc(22px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;box-shadow:0 -16px 50px #071b1744}.auth-modal h2{padding-right:42px;font-size:26px}.auth-modal>p{font-size:15px}.auth-close{width:44px;height:44px;top:14px;right:16px}.auth-form input{min-height:58px;font-size:18px}.auth-primary{min-height:60px;font-size:17px}.auth-signup-link{min-height:56px;font-size:16px}.auth-master-note{font-size:13px}.auth-mode-consent{height:94dvh;max-height:94dvh;padding-bottom:calc(12px + env(safe-area-inset-bottom));flex-direction:column;display:flex;overflow:hidden}.auth-mode-consent .consent-scroll-area{min-height:0;padding-bottom:14px;padding-right:2px;overflow-y:auto}.auth-mode-consent .consent-sticky-submit{background:#fff;border-top:1px solid #e0e7e3;flex:none;margin:0 -20px;padding:12px 20px 0;position:relative;bottom:auto;box-shadow:0 -10px 24px #102d2614}.consent-check>b{font-size:15px}.consent-notice p{font-size:15px!important}.master-account-hint{font-size:14px!important}}.student-account-actions{flex-wrap:wrap;gap:6px;display:flex}.student-account-actions button{background:#e6f0e8;border:0;border-radius:8px;align-items:center;gap:4px;padding:8px;font-size:12px;font-weight:800;display:flex}.student-account-actions button.danger{color:#a63d37;background:#fde7e5}.teacher-account-manager>article{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:12px;padding:14px;display:grid}.teacher-account-manager article>div{gap:4px;display:grid}.teacher-account-manager article button{color:#fff;background:#17483a;border:0;border-radius:10px;align-items:center;gap:6px;padding:10px 13px;font-weight:900;display:flex}.public-page{color:#17251f;background:linear-gradient(135deg,#eef7ed,#f8fbf4 48%,#e7f0f7);min-height:100vh}.public-hero{color:#fff;background:radial-gradient(circle at 15% 0,#4c8b6e55,#0000 35%),linear-gradient(120deg,#123c31,#1e624e);grid-template-columns:auto 1fr auto;align-items:start;gap:22px;padding:30px clamp(18px,4vw,54px);display:grid;position:relative}.public-hero .brand-mark{color:#fff}.public-hero>div:last-child{grid-column:1/-1;max-width:840px}.public-hero h1{margin:18px 0 10px;font-size:clamp(36px,6vw,70px);line-height:1.05}.public-hero p{margin:0 0 12px;font-size:clamp(18px,2.4vw,24px);line-height:1.55}.public-hero small{color:#dceee6;font-size:15px;line-height:1.6;display:block}.public-staff-link{color:#fff;background:#ffffff16;border:1px solid #fff5;border-radius:999px;justify-self:end;align-items:center;gap:7px;padding:12px 16px;font-weight:900;text-decoration:none;display:flex}.public-staff-link svg{width:18px}.public-content{grid-template-columns:1fr 1fr;gap:18px;max-width:1180px;margin:0 auto;padding:22px clamp(14px,4vw,44px) 54px;display:grid}.public-request-panel{grid-column:1/-1}.public-card-list,.public-event-list{gap:10px;display:grid}.public-card-list button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:16px;gap:7px;padding:17px;display:grid}.public-card-list button span{color:#315d4c;background:#eaf3e8;border-radius:999px;width:max-content;padding:6px 9px;font-size:13px;font-weight:900}.public-card-list button b,.public-event-list b{font-size:20px}.public-card-list button small,.public-event-list small{color:#6a7972;font-size:14px;line-height:1.5}.public-event-list article{border:1px solid var(--line);background:#fff;border-radius:16px;gap:7px;padding:17px;display:grid}.public-event-list article span{color:#7354a0;align-items:center;gap:7px;font-weight:900;display:flex}.public-event-list svg{width:18px}.public-external-banner{color:#fff;background:#5e438b;border-radius:16px;justify-content:space-between;align-items:center;gap:10px;min-height:58px;margin-top:16px;padding:14px 17px;font-size:18px;font-weight:900;text-decoration:none;display:flex}.public-external-banner svg{width:20px}.public-privacy-note{color:#734b25;background:#fff5e8;border-radius:16px;gap:12px;margin-bottom:16px;padding:16px;font-weight:800;line-height:1.65;display:flex}.public-privacy-note svg{color:#c76d29;flex:none;width:25px}.public-privacy-note p{margin:0}.public-request-form{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.public-request-form label{gap:7px;font-weight:900;display:grid}.public-request-form label small{color:#6e7b75;font-weight:700}.public-request-form .wide,.public-category-row{grid-column:1/-1}.public-request-form input,.public-request-form select,.public-request-form textarea{background:#fff;border:1px solid #c9d6cf;border-radius:13px;min-height:54px;padding:12px 14px;font:700 16px Noto Sans KR,sans-serif}.public-request-form textarea{resize:vertical;min-height:160px;line-height:1.7}.public-category-row{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.public-category-row button{border:1px solid var(--line);color:#24463a;background:#fff;border-radius:14px;min-height:54px;font-weight:900}.public-category-row button.active{color:#fff;background:#17483a;border-color:#17483a}.public-consent-check{background:#f8fbf8;border:1px solid #d9e3de;border-radius:14px;align-items:flex-start;gap:10px;padding:14px;display:flex!important}.public-consent-check input{accent-color:#17483a;width:24px;min-height:24px}.public-submit-done{text-align:center;color:#285b35;background:#f1faed;border:2px solid #a8cf9b;border-radius:20px;place-items:center;gap:10px;min-height:210px;padding:28px;display:grid}.public-submit-done svg{width:46px;height:46px}.public-submit-done b{font-size:24px;line-height:1.45}.public-intake-warning{color:#704716;background:#fff6e8;border:2px solid #f0b36b;border-radius:16px;grid-template-columns:auto 1fr;gap:12px;margin:14px 0;padding:16px;display:grid}.public-intake-warning>svg{color:#c97628;width:25px}.public-intake-warning p{margin:0;line-height:1.6}.public-intake-warning dl{grid-column:1/-1;grid-template-columns:repeat(2,1fr);gap:8px;margin:0;display:grid}.public-intake-warning dl div{background:#fff;border-radius:10px;padding:9px}.public-intake-warning dt{color:#8a6a45;font-size:12px;font-weight:900}.public-intake-warning dd{margin:3px 0 0;font-weight:900}@media (width<=760px){.public-hero{grid-template-columns:1fr;padding:24px 18px 28px}.public-staff-link{justify-content:center;justify-self:stretch}.public-content{grid-template-columns:1fr;padding:14px 12px 38px}.public-content .panel{padding:18px}.public-request-form{grid-template-columns:1fr}.public-category-row{grid-template-columns:1fr 1fr}.public-card-list button b,.public-event-list b{font-size:18px}.public-submit-done b{font-size:20px}.public-intake-warning dl{grid-template-columns:1fr}}.no-secret-letter .community-segmented button:nth-child(3){display:none}.facility-sub-tabs{gap:10px;margin:6px 0 18px;display:flex;overflow-x:auto}.facility-sub-tabs button{border:1px solid var(--line);color:#294f42;white-space:nowrap;background:#fff;border-radius:14px;min-height:54px;padding:12px 18px;font-size:16px;font-weight:900}.facility-sub-tabs button.active{color:#fff;background:#17483a;border-color:#17483a}.cleaning-form-grid{grid-template-columns:1.2fr .5fr .7fr .7fr;gap:12px;display:grid}.cleaning-form-grid label{gap:7px;font-weight:900;display:grid}.cleaning-form-grid .wide{grid-column:1/-1}.cleaning-form-grid input,.cleaning-form-grid textarea{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:52px;padding:11px 13px}.cleaning-form-grid textarea{resize:vertical;min-height:120px;line-height:1.6}.cleaning-file-input{color:#315d4c;cursor:pointer;background:#f6faf6;border-radius:16px;justify-content:center;align-items:center;gap:12px;min-height:86px;border:2px dashed #9bb6a9!important;display:flex!important}.cleaning-file-input input{display:none}.cleaning-file-input svg{width:28px}.cleaning-publish-check{background:#f8fbf8;border:1px solid #dce6df;border-radius:13px;align-items:center;gap:10px;padding:13px;display:flex!important}.cleaning-publish-check input{accent-color:#17483a;width:22px;height:22px}.cleaning-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.cleaning-actions button{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:48px;padding:10px 14px;font-weight:900}.cleaning-actions .primary-btn{color:#fff;background:#17483a;border:0}.cleaning-material-grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.cleaning-material-grid article{border:1px solid var(--line);background:#fff;border-radius:18px;grid-template-columns:170px 1fr;gap:14px;padding:14px;display:grid;overflow:hidden}.cleaning-thumb{background:#eef4f0;border-radius:14px;place-items:center;min-height:150px;display:grid;position:relative;overflow:hidden}.cleaning-thumb img{object-fit:cover;width:100%;height:100%}.cleaning-thumb>svg{color:#5f806f;width:48px}.cleaning-thumb em{color:#fff;background:#5e6670;border-radius:999px;padding:5px 8px;font-size:12px;font-style:normal;font-weight:900;position:absolute;top:8px;right:8px}.cleaning-material-grid b{font-size:21px}.cleaning-material-grid small{color:#64766e;align-items:center;gap:5px;margin:6px 0;display:flex}.cleaning-material-grid small svg{width:16px}.cleaning-material-grid p{color:#64736d;line-height:1.55}.cleaning-card-actions{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.cleaning-card-actions button,.cleaning-card-actions a{color:#275945;background:#e8f1e9;border:0;border-radius:11px;align-items:center;gap:6px;min-height:42px;padding:9px 12px;font-weight:900;text-decoration:none;display:flex}.cleaning-card-actions .danger{color:#a6403a;background:#fde7e5}.cleaning-preview-overlay{z-index:1500;background:#0b211bcc;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.cleaning-preview-overlay>section{background:#fff;border-radius:24px;gap:12px;width:min(900px,100%);max-height:92vh;padding:26px;display:grid;overflow:auto}.cleaning-preview-overlay h2{margin:0;font-size:30px}.cleaning-preview-overlay img{object-fit:contain;background:#f4f6f4;border-radius:15px;width:100%;max-height:65vh}.cleaning-preview-overlay iframe{border:1px solid var(--line);background:#f4f6f4;border-radius:15px;width:100%;height:70vh}@media (width<=900px){.cleaning-form-grid{grid-template-columns:1fr 1fr}.cleaning-material-grid{grid-template-columns:1fr}.cleaning-material-grid article{grid-template-columns:140px 1fr}}@media (width<=640px){.facility-sub-tabs{grid-template-columns:1fr;display:grid}.cleaning-form-grid,.cleaning-material-grid article{grid-template-columns:1fr}.cleaning-thumb{min-height:210px}.cleaning-actions,.cleaning-card-actions{display:grid}.cleaning-preview-overlay{padding:10px}.cleaning-preview-overlay>section{border-radius:20px;padding:18px}.cleaning-preview-overlay iframe{height:60vh}}.today-date{font-weight:800;position:relative;background:#fff5f5!important;border:2px solid #ef4444!important;border-radius:16px!important;box-shadow:0 0 0 4px #ef44441f!important}.today-label{color:#fff;background:#ef4444;border-radius:999px;justify-content:center;align-items:center;width:fit-content;margin-left:4px;padding:2px 7px;font-size:.72rem;font-style:normal;font-weight:900;line-height:1.2;display:inline-flex}.walking-data-page .page-title h1{font-size:clamp(2rem,4vw,3.2rem)}.walking-privacy-notice{background:linear-gradient(135deg,#f0fdf4,#fff);border:1px solid #14532d29;align-items:flex-start;gap:16px;display:flex}.walking-privacy-notice svg{color:#15803d;flex:none}.walking-privacy-notice b{margin-bottom:6px;font-size:1.12rem;display:block}.walking-upload-panel .panel-head>svg{color:#16a34a;width:46px;height:46px}.walking-file-drop{cursor:pointer;background:#f7fee7;border:2px dashed #16a34a52;border-radius:22px;align-items:center;gap:16px;padding:22px;display:flex}.walking-file-drop svg{color:#15803d;width:42px;height:42px}.walking-file-drop b{font-size:1.2rem;display:block}.walking-file-drop small{color:#4b5563}.walking-file-drop input{max-width:260px;margin-left:auto;font-size:1rem}.walking-upload-message{color:#166534;background:#ecfdf5;border-radius:16px;margin:14px 0;padding:13px 16px;font-weight:700}.walking-preview-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:18px 0;display:grid}.walking-data-metric{background:#fff;border:1px solid #0f766e24;border-radius:22px;align-items:center;gap:14px;padding:18px;display:flex;box-shadow:0 12px 28px #0f172a0f}.walking-data-metric svg{color:#15803d;width:34px;height:34px}.walking-data-metric small,.walking-data-metric em{color:#6b7280;font-style:normal;display:block}.walking-data-metric b{margin:4px 0;font-size:1.6rem;display:block}.walking-data-controls{background:#f8fafc;border:1px solid #e5e7eb;border-radius:22px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;padding:16px;display:grid}.walking-data-controls label{gap:6px;display:grid}.walking-data-controls small{color:#374151;font-weight:800}.walking-data-controls select,.walking-data-controls input,.preview-table input,.preview-table select{background:#fff;border:1px solid #d1d5db;border-radius:12px;width:100%;min-height:42px;padding:9px 11px;font-size:1rem}.walking-search span{background:#fff;border:1px solid #d1d5db;border-radius:12px;align-items:center;gap:8px;padding:0 10px;display:flex}.walking-search span input{border:0;padding-left:0}.walking-search svg{color:#6b7280;width:18px}.walking-winners-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.walking-winner-card{color:#fff;background:linear-gradient(135deg,#064e3b,#16a34a);border-radius:24px;padding:20px;box-shadow:0 18px 35px #064e3b33}.walking-winner-card>div{align-items:center;gap:10px;margin-bottom:12px;display:flex}.walking-winner-card svg{color:#fde68a}.walking-winner-card ol{gap:8px;margin:0;padding-left:20px;display:grid}.walking-winner-card li{font-weight:800}.walking-winner-card li strong{float:right;color:#fef3c7}.walking-table-scroll{overflow-x:auto}.walking-data-table{border-collapse:separate;border-spacing:0;width:100%;min-width:720px}.walking-data-table th,.walking-data-table td{text-align:left;border-bottom:1px solid #e5e7eb;padding:12px 10px;font-size:.98rem}.walking-data-table th{color:#14532d;background:#f0fdf4;font-weight:900}.walking-data-table tr.error-row td{background:#fff1f2}.walking-save-upload{margin-top:16px}.walking-upload-history{gap:12px;display:grid}.walking-upload-history article{background:#f8fafc;border:1px solid #e5e7eb;border-radius:18px;align-items:center;gap:12px;padding:15px;display:flex}.walking-upload-history article>svg{color:#15803d}.walking-upload-history article div{flex:1}.walking-upload-history article small{color:#6b7280;display:block}.walking-upload-history article span{color:#166534;background:#dcfce7;border-radius:999px;padding:6px 10px;font-weight:900}@media (width<=760px){.today-label{margin:4px 0 0;font-size:.68rem;display:block}.walking-file-drop{flex-direction:column;align-items:flex-start}.walking-file-drop input{max-width:100%;margin-left:0}.walking-winner-card li strong{float:none;margin-top:2px;display:block}}.pe-two-tabs{gap:10px;margin:8px 0 18px;display:flex;overflow-x:auto}.pe-two-tabs button{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:16px;align-items:center;gap:8px;min-height:56px;padding:12px 18px;font-size:17px;font-weight:900;display:flex}.pe-two-tabs button.active{color:#fff;background:#17483a;border-color:#17483a}.pe-notice-editor .panel-head>svg,.equipment-request-form-panel .panel-head>svg,.equipment-request-admin-panel .panel-head>svg{color:#17483a;width:42px;height:42px}.pe-notice-grid,.equipment-request-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.pe-notice-grid label,.equipment-request-grid label{gap:7px;font-weight:900;display:grid}.pe-notice-grid .wide,.equipment-request-grid .wide{grid-column:1/-1}.pe-notice-grid input,.pe-notice-grid select,.pe-notice-grid textarea,.equipment-request-grid input,.equipment-request-grid textarea{border:1px solid var(--line);background:#fff;border-radius:13px;min-height:52px;padding:12px 14px;font-size:16px}.pe-notice-grid textarea,.equipment-request-grid textarea{resize:vertical;min-height:140px;line-height:1.65}.request-writing-notice{color:#7c4a13;background:#fff7ed;border-radius:18px;gap:13px;margin-bottom:18px;padding:17px 19px;line-height:1.65;display:flex}.request-writing-notice svg{color:#c76d29;flex:none;width:26px}.request-writing-notice p{margin:0}.equipment-request-actions{justify-content:flex-end;gap:10px;margin-top:15px;display:flex}.equipment-request-actions button{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:50px;padding:10px 15px;font-weight:900}.equipment-request-actions .primary-btn{color:#fff;background:#17483a;border:0}.equipment-request-card-grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.equipment-request-card-grid article,.equipment-request-admin-list article{border:1px solid var(--line);background:#fff;border-radius:20px;gap:11px;padding:18px;display:grid}.equipment-request-card-head,.equipment-request-admin-summary{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.equipment-request-card-head b,.equipment-request-admin-summary b{font-size:22px}.equipment-request-card-grid p,.equipment-request-card-grid small{color:#5f6f67;margin:0;line-height:1.55}.equipment-request-card-grid blockquote{background:#eff8ef;border-left:5px solid #4b8a63;border-radius:12px;gap:5px;margin:0;padding:12px;display:grid}.equipment-request-card-grid blockquote.reject{background:#fff1f2;border-color:#ef4444}.equipment-request-card-grid button{color:#275945;background:#e8f1e9;border:0;border-radius:12px;min-height:46px;font-weight:900}.equipment-request-status{border-radius:999px;align-items:center;width:max-content;padding:7px 11px;font-size:13px;font-style:normal;font-weight:900;display:inline-flex}.equipment-request-status.received{color:#315d91;background:#e8effb}.equipment-request-status.reviewing{color:#9a6115;background:#fff0cf}.equipment-request-status.approved{color:#166534;background:#dcfce7}.equipment-request-status.rejected{color:#b91c1c;background:#fee2e2}.equipment-request-status.stock{color:#6d28d9;background:#ede9fe}.equipment-request-status.purchased{color:#14532d;background:#bbf7d0}.equipment-request-status.hold{color:#9a3412;background:#ffedd5}.equipment-request-filters{grid-template-columns:220px 1fr;gap:10px;margin-bottom:16px;display:grid}.equipment-request-filters select,.equipment-request-filters input{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:52px;padding:10px 12px}.equipment-request-filters label{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:8px;padding:0 12px;display:flex}.equipment-request-filters label input{border:0;outline:0;padding-left:0}.equipment-request-filters svg{color:#60736a;width:18px}.equipment-request-admin-list{gap:14px;display:grid}.equipment-request-admin-summary small{color:#6b756f;margin-top:4px;display:block}.equipment-request-admin-list dl{grid-template-columns:repeat(4,1fr);gap:8px;margin:0;display:grid}.equipment-request-admin-list dl div{background:#f5f8f6;border-radius:12px;padding:10px}.equipment-request-admin-list dt{color:#68766f;font-size:12px;font-weight:900}.equipment-request-admin-list dd{margin:3px 0 0;font-weight:900}.equipment-request-admin-list p{gap:5px;margin:0;line-height:1.6;display:grid}.equipment-request-admin-list a{color:#17483a;align-items:center;gap:6px;font-weight:900;display:flex}.equipment-admin-memo-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.equipment-admin-memo-grid label{gap:6px;font-weight:900;display:grid}.equipment-admin-memo-grid textarea{border:1px solid var(--line);resize:vertical;border-radius:12px;min-height:110px;padding:11px}.equipment-status-actions{flex-wrap:wrap;gap:8px;display:flex}.equipment-status-actions button{color:#fff;background:#17483a;border:0;border-radius:12px;min-height:44px;padding:9px 12px;font-weight:900}@media (width<=900px){.pe-notice-grid,.equipment-request-grid,.equipment-request-card-grid,.equipment-request-filters,.equipment-admin-memo-grid{grid-template-columns:1fr}.equipment-request-admin-list dl{grid-template-columns:1fr 1fr}}@media (width<=640px){.pe-two-tabs{grid-template-columns:1fr;display:grid}.pe-two-tabs button{justify-content:center}.equipment-request-admin-list dl{grid-template-columns:1fr}.equipment-status-actions{display:grid}.equipment-status-actions button{width:100%}}.archery-admin-tabs{gap:10px;display:flex;overflow-x:auto}.archery-admin-tabs button{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:16px;align-items:center;gap:8px;min-height:56px;padding:12px 18px;font-size:17px;font-weight:900;display:flex}.archery-admin-tabs button.active{color:#fff;background:#44237a;border-color:#44237a}.archery-award-form-panel .panel-head>svg,.archery-award-dashboard .panel-head>svg{color:#6d28d9;width:42px;height:42px}.archery-award-form-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.archery-award-form-grid label{gap:7px;font-weight:900;display:grid}.archery-award-form-grid .wide,.archery-certificate-input{grid-column:1/-1}.archery-award-form-grid input,.archery-award-form-grid select,.archery-award-form-grid textarea{border:1px solid var(--line);background:#fff;border-radius:13px;min-height:52px;padding:12px 14px;font-size:16px}.archery-award-form-grid textarea{resize:vertical;min-height:120px;line-height:1.6}.archery-certificate-input{cursor:pointer;color:#4c1d95;align-items:center;gap:14px;background:#faf5ff!important;border:2px dashed #a78bfa!important;display:flex!important}.archery-certificate-input input{display:none}.archery-certificate-input svg{width:32px;height:32px}.archery-certificate-input b{font-size:18px}.archery-certificate-input small{color:#6b5d7d}.archery-award-actions{justify-content:flex-end;gap:10px;margin-top:14px;display:flex}.archery-award-actions button{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:7px;min-height:50px;padding:10px 15px;font-weight:900;display:flex}.archery-award-actions .primary-btn{color:#fff;background:#44237a;border:0}.archery-award-filters{grid-template-columns:140px 1fr 1fr 150px 150px 180px;gap:9px;margin-bottom:16px;display:grid}.archery-award-filters select,.archery-award-filters input{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:50px;padding:10px 12px}.archery-award-filters label{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:8px;padding:0 10px;display:flex}.archery-award-filters label input{border:0;outline:0;padding-left:0}.archery-award-filters svg{color:#6d5b80;width:18px}.archery-award-card-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.archery-award-card-grid article{border:1px solid var(--line);background:#fff;border-radius:22px;grid-template-columns:180px 1fr;display:grid;overflow:hidden;box-shadow:0 14px 32px #1305220d}.archery-award-thumb{background:#f5f0ff;place-items:center;min-height:210px;display:grid}.certificate-thumb{object-fit:cover;width:100%;height:100%}.certificate-empty,.certificate-pdf{color:#5b4a70;place-items:center;gap:8px;font-weight:900;text-decoration:none;display:grid}.certificate-empty svg,.certificate-pdf svg{width:42px;height:42px}.archery-award-card-body{gap:8px;padding:18px;display:grid}.archery-award-card-body>b{font-size:24px}.archery-award-card-body small{color:#6d6a73}.archery-award-card-body h3{margin:0;font-size:20px}.archery-award-card-body strong{color:#44237a;font-size:18px}.archery-award-badges{flex-wrap:wrap;gap:6px;display:flex}.archery-award-badge{border-radius:999px;padding:7px 10px;font-size:13px;font-weight:900}.archery-award-badge.gold{color:#92400e;background:#fef3c7}.archery-award-badge.green{color:#166534;background:#dcfce7}.archery-award-badge.purple{color:#5b21b6;background:#ede9fe}.archery-award-card-actions{flex-wrap:wrap;gap:8px;margin-top:5px;display:flex}.archery-award-card-actions button,.archery-award-card-actions a{color:#4c1d95;background:#ede9fe;border:0;border-radius:11px;align-items:center;gap:6px;min-height:42px;padding:9px 12px;font-weight:900;text-decoration:none;display:flex}.archery-award-card-actions .danger{color:#b91c1c;background:#fee2e2}.archery-award-detail-overlay{z-index:1600;background:#140924cc;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.archery-award-detail{width:min(980px,100%);max-height:92vh;overflow:auto}.archery-award-close{background:#f2edf8;border:0;border-radius:12px;justify-self:end;align-items:center;gap:6px;min-height:42px;padding:8px 12px;font-weight:900;display:flex}.archery-award-detail-grid{grid-template-columns:360px 1fr;gap:20px;display:grid}.archery-award-detail-file{border:1px solid var(--line);background:#faf5ff;border-radius:18px;place-items:center;min-height:420px;display:grid;overflow:hidden}.archery-award-detail-file .certificate-thumb{object-fit:contain;background:#fff}.archery-award-detail h3{margin:0;font-size:28px}.archery-award-detail strong{color:#44237a;margin:8px 0;font-size:23px;display:block}.archery-award-detail dl{gap:9px;margin:16px 0;display:grid}.archery-award-detail dl div{background:#f8f5ff;border-radius:12px;padding:12px}.archery-award-detail dt{color:#736783;font-size:13px;font-weight:900}.archery-award-detail dd{margin:4px 0 0;line-height:1.55}.archery-post.no-comments .archery-post-body{padding-bottom:22px}@media (width<=1100px){.archery-award-filters{grid-template-columns:1fr 1fr 1fr}.archery-award-card-grid{grid-template-columns:1fr}}@media (width<=760px){.archery-admin-tabs{grid-template-columns:1fr;display:grid}.archery-award-form-grid,.archery-award-filters,.archery-award-card-grid article{grid-template-columns:1fr}.archery-award-thumb{min-height:260px}.archery-award-detail-grid{grid-template-columns:1fr}.archery-award-detail-file{min-height:300px}.archery-award-card-actions{display:grid}.archery-award-card-actions button,.archery-award-card-actions a{justify-content:center}}.rock-login .rock-login-hero{display:none}.rock-login-heading h2{letter-spacing:-.05em}.rock-role-cards button{transition:transform .18s,box-shadow .18s,border-color .18s}.rock-role-cards button:hover{transform:translateY(-2px)}@media (width<=760px){.rock-login.login-page{background:#f5faf7;min-height:100dvh;display:block;overflow-x:hidden}.rock-login .login-box.rock-login-box{min-height:100dvh;padding:0 18px calc(28px + env(safe-area-inset-bottom));background:linear-gradient(#17483a 0 252px,#f5faf7 252px 100%);display:block}.rock-login .rock-login-hero{color:#fff;background:radial-gradient(circle at 82% 22%,#f5d25c55 0 52px,#0000 53px),radial-gradient(circle at 12% 94%,#fff2 0 92px,#0000 93px),linear-gradient(145deg,#0f392f 0%,#17644d 100%);border-radius:0 0 30px 30px;min-height:252px;margin:0 -18px 24px;padding:26px 24px 34px;display:block;position:relative;overflow:hidden;box-shadow:0 16px 38px #0c2a2333}.rock-login .rock-login-hero:after{content:"";border:34px solid #ffffff12;border-radius:50%;width:210px;height:210px;position:absolute;bottom:-92px;right:-70px}.rock-hero-copy{z-index:2;position:relative}.rock-hero-copy span{color:#cdebdc;letter-spacing:.08em;align-items:center;gap:7px;font-size:14px;font-weight:900;display:inline-flex}.rock-hero-copy span:before{content:"●";color:#f4d35e;font-size:9px}.rock-hero-copy h1{color:#fff;letter-spacing:-.08em;text-transform:uppercase;margin:11px 0 9px;font-family:DM Sans,Noto Sans KR,sans-serif;font-size:clamp(42px,12vw,58px);line-height:.95}.rock-hero-copy p{color:#e8f5ee;letter-spacing:-.04em;width:min(330px,90%);margin:0;font-weight:800;line-height:1.45;font-size:18px!important}.rock-walking-characters{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1d;border:1px solid #ffffff2f;border-radius:999px;align-items:flex-end;gap:6px;padding:9px 12px;display:flex;position:absolute;bottom:16px;right:20px;box-shadow:0 12px 24px #08251d33}.rock-walking-characters span{background:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:21px;display:grid;box-shadow:0 5px 12px #08251d22}.rock-walking-characters span:nth-child(2){transform:translateY(-7px)}.rock-login .rock-login-heading{padding:2px 2px 0}.rock-login .rock-login-heading .eyebrow{color:#5e8f7b;letter-spacing:.22em;font-size:13px}.rock-login .rock-login-heading h2{color:#10251e;margin:7px 0 8px;font-size:clamp(28px,8.4vw,38px);line-height:1.16}.rock-login .rock-login-heading p{color:#5d7068;letter-spacing:-.04em;line-height:1.55;font-size:17px!important}.rock-login .rock-role-cards{gap:14px;margin-top:22px}.rock-login .rock-role-cards button{background:#fff;border:2px solid #d9e4de;border-radius:24px;min-height:112px;padding:18px;box-shadow:0 14px 30px #0b2b2110}.rock-login .rock-role-cards .role-icon{border-radius:18px;width:60px;height:60px}.rock-login .rock-role-cards .role-icon svg{width:28px;height:28px}.rock-login .rock-role-cards b{color:#0f8dff;letter-spacing:-.07em;font-size:25px}.rock-login .rock-role-cards small{color:#5a6d65;letter-spacing:-.05em;margin-top:7px;font-size:17px;line-height:1.45}.rock-login .rock-role-cards button>svg{color:#94a39d;width:28px;height:28px}.rock-login .master-account-hint{color:#60756c;letter-spacing:-.04em;margin:26px 0 0;font-size:17px!important}.rock-login .master-account-hint svg{width:23px;height:23px}.rock-login .master-account-hint b{color:#3d5149;font-size:20px}}.auth-teacher-manager{gap:18px;display:grid}.teacher-account-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.teacher-status-filters{flex-wrap:wrap;gap:7px;display:flex}.teacher-status-filters button,.teacher-card-actions button,.teacher-reset-result button{color:#294a3e;background:#fff;border:1px solid #d6e2dc;border-radius:12px;padding:10px 12px;font-weight:900}.teacher-status-filters button.active{color:#fff;background:#17483a;border-color:#17483a}.teacher-account-toolbar label{background:#fff;border:1px solid #d6e2dc;border-radius:13px;align-items:center;gap:8px;min-width:260px;padding:0 12px;display:flex}.teacher-account-toolbar label svg{color:#6b8178;width:18px}.teacher-account-toolbar input{width:100%;min-height:44px;font:inherit;border:0;outline:0}.teacher-profile-grid{gap:13px;display:grid}.teacher-profile-card{background:#fff;border:1px solid #dbe5df;border-radius:18px;grid-template-columns:1fr auto;gap:14px;padding:17px;display:grid}.teacher-profile-card span{color:#476258;background:#eef3f0;border-radius:999px;width:max-content;padding:5px 9px;font-size:12px;font-weight:900;display:inline-flex}.teacher-profile-card.status-approved span{color:#36713a;background:#e7f7e8}.teacher-profile-card.status-pending span{color:#9a6800;background:#fff4d8}.teacher-profile-card.status-rejected span,.teacher-profile-card.status-disabled span{color:#a33a2d;background:#ffe8e4}.teacher-profile-card b{margin-top:8px;font-size:20px;display:block}.teacher-profile-card small,.teacher-profile-card em{color:#6d7f77;margin-top:5px;font-style:normal;display:block}.teacher-card-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.teacher-card-actions button{align-items:center;gap:5px;display:inline-flex}.teacher-card-actions button svg{width:16px}.teacher-reset-result{background:#effaf3;border:1px solid #cfe4d7;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:15px;display:grid}.teacher-reset-result code{color:#fff;background:#173f35;border-radius:10px;margin:6px 0;padding:8px 11px;font-size:18px;font-weight:900;display:inline-block}@media (width<=760px){.teacher-profile-card{grid-template-columns:1fr}.teacher-card-actions{justify-content:stretch}.teacher-card-actions button{flex:1;justify-content:center}.teacher-account-toolbar label{width:100%;min-width:0}}.route-error-panel{background:#fff7f5;border:1px solid #f0b7ae;align-items:flex-start;gap:18px;display:flex}.route-error-panel>svg{color:#c55243;flex:none;width:42px;height:42px}.route-error-panel h2{margin:4px 0 8px;font-size:26px}.route-error-panel p{color:#8a4d43;font-size:16px;line-height:1.6}.route-error-panel button{color:#fff;background:#17483a;border:0;border-radius:12px;align-items:center;gap:7px;min-height:46px;padding:10px 16px;font-weight:900;display:inline-flex}.meal-admin-upload-panel{background:linear-gradient(135deg,#f5fbf7,#fff);border:1px solid #cfe5d8}.meal-admin-upload-box{grid-template-columns:1fr 130px;align-items:stretch;gap:14px;display:grid}.meal-admin-upload-box label{cursor:pointer;background:#fff;border:2px dashed #a9c7b8;border-radius:18px;align-items:center;gap:14px;min-height:86px;padding:18px;display:flex}.meal-admin-upload-box label>svg{color:#17483a;width:34px;height:34px}.meal-admin-upload-box label b{font-size:20px;display:block}.meal-admin-upload-box label small{color:#65786f;margin-top:5px;display:block}.meal-admin-upload-box input{display:none}.meal-admin-upload-box>div{color:#fff;text-align:center;background:#17483a;border-radius:18px;place-items:center;padding:14px;display:grid}.meal-admin-upload-box strong{font-size:30px}.meal-admin-upload-box span{color:#d8eee3;font-size:13px;font-weight:900}@media (width<=760px){.meal-admin-upload-box{grid-template-columns:1fr}.meal-admin-upload-box label{min-height:104px}.meal-admin-upload-box label b{font-size:22px}.meal-admin-upload-box label small{font-size:15px}.meal-admin-upload-box>div{min-height:84px}}.teacher-schedule-request-list{gap:12px;display:grid}.teacher-schedule-request-list article{background:#fff;border:1px solid #dce7e1;border-radius:18px;gap:10px;padding:17px;display:grid}.teacher-schedule-request-list article>div{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.teacher-schedule-request-list b{font-size:20px}.teacher-schedule-request-list span,.teacher-schedule-request-list small{color:#64766e}.teacher-schedule-request-list p{margin:0;line-height:1.65}.teacher-schedule-request-list blockquote{background:#eff8ef;border-left:5px solid #4b8a63;border-radius:12px;gap:5px;margin:0;padding:12px;display:grid}.request-대기{color:#93620d!important;background:#fff3d6!important}.request-승인{color:#166534!important;background:#dcfce7!important}.request-반려{color:#b91c1c!important;background:#fee2e2!important}.admin-hidden-chip{color:#66756f;vertical-align:middle;background:#eef1f0;border-radius:999px;margin-left:7px;padding:4px 8px;font-size:12px;display:inline-flex}.equipment-status-actions .secondary-action{color:#34594a!important;background:#eef3f0!important}.equipment-status-actions .danger-action,.schedule-request-admin article button.danger{color:#b91c1c!important;background:#fee2e2!important}.equipment-status-actions button svg,.schedule-request-admin article button svg,.facility-admin-danger-actions button svg{width:16px;height:16px}.facility-admin-danger-actions{gap:9px;margin-top:12px;display:flex}.facility-admin-danger-actions button{color:#34594a;background:#eef3f0;border:0;border-radius:12px;justify-content:center;align-items:center;gap:7px;min-height:48px;padding:10px 14px;font-weight:900;display:inline-flex}.facility-admin-danger-actions button.danger{color:#b91c1c;background:#fee2e2}.top-home-button{border:1px solid var(--line);color:#17483a;background:#fff;border-radius:13px;place-items:center;width:42px;height:42px;display:grid}.top-home-button:hover,.bell:hover{background:#f2f7f4}.bell .top-alert-badge{box-shadow:0 5px 12px #8f1d1d2f;color:#fff!important;background:#e24444!important;border:2px solid #fff!important;border-radius:999px!important;place-items:center!important;width:auto!important;min-width:23px!important;height:23px!important;padding:0 6px!important;font-size:12px!important;font-style:normal!important;font-weight:900!important;line-height:1!important;display:grid!important;position:absolute!important;top:-7px!important;right:-6px!important}.nav-unread-badge{color:#fff!important;background:#e24444!important}.bottom-nav a{position:relative}.bottom-nav .nav-unread-badge{top:2px!important;right:13px!important;box-shadow:0 0 0 2px #fff!important}.schedule-row-toggle{flex-wrap:wrap;align-items:center;gap:12px;margin:-4px 0 0;display:flex}.schedule-row-toggle button{color:#17483a;background:#fff;border:1px solid #cfe0d6;border-radius:12px;align-items:center;gap:6px;min-height:44px;padding:9px 13px;font-weight:900;display:inline-flex}.schedule-row-toggle button svg{width:17px}.schedule-row-toggle small{color:#63776d;font-weight:800}.schedule-row-manager.compact{padding:18px!important}.schedule-row-manager.compact .panel-head{margin-bottom:10px}.schedule-row-manager.compact .panel-head h2{font-size:22px!important}.schedule-row-manager.compact .panel-head p{font-size:14px!important}.meal-edit-overlay{z-index:1700;background:#10251dcc;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.meal-edit-modal{gap:13px;width:min(640px,100%);display:grid}.meal-edit-modal h2{margin:0;font-size:28px}.meal-edit-modal label{gap:7px;font-weight:900;display:grid}.meal-edit-modal textarea{border:1px solid var(--line);resize:vertical;border-radius:13px;min-height:210px;padding:12px 14px;line-height:1.65}.meal-edit-modal input{border:1px solid var(--line);border-radius:13px;min-height:52px;padding:12px 14px}.meal-edit-modal p{color:#68796f;margin:0}.meal-month-calendar .editable-meal-day{cursor:pointer}.meal-month-calendar .editable-meal-day:hover{outline-offset:-3px;outline:3px solid #1f7a5d}.archery-award-form-grid.simple{grid-template-columns:220px 1fr!important}.archery-award-form-grid.simple textarea{min-height:180px}.archery-award-card-body h3{white-space:pre-wrap;line-height:1.55}@media (width<=760px){html{font-size:17px}body{font-size:17px;line-height:1.55}.content{padding:20px 14px 112px!important}.page-stack{gap:18px!important}.page-title h1{letter-spacing:-.04em;font-size:32px!important;line-height:1.18!important}.page-title p{font-size:16px!important;line-height:1.65!important}.eyebrow{letter-spacing:.14em;font-size:12px!important}.panel{border-radius:24px!important;padding:20px!important}.panel-head{grid-template-columns:1fr auto;align-items:flex-start!important;gap:10px!important;display:grid!important}.panel-head h2{font-size:24px!important;line-height:1.25!important}.panel-head p{font-size:15px!important;line-height:1.6!important}input,select,textarea,button{font-size:16px!important}input,select{min-height:54px!important}textarea{min-height:132px!important;line-height:1.65!important}button,.primary-btn,.outline-btn{min-height:52px}.date-chip{padding:8px 11px!important;font-size:14px!important}.top-home-button,.bell{flex:none;width:44px!important;height:44px!important}.schedule-row-toggle{gap:7px;display:grid}.schedule-row-toggle button{justify-content:center;width:100%}.meal-edit-overlay{align-items:end;padding:10px}.meal-edit-modal{max-height:92vh;overflow:auto;border-radius:24px 24px 0 0!important}.archery-award-form-grid.simple{grid-template-columns:1fr!important}.empty-firestore{line-height:1.5;padding:24px!important;font-size:17px!important}.facility-tabs,.facility-sub-tabs,.pe-two-tabs,.admin-tabs{scroll-snap-type:x proximity;gap:9px!important;padding-bottom:7px!important;display:flex!important;overflow-x:auto!important}.facility-tabs button,.facility-sub-tabs button,.pe-two-tabs button,.admin-tabs button{scroll-snap-align:start;border-radius:16px!important;flex:none!important;min-height:56px!important;font-size:17px!important}.weekly-schedule-panel{-webkit-overflow-scrolling:touch;overflow-x:auto!important}.weekly-schedule-panel:before{content:"표는 좌우로 밀어 볼 수 있어요";color:#5f756b;margin-bottom:10px;font-size:14px;font-weight:900;display:block}.weekly-schedule-grid{grid-template-columns:86px repeat(7,105px)!important;min-width:820px!important}.weekly-schedule-grid>b,.weekly-schedule-grid>strong{padding:14px 8px!important;font-size:15px!important}.schedule-cell{min-height:94px!important;padding:8px!important}.schedule-cell span{padding:10px!important;font-size:15px!important}.schedule-change-form>div:nth-child(2),.equipment-request-grid,.pe-notice-grid,.facility-form-grid{grid-template-columns:1fr!important}.schedule-change-form label.wide,.equipment-request-grid .wide,.pe-notice-grid .wide,.facility-form-grid .wide{grid-column:auto!important}.schedule-change-form label,.equipment-request-grid label,.pe-notice-grid label,.facility-form-grid label{font-size:16px!important}.schedule-change-form>button,.facility-submit{justify-content:center;width:100%}.schedule-request-admin article{border:1px solid #dce7e1!important;border-radius:18px!important;grid-template-columns:1fr!important;gap:11px!important;margin-bottom:11px!important;padding:16px!important;display:grid!important}.schedule-request-admin article b{font-size:19px!important}.schedule-request-admin article span,.schedule-request-admin article small{line-height:1.55;font-size:15px!important}.schedule-request-admin article>div{grid-template-columns:1fr 1fr;gap:8px!important;display:grid!important}.schedule-request-admin article>div button{justify-content:center;width:100%}.teacher-schedule-request-list article{padding:17px!important}.teacher-schedule-request-list article>div{gap:5px;display:grid!important}.teacher-schedule-request-list b{font-size:21px!important}.teacher-schedule-request-list p,.teacher-schedule-request-list span,.teacher-schedule-request-list small{font-size:15px!important}.equipment-request-card-grid,.equipment-request-filters,.equipment-admin-memo-grid{grid-template-columns:1fr!important}.equipment-request-admin-list article{border-radius:22px!important;padding:18px!important}.equipment-request-admin-summary{gap:8px!important;display:grid!important}.equipment-request-admin-summary b,.equipment-request-card-head b{font-size:22px!important}.equipment-request-admin-list dl{grid-template-columns:1fr!important}.equipment-request-admin-list p,.equipment-request-card-grid p,.equipment-request-card-grid small{font-size:15px!important}.equipment-status-actions{grid-template-columns:1fr 1fr;gap:8px!important;display:grid!important}.equipment-status-actions button{justify-content:center;width:100%}.facility-writing-notice,.request-writing-notice,.sensitive-allergy-notice{padding:17px!important;font-size:16px!important;line-height:1.65!important}.facility-category-picker,.facility-request-grid,.facility-admin-filters{grid-template-columns:1fr!important}.facility-category-picker button{min-height:58px!important;font-size:17px!important}.facility-request-grid article{border-radius:21px!important;padding:18px!important}.facility-request-grid h3{font-size:22px!important}.facility-request-grid p,.facility-card-meta small,.facility-date{font-size:15px!important}.facility-card-head{flex-wrap:wrap!important;align-items:flex-start!important}.facility-card-head>span,.status-badge,.urgency-badge{font-size:14px!important}.facility-detail-overlay{align-items:end!important;padding:10px!important}.facility-detail-modal{border-radius:24px 24px 0 0!important;width:100%!important;max-height:92vh!important;padding:22px 18px!important}.facility-detail-modal h2{font-size:26px!important;line-height:1.25!important}.facility-detail-info{grid-template-columns:1fr!important}.facility-detail-info span,.facility-detail-modal blockquote,.facility-admin-answer{line-height:1.6;font-size:15px!important}.facility-status-actions,.facility-admin-danger-actions{grid-template-columns:1fr!important;display:grid!important}.facility-status-actions button,.facility-admin-danger-actions button{width:100%}}@media (width<=420px){.page-title h1{font-size:30px!important}.panel{padding:18px!important}.equipment-status-actions,.schedule-request-admin article>div{grid-template-columns:1fr!important}}
