/* GeoTE: the neighbourhood fieldbook. Shared portal and household design. */
:root{--paper:#f5f4ec;--ink:#26352e;--muted:#6c756e;--green:#365e46;--deep:#263e30;--lime:#d9e5ad;--line:#dedfd4;--orange:#be7e54;--red:#a44435;--radius:18px}
body{background:var(--paper);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.2px}
h1,h2,h3,.brand b,.stat strong{font-family:inherit}h1{font-weight:650;letter-spacing:-1.1px}h2{font-weight:650;letter-spacing:-.5px}button,input,select,textarea{font-family:inherit}
.btn{border-radius:11px;min-height:45px;font-weight:600;box-shadow:none;transition:background .15s,transform .15s}.btn:active{transform:scale(.98)}.btn.primary{background:var(--green)}.btn:disabled{opacity:.5;cursor:default}.btn.primary:disabled{transform:none}
input,select,textarea{border-radius:10px;min-height:48px;background:#fffef9;border-color:#d6d9ce;font-size:14px}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px #365e4618;border-color:#738c71}label{font-weight:550}
.sidebar{width:244px;background:var(--deep);color:#f3f1e5;border:0;padding:30px 20px}.shell{grid-template-columns:244px minmax(0,1fr)}.sidebar .brand small{color:#b6c5b4;font-size:9px;letter-spacing:1.1px}.sidebar .brand{padding:0 6px 28px}.brand img{border-radius:14px;padding:5px;width:43px;height:43px}.brand b{font-size:24px;letter-spacing:-1px}.nav-label{color:#a7b8a4;font-size:10px;letter-spacing:1.7px;margin-top:22px}.nav-btn{color:#c8d1c3;font-size:13px;padding:13px 14px;margin-bottom:6px;border-radius:10px}.nav-btn:hover{background:#ffffff0a;color:#fff}.nav-btn.active{background:var(--lime);color:#2c4030}.nav-btn.active:after{background:#506940}.sidebar .gie{border-color:#ffffff1c}.sidebar .gie strong{font-size:9px;letter-spacing:1px}.sidebar .gie small{color:#a7b8a4;font-size:10px}.sidebar .gie img{width:33px;height:33px}.programme-card{background:#ffffff08;border:1px solid #ffffff19;border-radius:12px;padding:15px}.programme-card b{font-size:12px;color:#e0e7cd}.programme-card p{color:#a9bda4;font-size:11px}.programme-card .tag{background:#ffffff0d;color:#b9cba9;font-size:10px}
.topbar{height:76px;background:#faf9f3;border-color:var(--line);padding:0 36px}.breadcrumb{font-size:12px}.avatar{background:#e4e8d3;border-radius:12px}.user-info small{font-size:10px}.content{padding:32px 36px 38px;max-width:1540px}.page-head{margin-bottom:27px}.page-head h1{font-size:29px}.page-head p{font-size:13px;margin-top:8px;max-width:630px}.head-actions .btn{font-size:12px}.page-kicker{display:flex;align-items:center;gap:8px;font-size:10px;color:#697d64;text-transform:uppercase;letter-spacing:1.8px;font-weight:650;margin-bottom:9px}.page-kicker:before{content:"";width:16px;height:2px;background:#9fae82}
.stats{gap:14px}.stat{border-radius:14px;padding:20px;background:#faf9f3;border-color:var(--line);position:relative;overflow:hidden}.stat-top{font-size:11px}.stat-icon{border-radius:50%;width:30px;height:30px;background:#eef0e3}.stat-icon svg{width:16px;height:16px}.stat strong{font-size:33px;font-weight:600;line-height:1.6;letter-spacing:-1.4px}.stat small{font-size:10px}.stat.featured{background:#dce5bc;color:#2e4430;border-color:#ccd8a4}.stat.featured .stat-top,.stat.featured small{color:#59704b}.stat.featured .stat-icon{background:#ffffff55;color:#365e46}
.panel{border-radius:var(--radius);border-color:var(--line);background:#fffef9;box-shadow:none}.panel-header{padding:20px 23px}.panel-header h2{font-size:15px}.panel-header p{font-size:11px}.panel-body{padding:0 23px 23px}.dashboard-grid{gap:20px}.category-row{padding:17px 0}.category-icon{border-radius:12px;background:#e7ebd8;color:#5c7650}.category-icon.recyclable{background:#e3ebee;color:#5a7989}.category-icon.residual{background:#f0e7d5;color:#a18553}.track{height:5px;background:#eff0e8}.track span{background:#91a874}.track.recyclable span{background:#97b3c0}.track.residual span{background:#caae79}.category-name{font-size:13px}.category-meta{font-size:10px}.callout{background:#eeefe2;color:#69745c;border:1px solid #e3e6d3;border-radius:12px;font-size:11px}.callout strong{font-size:12px;color:#536a46}.callout .icon{width:16px;height:16px;vertical-align:middle}
th{background:#f2f3e9;font-size:10px;padding:13px 22px;letter-spacing:1.1px}td{padding:16px 22px;border-color:#eaece1;font-size:12px}td b{font-size:12px}td small{font-size:10px}.tag{border-radius:100px;font-size:10px;font-weight:550;padding:5px 10px;background:#eaf0e1;color:#496c3e}.tag.available{background:#f4e8dd;color:#9c633e}.tag.reserved,.tag.blue{background:#e4edf0;color:#537d8f}.tag.municipal,.tag.orange{background:#f3ead8;color:#967940}.tag.collected{background:#e7ecdb;color:#527341}.filters{background:#eeefe5;padding:11px;border-radius:13px;gap:8px}.filters input,.filters select{background:#fffef8;min-height:41px;font-size:12px}.link-btn{font-size:12px}.footer{font-size:10px;color:#90978a;padding-top:16px;border-top:1px solid var(--line);margin-top:32px}.enterprise-card{padding:23px}.enterprise-card h2{font-size:19px}.enterprise-card .capacity{padding:17px 0}.enterprise-card>.category-icon{margin-bottom:17px}.banner{border-radius:12px;font-size:12px;line-height:1.6;background:#f4ead4;border-color:#e4d4ae;color:#8c7144}.notice{padding:19px 0;border-color:#e8eadf}.notice p{font-size:13px;line-height:1.65}.notice small{font-size:10px}.notice>.icon{width:31px;height:31px;padding:7px;border-radius:50%;background:#eef0e2;flex-shrink:0}
.fieldbook-auth{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;background:#faf9f3}.auth-landscape{background:#e9ecdb;padding:45px 58px;display:flex;flex-direction:column;position:relative}.auth-landscape .brand{color:#334735}.auth-landscape .brand small{font-size:9px}.auth-landscape-copy{margin-top:auto;padding-top:65px;max-width:490px}.auth-landscape-copy .eyebrow{color:#7b895f;letter-spacing:1.8px;font-size:10px}.auth-landscape-copy h1{font-size:46px;font-weight:550;letter-spacing:-2px;line-height:1.13;margin:17px 0}.auth-landscape-copy p{font-size:14px;line-height:1.8;max-width:330px;color:#6c785f}.neighbourhood-art{width:100%;max-width:520px;margin:20px 0 25px;display:block;border-radius:18px}.auth-landscape .gie{margin-top:auto;color:#55634b;padding-top:24px}.auth-landscape .gie strong{font-size:9px;letter-spacing:1px}.auth-landscape .gie small{font-size:10px}.auth-landscape .gie img{width:33px;height:33px}.auth-main{background:#faf9f3;padding:46px}.auth-box{max-width:365px}.auth-box h2{font-size:31px;font-weight:600;letter-spacing:-1px;margin:10px 0}.auth-box>.eyebrow{font-size:10px;letter-spacing:1.5px;color:#7d886e}.auth-box>p{font-size:13px;line-height:1.7;margin-bottom:27px}.auth-box form{gap:17px}.auth-box label{font-size:12px}.auth-box input{min-height:50px}.auth-box form>.btn{margin-top:7px;min-height:49px}.auth-help{display:flex;align-items:center;justify-content:space-between;font-size:12px}.auth-help a{color:#69765f;text-decoration:none}.auth-register-prompt{border-top:1px solid var(--line);padding-top:23px;margin-top:29px;font-size:12px;text-align:center;color:#77816e}.auth-register-prompt .link-btn{margin-left:4px}.auth-footer{font-size:11px}.auth-register{max-width:600px}.auth-register h2{font-size:28px}
.password-field{display:flex;position:relative}.password-field input{padding-right:52px}.password-toggle{position:absolute;right:6px;top:5px;width:41px;height:40px;background:transparent;border:0;color:#798772;display:grid;place-items:center}.password-toggle .icon{width:19px;height:19px}.password-toggle:focus-visible{outline-offset:0}
.notice.unread>svg{background:#e0e8cd;color:#5c7844}.notice.unread p{font-weight:550}.programme-card .network-bins{display:flex;gap:5px;margin-bottom:13px}.network-bins i{width:10px;height:15px;border-radius:2px 2px 3px 3px;background:#91a574}.network-bins i:nth-child(2){background:#91aebb}.network-bins i:nth-child(3){background:#c8a36a}
.boot{background:var(--paper);gap:10px;min-height:100dvh}.boot .boot-mark{width:88px;height:88px;display:grid;place-items:center;background:#fffef8;border:1px solid #dfe3d2;border-radius:27px;margin-bottom:16px}.boot .boot-mark img{width:66px;height:66px;object-fit:contain}.boot h2{font-size:24px;font-weight:600;letter-spacing:-1px}.boot p{font-size:12px;color:#78816f;max-width:300px;text-align:center}.bin-loader{display:flex;gap:6px;height:23px;align-items:center;margin:20px auto}.bin-loader i{width:9px;height:14px;border-radius:2px 2px 4px 4px;background:#91a574;animation:bin-pulse 1.2s ease-in-out infinite}.bin-loader i:nth-child(2){background:#91aebb;animation-delay:.16s}.bin-loader i:nth-child(3){background:#c8a36a;animation-delay:.32s}@keyframes bin-pulse{0%,70%,100%{transform:translateY(0);opacity:.5}35%{transform:translateY(-6px);opacity:1}}
.button-spinner{width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-shell{position:fixed;top:0;left:0;right:0;height:3px;z-index:1100;overflow:hidden;pointer-events:none}.loading-shell:after{content:"";position:absolute;width:30%;height:3px;background:#a3b481;animation:loading-progress 1.1s ease-in-out infinite}@keyframes loading-progress{from{left:-30%}to{left:100%}}.view-enter{animation:view-in .22s ease-out}@keyframes view-in{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:none}}
.empty{padding:42px 24px 44px;font-size:12px;max-width:430px;margin:auto;line-height:1.7}.empty h3{font-size:17px;font-weight:600;margin:10px 0 5px}.empty-graphic{width:76px;height:76px;border-radius:24px;display:grid;place-items:center;margin:0 auto 14px;background:#eef0e3}.empty-graphic .icon{width:30px;height:30px;color:#849776}.empty .btn{margin-top:16px;font-size:12px}.error{border-radius:11px;border:1px solid #e9d3c8;background:#f8ede6;color:#9b5744;font-size:12px;line-height:1.6}
dialog{border-radius:21px;background:#fffef9;box-shadow:0 24px 100px #253e3033;width:min(570px,calc(100% - 30px))}dialog::backdrop{background:#1f2d2566;backdrop-filter:blur(4px)}.dialog-head{padding:21px 24px}.dialog-head h2{font-size:20px}.dialog-body{padding:23px 24px}.dialog-body .description{font-size:12px;line-height:1.7}.dialog-head .icon-btn{width:33px;height:33px}.upload{border:1.5px dashed #bfcdb0;background:#f1f4e8;padding:28px 20px;border-radius:16px;min-height:165px;cursor:pointer;position:relative}.upload>span{font-weight:600;font-size:14px}.upload input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;padding:0;left:50%;top:50%}.upload:focus-within{outline:3px solid #aec08c;outline-offset:3px}.upload .icon{width:33px;height:33px}.upload small{font-size:10px}.upload img{max-height:220px}.photo-hint{font-size:10px;line-height:1.6}.report-category{display:flex;gap:12px;align-items:center;background:#eef0e3;border-radius:12px;padding:13px;margin-bottom:18px}.report-category h3{font-size:14px}.report-category p{font-size:11px;color:#78816f}.sheet-steps{display:flex;gap:16px;font-size:10px;color:#839277;margin-bottom:20px}.sheet-steps b{color:#426340}.sheet-steps span{display:flex;align-items:center;gap:5px}.sheet-steps i{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#e9eddf;font-style:normal}
.home-welcome{background:transparent;color:var(--ink);padding:0 0 22px;border-radius:0;border-bottom:1px solid var(--line);margin-bottom:23px;box-shadow:none}.home-welcome .eyebrow{color:#8a937c;font-size:10px;letter-spacing:1.1px}.home-welcome h1{font-size:33px;font-weight:550;margin-top:7px}.home-welcome p{font-size:13px;color:#7b8475;max-width:none;margin-top:8px}.home-welcome>svg{display:none}.home-summary{display:flex;gap:12px;margin-bottom:27px}.home-summary>div{flex:1;border-radius:12px;background:#e9ecdd;border:1px solid #dde1ce;padding:15px}.home-summary strong{font-size:24px;font-weight:550;display:block}.home-summary small{display:block;margin-top:4px;font-size:10px;color:#748367}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:20px 0 13px}.section-heading h2{font-size:17px;font-weight:600}.section-heading span{font-size:11px;color:#7d8576}.bin-card{border-top:0;border-radius:17px;background:#eef0e3;border-color:#dfe4d2;padding:23px;position:relative;overflow:hidden}.bin-card.recyclable{background:#edf1f2;border-color:#dce5e6}.bin-card.residual{background:#f3efe5;border-color:#e5dfd0}.bin-card h2{font-size:22px;font-weight:600}.bin-card p{font-size:12px;line-height:1.6;min-height:0}.bin-card .category-icon{display:none}.bin-art{width:87px;height:108px;display:block;margin-bottom:20px;color:#6e8857}.bin-card.recyclable .bin-art{color:#7596a7}.bin-card.residual .bin-art{color:#b79a66}.bin-card .bin-volume{font-size:10px;letter-spacing:.1px;margin-top:12px}.bin-card .btn{min-height:45px;background:#fffef7;border:1px solid #cad5ba;color:#42603a;font-size:12px;justify-content:space-between}.bin-card.recyclable .btn{border-color:#c9d8dc;color:#547481}.bin-card.residual .btn{border-color:#ded2b8;color:#917741}.bin-card .tag{margin:8px 0 17px;background:#ffffff9c}.home-footnote{font-size:10px;text-align:center;color:#929a87;margin-top:22px}.mobile-tabs,.mobile-brand{display:none}
.report-cards{display:grid;gap:11px}.report-row{background:#fffef9;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;gap:13px;align-items:center;cursor:pointer;color:var(--ink);text-align:left;width:100%}.report-row-body{flex:1;min-width:0}.report-row h3{font-size:14px;font-weight:600;margin-bottom:5px}.report-row small{font-size:10px;color:#7d8775}.report-row .tag{display:inline-flex;margin-top:9px}.report-row>.icon{width:16px;color:#8f9b86}.account-card{padding:24px}.account-avatar{width:62px;height:62px;background:#e2e8ce;border-radius:20px;display:grid;place-items:center;font-size:22px;font-weight:650;margin-bottom:16px;color:#536746}.account-card h2{font-size:23px}.account-card>p{font-size:12px;color:#828c77;margin-top:6px;word-break:break-word}.account-detail{padding:17px 0;border-bottom:1px solid var(--line)}.account-detail small{display:block;color:#8b947f;font-size:10px;margin-bottom:6px}.account-detail p{font-size:13px;line-height:1.5}.account-card .btn{margin-top:20px}.account-help{margin:18px 0}.account-help summary{cursor:pointer;font-size:13px;font-weight:600;padding:7px 0}.account-help p{font-size:12px;line-height:1.75;color:#75816b;padding-top:8px}.registration-step{border:0;padding:0;display:grid;gap:16px;min-width:0}.registration-step[hidden]{display:none}.registration-progress{display:flex;align-items:center;gap:8px;color:#8a957b;font-size:10px;letter-spacing:1px;margin:0 0 23px}.registration-progress span{height:3px;flex:1;background:#e1e6d4;border-radius:2px}.registration-progress span.active{background:#8ca26b}.registration-map{height:220px;border-radius:14px;border:1px solid var(--line);margin-top:8px}.location-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.location-state{font-size:11px;color:#7a886e}.registration-map-hint{font-size:11px;line-height:1.6;color:#78836b}.registration-actions{display:flex;gap:10px}.registration-actions>.btn{flex:1}.connection-card{max-width:360px;padding:25px;line-height:1.6}.connection-card .btn{margin-top:18px}
#toast{background:#293f31;border-radius:100px;padding:13px 23px;font-size:12px;bottom:24px;box-shadow:0 5px 25px #253e301a;line-height:1.6}.mobile-auth{background:var(--paper)}
@media(min-width:1600px){.auth-landscape{padding:55px 90px}.auth-landscape-copy h1{font-size:54px}.neighbourhood-art{max-width:620px}}
@media(max-width:1100px) and (min-width:701px){.sidebar{width:210px}.shell{grid-template-columns:210px minmax(0,1fr)}.content{padding:26px 23px}.auth-landscape{padding:35px}.auth-landscape-copy h1{font-size:38px}.auth-main{padding:30px}}
@media(max-width:700px){
 .fieldbook-auth{display:block}.auth-landscape{display:none}.auth-main{background:var(--paper)}.shell{display:block}.sidebar{width:244px}.content{padding:24px 18px 34px}.page-head h1{font-size:26px}.page-head p{font-size:12px}.head-actions .btn{font-size:11px}.topbar{height:66px;padding:0 17px}.panel-header{padding:18px}.panel-body{padding:0 18px 18px}.stat{padding:16px}.stat strong{font-size:28px}.stat small{font-size:9px}.stats{gap:10px}.filters{padding:9px}.footer{font-size:9px}.map.large{height:58vh;min-height:330px}
 .mobile-auth{min-height:100dvh;padding:calc(25px + env(safe-area-inset-top)) 24px calc(22px + env(safe-area-inset-bottom));display:flex;flex-direction:column;max-width:530px;margin:auto}.mobile-auth-mark{gap:9px;font-family:inherit;font-size:22px;font-weight:650;line-height:1.2;letter-spacing:-.8px;display:flex;align-items:center}.mobile-auth-mark img{width:37px;height:37px;border-radius:11px;padding:4px;background:#fffef8}.mobile-auth-mark small{font-size:9px;display:block;letter-spacing:.9px;color:#889579;margin-top:3px}.mobile-auth .neighbourhood-art{margin:27px 0 22px;max-height:160px;object-fit:cover;border-radius:16px;width:100%}.mobile-auth-copy{margin-top:0}.mobile-auth-copy .eyebrow{font-size:9px;letter-spacing:1.7px;color:#84936e}.mobile-auth-copy h1{font-size:31px;font-weight:600;line-height:1.2;letter-spacing:-1.3px;margin:9px 0}.mobile-auth-copy p{font-size:12px;line-height:1.6;margin:8px 0 0;max-width:none;color:#838e76}.mobile-auth-form{display:grid;gap:15px;margin-top:23px}.mobile-auth-form label{font-size:11px;font-weight:550;gap:7px;color:#5b6852}.mobile-auth-form input,.mobile-auth-form select{min-height:49px;font-size:15px;border-radius:11px;background:#fffef8;border-color:#d7dfcb;padding:12px 14px}.mobile-auth-form .password-field input{padding-right:52px}.mobile-auth-form .btn{min-height:49px;border-radius:11px;font-size:13px;margin-top:3px}.mobile-auth-form .auth-help{font-size:11px;margin-top:-2px}.mobile-auth-register{margin-top:23px;padding:17px 0 0;border-color:#dfe4d3;font-size:11px}.mobile-auth-register .link-btn{font-size:12px;display:inline-block;margin:0 0 0 4px}.mobile-auth-footer{margin-top:auto;padding-top:27px;font-size:9px;color:#94a086}.mobile-auth-footer-brand{display:inline-flex;align-items:center;gap:6px}.mobile-auth-footer-brand img{width:23px;height:23px;border-radius:6px;object-fit:contain;background:#fff;padding:2px}.mobile-register .mobile-auth-copy{margin-top:27px}.mobile-register .mobile-auth-copy h1{font-size:27px}.mobile-register .mobile-auth-form{margin-top:24px;gap:16px}.mobile-consent{font-size:10px!important;line-height:1.6;color:#7b876f!important}.mobile-consent input{min-height:18px!important;width:18px!important;flex-shrink:0}.mobile-back{border:0;background:transparent;font-size:11px;margin-top:15px;color:#75836a;min-height:44px}
 .household-app,.household-app .main{background:var(--paper)}.household-app .topbar{height:calc(66px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 18px 0;background:#f5f4ecef;backdrop-filter:blur(16px);border-bottom:1px solid #e4e6d8}.household-app .mobile-menu,.household-app #language,.household-app .breadcrumb,.household-app .user-info,.household-app .avatar{display:none}.mobile-brand{display:block}.mobile-brand .brand{gap:8px}.mobile-brand .brand img{width:31px;height:31px;padding:3px;border-radius:10px}.mobile-brand .brand b{font-size:18px}.mobile-brand .brand small{font-size:8px;letter-spacing:.8px;color:#87957a}.household-app .topbar .icon-btn{width:33px;height:33px;background:transparent;border-color:#dfe4d5}.household-app .content{padding:25px 19px calc(94px + env(safe-area-inset-bottom))}.household-app .footer{display:none}.household-app .home-welcome{padding:0 0 21px;background:transparent;box-shadow:none;border-radius:0;margin-bottom:18px}.household-app .home-welcome h1{font-size:31px;letter-spacing:-1.2px}.household-app .home-welcome .eyebrow{font-size:9px}.household-app .home-welcome p{font-size:12px;line-height:1.5;color:#7a876c}.household-app .home-welcome p:after{content:none}.home-summary{gap:9px;margin-bottom:25px}.home-summary>div{padding:13px 15px}.home-summary strong{font-size:24px}.home-summary small{font-size:9px}.section-heading{margin:20px 0 14px}.section-heading h2{font-size:17px}.section-heading span{font-size:10px}.household-app .cards{gap:13px}.household-app .bin-card{display:grid;grid-template-columns:1fr 75px;padding:19px;border-top:0;gap:0 14px;box-shadow:none;border-radius:17px;background:#eef0e3}.household-app .bin-card.recyclable{background:#edf1f2}.household-app .bin-card.residual{background:#f3efe5}.household-app .bin-card h2{font-size:19px;grid-column:1;grid-row:1}.household-app .bin-card p{font-size:11px;grid-column:1;grid-row:2;margin:7px 0 10px;line-height:1.6;color:#78866a}.household-app .bin-card .bin-art{grid-column:2;grid-row:1/5;align-self:center;width:66px;height:83px;margin:0;justify-self:center}.household-app .bin-card .bin-volume{grid-column:1;grid-row:3;font-size:9px;margin:0 0 8px}.household-app .bin-card .tag{grid-column:1;grid-row:4;justify-self:start;margin:0 0 14px;font-size:9px;padding:4px 9px}.household-app .bin-card .btn{grid-column:1/-1;min-height:42px;border-radius:10px;font-size:12px}.household-app .bin-card .category-icon{display:none}.household-app .panel{box-shadow:none;border-radius:16px}.household-app .panel-header{padding:18px}.household-app .panel-body{padding:0 18px 18px}.household-app .callout{display:block}.household-app .mobile-tabs{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:50;height:calc(73px + env(safe-area-inset-bottom));padding:7px 14px env(safe-area-inset-bottom);background:#fffef9f5;backdrop-filter:blur(18px);border-top:1px solid #e2e5d8;justify-content:space-around}.mobile-tab{border:0;background:transparent;min-width:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:9px;font-weight:550;color:#a0a98e;padding:7px 12px;border-radius:13px}.mobile-tab-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.mobile-tab[aria-current=page]{color:#4c6d3e;background:#edf1e2}.mobile-tab:hover{color:#4c6d3e}.household-app .page-head h1{font-size:27px}.household-app .filters{margin-bottom:18px}.household-app .filters select{font-size:11px}.household-app .filters input{min-height:41px;font-size:12px}body:has(.household-app) dialog{margin:auto 0 0;max-width:none;width:100%;border-radius:25px 25px 0 0;max-height:90dvh}body:has(.household-app) .dialog-head{padding:23px 22px 18px}body:has(.household-app) .dialog-head h2{font-size:21px}body:has(.household-app) .dialog-body{padding:20px 22px calc(25px + env(safe-area-inset-bottom))}body:has(.household-app) .dialog-body .btn{min-height:47px;font-size:13px}body:has(.household-app) #toast{bottom:calc(88px + env(safe-area-inset-bottom));border-radius:14px;width:max-content;max-width:calc(100% - 32px)}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.bin-loader i{opacity:1}.loading-shell:after{left:0;width:100%}}
.village-workspace{display:grid;grid-template-columns:320px 1fr;overflow:hidden}.village-discovery{padding:24px;min-width:0}.village-admin-map{height:560px;min-width:0}.village-results{max-height:250px;overflow:auto;margin-top:8px}.village-result{width:100%;padding:12px;text-align:left;border:0;border-bottom:1px solid var(--border,#dedfd3);background:transparent;cursor:pointer;color:inherit;display:grid;gap:5px}.village-result:hover,.village-result:focus-visible{background:#edf0df}.village-result small{font-size:11px;color:#687468}.village-result .tag{justify-self:start;font-size:10px}.village-choice{margin-top:20px;padding-top:20px;border-top:1px solid #dedfd3}.village-choice h3{margin-bottom:6px}.village-choice button{margin-top:16px}.registration-map{height:340px}.leaflet-control-layers{font:12px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.leaflet-control-layers label{display:block;margin:0;font-size:12px}.leaflet-control-layers input{width:auto;display:inline;margin-right:5px}.btn:disabled{opacity:.55;cursor:not-allowed}@media(max-width:800px){.village-workspace{grid-template-columns:1fr}.village-admin-map{height:420px}.village-discovery{padding:18px}.village-results{max-height:180px}.registration-map{height:330px}}
.leaflet-control-layers label>div{display:flex;align-items:center;gap:6px;padding:6px 0}.leaflet-control-layers label span{display:inline;font-size:12px}.leaflet-control-layers input[type=radio]{width:14px;height:14px;min-height:0;padding:0;margin:0;border:0;box-shadow:none;display:inline-block;appearance:auto}.leaflet-control-layers-expanded{padding:6px 10px;border-radius:10px}.leaflet-control-attribution{font-size:10px}
