.landing{--warm: #2f8f63;--ink: var(--text);font-family:Inter,sans-serif;background:#faf8f5;color:var(--ink)}[data-theme=dark] .landing{background:var(--light);color:var(--text)}.landing-hero{position:relative;padding:76px 20px 64px;color:#fff;text-align:center;background:linear-gradient(180deg,#10281c8c,#10281ccc),url(/og-image.jpg) center 40% / cover no-repeat}.hero-inner{max-width:820px;margin:0 auto;text-align:center;position:relative}.hero-kicker{display:inline-block;background:#ffffff29;border:1px solid rgba(255,255,255,.45);color:#fff;padding:5px 14px;border-radius:999px;font-weight:700;font-size:14px;transform:rotate(-1.5deg);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.landing-hero h1{font-family:Bricolage Grotesque,Inter,sans-serif;font-size:clamp(30px,6vw,52px);line-height:1.05;margin:18px 0 14px;letter-spacing:-.01em;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.4)}.landing-hero h1 .hl{color:#fff;position:relative;white-space:nowrap}.landing-hero h1 .hl:after{content:"";position:absolute;left:2px;right:2px;bottom:.02em;height:4px;border-radius:3px;background:#7ed3a6;opacity:.95}.hero-sub{font-size:18px;line-height:1.6;max-width:640px;margin:0 auto;color:#ffffffeb;text-shadow:0 1px 12px rgba(0,0,0,.35)}.hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:26px 0 22px}.hero-towns{display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:center;font-size:13px;color:#ffffffc7;letter-spacing:.02em}.hero-towns span:after{content:"·";margin-left:18px;opacity:.6}.hero-towns span:last-child:after{content:""}.landing-hero .btn-ghost{background:#ffffff29;color:#fff;border-color:#ffffff80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.landing-hero .btn-ghost:hover{background:#ffffff42}.btn-warm{background:linear-gradient(135deg,#2b6a4f,#3fa579);color:#fff;text-decoration:none;padding:13px 24px;border-radius:12px;font-weight:800;box-shadow:0 4px 14px #2b6a4f40;transition:transform .08s,box-shadow .08s;display:inline-block}.btn-warm:hover{transform:translateY(-1px)}.btn-ghost{background:var(--surface);color:var(--navy, #2b6a4f);text-decoration:none;padding:13px 22px;border-radius:12px;font-weight:700;border:1.5px solid rgba(43,106,79,.18);display:inline-block}[data-theme=dark] .btn-ghost{background:var(--surface, #1e293b);color:var(--text);border-color:#ffffff26}.landing-features{max-width:1000px;margin:0 auto;padding:40px 20px}.section-h{font-family:Bricolage Grotesque,Inter,sans-serif;font-size:28px;text-align:center;margin:0 0 6px;color:var(--navy, #2b6a4f)}[data-theme=dark] .section-h{color:var(--text)}.section-h .squiggle{color:var(--warm);font-style:normal}.section-sub{text-align:center;opacity:.68;margin:0 0 28px}.feature-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.feat-card{background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:16px;padding:20px;text-decoration:none;color:inherit;box-shadow:0 4px 14px #0f172a0d;transform:rotate(var(--tilt, 0deg));transition:transform .14s ease,box-shadow .14s ease,border-color .14s;display:flex;flex-direction:column}.feat-card:hover{transform:rotate(0) translateY(-3px);box-shadow:0 12px 26px #0f172a1f;border-color:#2f8f6380}.feat-icon{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:var(--ok-bg);color:var(--navy)}[data-theme=dark] .feat-icon{color:var(--teal)}.feat-card h3{margin:12px 0 6px;font-size:19px;color:var(--navy, #2b6a4f);font-family:var(--font-display)}[data-theme=dark] .feat-card h3{color:var(--text)}.feat-card p{margin:0 0 14px;font-size:14px;line-height:1.55;opacity:.8;flex:1}.feat-go{color:var(--warm);font-weight:700;font-size:14px}.landing-mds{max-width:900px;margin:0 auto;padding:20px 20px 40px}.mds-card{background:linear-gradient(135deg,#2b6a4f,#3fa579);color:#fff;border-radius:20px;padding:30px;display:flex;gap:22px;align-items:flex-start;box-shadow:0 12px 30px #2b6a4f40}.mds-avatar{font-size:44px;background:#ffffff26;width:76px;height:76px;min-width:76px;border-radius:18px;display:flex;align-items:center;justify-content:center;transform:rotate(-3deg)}.mds-text h2{margin:0 0 10px;font-family:Bricolage Grotesque,Inter,sans-serif;font-size:24px}.mds-text p{margin:0 0 10px;line-height:1.6;opacity:.95}.mds-pitch{font-size:14px;opacity:.9}.mds-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}.landing-mds .btn-warm{background:#fff;color:#2b6a4f;box-shadow:0 4px 12px #0003}.landing-mds .btn-ghost{background:#ffffff24;color:#fff;border-color:#ffffff4d}.landing-note{text-align:center;padding:6px 20px 40px;font-size:13px;opacity:.6}@media (max-width: 620px){.mds-card{flex-direction:column;align-items:center;text-align:center}.mds-actions{justify-content:center}}.search-container{position:relative;width:100%}.search-form{position:relative}.search-input-wrapper{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .2s}.search-input-wrapper:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px #3fa57926}.search-icon{color:var(--text-muted);flex-shrink:0}.search-input{flex:1;min-width:0;border:none;background:transparent;font-size:14px;font-family:var(--font-body);outline:none;padding:4px 0;color:var(--text)}.search-input::-moz-placeholder{color:var(--text-muted)}.search-input::placeholder{color:var(--text-muted)}.search-clear{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:4px;display:flex;align-items:center;justify-content:center;transition:color .2s}.search-clear:hover{color:var(--text)}.search-button{padding:8px 16px;background:var(--navy);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;font-size:13px;transition:background .2s}.search-button:hover:not(:disabled){background:var(--teal)}.search-button:disabled{opacity:.6;cursor:not-allowed}.suggestions-list{position:absolute;top:100%;left:0;right:0;background:var(--surface);border:1px solid var(--border);border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm);max-height:300px;overflow-y:auto;z-index:1000;box-shadow:var(--shadow-md)}.suggestion-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:none;background:none;text-align:left;cursor:pointer;transition:background .2s;color:var(--text);font-size:14px}.suggestion-item:hover,.suggestion-item.active{background:var(--surface-2)}.suggestion-item svg{color:var(--teal);flex-shrink:0}.suggestion-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-detail{margin-left:auto;padding-left:10px;color:var(--text-muted);font-size:12px;white-space:nowrap;flex-shrink:0}.search-results{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:flex-start;justify-content:center;z-index:2000;padding:80px 16px 16px;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0}to{opacity:1}}.results-panel{background:var(--surface);border-radius:var(--radius);max-height:82vh;width:100%;max-width:620px;box-shadow:var(--shadow-lg);overflow-y:auto;animation:popIn .3s ease-out}@keyframes popIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.results-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:10}.results-header h3{margin:0;font-size:16px;color:var(--text);font-family:var(--font-display)}.close-results{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.close-results:hover{color:var(--text);background:var(--surface-2);border-radius:var(--radius-sm)}.results-tabs{padding:16px}.results-section{margin-bottom:24px}.results-section:last-child{margin-bottom:0}.section-title{display:flex;align-items:center;gap:6px;margin:0 0 12px;font-size:14px;font-weight:600;color:var(--navy);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.5px}.section-title svg{flex-shrink:0}[data-theme=dark] .section-title{color:var(--text)}.results-list{display:flex;flex-direction:column;gap:12px}.result-item{padding:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s}.result-item:hover{background:var(--surface);border-color:var(--teal);box-shadow:0 2px 8px #3fa5792e}.result-header{display:flex;justify-content:space-between;align-items:start;gap:8px;margin-bottom:8px}.result-header strong{color:var(--navy);font-size:15px}.result-type{font-size:11px;background:var(--navy);color:#fff;padding:2px 8px;border-radius:999px;white-space:nowrap;flex-shrink:0}.result-address,.result-hours,.result-phone,.result-date,.result-location{display:flex;align-items:center;gap:6px;margin:4px 0 0;font-size:13px;color:var(--text-muted);line-height:1.4}.result-address svg,.result-hours svg,.result-phone svg,.result-date svg,.result-location svg{flex-shrink:0}.result-hours,.result-date{font-family:var(--font-mono)}.result-header strong{color:var(--text)}.no-results{text-align:center;padding:32px 16px;color:var(--text-muted)}.no-results p{margin:0 0 8px}.hint{font-size:12px;color:var(--text-muted)}@media (max-width: 640px){.search-results{padding-top:20px}.results-panel{width:95%;max-height:70vh}.search-input{font-size:16px}}.fb-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:16px;animation:fbFade .2s ease}@keyframes fbFade{0%{opacity:0}to{opacity:1}}.fb-modal{background:var(--surface);color:var(--text);border-radius:var(--radius-lg);width:100%;max-width:460px;padding:28px 24px 24px;position:relative;box-shadow:var(--shadow-lg);animation:fbUp .25s ease}@keyframes fbUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fb-close{position:absolute;top:12px;right:14px;background:none;border:none;font-size:26px;line-height:1;color:var(--text-muted);cursor:pointer}.fb-title{display:flex;align-items:center;gap:8px;color:var(--navy);margin:0 0 6px;font-size:19px;font-family:var(--font-display)}[data-theme=dark] .fb-title{color:var(--text)}.fb-sub{color:var(--text-muted);font-size:14px;margin:0 0 18px}.fb-form{display:flex;flex-direction:column;gap:12px}.fb-textarea,.fb-input{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-family:var(--font-body);background:var(--bg);color:var(--text);resize:vertical}.fb-textarea:focus,.fb-input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #3fa57926}.fb-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.fb-error{background:var(--danger-bg);color:var(--danger-text);padding:10px 12px;border-radius:var(--radius-sm);font-size:13px}.fb-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--brand-gradient);color:#fff;border:none;padding:12px 20px;border-radius:var(--radius-sm);font-weight:600;font-size:15px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.fb-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #3fa5794d}.fb-btn:disabled{opacity:.6;cursor:not-allowed}.fb-done{text-align:center;padding:10px 0}.fb-done-icon{display:flex;justify-content:center;margin-bottom:10px;color:var(--ok)}.fb-done h3{color:var(--navy);margin:0 0 6px;font-family:var(--font-display)}[data-theme=dark] .fb-done h3{color:var(--text)}.fb-done p{color:var(--text-muted);margin:0 0 18px}.spin{animation:spin .8s linear infinite}.company-nav{background:linear-gradient(90deg,var(--navy) 0%,var(--teal) 100%);color:#fff;box-shadow:var(--shadow-md);position:sticky;top:0;z-index:100}.nav-container{max-width:1400px;margin:0 auto;padding:0 20px;display:flex;align-items:center;justify-content:space-between;height:70px;gap:40px}.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;font-weight:700;font-size:16px;flex-shrink:0;transition:opacity .2s ease}.nav-logo:hover{opacity:.8}.logo-icon{font-size:24px}.logo-text{font-family:var(--font-display)}.nav-menu{display:flex;gap:0;flex:1;align-items:center}.nav-link{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;text-decoration:none;color:#fffc;font-size:14px;font-weight:500;transition:color .2s ease,background .2s ease,border-color .2s ease;border-bottom:2px solid transparent;position:relative;white-space:nowrap}.nav-link:hover{color:#fff;background:#ffffff1a}.nav-link.active{color:#fff;border-bottom-color:#fff;background:#ffffff26}.nav-user{display:flex;align-items:center;gap:20px;flex-shrink:0;border-left:1px solid rgba(255,255,255,.2);padding-left:20px}.user-info{text-align:right}.user-name{font-size:14px;font-weight:600;color:#fff}.user-email{font-size:12px;color:#ffffffb3;text-transform:uppercase;letter-spacing:.5px}.btn-logout{display:inline-flex;align-items:center;gap:8px;background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease;white-space:nowrap}.btn-logout:hover{background:#ffffff4d;border-color:#ffffff80}.btn-logout:active{transform:scale(.98)}@media (max-width: 768px){.nav-container{padding:0 12px;gap:20px;height:60px}.nav-menu{display:none}.nav-user{border-left:none;padding-left:0}.user-info,.logo-text{display:none}.logo-icon{font-size:20px}.btn-logout{padding:6px 12px;font-size:12px}}:root{--navy: #2b6a4f;--teal: #3fa579;--light: #f6f3ec;--header-h: 60px;--bottomnav-h: 64px}.app-shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--light);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.theme-toggle{flex-shrink:0;width:38px;height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.3);background:#ffffff26;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.theme-toggle:hover{background:#ffffff47}.app-header{position:sticky;top:0;z-index:1500;background:linear-gradient(90deg,var(--navy) 0%,var(--teal) 100%);color:#fff;box-shadow:0 2px 12px #2b6a4f33}.app-header-inner{max-width:1100px;margin:0 auto;min-height:var(--header-h);padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.app-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0}.app-logo-img{height:34px;width:auto;display:block}.app-search-wrap{flex:1;max-width:420px;order:0}.desktop-nav{display:none;gap:4px;align-items:center}.desktop-nav a{color:#ffffffd9;text-decoration:none;font-size:14px;font-weight:500;padding:8px 12px;border-radius:8px;transition:all .2s ease;white-space:nowrap}.desktop-nav a:hover{background:#ffffff26;color:#fff}.desktop-nav a.active{background:#fff3;color:#fff}.desktop-nav a.partner-login-link{display:inline-flex;align-items:center;gap:6px}.app-main{flex:1;width:100%;padding-bottom:calc(var(--bottomnav-h) + env(safe-area-inset-bottom,0px))}.app-shell:has(.is-map){height:100vh;height:100dvh;overflow:hidden}.app-main.is-map{flex:1;min-height:0;overflow:hidden;padding-bottom:var(--bottomnav-h)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:1100;height:calc(var(--bottomnav-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -2px 12px var(--shadow);display:flex;justify-content:space-around;align-items:stretch}.bottom-nav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:var(--text-muted);font-size:11px;font-weight:500;transition:color .2s ease;padding:6px 2px}.bottom-nav a.active{color:var(--teal)}.bottom-nav a.active .bn-icon{transform:translateY(-1px)}.bn-icon{transition:transform .2s ease}.bottom-nav a span{line-height:1}.app-footer{display:block;background:var(--surface);border-top:1px solid var(--border);text-align:center;font-size:13px;color:var(--text-muted);padding:20px 16px calc(20px + var(--bottomnav-h) + env(safe-area-inset-bottom,0px))}.footer-company{max-width:900px;margin:0 auto 18px;padding:16px 20px;background:linear-gradient(135deg,#2b6a4f0f,#3fa57914);border:1px solid var(--border);border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;text-align:left}.footer-company-text{display:flex;flex-direction:column;gap:3px}.footer-company-text strong{color:var(--text);font-size:15px;display:inline-flex;align-items:center;gap:7px}.footer-company-text strong svg{color:var(--teal)}.footer-company-text span{color:var(--text-muted);font-size:13px}.footer-company-actions{display:flex;align-items:center;gap:12px}.footer-company-btn{background:var(--brand-gradient);color:#fff!important;padding:10px 20px;border-radius:var(--radius-sm);font-weight:700;text-decoration:none!important;white-space:nowrap}.footer-company-link{font-size:13px;white-space:nowrap}.app-footer a{color:var(--teal);text-decoration:none}.app-footer a:hover{text-decoration:underline}.footer-feedback{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--border)}.footer-feedback span{color:var(--text, #334155);font-weight:500}.footer-feedback-btn{display:inline-flex;align-items:center;gap:6px;background:var(--brand-gradient);color:#fff;border:none;padding:8px 16px;border-radius:999px;font-weight:600;font-size:13px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.footer-feedback-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px #3fa5794d}.footer-coffee-btn{display:inline-flex;align-items:center;gap:6px;background:#fd0;color:#0d0c22!important;padding:8px 16px;border-radius:999px;font-weight:700;font-size:13px;text-decoration:none!important;transition:transform .2s ease,box-shadow .2s ease}.footer-coffee-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px #fd06}.footer-made{margin-bottom:12px;font-size:14px;color:var(--text, #334155);font-weight:500}.footer-heart{display:inline-block;animation:heartbeat 1.6s ease-in-out infinite}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.25)}30%{transform:scale(1)}}.footer-mds{font-weight:700;color:var(--teal)!important}.footer-links{line-height:1.8}.footer-version{font-family:DM Mono,monospace;font-weight:600;opacity:.8}@media (min-width: 768px){.desktop-nav{display:flex}.bottom-nav{display:none}.app-main,.app-main.is-map{padding-bottom:0}.app-footer{display:block;padding:20px 16px}.mobile-only{display:none}}@media (max-width: 767px){.app-search-wrap{order:2;flex-basis:100%;max-width:none}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.absolute{position:absolute}.relative{position:relative}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-row{display:table-row}.hidden{display:none}.border{border-width:1px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-500.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-600.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-700.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/inter-800.woff2) format("woff2")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/bricolage-500.woff2) format("woff2")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/bricolage-600.woff2) format("woff2")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/bricolage-700.woff2) format("woff2")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/bricolage-800.woff2) format("woff2")}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dmmono-400.woff2) format("woff2")}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/dmmono-500.woff2) format("woff2")}:root{--navy: #2b6a4f;--teal: #3fa579;--light: #f6f3ec;--surface: #ffffff;--surface-2: #f4f1ea;--bg: #ffffff;--text: #2a2620;--text-muted: #6b6459;--border: #e7e2d8;--shadow: rgba(60, 50, 30, .07);--font-display: "Bricolage Grotesque", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--font-mono: "DM Mono", ui-monospace, "SFMono-Regular", "Menlo", monospace;--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--shadow-sm: 0 1px 3px var(--shadow);--shadow-md: 0 4px 14px var(--shadow);--shadow-lg: 0 12px 30px var(--shadow);--brand-gradient: linear-gradient(135deg, var(--navy) 0%, var(--teal) 100%);--ok: #2b6a4f;--ok-bg: #e6f2ec;--ok-text: #1e5038;--info: #2f8f63;--info-bg: #e4f1ec;--info-text: #216048;--warn: #b7791f;--warn-bg: #f7edd6;--warn-text: #8a5a12;--danger: #b3261e;--danger-bg: #f6e3e1;--danger-text: #8a231c}[data-theme=dark]{--light: #17140f;--surface: #221e18;--surface-2: #2c271f;--text: #ece7de;--text-muted: #a89f92;--border: #3a342b;--bg: #2c271f;--shadow: rgba(0, 0, 0, .45);--ok-bg: rgba(63, 165, 121, .16);--ok-text: #7ed3a6;--info-bg: rgba(63, 165, 121, .14);--info-text: #86c9a6;--warn-bg: rgba(214, 158, 46, .16);--warn-text: #e6c07b;--danger-bg: rgba(200, 60, 50, .18);--danger-text: #f0a8a0}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{min-height:100%;width:100%}body{overflow-x:hidden;font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--light);color:var(--text);transition:background .3s ease,color .3s ease}@media (max-width: 640px){html,body{max-width:100%;overflow-x:hidden}.disposal-tabs,.admin-tabs,.anfrage-tabs,.site-filter,.filter-buttons{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.disposal-tabs::-webkit-scrollbar,.admin-tabs::-webkit-scrollbar,.anfrage-tabs::-webkit-scrollbar,.site-filter::-webkit-scrollbar,.filter-buttons::-webkit-scrollbar{display:none}.disposal-tabs{gap:4px}.disposal-tabs .tab{padding:10px 14px;font-size:14px;white-space:nowrap;flex-shrink:0}.site-filter-btn,.anfrage-tab-btn,.filter-btn,.admin-tabs button{flex-shrink:0;white-space:nowrap}.sites-grid,.events-grid,.jobs-grid,.abfall-grid,.geb-cards{grid-template-columns:1fr!important}.disposal-header h1{font-size:24px}.disposal-header{margin-bottom:24px}}.leaflet-container{font-family:inherit}[data-theme=dark] input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),[data-theme=dark] textarea,[data-theme=dark] select{background-color:var(--bg)!important;color:var(--text)!important;border-color:var(--border)!important}[data-theme=dark] input::-moz-placeholder,[data-theme=dark] textarea::-moz-placeholder{color:var(--text-muted)!important}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--text-muted)!important}[data-theme=dark] select option{background:var(--surface);color:var(--text)}[data-theme=dark] .disposal-page,[data-theme=dark] .jobs-page,[data-theme=dark] .company-dashboard,[data-theme=dark] .company-jobs-page,[data-theme=dark] .company-applications-page{background:var(--light)}[data-theme=dark] .address-card,[data-theme=dark] .schedule-form,[data-theme=dark] .collection-card,[data-theme=dark] .site-card,[data-theme=dark] .reminder-config,[data-theme=dark] .job-card,[data-theme=dark] .empty-state,[data-theme=dark] .abfall-card,[data-theme=dark] .suggestions-list,[data-theme=dark] .search-results>div{background:var(--surface)!important;color:var(--text);border-color:var(--border)}[data-theme=dark] .abfall-search,[data-theme=dark] .abfall-select,[data-theme=dark] .site-filter-btn{background:var(--surface-2);color:var(--text);border-color:var(--border)}[data-theme=dark] .site-group-title{color:var(--text);border-color:var(--border)}[data-theme=dark] .filter-section,[data-theme=dark] .company-promo,[data-theme=dark] .job-detail{background:var(--surface)!important}[data-theme=dark] .filter-section h4,[data-theme=dark] .job-detail h2,[data-theme=dark] .job-detail h3{color:var(--text)}[data-theme=dark] .filter-group label{color:var(--text-muted)}[data-theme=dark] .filter-group input,[data-theme=dark] .filter-group select,[data-theme=dark] .filter-group select option{background:var(--surface-2);color:var(--text);border-color:var(--border)}[data-theme=dark] .geo-info{background:#0ea5e926;color:#7dd3fc}[data-theme=dark] .job-card{background:var(--surface)!important;border-color:var(--border)}[data-theme=dark] .job-card h3,[data-theme=dark] .job-title,[data-theme=dark] .job-company{color:var(--text)}[data-theme=dark] .job-description,[data-theme=dark] .job-meta,[data-theme=dark] .job-footer{color:var(--text-muted)}[data-theme=dark] .abfall-item-name,[data-theme=dark] .abfall-section h2{color:var(--text)}[data-theme=dark] .abfall-hinweis{background:var(--surface-2);color:var(--text-muted)}[data-theme=dark] .disposal-header p,[data-theme=dark] .card-type,[data-theme=dark] .site-info,[data-theme=dark] .form-group label,[data-theme=dark] .config-label{color:var(--text-muted)}[data-theme=dark] .disposal-header h1,[data-theme=dark] .schedule-section h2,[data-theme=dark] .sites-section h2,[data-theme=dark] .card-date,[data-theme=dark] .site-card h3,[data-theme=dark] .reminder-config h3{color:var(--text)}[data-theme=dark] .form-group select,[data-theme=dark] .form-group input,[data-theme=dark] .time-input,[data-theme=dark] .search-input-wrapper{background:var(--surface-2);color:var(--text);border-color:var(--border)}[data-theme=dark] .search-input{color:var(--text)}[data-theme=dark] .tab{color:var(--text-muted)}
