:root{--fg-1:#123226;--fg-2:#4d6b5d;--fg-3:#708c7d;--bg-1:#f5faf6;--bg-2:#eaf5ec;--bg-3:#dff0e3;--surface:#fff;--surface-soft:#ffffffc2;--accent:#16834a;--accent-hover:#0f6d3c;--accent-dark:#063d22;--accent-light:#d9f3df;--lime:#a3e635;--teal:#0d9488;--good:#16834a;--warning:#a16207;--danger:#bd3e3e;--border:#d8e9db;--border-strong:#afcfb6;--radius-sm:.75rem;--radius-md:1rem;--radius-lg:1.25rem;--radius-xl:1.5rem;--shadow-sm:0 2px 8px #185b340f;--shadow:0 12px 32px #185b3417, 0 2px 8px #185b340a;--shadow-lg:0 22px 50px #07492529, 0 5px 16px #185b340f;--font-display:"Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;--font-body:"Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;--font-mono:"DM Mono", ui-monospace, monospace;--eco-leaf:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' viewBox='0 0 56 56'%3E%3Cg fill='none' stroke='%2316834a' stroke-opacity='.07' stroke-width='1.2'%3E%3Cpath d='M7 18c9-1 14 4 14 13-9 1-14-4-14-13Zm14 13c-1-9 4-14 13-14 1 9-4 14-13 14Zm13 10c-1-8 4-13 12-13 1 8-4 13-12 13ZM8 45c7-1 12 3 13 10-7 1-12-3-13-10Z'/%3E%3Cpath d='m10 20 10 10m3-1 9-10m3 19 8-8M10 46l10 7'/%3E%3C/g%3E%3C/svg%3E");--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{background:var(--bg-1);min-width:320px}body{background:var(--bg-1) var(--eco-leaf);min-width:320px;color:var(--fg-1);font:400 1rem/1.6 var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}body::selection{background:var(--accent-light);color:var(--accent-dark)}a{color:var(--teal)}button,input,select,textarea{font:inherit}button,a,label[for],input[type=file]{-webkit-tap-highlight-color:transparent}h1,h2,h3{color:var(--fg-1);font-family:var(--font-display)}h1,h2,h3,p{overflow-wrap:break-word}code{font-family:var(--font-mono);word-break:break-all;font-size:.85em}:focus-visible{outline-offset:3px;outline:3px solid #0d94886b}.page{flex-direction:column;min-height:100vh;display:flex;overflow-x:hidden}.page>main{flex:1}.container{width:100%;max-width:1200px;margin:0 auto;padding-left:clamp(16px,5vw,48px);padding-right:clamp(16px,5vw,48px)}.topbar{z-index:20;-webkit-backdrop-filter:blur(16px)saturate(130%);backdrop-filter:blur(16px)saturate(130%);background:#f5faf6d6;border-bottom:1px solid #afcfb694;position:sticky;top:0;box-shadow:0 3px 18px #185b340d}.topbar-inner{min-height:68px;padding-top:max(0px, env(safe-area-inset-top));justify-content:space-between;align-items:center;gap:16px;display:flex}.topbar nav{align-items:center;gap:4px;display:flex}.topbar nav a:not(.button){border-radius:var(--radius-sm);color:var(--fg-2);padding:9px 12px;font-size:.88rem;font-weight:600;text-decoration:none;transition:background .16s ease-out,color .16s ease-out,transform .16s ease-out}.topbar nav a:not(.button):hover,.topbar nav a[aria-current=page]{background:var(--accent-light);color:var(--accent-dark)}.topbar nav a:not(.button):active{transform:scale(.97)}.brand{color:var(--fg-1);font:800 1.06rem/1 var(--font-display);letter-spacing:.08em;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand svg{border-radius:12px;width:38px;height:38px;transition:transform .18s ease-out;box-shadow:0 4px 10px #16834a33}.brand:hover svg{transform:rotate(-4deg)scale(1.04)}.intro{padding:clamp(32px,6vw,58px) 0 30px}.intro h1{letter-spacing:-.055em;margin:10px 0 12px;font-size:clamp(2rem,4.5vw,3.4rem);line-height:1.06}h1 em{color:var(--accent);font-style:normal}.lead{max-width:640px;color:var(--fg-2);margin:0;font-size:1.02rem;line-height:1.7}.eyebrow,.card-label{color:var(--accent);font:600 .67rem/1.3 var(--font-mono);letter-spacing:.13em;text-transform:uppercase;margin:0}.eyebrow:before{background:var(--lime);content:"";vertical-align:1px;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block;box-shadow:0 0 0 3px #a3e6352e}.footer{padding-top:22px;padding-bottom:max(28px, env(safe-area-inset-bottom));border-top:1px solid var(--border);color:var(--fg-3);flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:64px;font-size:.79rem;display:flex}.grid-2,.grid-3{align-items:start;gap:18px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.stack{gap:18px;margin-top:18px;display:grid}.card,.stat{border-radius:var(--radius-lg);background:var(--surface-soft);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);isolation:isolate;border:1px solid #afcfb6b8;padding:clamp(20px,3vw,28px);position:relative;overflow:hidden}.card:after,.stat:after{z-index:-1;content:"";pointer-events:none;background:radial-gradient(circle,#a3e6351a,#0000 68%);border-radius:50%;width:130px;height:130px;position:absolute;bottom:-45px;right:-30px}.card h2{letter-spacing:-.03em;margin:8px 0 7px;font-size:1.3rem;line-height:1.22}.card>p:not(.card-label){color:var(--fg-2);margin:0 0 5px}.stats{margin-bottom:18px}.stats .stat:first-child{background:linear-gradient(145deg,#f4fff5,#e3f6e7);border-color:#16834a52}.stat strong{color:var(--accent-dark);font:800 clamp(1.9rem, 4vw, 2.65rem) / 1.1 var(--font-display);letter-spacing:-.045em;margin:11px 0 2px;display:block}.stat strong small{color:var(--fg-2);font:600 1rem var(--font-body);letter-spacing:0}.stat span{color:var(--fg-2);font-size:.87rem}.empty{border:1px dashed var(--border-strong);border-radius:var(--radius-md);color:var(--fg-2);text-align:center;background:#eaf5ecbf;padding:34px 16px}.empty:before{border:2px solid var(--border-strong);content:"";opacity:.75;border-radius:50%;width:28px;height:28px;margin:0 auto 9px;display:block}.form{gap:15px;margin:19px 0;display:grid}.form+.form{border-top:1px solid var(--border);padding-top:19px}label{color:var(--fg-2);gap:7px;font-size:.84rem;font-weight:650;display:grid}input:not([type=checkbox]):not([type=range]):not([type=file]),select,textarea{border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;min-height:46px;color:var(--fg-1);background:#ffffffe0;outline:0 solid #0000;padding:9px 13px;transition:border-color .16s ease-out,box-shadow .16s ease-out,background .16s ease-out}textarea{resize:vertical;min-height:100px}input::placeholder,textarea::placeholder{color:#8aa294}input:focus,select:focus,textarea:focus{border-color:var(--teal);background:#fff;box-shadow:0 0 0 4px #0d94881f}input[type=range],input[type=checkbox]{accent-color:var(--accent)}input[type=range]{width:100%}label.check{min-height:44px;color:var(--fg-1);align-items:center;gap:10px;display:flex}input[type=checkbox]{width:18px;height:18px}.row{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.row>label{flex:140px}.button{border:1px solid var(--accent);border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--accent), var(--accent-hover));color:#fff;cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 18px;font-weight:750;text-decoration:none;transition:background .16s ease-out,border-color .16s ease-out,box-shadow .16s ease-out,transform .16s ease-out;display:inline-flex;box-shadow:0 5px 12px #16834a2e}.button:hover{border-color:var(--accent-dark);background:linear-gradient(135deg, #1a9756, var(--accent-dark));transform:translateY(-1px);box-shadow:0 8px 18px #16834a40}.button:active{transform:translateY(1px)scale(.98);box-shadow:0 3px 8px #16834a26}.button.secondary{border-color:var(--teal);color:var(--teal);background:#ffffffb3;box-shadow:0 3px 10px #0d94881a}.button.secondary:hover{color:#08746b;background:#e7faf7}.button.danger{border-color:var(--danger);color:var(--danger);background:#ffffffbd;box-shadow:0 3px 10px #bd3e3e14}.button.danger:hover{background:#fff0f0}.button.ghost{min-height:38px;color:var(--teal);box-shadow:none;background:0 0;border-color:#0000;padding:0 12px}.button.ghost:hover{background:var(--accent-light);box-shadow:none}.button.small{min-height:38px;padding:0 12px;font-size:.82rem}.button:disabled{opacity:.52;cursor:not-allowed;box-shadow:none;transform:none}.actions{flex-wrap:wrap;gap:10px;display:flex}.actions>.button{flex:160px}.notice{border-radius:var(--radius-md);color:#76500a;background:#fff9e8;border:1px solid #efd79a;margin-bottom:18px;padding:13px 16px 13px 42px;position:relative}.notice:before{content:"!";width:14px;height:14px;font:700 .61rem/11px var(--font-mono);text-align:center;border:2px solid;border-radius:50%;position:absolute;top:15px;left:17px}.notice.success{color:#145c35;background:#ecfaef;border-color:#b7ddc1}.notice.success:before{content:"✓";border:0;font-size:.88rem}.list{margin:12px 0 0;padding:0;list-style:none}.list li{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:15px 0;display:flex}.list li>div{gap:2px;min-width:0;display:grid}.list li>div>span{overflow-wrap:anywhere;color:var(--fg-3);font-size:.82rem}.list li.block{align-items:stretch;display:grid}.status{color:var(--good);white-space:nowrap;background:#e2f6e8;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.status:before{width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in srgb, currentColor 15%, transparent);content:"";background:currentColor;border-radius:50%}.status-ready_for_pickup,.status-picked_up,.status-awaiting_weighing,.status-verifying,.status-pending{color:var(--warning);background:#fff4d8}.status-picked_up,.status-verifying{color:#16669b;background:#e2f2ff}.status-rejected{color:var(--danger);background:#ffe7e7}.bottom-nav,.bottom-nav-spacer{display:none}.qr-card{border:1px solid var(--border);border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-sm);background:#fff;justify-items:center;gap:9px;margin:18px 0;padding:22px;display:grid}.qr-card svg{border:1px solid var(--border);border-radius:10px;max-width:100%;padding:8px}.scanner-box{border:1px solid var(--fg-1);border-radius:var(--radius-md);background:var(--fg-1);min-height:120px;margin:15px 0;overflow:hidden}.photo-row{grid-template-columns:1fr 1fr;gap:12px;margin:17px 0;display:grid}.photo-input{border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--bg-2);min-height:102px;color:var(--fg-1);cursor:pointer;padding:15px;transition:border-color .16s ease-out,background .16s ease-out,transform .16s ease-out}.photo-input:hover{border-color:var(--accent);background:var(--accent-light);transform:translateY(-1px)}.photo-input input[type=file]{width:100%;margin-top:8px;font-size:.75rem;display:block}.photo-input span{color:var(--fg-3);font-size:.77rem}.photo-input.done{border-style:solid;border-color:var(--accent);background:#edfaef}.panel{border-radius:var(--radius-md);background:linear-gradient(145deg,#f0fbf2,#e2f4e6);border:1px solid #16834a3b;gap:8px;margin:17px 0;padding:20px;display:grid;box-shadow:inset 0 1px #fffc}.panel small{color:var(--fg-3)}.panel .points{color:var(--accent);font:800 2.25rem/1.1 var(--font-display);letter-spacing:-.04em}.filters{border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff9e;flex-wrap:wrap;gap:14px;margin-bottom:20px;padding:15px;display:flex}.filters label{flex:0 240px}.chart-area{height:240px;margin:18px 0 8px;position:relative}table{border-collapse:collapse;width:100%;font-size:.84rem}caption{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}th,td{border-top:1px solid var(--border);text-align:left;padding:11px 7px}th{color:var(--fg-3);font:600 .66rem var(--font-mono);letter-spacing:.1em;text-transform:uppercase}td:not(:first-child),th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.is-loading .stat strong,.is-loading .chart-area{opacity:.58}.is-loading .stat strong{color:#0000;background:linear-gradient(90deg,#e2f0e4 25%,#f3faf3 50%,#e2f0e4 75%) 0 0/220% 100%;border-radius:8px;min-width:76px;min-height:38px;animation:1.4s ease-in-out infinite skeleton;position:relative;overflow:hidden}@keyframes skeleton{0%{background-position:180% 0}to{background-position:-40% 0}}.hero{color:#fff;background:linear-gradient(130deg, #052e16fa, #166534f0 58%, #16834ae8), var(--eco-leaf);isolation:isolate;margin:0 calc(-1*clamp(16px,5vw,48px));padding:clamp(62px,10vw,112px) clamp(16px,5vw,48px) clamp(50px,7vw,76px);position:relative;overflow:hidden}.hero:before{z-index:-1;content:"";border:1px solid #a3e6353d;border-radius:50%;width:440px;height:440px;position:absolute;bottom:-38%;right:-10%;box-shadow:0 0 0 42px #a3e63509,0 0 0 84px #a3e63506}.hero .eyebrow,.hero h1,.hero .lead{color:#fff}.hero .eyebrow{color:#c3f37c}.hero h1{color:#fff;letter-spacing:-.065em;max-width:900px;margin:16px 0 20px;font-size:clamp(2.65rem,7vw,5.35rem);line-height:1.01}.hero h1 em{color:#b8ee66}.hero .lead{color:#ffffffc7;max-width:630px}.hero .actions{margin-top:32px}.hero .actions>.button{color:#163a24;background:#b8ee66;border-color:#b8ee66;flex:none;box-shadow:0 8px 22px #0000002e}.hero .actions>.button:hover{background:#d4f994;border-color:#d4f994}.flow{counter-reset:step;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 58px;padding:0;list-style:none;display:grid}.flow li{border-top:3px solid var(--border-strong);counter-increment:step;background:#eaf5eccc;min-height:138px;padding:19px 17px;position:relative}.flow li:first-child{border-color:var(--accent);background:var(--accent-light)}.flow li:before{color:var(--accent);content:"0" counter(step);font:600 .72rem var(--font-mono);display:block}.flow strong{margin-top:8px;font-size:.92rem;display:block}.flow span{color:var(--fg-2);margin-top:4px;font-size:.82rem;line-height:1.5;display:block}.section-title{letter-spacing:-.04em;margin:0 0 18px;font-size:1.65rem}.auth-main{background:linear-gradient(150deg, #052e1614, transparent 55%), var(--eco-leaf);flex:1;place-items:center;min-height:calc(100vh - 68px);padding:40px 16px;display:grid}.auth-card{border-radius:var(--radius-xl);width:min(100%,460px);box-shadow:var(--shadow-lg);background:#ffffffde;border-color:#afcfb6b3;padding:clamp(24px,5vw,40px)}.auth-card h1{letter-spacing:-.05em;margin:10px 0 8px;font-size:clamp(2rem,6vw,2.55rem)}.auth-card>p:not(.eyebrow):not(.hint){color:var(--fg-2)}.auth-card .button{width:100%}.hint{color:var(--fg-3);margin:0;font-size:.78rem}.app-header{background:var(--eco-leaf), radial-gradient(circle at 85% 0%, #a3e63538, transparent 45%), linear-gradient(150deg, var(--accent-dark), var(--accent) 120%);color:#fff;padding-bottom:56px;position:relative;overflow:hidden}.app-header-pattern,.landing-hero-pattern{color:#ffffff12;pointer-events:none;position:absolute;top:-40px;right:-50px}.app-header-top{justify-content:space-between;align-items:center;min-height:72px;display:flex;position:relative}.brand-light{color:#fff}.brand-light svg{box-shadow:0 4px 14px #00000040}.header-logout{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff47;border-radius:999px;align-items:center;gap:7px;min-height:44px;padding:0 15px;font-weight:600;transition:background .16s ease-out;display:inline-flex}.header-logout:hover{background:#fff3}.app-header-copy{padding-top:clamp(14px,3vw,30px);position:relative}.app-eyebrow,.section-eyebrow,.feature-label{color:var(--lime);font:600 .7rem/1.3 var(--font-mono);letter-spacing:.13em;text-transform:uppercase;margin:0}.app-header h1{color:#fff;letter-spacing:-.045em;max-width:760px;margin:10px 0;font-size:clamp(1.9rem,4.5vw,3.1rem);line-height:1.08}.app-header h1 em,.landing-hero h1 em{color:var(--lime);font-style:normal}.app-lead{color:#fffc;max-width:640px;margin:0;line-height:1.65}.header-wave{background:var(--bg-1);border-radius:50% 50% 0 0/100% 100% 0 0;height:34px;position:absolute;bottom:-1px;left:0;right:0}.app-main{margin-top:-18px;padding-top:0;position:relative}.stat-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);gap:4px;padding:20px;display:grid}.stat-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.stat-card-label{color:var(--fg-3);font:600 .68rem/1.3 var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.stat-card-icon,.icon-bubble,.list-icon,.section-head-icon,.flow-icon,.feature-icon,.material-icon,.education-rule-icon,.collector-overview-icon,.collector-avatar,.collector-pickup-avatar{background:var(--accent-light);width:40px;height:40px;color:var(--accent);border-radius:12px;flex:none;place-items:center;display:grid}.stat-card-value{color:var(--accent-dark);font:800 clamp(1.7rem, 4vw, 2.3rem) / 1.1 var(--font-display);letter-spacing:-.045em}.stat-card-detail{color:var(--fg-2);font-size:.85rem}.stat-card-green{background:linear-gradient(145deg,#f4fff5,#e3f6e7);border-color:#16834a4d}.stat-card-amber .stat-card-icon{color:var(--warning);background:#fff4d8}.stat-card-teal .stat-card-icon{color:var(--teal);background:#d5f5f1}.empty-state{border:1px dashed var(--border-strong);border-radius:var(--radius-md);text-align:center;background:#eaf5ec99;justify-items:center;gap:6px;margin-top:12px;padding:30px 18px;display:grid}.empty-state-icon{background:var(--surface);width:56px;height:56px;color:var(--accent);box-shadow:var(--shadow-sm);border-radius:50%;place-items:center;margin-bottom:4px;display:grid}.empty-state p{max-width:340px;color:var(--fg-2);margin:0;font-size:.88rem}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.stats.grid-2,.stats.grid-4{gap:16px}.section-head,.card-heading-row,.collector-card-heading{align-items:flex-start;gap:14px;display:flex}.section-head>div,.card-heading-row>div,.collector-card-heading>div{flex:1;min-width:0}.section-head h2,.card-heading-row h2,.collector-card-heading h2{margin-top:4px}.card-highlight{background:linear-gradient(145deg,#fffdf4,#fff6dc);border-color:#efd79a}.count-badge,.count-chip,.collector-count{background:var(--accent-dark);color:#fff;min-width:34px;height:34px;font:700 .8rem var(--font-mono);border-radius:999px;flex:none;place-items:center;padding:0 12px;display:inline-grid}.count-chip{background:var(--accent-light);color:var(--accent-dark)}.list-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.list-head>div{gap:2px;display:grid}.list-head span{color:var(--fg-3);font-size:.82rem}.list-actions{flex-wrap:wrap;gap:8px;display:flex}:is(.list li:has(>.list-icon),.list li:has(>.collector-pickup-avatar)){justify-content:flex-start}.deposit-list-main{flex:1}.deposit-list-meta{justify-items:end;gap:6px;display:grid}.text-button,.back-link{min-height:32px;color:var(--teal);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.text-button:hover,.back-link:hover{text-decoration:underline}.form-hint{color:var(--fg-3);margin:0;font-size:.82rem}.form-label{align-items:center;gap:6px;display:inline-flex}.timeline{margin:14px 0 0;padding:0;list-style:none}.timeline li{border-left:2px solid var(--border);gap:2px;margin-left:6px;padding:0 0 16px 24px;display:grid;position:relative}.timeline li:before{border:2px solid var(--bg-1);background:var(--accent);content:"";border-radius:50%;width:12px;height:12px;position:absolute;top:4px;left:-7px}.timeline span{color:var(--fg-3);font-size:.8rem}.status-approved,.status-accepted{background:var(--accent-light);color:var(--accent)}.button.lime{border-color:var(--lime);background:var(--lime);color:var(--accent-dark);box-shadow:0 8px 22px #0000002e}.button.lime:hover{background:#bef264;border-color:#bef264}.button.outline-light{color:#fff;background:0 0;border-color:#fff6}.button.outline-light:hover{background:#ffffff1f}.landing-hero{background:var(--eco-leaf), radial-gradient(circle at 80% 10%, #a3e63540, transparent 45%), linear-gradient(155deg, #042a17, var(--accent-dark) 45%, var(--accent));color:#fff;padding-bottom:80px;position:relative;overflow:hidden}.landing-nav{justify-content:space-between;align-items:center;min-height:76px;display:flex;position:relative}.landing-nav-links{align-items:center;gap:18px;display:flex}.landing-nav-links>a:not(.button){color:#ffffffd9;font-weight:600;text-decoration:none}.landing-hero-body{grid-template-columns:1.25fr 1fr;align-items:center;gap:48px;padding-top:clamp(28px,6vw,72px);display:grid;position:relative}.landing-badge{color:var(--lime);background:#ffffff14;border:1px solid #fff3;border-radius:999px;align-items:center;gap:8px;margin:0;padding:7px 14px;font-size:.8rem;font-weight:600;display:inline-flex}.landing-hero h1{color:#fff;letter-spacing:-.06em;margin:20px 0 18px;font-size:clamp(2.4rem,6vw,4.6rem);line-height:1.03}.landing-lead{color:#fffc;max-width:560px;margin:0;font-size:1.05rem;line-height:1.7}.landing-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.landing-preview{gap:14px;display:grid}.preview-card{border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1a;border:1px solid #ffffff29;gap:4px;padding:22px;display:grid}.preview-label{color:#ffffffb3;font:600 .7rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.preview-value{color:#fff;font:800 2.8rem/1.05 var(--font-display);letter-spacing:-.05em}.preview-detail{color:var(--lime);font-size:.88rem}.preview-track{gap:12px}.preview-step{color:#fff9;align-items:center;gap:12px;font-size:.9rem;display:flex}.preview-dot{border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.preview-step.done{color:#fff}.preview-step.done .preview-dot{border-color:var(--lime);background:var(--lime);color:var(--accent-dark)}.landing-section{padding-top:clamp(48px,8vw,88px)}.section-eyebrow{color:var(--accent)}.section-heading{letter-spacing:-.045em;max-width:640px;margin:10px 0 28px;font-size:clamp(1.7rem,3.5vw,2.5rem);line-height:1.12}.flow-grid,.feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.flow-card,.feature-card,.role-card{text-align:center;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);align-content:start;justify-items:center;gap:10px;padding:28px 22px;transition:transform .18s ease-out,box-shadow .18s ease-out;display:grid;position:relative}.flow-card:hover,.feature-card:hover,.role-card:hover{box-shadow:var(--shadow);border-color:#16834a59;transform:translateY(-4px)}.flow-card:hover .flow-icon,.feature-card:hover .feature-icon,.role-card:hover .feature-icon{background:var(--accent);color:#fff;transform:scale(1.06)}@supports (animation-timeline:view()){.flow-card,.feature-card,.role-card,.rates-layout>.card,.trust-card,.faq-item,.impact-item{animation:linear both card-rise;animation-timeline:view();animation-range:entry entry 60%}}@keyframes card-rise{0%{opacity:0;transform:translateY(28px)scale(.97)}to{opacity:1;transform:none}}.flow-number{color:var(--border-strong);font:600 .85rem var(--font-mono);position:absolute;top:20px;right:22px}.flow-icon,.feature-icon{border-radius:16px;width:56px;height:56px;transition:background .18s ease-out,color .18s ease-out,transform .18s ease-out}.flow-card strong,.feature-card h3,.role-card h3{color:var(--accent-dark);letter-spacing:-.02em;margin:0;font-size:1.2rem}.flow-card p,.feature-card p:not(.feature-label){color:var(--fg-2);margin:0;font-size:.98rem;line-height:1.6}.feature-label{color:var(--teal);margin-top:6px}.impact-band{background:var(--eco-leaf), linear-gradient(135deg, var(--accent-dark), var(--accent));color:#fff;margin-top:clamp(48px,8vw,88px);padding:44px 0}.impact-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;display:grid}.impact-item{gap:2px;display:grid}.impact-item strong{color:var(--lime);font:800 clamp(2rem, 4vw, 2.8rem) / 1.1 var(--font-display);letter-spacing:-.05em}.impact-label{font-weight:700}.impact-detail{color:#ffffffb8;font-size:.85rem}.cta-card{border-radius:var(--radius-xl);background:var(--eco-leaf), linear-gradient(135deg, var(--accent-dark), #0b5a32);color:#fff;box-shadow:var(--shadow-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:clamp(26px,5vw,44px);display:flex}.cta-card h2{color:#fff;letter-spacing:-.04em;margin:0 0 6px;font-size:clamp(1.5rem,3vw,2rem)}.cta-card p{color:#ffffffc7;margin:0}.landing-section[id]{scroll-margin-top:16px}.section-lead{margin:-12px 0 30px}.trust-card .lead{margin-top:-14px}.landing-nav-toggle{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:#ffffff14;border:1px solid #ffffff4d;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-weight:700;display:none}.landing-nav-links>a:not(.button):hover{color:var(--lime)}.role-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.role-card ul{border-top:1px dashed var(--border);gap:8px;width:100%;margin:4px 0 0;padding:12px 0 0;list-style:none;display:grid}.role-card li{color:var(--fg-2);justify-content:center;gap:8px;font-size:.95rem;line-height:1.45;display:flex}.role-card li svg{color:var(--accent);flex:none;margin-top:3px}.rates-layout{grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}.rate-catalog ul{gap:10px;margin:12px 0;padding:0;list-style:none;display:grid}.rate-catalog li{border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:12px;padding:12px 14px;display:flex}.rate-name{flex:1;font-weight:700}.rate-catalog strong{color:var(--accent);font:800 1.25rem var(--font-display)}.rate-catalog small{color:var(--fg-3);font:600 .75rem var(--font-body,inherit)}.simulator{gap:14px;display:grid}.simulator>label{gap:6px;font-weight:700;display:grid}.simulator select,.simulator input[type=number]{min-height:46px;font-size:16px}.simulator-tiers{border:0;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:0;display:grid}.simulator-tiers legend{margin-bottom:6px;font-weight:700}.simulator-tier{border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;gap:2px;min-height:44px;padding:12px;display:grid}.simulator-tier input{opacity:0;position:absolute}.simulator-tier:focus-within{outline:2px solid var(--accent);outline-offset:2px}.simulator-tier.is-active{border-color:var(--accent);background:var(--accent-light)}.simulator-tier span{color:var(--fg-2);font-size:.8rem}.simulator-result{border-radius:var(--radius-lg);background:var(--eco-leaf), linear-gradient(135deg, var(--accent-dark), var(--accent));color:#fff;gap:2px;padding:18px;display:grid}.simulator-result strong{color:var(--lime);font:800 2.6rem/1.05 var(--font-display);letter-spacing:-.04em}.simulator-result small{color:#ffffffc7}.simulator-note{color:var(--fg-3);margin:0;font-size:.82rem}.trust-card{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-sm);grid-template-columns:1fr 1.3fr;gap:28px;padding:clamp(24px,5vw,44px);display:grid}.trust-list{gap:16px;margin:0;padding:0;list-style:none;display:grid}.trust-list li{gap:14px;display:flex}.trust-list .flow-icon{flex:none;place-items:center;width:42px;height:42px;display:grid}.trust-list p{color:var(--fg-2);margin:2px 0 0;font-size:.9rem}.faq-list{gap:10px;max-width:820px;display:grid}.faq-item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:12px 18px;font-weight:700;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary svg{flex:none;transition:transform .16s ease-out}.faq-item[open] summary svg{transform:rotate(180deg)}.faq-item p{color:var(--fg-2);margin:0;padding:0 18px 16px}.public-footer{color:#ffffffbf;background:#042a17;margin-top:clamp(48px,8vw,88px);padding:44px 0 24px}.public-footer-grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px;display:grid}.public-footer-grid>*{align-content:start;gap:8px;display:grid}.public-footer strong{color:#fff}.public-footer a:not(.brand){color:#ffffffbf;text-decoration:none}.public-footer a:not(.brand):hover{color:var(--lime)}.public-footer p{margin:0;font-size:.9rem}.public-footer-bottom{border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:32px;padding-top:18px;font-size:.82rem;display:flex}@media (width<=1100px){.role-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.rates-layout,.trust-card{grid-template-columns:1fr}.role-grid,.public-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-nav{flex-wrap:wrap}.landing-nav-toggle{display:inline-flex}.landing-nav-links{border-radius:var(--radius-lg);background:#042a17eb;border:1px solid #ffffff29;flex-direction:column;flex-basis:100%;align-items:stretch;gap:4px;margin-bottom:12px;padding:10px;display:none}.landing-nav-links.is-open{display:flex}.landing-nav-links>a:not(.button){align-items:center;min-height:44px;padding:0 10px;display:flex}}@media (width<=520px){.role-grid,.public-footer-grid,.simulator-tiers{grid-template-columns:1fr}}.login-split{grid-template-columns:1.05fr 1fr;min-height:100vh;display:grid}.login-brand{background:var(--eco-leaf), radial-gradient(circle at 80% 10%, #a3e63538, transparent 45%), linear-gradient(155deg, #042a17, var(--accent-dark) 50%, var(--accent));color:#fff;align-items:center;padding:48px clamp(24px,6vw,72px);display:flex;position:relative}.login-brand .brand{color:#fff}.login-brand h1{color:#fff;letter-spacing:-.05em;margin:40px 0 16px;font-size:clamp(2.2rem,4vw,3.4rem);line-height:1.06}.login-brand h1 em{color:var(--lime);font-style:normal}.login-brand p{color:#ffffffc7;max-width:440px}.login-steps{gap:12px;margin:32px 0 0;padding:0;list-style:none;display:grid}.login-steps li{color:#ffffffe6;align-items:center;gap:12px;font-weight:600;display:flex}.login-steps svg{box-sizing:content-box;color:var(--lime);background:#ffffff1a;border-radius:12px;padding:9px}.login-form-area{place-items:center;padding:40px 16px;display:grid}.auth-card .back-link{margin-top:16px}.auth-card h1 em{color:var(--accent);font-style:normal}.education-intro{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.education-intro>div{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm);align-items:center;gap:12px;padding:16px;display:flex}.education-intro>div>div{display:grid}.education-intro span:not(.education-rule-icon){color:var(--fg-2);font-size:.84rem}.material-grid{margin-top:0}.education-block{margin-top:44px}.criteria-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.criteria-card{text-align:center;justify-items:center;gap:8px;display:grid}.criteria-card h3{color:var(--accent-dark);margin:4px 0 0;font-size:1.1rem}.criteria-card p{color:var(--fg-2);margin:0;font-size:.92rem;line-height:1.55}.criteria-score{background:var(--accent-light);color:var(--accent-dark);font:600 .78rem var(--font-mono);border-radius:999px;margin-top:4px;padding:3px 10px}.education-exclusions{grid-template-columns:1.2fr 1fr;align-items:center;gap:24px;display:grid}.education-exclusions h2{margin:4px 0 8px;font-size:1.3rem}.education-exclusions p{color:var(--fg-2);margin:0}.education-exclusions ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.education-exclusions li{border-radius:var(--radius-sm);color:var(--fg-1);background:#fdf1f1;align-items:center;gap:10px;padding:10px 14px;font-size:.92rem;display:flex}.education-exclusions li svg{color:var(--danger);flex:none}@media (width<=900px){.criteria-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.education-exclusions{grid-template-columns:1fr}}@media (width<=520px){.criteria-grid{grid-template-columns:1fr}}.material-card-top{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.material-index{color:var(--border-strong);font:600 1.5rem var(--font-mono)}.material-ready{color:var(--accent);align-items:center;gap:6px;margin-top:10px;font-size:.82rem;font-weight:700;display:inline-flex}.resident-content{margin-top:0}.collector-overview{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;padding:18px 20px;display:flex}.collector-overview>div{align-items:center;gap:14px;display:flex}.collector-overview>div>div{display:grid}.collector-overview span:not(.collector-overview-icon){color:var(--fg-2);font-size:.85rem}.collector-layout{margin-top:0}.collector-step{background:var(--accent-dark);color:#fff;width:40px;height:40px;font:600 .85rem var(--font-mono);border-radius:12px;flex:none;place-items:center;display:grid}.collector-step-accent{background:var(--teal)}.collector-card-intro{color:var(--fg-2);margin:0;font-size:.88rem}.collector-inline-field{gap:8px;display:flex}.collector-inline-field>input{flex:1;min-width:0}.collector-result{margin-top:0}.collector-register{border:1px solid var(--border);border-radius:var(--radius-md);background:#eaf5ec80}.collector-register summary{min-height:48px;color:var(--fg-1);cursor:pointer;justify-content:space-between;align-items:center;padding:0 14px;font-weight:600;list-style:none;display:flex}.collector-register summary::-webkit-details-marker{display:none}.collector-register summary>span{align-items:center;gap:8px;display:inline-flex}.collector-register[open] summary>svg{transform:rotate(180deg)}.collector-register .form{margin:0;padding:0 14px 14px}.collector-divider{background:var(--border);height:1px;margin:20px 0}.collector-selected-resident{border-radius:var(--radius-md);background:var(--accent-light);align-items:center;gap:12px;margin-top:14px;padding:12px 14px;display:flex}.collector-selected-resident>div{display:grid}.collector-selected-resident span{color:var(--fg-2);font-size:.78rem}.collector-avatar,.collector-pickup-avatar{background:var(--surface);border-radius:50%}.collector-qr-card{flex-wrap:wrap;align-items:center;gap:18px;margin-top:14px;display:flex}.collector-qr-card>div:last-child{justify-items:start;gap:6px;display:grid}.collector-qr-code{border-radius:var(--radius-md);background:#fff;padding:10px}.collector-tag-action{margin-top:14px}.collector-deposit-form{border-top:1px solid var(--border);padding-top:18px}.collector-optional{background:var(--bg-2);color:var(--fg-3);border-radius:999px;margin-left:6px;padding:2px 8px;font-size:.72rem}.collector-scan-button{width:100%;min-height:54px;margin-top:18px}.collector-scanner-wrap{color:var(--fg-2);text-align:center;margin-top:14px;font-size:.85rem}.collector-manual-scan{gap:8px;margin-top:18px;display:grid}.collector-queue-heading{color:var(--fg-3);justify-content:space-between;align-items:center;margin-top:24px;display:flex}.collector-queue-heading span{font-size:.85rem}.collector-pickup-list li>div{flex:1}#pickup-queue{scroll-margin-top:16px}@media (width<=900px){.grid-4,.flow-grid,.impact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-grid,.education-intro,.landing-hero-body{grid-template-columns:1fr}.login-split{grid-template-columns:1fr;min-height:auto}.login-brand{padding:28px 20px 40px}.login-brand h1{margin:20px 0 0;font-size:1.9rem}.login-brand p,.login-steps{display:none}.login-form-area{margin-top:-28px;padding-top:0}.grid-3,.flow{grid-template-columns:repeat(2,minmax(0,1fr))}.container{max-width:760px}}@media (width<=760px){.grid-2,.grid-3,.flow{grid-template-columns:1fr}.page>main.container{padding-bottom:22px}.card,.stat{box-shadow:var(--shadow-sm)}.hero{margin-left:calc(-1*clamp(16px,5vw,48px));margin-right:calc(-1*clamp(16px,5vw,48px))}.flow li{min-height:auto}.bottom-nav{z-index:30;min-height:66px;padding:7px 5px max(7px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px)saturate(140%);backdrop-filter:blur(16px)saturate(140%);background:#ffffffe6;border-top:1px solid #afcfb6b8;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 26px #0749251a}.bottom-nav a{min-height:48px;color:var(--fg-3);border-radius:12px;justify-content:center;align-items:center;font-size:.68rem;font-weight:700;text-decoration:none;transition:background .16s ease-out,color .16s ease-out,transform .16s ease-out;display:flex}.bottom-nav{grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}.bottom-nav a{flex-direction:column;gap:3px}.bottom-nav a[aria-current=page]{color:var(--accent)}.bottom-nav-icon{border-radius:999px;place-items:center;width:40px;height:28px;transition:background .16s ease-out;display:grid}.bottom-nav a[aria-current=page] .bottom-nav-icon{background:var(--accent-light)}.bottom-nav-center .bottom-nav-icon{border:4px solid var(--bg-1);background:linear-gradient(145deg, var(--accent), var(--accent-dark));color:#fff;width:52px;height:52px;margin-top:-26px;box-shadow:0 7px 18px #07492545}.bottom-nav a.bottom-nav-center[aria-current=page] .bottom-nav-icon{background:linear-gradient(145deg, #3bbd6e, var(--accent))}.bottom-nav a:active{transform:scale(.94)}.bottom-nav-spacer{height:78px;display:block}.footer{margin-top:36px}}@media (width<=520px){.topbar-inner{min-height:62px}.topbar nav a:not([aria-current=page]){display:none}.brand{font-size:.98rem}.brand svg{width:34px;height:34px}.photo-row{grid-template-columns:1fr}.filters{display:grid}.filters label{flex:100%}.list li{align-items:flex-start}.list .status{margin-top:2px}.actions>.button{flex-basis:100%}}@media print{body *{visibility:hidden}.qr-card,.qr-card *{visibility:visible}.qr-card{width:100%;box-shadow:none;border:0;position:absolute;top:0;left:0}.qr-card button{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.page-loading{min-height:100vh;color:var(--accent-dark);place-content:center;justify-items:center;gap:14px;font-weight:600;display:grid}.header-menu{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff47;border-radius:999px;align-items:center;gap:7px;min-height:44px;padding:0 14px;font-weight:600;display:inline-flex}.has-sidebar .app-header-top{gap:12px}.has-sidebar .app-header-top .brand{margin-right:auto}.sidebar{z-index:50;width:272px;padding:18px 14px max(18px, env(safe-area-inset-bottom));background:linear-gradient(180deg, var(--accent-dark), #0a4f2d);color:#fff;box-shadow:var(--shadow-lg);flex-direction:column;transition:transform .22s ease-out;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}.sidebar-head{justify-content:space-between;align-items:center;min-height:48px;padding:0 6px;display:flex}.sidebar-close{color:#fff;cursor:pointer;background:#ffffff1a;border:0;border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.sidebar-user{border-radius:var(--radius-md);background:#ffffff14;align-items:center;gap:12px;margin:18px 0 10px;padding:12px;display:flex}.sidebar-avatar{background:var(--lime);width:42px;height:42px;color:var(--accent-dark);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.sidebar-user div{min-width:0;display:grid}.sidebar-user strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-user span{color:#ffffffb3;font-size:.82rem}.sidebar-nav{gap:4px;display:grid}.sidebar-group{color:#ffffff8c;letter-spacing:.08em;text-transform:uppercase;margin:16px 10px 6px;font-size:.72rem;font-weight:700}.sidebar-nav a,.sidebar-logout{color:#ffffffdb;min-height:46px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;padding:0 12px;font-weight:600;text-decoration:none;transition:background .16s ease-out;display:flex}.sidebar-nav a:hover,.sidebar-logout:hover{color:#fff;background:#ffffff1a}.sidebar-nav a[aria-current=page]{background:var(--lime);color:var(--accent-dark)}.sidebar-logout{border-top:1px solid #ffffff1f;border-radius:0;margin-top:auto;padding-top:12px}.sidebar-backdrop{z-index:45;cursor:pointer;background:#041e1080;border:0;position:fixed;inset:0}[id=overview],[id=new-deposit],[id=history],[id=pickup-setup],[id=materials],[id=accounts],[id=rewards],[id=objections],[id=audit],[id=status],[id=composition],[id=queue],[id=inspection]{scroll-margin-top:16px}@media (width>=1024px){.sidebar{box-shadow:none;transform:none}.sidebar-close,.sidebar-backdrop,.header-menu,.has-sidebar .header-logout,.has-sidebar .app-header-top .brand{display:none}.has-sidebar{padding-left:272px}.has-sidebar .app-header-top{min-height:24px}}@media (width>=761px) and (width<=1023px){.has-sidebar .bottom-nav{display:none}}@media (prefers-reduced-motion:reduce){.sidebar{transition:none}.flow-card,.feature-card,.role-card,.rates-layout>.card,.trust-card,.faq-item,.impact-item{animation:none}}
