:root{--ink:#203d35;--green:#24745c;--deep:#164e3e;--muted:#7a8882;--line:#e4e9e3;--cream:#f8f9f5;--mint:#e9f1e9}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Segoe UI,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}a,button,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:inherit;text-decoration:none}button{transition:background .16s,border-color .16s,transform .16s}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #94bc9a;outline-offset:3px}input:focus,select:focus{outline:2px solid #99bdaa;outline-offset:1px}button:active:not(:disabled){transform:translateY(1px)}.site{min-height:100vh;display:flex;flex-direction:column}.header{height:98px;margin:0 5.6%;border-bottom:1px solid var(--line);justify-content:space-between;gap:20px}.brand,.header{display:flex;align-items:center}.brand{gap:12px;font-size:29px;font-weight:750;letter-spacing:-1.5px;line-height:1}.brand-symbol{background:var(--deep);color:#eaf2d8;border-radius:12px;width:44px;height:44px;display:grid;place-items:center}.brand-dot{color:#65a47a}.brand small{display:block;font-size:9px;letter-spacing:2.6px;margin-top:8px;font-weight:600;color:#819087}.header-right{gap:20px}.header-note,.header-right{display:flex;align-items:center}.header-note{gap:9px;color:#79877d;font-size:12px}.dot{height:6px;width:6px;display:inline-block;background:#65a47a;border-radius:100%;flex-shrink:0}.account{display:flex;gap:10px;align-items:center;font-size:12px}.account small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.account-avatar{height:35px;width:35px;border-radius:50%;background:#e6ede2;display:grid;place-items:center;font-size:11px}.icon-btn{border:0;background:transparent;padding:8px;border-radius:8px;color:var(--muted);display:inline-flex;align-items:center;justify-content:center}.icon-btn:hover{background:var(--mint)}.login-layout{width:min(1120px,88.8%);margin:auto;display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:110px;padding:64px 0 76px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:var(--green);display:flex;align-items:center;gap:9px}.tiny-line{height:1px;width:22px;background:#6c9777}h1,h2,h3,p{margin:0}h1{font-size:44px;letter-spacing:-1.8px;line-height:1.17}h1,h2{font-weight:550}h2{font-size:25px;letter-spacing:-.8px}h3{font-size:17px;font-weight:550}.intro h1{margin:24px 0;font-size:54px;letter-spacing:-2.5px;line-height:1.12}.intro h1 em{font-family:Georgia,serif;font-weight:400;color:#5d8d69}.intro-description{font-size:15px;color:#7c8981;line-height:1.8}.intro-points{margin-top:28px;display:flex;flex-direction:column;gap:13px;font-size:12px}.intro-points div{display:flex;align-items:center;gap:13px}.intro-points span{font-size:9px;letter-spacing:.5px;color:#81947f}.schedule-art{margin:34px 0 0 10px;width:365px;background:#fff;border:1px solid #e7ebe2;box-shadow:0 15px 40px #2d46370a;border-radius:16px;padding:22px;transform:rotate(-3deg);position:relative}.art-top{display:flex;gap:11px;align-items:center}.art-icon{background:#eff4e6;color:#62835a;padding:11px;border-radius:11px}.art-top strong{font-size:12px;display:block}.art-top small{display:block;font-size:9px;color:#8c958b;margin-top:5px}.art-check{margin-left:auto;background:#e5eee3;border-radius:50%;padding:5px;color:#59805b}.art-times{display:flex;gap:7px;margin-top:22px}.art-times>span{padding:10px 12px;border:1px solid #e9ece6;border-radius:8px;color:#859081;font-size:11px}.art-times .chosen{background:var(--green);color:#fff;border-color:var(--green)}.art-bottom,.art-times .chosen{display:flex;gap:6px;align-items:center}.art-bottom{margin-top:19px;font-size:9px;color:#8b998c}.art-orbit{position:absolute;width:92px;height:92px;border:1px solid #d9e4ce;border-radius:50%;right:-42px;bottom:-34px;z-index:-1}.login-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:39px;box-shadow:0 15px 55px #223c2b05}.section-icon{display:grid;place-items:center;background:#edf3e8;border-radius:14px;width:53px;height:53px;color:var(--green);margin-bottom:28px}.login-card h2{margin:14px 0 12px;font-size:29px}.login-card>p{font-size:12px;color:var(--muted);line-height:1.8}.login-card form{margin-top:30px}.field{display:block;margin-bottom:19px}.field>span{font-size:12px;font-weight:500;display:block;margin-bottom:9px}.field input,.field select{width:100%}input,select{height:44px;border-radius:8px;border:1px solid #dfe5dd;background:white;color:var(--ink);padding:0 13px;min-width:0}input::placeholder{color:#a0aaa1;font-size:12px}input:disabled{background:#f5f6f3;color:#81907e}.danger,.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 18px;border-radius:8px;font-size:12px;font-weight:600;min-height:44px;border:1px solid transparent;white-space:nowrap}.primary{background:var(--green);color:white}.primary:hover{background:var(--deep)}.primary svg{flex-shrink:0}.secondary{background:white;border-color:var(--line);color:var(--ink)}.secondary:hover{background:#f0f4ed}.full{width:100%}.login-card .primary{justify-content:space-between;margin-top:5px}.text-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:transparent;border:0;color:var(--green);font-size:12px;padding:8px 4px}.quiet{color:var(--muted)}.login-foot{margin-top:28px;padding-top:20px;border-top:1px solid #f0f2ed;color:#98a294;gap:7px;justify-content:center}.login-foot,footer{font-size:10px;display:flex;align-items:center}footer{margin:auto 5.6% 0;padding:25px 0;border-top:1px solid var(--line);justify-content:space-between;gap:15px;color:#929b91}footer span:last-child{display:flex;gap:6px;align-items:center}.loading{min-height:65vh;display:flex;gap:12px;justify-content:center;align-items:center;color:var(--muted)}.spinner{height:20px;width:20px;border:2px solid var(--line);border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.error-banner{position:fixed;top:12px;left:50%;transform:translateX(-50%);z-index:200;background:#fff0eb;border:1px solid #ecc6b8;box-shadow:0 5px 30px #58332613;border-radius:9px;padding:10px 12px 10px 18px;display:flex;align-items:center;gap:12px;color:#9b4b34;font-size:13px;max-width:90vw}.profile-page{width:min(580px,90%);margin:48px auto 90px}.step-strip{justify-content:center;gap:18px;color:#a2aa9f;font-size:11px;margin-bottom:50px}.step-strip,.step-strip span{display:flex;align-items:center}.step-strip span{gap:5px}.step-strip i{width:30px;height:1px;background:var(--line)}.step-strip .done{color:#7d9b7d}.step-strip .current{color:var(--green);font-weight:600}.profile-card{background:white;border:1px solid var(--line);padding:40px;border-radius:18px}.profile-card h1{font-size:32px;margin:16px 0 12px}.profile-card>p{color:var(--muted);font-size:12px}.profile-card form{margin-top:30px}.hint{font-size:11px;line-height:1.6;color:#8a978b;margin:10px 0 18px}.centered{text-align:center}.admin-main,.parent-main{width:88.8%;max-width:1390px;margin:42px auto 65px}.page-heading,.parent-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.page-heading h1,.parent-heading h1{margin-top:14px;font-size:37px}.page-heading p,.parent-heading p{color:var(--muted);font-size:12px;margin-top:13px;line-height:1.7}.tabs{display:flex;gap:6px;align-items:center}.tabs button{background:none;border:0;color:#819080;border-radius:7px;padding:12px 15px;font-size:12px;white-space:nowrap}.tabs button.active{background:#e9efe4;color:var(--ink);font-weight:600}.tabs button span{font-size:9px;border-radius:4px;background:#dfe8d9;padding:3px 5px;margin-left:8px}.booking-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;margin-top:35px;align-items:start}.teachers-panel,.time-panel{border:1px solid var(--line);background:white;border-radius:14px;overflow:hidden}.section-heading{padding:23px 25px;border-bottom:1px solid #eef0eb;display:flex;align-items:center;gap:12px}.section-heading h2{font-size:17px;letter-spacing:-.3px}.section-heading>svg{margin-left:auto;color:#9aaa9b}.step-num{background:#eaf1e4;color:#688260;width:25px;height:25px;display:grid;place-items:center;border-radius:7px;font-size:11px}.count{font-size:10px;color:#8d9988;background:#f3f5ef;padding:4px 7px;border-radius:5px;margin-left:auto}.teacher-filters{padding:20px 24px 12px}.search{display:flex;align-items:center;gap:8px;border:1px solid #e2e7df;border-radius:8px;background:white;padding:0 12px;color:#99a494;min-width:130px}.search input{border:0;background:transparent;flex:1 1;padding:0;height:42px;width:100%}.search:focus-within{outline:2px solid #99bdaa}.search input:focus{outline:0}.campus-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.campus-chips button{padding:7px 10px;color:#8b9685;background:none;border:1px solid transparent;border-radius:6px;font-size:10px}.campus-chips button.active{color:var(--green);border-color:#d9e6d2;background:#f1f6eb}.teachers-list{max-height:560px;overflow:auto;padding:0 12px 14px;scrollbar-width:thin;scrollbar-color:#d9e1d2 transparent}.teacher-card{width:100%;display:flex;gap:13px;align-items:center;padding:18px 12px;background:white;border:1px solid transparent;border-bottom-color:#eff1eb;text-align:left;border-radius:9px}.teacher-card:hover{background:#f8faf5}.teacher-card.selected{border-color:#b8cdb2;background:#f1f6ec}.avatar{background:#eff2e8;width:40px;height:40px;border-radius:11px;display:grid;place-items:center;color:#7b8f6a;font-size:12px;flex-shrink:0}.teacher-card:nth-child(3n) .avatar{background:#f5ede3;color:#a68b65}.teacher-card:nth-child(3n+2) .avatar{background:#eaf0ee;color:#779a93}.teacher-copy{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:0}.teacher-copy strong{font-size:12px;font-weight:550;line-height:1.4}.teacher-copy small{font-size:10px;color:#8c9786}.teacher-card>svg{color:#a8b3a0;flex-shrink:0}.availability,.no-availability{font-size:9px;display:flex;align-items:center;gap:5px;color:#709268;margin-top:3px}.no-availability{color:#a2a99a}.availability .dot{width:4px;height:4px}.choose-placeholder{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center}.calendar-illustration{width:90px;height:90px;border-radius:50%;background:#f0f4e9;color:#94a885;display:grid;place-items:center;position:relative;margin-bottom:20px}.calendar-illustration span{position:absolute;right:7px;bottom:12px;border-radius:50%;background:#80a078;color:white;padding:4px;display:flex;border:3px solid white}.choose-placeholder h3{font-size:16px}.choose-placeholder p{font-size:12px;color:#929e8b;text-align:center;line-height:1.8;margin-top:11px}.time-content{padding:24px}.chosen-teacher{padding-bottom:22px;border-bottom:1px solid #edf0e7;display:flex;flex-direction:column;gap:10px}.chosen-teacher strong{font-size:15px;font-weight:550}.chosen-teacher span{display:flex;gap:5px;align-items:center;font-size:10px;color:#909d88;line-height:1.6}.input-caption{font-size:11px;margin:23px 0 12px}.date-chips{display:flex;flex-wrap:wrap;gap:8px}.date-chips button{padding:11px 14px;border:1px solid var(--line);border-radius:8px;background:white;display:flex;flex-direction:column;gap:5px;text-align:left;min-width:100px}.date-chips small{text-transform:uppercase;color:#9ba58f;font-size:9px}.date-chips strong{font-size:12px;font-weight:500}.date-chips button.active{border-color:#81aa77;background:#f0f6e9}.time-caption{display:flex;justify-content:space-between;align-items:center;margin:25px 0 13px;font-size:11px}.time-caption small{font-size:9px;color:#95a08a}.time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.time-grid button{background:white;border:1px solid #dfe7d6;border-radius:7px;padding:11px 7px;font-size:12px;color:#688158;display:flex;gap:6px;justify-content:center;align-items:center}.time-grid button:hover{background:#f0f6e8}.time-grid button.active{background:var(--green);color:white;border-color:var(--green)}.booking-details{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}.duration-line{display:flex;gap:6px;align-items:center;font-size:10px;color:#7d8e72}.booking-details details{margin:20px 0}.booking-details summary{font-size:11px;cursor:pointer;color:#66865b;margin-bottom:15px}.booking-details summary span{font-size:9px;color:#a5ad9c;margin-left:8px}.booking-details .field{margin-bottom:12px}.empty{padding:60px 25px;text-align:center;color:#a1ad96;display:flex;align-items:center;flex-direction:column}.empty h3{color:#657a58;margin:18px 0 10px}.empty p{font-size:12px;line-height:1.7;max-width:340px}.success-card{margin:40px auto 0;max-width:500px;background:white;border:1px solid var(--line);border-radius:16px;padding:38px;text-align:center}.success-icon{width:75px;height:75px;background:#edf5e6;color:#68975b;display:grid;place-items:center;border-radius:50%;margin:0 auto 22px}.success-card .eyebrow{justify-content:center}.success-card h2{font-size:32px;margin:15px 0 10px}.success-card>p{font-size:12px;color:var(--muted)}.confirmation{margin:25px 0;background:#f6f8f2;border-radius:9px;padding:22px;text-align:left;display:flex;flex-direction:column;gap:13px}.confirmation strong{font-size:14px;margin-bottom:4px}.confirmation span{display:flex;gap:9px;font-size:11px;align-items:center;color:#7e8c73;line-height:1.6}.my-bookings{margin-top:30px}.booking-card{background:white;display:flex;align-items:center;gap:22px;padding:25px;border-radius:12px;border:1px solid var(--line);margin-bottom:14px}.booking-date{width:66px;text-align:center;background:#eef4e8;border-radius:10px;padding:12px 10px;flex-shrink:0}.booking-date strong{font-size:27px;display:block}.booking-date span{font-size:10px;color:#829778}.booking-info{flex:1 1}.booking-info h3{margin-top:10px;font-size:15px}.booking-info p{font-size:12px;color:#819176;margin:8px 0}.booking-info>small{color:#a2ac99;font-size:10px}.cancelled{opacity:.65}.danger-text{border:0;background:none;color:#a57966;font-size:11px;padding:7px;white-space:nowrap}.danger-text:hover{background:#fcf1e9;border-radius:5px}.badge{display:inline-flex;font-size:9px;border-radius:5px;padding:5px 8px;white-space:nowrap}.badge.green{background:#edf4e8;color:#6b8f59}.badge.muted{background:#f1f2ef;color:#98a08e}.badge.amber{background:#fbf2e2;color:#a98b48}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-top:30px}.stats>div{border:1px solid var(--line);border-radius:12px;padding:22px;background:white}.stats>div>span{font-size:11px;color:#8b9982}.stats strong{font-size:31px;display:flex;justify-content:space-between;align-items:center;font-weight:500;margin-top:18px;letter-spacing:-1px}.stats strong svg{color:#a6b599}.stats .stat-accent{background:#edf2e7;border-color:#dfe8d7}.admin-toolbar{margin-top:34px;display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:19px}.table-panel{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.filters{display:flex;gap:10px;padding:20px;border-bottom:1px solid var(--line);flex-wrap:wrap}.filters .search{flex:1 1}.filters>input,.filters>select{font-size:11px;color:#829175}.panel-caption{display:flex;justify-content:space-between;padding:16px 22px;color:#839376;font-size:10px;border-bottom:1px solid #eff2eb}.panel-caption span{color:#a2ad99}.table-scroll{overflow:auto;max-height:640px;scrollbar-width:thin}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;min-width:760px}th{font-size:10px;color:#97a38c;font-weight:500;background:#fafbf8;padding:15px 21px;position:sticky;top:0;z-index:1}td{padding:19px 21px;border-top:1px solid #eff2eb;line-height:1.5;color:#657b59}td strong{font-size:12px;font-weight:550;color:var(--ink);display:block}td small{display:block;color:#9ba68f;font-size:10px;margin-top:5px}tbody tr:hover{background:#fcfdf9}.person-cell{display:flex;gap:12px;align-items:center}.person-cell .avatar{width:33px;height:33px;font-size:10px;border-radius:8px}.row-actions{display:flex;gap:12px;align-items:center}.row-actions .text-btn{font-size:10px;white-space:nowrap}.toast{bottom:25px;left:50%;transform:translateX(-50%);background:var(--deep);color:white;box-shadow:0 7px 30px #122e2526;border-radius:10px;padding:16px 23px;font-size:12px;gap:10px;z-index:150;max-width:90vw}.modal-shade,.toast{position:fixed;display:flex;align-items:center}.modal-shade{inset:0;background:#162c2460;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;justify-content:center;padding:25px}.modal{width:580px;max-width:100%;max-height:90vh;overflow:auto;background:white;border-radius:16px;padding:28px;box-shadow:0 20px 100px #12352430}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:21px}.modal-head h2{font-size:23px}.modal-description{color:#839177;margin-bottom:22px}.modal-description,.modal>p{font-size:12px;line-height:1.8}.modal>p{color:#7d8d72}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px;flex-wrap:wrap}.danger{background:#a7654f;color:white}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid.three{grid-template-columns:1fr 1fr 1fr}.form-grid>select{width:100%;font-size:11px}.form-grid .field{min-width:0}.selection-header{display:flex;align-items:center;gap:12px;font-size:11px;color:#8e9a82;margin:12px 0}.selection-header>span{margin-right:auto}.teacher-checklist{height:185px;overflow:auto;border:1px solid var(--line);border-radius:8px;margin-bottom:22px;scrollbar-width:thin}.teacher-checklist label{display:flex;gap:10px;align-items:center;padding:12px;border-bottom:1px solid #f0f2ed;cursor:pointer;font-size:11px}.teacher-checklist label:hover{background:#f5f8ef}.teacher-checklist input{width:15px;height:15px;accent-color:var(--green)}.teacher-checklist small{font-size:9px;color:#9ba88d;display:block;margin-top:4px}.date-add{display:flex;gap:10px}.date-add input{flex:1 1}.picked-dates{display:flex;gap:7px;flex-wrap:wrap;margin:-5px 0 20px}.picked-dates button{background:#edf3e6;border:0;color:#718b60;padding:8px 10px;border-radius:6px;display:flex;gap:8px;align-items:center;font-size:10px}@media(min-width:1500px){.login-layout{padding:90px 0 110px}.intro h1{font-size:62px}}@media(max-width:1050px){.login-layout{gap:45px}.intro h1{font-size:45px}.login-card{padding:28px}.schedule-art{width:320px;padding:18px}.art-times>span{padding:10px}.booking-layout{grid-template-columns:1fr 1fr;gap:18px}.parent-heading{align-items:flex-start}.parent-heading .tabs{margin-top:24px}.page-heading h1,.parent-heading h1{font-size:30px}.row-actions{gap:6px}.stats{gap:10px}.stats>div{padding:18px}}@media(max-width:760px){.header{height:80px;margin:0 5%}.brand{font-size:25px}.brand-symbol{height:39px;width:39px}.header-note{font-size:10px}.login-layout{grid-template-columns:1fr;width:90%;gap:35px;padding:40px 0 50px}.intro h1{font-size:43px;margin:18px 0}.intro-description{font-size:13px}.intro-points{flex-direction:row;gap:14px;flex-wrap:wrap;margin-top:22px}.intro-points div{font-size:10px;gap:6px}.schedule-art{display:none}.login-card{width:100%;max-width:500px;padding:28px}.section-icon{width:45px;height:45px;margin-bottom:22px}.login-card h2{font-size:27px}.login-card form{margin-top:25px}.login-foot{margin-top:24px}.account-avatar,.header-note .dot{display:none}.account{font-size:10px}.account small{font-size:9px;max-width:180px;overflow:hidden;text-overflow:ellipsis}.header-right{gap:5px}.brand small{font-size:7px}.header-note{max-width:100px;line-height:1.6;text-align:right}.admin-main,.parent-main{width:90%;margin-top:30px}.page-heading,.parent-heading{align-items:flex-start;flex-direction:column}.page-heading h1,.parent-heading h1{font-size:31px}.parent-heading .tabs{margin-top:0}.booking-layout{grid-template-columns:1fr;margin-top:23px}.teachers-list{max-height:350px}.time-panel{min-height:330px}.choose-placeholder{min-height:280px}.section-heading{padding:19px 20px}.teacher-filters{padding:16px 20px 10px}.teacher-card{padding:15px 10px}.teacher-copy strong{font-size:12px}.time-content{padding:22px}.time-grid{grid-template-columns:repeat(4,1fr)}footer{font-size:9px;margin:0 5%;padding:23px 0;flex-wrap:wrap}footer span:nth-child(2){display:none}.stats{grid-template-columns:1fr 1fr;margin-top:24px}.stats>div{padding:18px}.stats strong{font-size:28px;margin-top:12px}.stats>div>span{font-size:10px}.admin-toolbar{align-items:stretch;flex-direction:column;margin-top:24px;gap:14px}.admin-toolbar>.primary{align-self:flex-start}.tabs button{padding:11px 13px}.filters{padding:15px;gap:9px}.filters .search{flex-basis:100%}.filters>input,.filters>select{flex:1 1;min-width:100px}.panel-caption{padding:14px;font-size:9px;gap:10px}.panel-caption span{max-width:160px;text-align:right;line-height:1.5}.booking-card{gap:14px;padding:18px;flex-wrap:wrap}.booking-date{width:55px}.booking-info h3{font-size:13px}.booking-card>.danger-text{margin-left:69px}.success-card{padding:28px}.confirmation{padding:18px}.profile-page{margin-top:35px}.profile-card{padding:28px}.profile-card h1{font-size:29px}.step-strip{gap:10px;font-size:10px}.step-strip i{width:16px}.modal-shade{padding:12px}.modal{padding:22px;max-height:94vh}.modal-head h2{font-size:20px}.form-grid{gap:10px}.date-add .secondary{padding:10px;font-size:10px}.date-add input{width:0}.form-grid .field>span{font-size:10px}.form-grid input,.form-grid select{padding:0 8px;font-size:12px}.toast{width:90%;font-size:11px;padding:14px}.error-banner{width:90%;font-size:12px}.brand-symbol svg{width:21px}}.code-input{text-align:center;font-size:26px;letter-spacing:9px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.local-code{background:#fff7e8;border:1px solid #e9d9b2;border-radius:8px;padding:12px 14px;margin:-3px 0 14px;color:#947744;line-height:1.7}.local-code>strong{font-size:10px;display:block;font-weight:500}.local-code>span{display:block;font-size:11px;margin-top:5px}.local-code b{font-size:18px;letter-spacing:4px;color:#795c2d}.scope-options{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:20px}.scope-options button{border:1px solid var(--line);background:white;color:var(--muted);border-radius:8px;padding:12px 8px;display:flex;flex-direction:column;gap:8px;align-items:center;font-size:10px;line-height:1.5}.scope-options button.active{border-color:#81aa77;background:#f0f6e9;color:var(--green)}.scope-summary{display:flex;gap:13px;align-items:center;background:#f1f6ec;border-radius:9px;padding:18px;color:#6b8b5b;margin-bottom:24px;font-size:12px}.scope-summary strong{display:block;font-weight:400;font-size:11px;margin-top:7px;color:#8a9d7d}.building-checklist{border:1px solid var(--line);border-radius:9px;margin-bottom:24px;overflow:hidden}.building-checklist label{display:flex;align-items:center;gap:12px;padding:15px;border-bottom:1px solid #eff2eb;cursor:pointer}.building-checklist label:last-child{border:0}.building-checklist label:hover{background:#f5f8ef}.building-checklist input{width:16px;height:16px;accent-color:var(--green)}.building-checklist strong{display:block;font-size:12px;font-weight:500}.building-checklist small{display:block;margin-top:5px;color:#8f9d84;font-size:10px}.building-checklist em{font-style:normal;font-size:10px;color:#94a08a;margin-left:auto}.schedule-total{display:flex;gap:20px;justify-content:space-between;padding:13px 15px;border-radius:8px;background:#f6f8f1;font-size:11px;color:#859778}.schedule-total strong{color:var(--ink);font-weight:500}.settings-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(290px,1fr);gap:24px;align-items:start}.settings-card{background:white;border:1px solid var(--line);border-radius:13px;padding:28px}.settings-heading{display:flex;align-items:center;gap:15px;margin-bottom:25px}.settings-heading .section-icon{margin:0;width:45px;height:45px;flex-shrink:0}.settings-heading h2{font-size:21px}.settings-heading p{font-size:11px;color:var(--muted);margin-top:7px;line-height:1.6}.mail-live-status{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:23px}.mail-live-status small{font-size:10px;color:#93a08a}.settings-checkbox{display:flex;align-items:center;gap:9px;font-size:11px;color:#8c9882;margin-top:-8px;margin-bottom:15px}.settings-checkbox input{width:15px;height:15px;accent-color:var(--green)}.smtp-test-box{border:1px solid var(--line);border-radius:10px;padding:20px;margin:24px 0;background:#fafbf8}.smtp-test-box h3{font-size:14px}.smtp-test-box>p{font-size:11px;color:#8c9b80;margin:9px 0 20px}.settings-buttons{display:flex;gap:10px;flex-wrap:wrap}.settings-buttons .secondary{font-size:10px;padding:10px 12px}.settings-result{display:flex;gap:10px;align-items:center;border:1px solid #d4e4c8;background:#f1f7ec;color:#668a52;font-size:11px;line-height:1.7;border-radius:8px;padding:15px}.settings-result svg{flex-shrink:0}.password-settings .hint{margin-bottom:22px}@media(max-width:1000px){.settings-layout{grid-template-columns:1fr}.password-settings{max-width:600px}}@media(max-width:760px){.settings-card{padding:20px}.settings-heading h2{font-size:19px}.admin-toolbar .tabs{gap:2px;flex-wrap:wrap}.admin-toolbar .tabs button{padding:11px}.settings-buttons .secondary{width:100%}}.teacher-toolbar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.teacher-toolbar-actions .primary,.teacher-toolbar-actions .secondary{font-size:10px;padding:10px 12px}.danger-outline{color:#ad735c;border-color:#ecd6cc}.teacher-login-ready{color:#70985d!important;font-size:9px!important}.teacher-login-missing{color:#9ea796!important;font-size:9px!important}.import-instructions{display:flex;gap:15px;align-items:flex-start;color:#7c9870;margin-bottom:20px}.import-instructions>svg{flex-shrink:0}.import-instructions strong{font-size:13px;font-weight:500;color:var(--ink)}.import-instructions p{font-size:11px;line-height:1.8;margin-top:7px;color:#8b9b7e}.import-instructions+.secondary{margin-bottom:22px}.file-input{height:auto;padding:12px;font-size:11px}.file-input::file-selector-button{border:0;border-radius:5px;padding:7px 10px;background:#edf4e6;color:#6a865a;font-size:11px;margin-right:10px;cursor:pointer}.import-preview{margin-top:23px}.import-counts{display:flex;gap:10px;flex-wrap:wrap;background:#f3f7ed;border-radius:8px;padding:15px;font-size:10px;color:#8b9e7b;justify-content:space-between;margin-bottom:16px}.import-counts strong{color:var(--ink);font-weight:500}.import-errors{background:#fff2e9;border:1px solid #ecd3c4;border-radius:8px;padding:15px;color:#a47357;font-size:11px;line-height:1.7;margin-bottom:16px}.import-errors>strong{display:flex;gap:7px;align-items:center;font-size:12px;font-weight:500}.import-errors ul{padding-left:20px;margin:10px 0;max-height:160px;overflow:auto}.import-table{border:1px solid var(--line);border-radius:8px;margin-top:18px;max-height:230px}.import-table table{min-width:480px}.import-table td,.import-table th{padding:10px;font-size:10px}.import-table td strong{font-size:11px}.clear-warning{display:flex;gap:15px;align-items:flex-start;background:#fff6ef;border:1px solid #efddd1;padding:18px;border-radius:9px;color:#ad7e65;margin-bottom:24px}.clear-warning svg{flex-shrink:0}.clear-warning p{font-size:12px;line-height:1.9}.teacher-stats{max-width:540px;grid-template-columns:1fr 1fr}.teacher-meetings{margin-top:28px}@media(max-width:760px){.teacher-toolbar-actions{gap:7px}.teacher-toolbar-actions .primary,.teacher-toolbar-actions .secondary{font-size:9px;padding:9px 10px}.teacher-stats{max-width:none}.clear-warning{padding:15px}.clear-warning p{font-size:11px}}