/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#15131d;--paper:#f5f0e5;--blue:#1837db;--cyan:#58d8ee;--pink:#ff5b92;--yellow:#ffd84d;--green:#29ad70;--orange:#ff5a35;--violet:#7d43d0;--line:2px solid var(--ink)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent;color:inherit}main{background:radial-gradient(circle at 92% 14%, #ff5b9238, transparent 26rem), radial-gradient(circle at 2% 32%, #58d8ee40, transparent 27rem), var(--paper);min-height:100vh;overflow:hidden}.topbar{border-bottom:var(--line);justify-content:space-between;align-items:center;gap:28px;width:min(1480px,100% - 48px);margin:0 auto;padding:25px 0 18px;display:flex}.brand{letter-spacing:-.06em;font-size:1.1rem;font-weight:950;text-decoration:none}.topbar nav{text-transform:uppercase;letter-spacing:.08em;gap:22px;font-size:.75rem;font-weight:850;display:flex}.topbar nav a,footer a{text-underline-offset:4px;text-decoration-thickness:2px}.hero{align-content:center;width:min(1480px,100% - 48px);min-height:590px;margin:0 auto;padding:86px 0 68px;display:grid;position:relative}.hero:after{content:"ZRH";letter-spacing:-.1em;color:#15131d0b;pointer-events:none;font-size:clamp(12rem,26vw,29rem);font-weight:950;line-height:.8;position:absolute;bottom:-4rem;right:-4vw}.kicker,.section-label{letter-spacing:.18em;text-transform:uppercase;font-size:.72rem;font-weight:900}.hero h1{z-index:1;letter-spacing:-.085em;max-width:1000px;margin:12px 0 22px;font-size:clamp(4.2rem,8.8vw,9.2rem);font-weight:950;line-height:.78;position:relative}.hero h1 em{color:var(--pink);text-shadow:5px 5px 0 var(--ink);font-style:normal}.hero-copy{z-index:1;color:#5b5663;max-width:620px;margin:12px 0 0;font-size:clamp(1rem,1.4vw,1.35rem);line-height:1.6;position:relative}.map-tabs{border:var(--line);border-bottom:0;grid-template-columns:repeat(3,1fr);width:min(1480px,100% - 48px);margin:0 auto;display:grid}.map-tab{border:0;border-right:var(--line);text-align:left;cursor:pointer;background:#fffdf4cc;grid-template-rows:auto auto;grid-template-columns:44px 1fr;gap:4px 12px;min-height:132px;padding:20px;transition:transform .18s,background .18s;display:grid}.map-tab:last-child{border-right:0}.map-tab>span{border:2px solid;grid-row:1/3;align-self:start;place-items:center;width:38px;height:38px;font-size:.72rem;font-weight:900;display:grid}.map-tab b{letter-spacing:-.025em;align-self:end;font-size:1.1rem}.map-tab small{color:#69636f;line-height:1.3}.map-tab:hover{background:#fffdf4;transform:translateY(-4px)}.map-tab.active{color:#fff;background:var(--blue)}.map-tab.active small{color:#ffffffbd}.map-workspace{border:var(--line);width:min(1480px,100% - 48px);min-height:720px;box-shadow:12px 12px 0 var(--ink);background:#fffdf4;grid-template-columns:minmax(330px,420px) minmax(0,1fr);margin:0 auto;display:grid}.control-panel{border-right:var(--line);background:#fffdf4;max-height:800px;padding:38px 34px;overflow:auto}.control-panel h2{letter-spacing:-.06em;margin:8px 0 10px;font-size:clamp(2rem,3vw,3.3rem);line-height:.95}.control-panel>p:not(.section-label):not(.source-note):not(.status-message){color:#625c67;line-height:1.55}.section-label{color:var(--blue);margin:0}.line-search{grid-template-columns:1fr auto;margin-top:24px;display:grid}.line-search input,.wide-input,.inline-form input,.inline-form select,.inline-form textarea{border:var(--line);background:#fff;outline:none;min-width:0;padding:14px 15px}.line-search input:focus,.wide-input:focus,.inline-form input:focus,.inline-form select:focus,.inline-form textarea:focus{box-shadow:inset 0 0 0 3px var(--cyan)}.line-search button,.primary-action{border:var(--line);background:var(--yellow);cursor:pointer;border-left:0;padding:0 20px;font-weight:900}.line-search button:disabled,button:disabled{cursor:not-allowed;opacity:.48}.quick-lines{flex-wrap:wrap;gap:8px;margin:12px 0 20px;display:flex}.quick-lines button{border:var(--line);cursor:pointer;background:0 0;min-width:48px;padding:8px 12px;font-weight:900}.quick-lines button:hover{background:var(--cyan)}.route-summary{border-left:6px solid var(--blue);background:#edf0ff;gap:5px;margin-bottom:20px;padding:16px;display:grid}.route-summary small{color:#666171}.alert-button{border:var(--line);color:#fff;cursor:pointer;width:100%;box-shadow:5px 5px 0 var(--ink);background:#d83232;padding:16px 18px;font-weight:950}.alert-button:hover{box-shadow:7px 7px 0 var(--ink);transform:translate(-2px,-2px)}.inline-form{border:var(--line);background:#f7e9f0;gap:13px;margin-top:18px;padding:18px;display:grid}.inline-form label{letter-spacing:.08em;text-transform:uppercase;gap:6px;font-size:.72rem;font-weight:900;display:grid}.inline-form textarea{resize:vertical;min-height:96px}.inline-form .primary-action{border-left:var(--line);padding:14px 16px}.warning-form{background:#f9e2e2}.privacy-note{background:#fff7f2;border:1px solid #a92929;gap:3px;padding:12px;display:grid}.privacy-note span{font-size:.78rem;line-height:1.45}.secondary-action{border:var(--line);cursor:pointer;background:#fff;padding:12px;font-weight:850}.location-action{background:var(--cyan);width:100%;margin:15px 0 6px}.two-fields{grid-template-columns:1.4fr 1fr;gap:10px;display:grid}.plan-list{border-top:var(--line);margin-top:22px}.plan-list summary{cursor:pointer;padding:16px 0;font-weight:900}.plan-list a{border-top:1px solid #c9c2b7;justify-content:space-between;padding:10px 0;font-size:.86rem;display:flex}.wide-input{width:100%;margin:18px 0}.stat-block{align-items:end;gap:12px;margin:18px 0;display:flex}.stat-block strong{color:var(--blue);letter-spacing:-.08em;font-size:4rem;line-height:.8}.stat-block span{color:#5f5965;text-transform:uppercase;font-size:.8rem;font-weight:900}.legend{gap:18px;margin:18px 0;font-size:.8rem;display:flex}.legend span{align-items:center;gap:7px;display:flex}.dot{border:2px solid var(--ink);border-radius:50%;width:12px;height:12px;display:inline-block}.dot.blue{background:var(--cyan)}.dot.gray{background:#c7c0b5}.dot.red{background:#d83232}.source-note{color:#777078;font-size:.72rem;line-height:1.5}.network-guide{border:var(--line);background:#edf0ff;gap:7px;margin:22px 0 16px;padding:16px;display:grid}.network-guide b{margin-bottom:3px}.network-guide span{color:#5f5965;font-size:.8rem}.transit-legend{flex-wrap:wrap}.compact-stat{align-items:center}.compact-stat strong{font-size:3rem}.selected-stop{border:var(--line);background:var(--yellow);gap:4px;padding:13px;display:grid}.selected-stop small{letter-spacing:.12em;font-size:.65rem;font-weight:900}.selected-stop b{font-size:1rem}.inspection-feed{border-top:var(--line);gap:0;margin-top:25px;display:grid}.inspection-feed>b{padding:15px 0 10px}.inspection-feed>div{border-top:1px solid #c9c2b7;gap:2px;padding:10px 0;display:grid}.inspection-feed span{font-size:.83rem;font-weight:800}.inspection-feed small{color:#6c6570}.filter-stack{gap:10px;margin:24px 0;display:grid}.filter{border:var(--line);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;padding:14px 16px;font-weight:900;display:flex}.filter b{text-align:right;min-width:36px}.filter.active.orange{background:var(--orange)}.filter.active.green{background:var(--green)}.filter.active.violet{background:var(--violet);color:#fff}.filter-grid{grid-template-columns:1fr 1fr;gap:8px;margin:22px 0;display:grid}.category-filter{cursor:pointer;background:0 0;border:3px solid;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:11px 12px;font-size:.76rem;font-weight:900;display:flex}.category-filter.active{color:#fff;text-shadow:0 1px 1px #00000059}.category-filter b{text-align:right;min-width:24px}.contribution-form fieldset{border:var(--line);margin:0;padding:12px}.contribution-form legend{letter-spacing:.08em;text-transform:uppercase;padding:0 6px;font-size:.72rem;font-weight:900}.category-checks{grid-template-columns:1fr 1fr;gap:7px;display:grid}.category-checks label{letter-spacing:0;text-transform:none;cursor:pointer;background:#fff;border:2px solid;align-items:center;gap:7px;padding:8px;font-size:.7rem;display:flex}.category-checks input{width:16px;height:16px;accent-color:var(--ink)}.external-link{text-underline-offset:4px;margin:18px 0;font-weight:900;display:block}.primary-action{border:var(--line);width:100%;margin:10px 0;padding:15px 18px}.pick-status{border:2px dashed var(--ink);background:#fff;padding:10px 12px;font-weight:850}.pick-status.ready{background:#cdf6df;border-style:solid}.community-stat strong{color:var(--violet)}.status-message{border:1px solid var(--ink);background:var(--yellow);margin-top:18px;padding:13px;font-size:.8rem;line-height:1.45}.map-frame{background:#dfe8e9;grid-template-rows:58px minmax(620px,1fr);min-width:0;display:grid}.map-title{border-bottom:var(--line);background:var(--ink);color:#fff;align-items:center;gap:12px;padding:0 18px;display:flex}.map-title span{color:var(--yellow);font-weight:900}.map-title small{color:#aaa5ae;margin-left:auto}.map-canvas{z-index:1;background:#d9e5df;width:100%;height:100%;min-height:620px}.map-error{text-align:center;background:#efe7da;place-items:center;height:100%;padding:40px;display:grid}.leaflet-container{font-family:inherit!important}.leaflet-control-zoom a{color:var(--ink)!important;border-radius:0!important}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:var(--ink)!important;background:#fffdf4!important;border-radius:0!important}.leaflet-popup-content-wrapper{border:2px solid var(--ink);box-shadow:6px 6px #15131dcc!important}.map-popup{gap:5px;min-width:190px;line-height:1.35;display:grid}.map-popup b{font-size:1rem}.map-popup span,.map-popup p{color:#58535e;margin:0;font-size:.78rem}.map-popup hr{border:0;border-top:1px solid #beb7ac;width:100%}.popup-categories{flex-wrap:wrap;gap:4px;margin:2px 0;display:flex}.popup-categories span{border-left:5px solid var(--badge);color:var(--ink);background:#eee9df;padding:3px 6px;font-size:.68rem;font-weight:850}.popup-route{background:var(--yellow);border:1px solid var(--ink);text-align:center;margin-top:5px;padding:8px 10px;font-size:.74rem;font-weight:900;text-decoration:none;display:block;color:var(--ink)!important}.manifesto{text-align:center;width:min(1120px,100% - 48px);margin:150px auto}.manifesto p{letter-spacing:.18em;text-transform:uppercase;font-size:.78rem;font-weight:900}.manifesto h2{letter-spacing:-.065em;margin:20px auto 0;font-size:clamp(2.6rem,6vw,6.6rem);line-height:.94}footer{border-top:var(--line);text-transform:uppercase;letter-spacing:.08em;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;width:min(1480px,100% - 48px);margin:0 auto;padding:30px 0 42px;font-size:.75rem;font-weight:850;display:grid}footer div{justify-content:end;gap:15px;display:flex}@media (width<=980px){.hero{min-height:500px}.map-tabs{grid-template-columns:repeat(3,1fr)}.map-workspace{grid-template-columns:1fr}.control-panel{border-right:0;border-bottom:var(--line);max-height:none}.map-frame{grid-template-rows:58px minmax(560px,65vh)}.map-canvas{min-height:560px}}@media (width<=680px){.topbar,.hero,.map-tabs,.map-workspace,footer{width:calc(100% - 24px)}.topbar{align-items:flex-start;padding-top:18px}.topbar nav{flex-wrap:wrap;justify-content:end;gap:8px;font-size:.62rem}.hero{min-height:450px;padding:60px 0 48px}.hero h1{font-size:clamp(3.3rem,17vw,5.5rem)}.hero h1 em{text-shadow:3px 3px 0 var(--ink)}.map-tabs{grid-template-columns:1fr}.map-tab{border-right:0;border-bottom:var(--line);min-height:92px}.map-tab:last-child{border-bottom:0}.control-panel{padding:28px 20px}.map-workspace{box-shadow:6px 6px 0 var(--ink)}.map-frame{grid-template-rows:54px minmax(520px,66vh)}.map-canvas{min-height:520px}.map-title small{display:none}.two-fields,.filter-grid,.category-checks{grid-template-columns:1fr}.manifesto{width:calc(100% - 30px);margin:100px auto}footer{text-align:left;grid-template-columns:1fr}footer div{flex-wrap:wrap;justify-content:flex-start}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
