:root{--paper:#faf7f0;--ink:#29132e;--pink:#ce166d;--muted:#796e77;--purple:#180b22;--border:#e7dee4;--peach:#ffd9ae;--mono:'JetBrains Mono',monospace;--serif:'Fraunces',Georgia,serif;--sans:'Inter',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:14px}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid var(--pink);outline-offset:3px}.grain{min-height:100vh;background-image:radial-gradient(rgba(42,16,45,.026) 1px,transparent 1px);background-size:4px 4px}.shell{max-width:1180px;margin:0 auto;padding:0 32px 60px}.header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border);padding:20px 0}.brand{color:inherit;text-decoration:none;display:flex;align-items:center;gap:12px}.brand-icon{width:37px;height:37px;background:var(--pink);border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 5px rgba(206,22,109,.08)}.brand-icon span{width:7px;height:7px;background:white;border-radius:50%}.brand-name{font:400 20px/1.1 var(--serif)}.pink{color:var(--pink)}.brand small{display:block;color:var(--muted);font:500 9px var(--mono);letter-spacing:2px;margin-top:4px}.header-right{font:500 10px var(--mono);letter-spacing:1.3px;color:var(--muted);display:flex;gap:8px;align-items:center}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--pink)}.hero{display:grid;grid-template-columns:1.09fr .91fr;gap:54px;align-items:center;padding:55px 0 45px}.eyebrow,.field-label,.label-small{font:500 10px/1.5 var(--mono);letter-spacing:2px;color:var(--muted)}.eyebrow{color:var(--pink)}.hero h1{font:300 clamp(48px,5.3vw,76px)/.98 var(--serif);letter-spacing:-2px;margin:18px 0 24px}.hero h1 em{color:var(--pink);font-weight:300}.hero-copy>p{font-size:15px;max-width:475px;line-height:1.75;color:#736b71;margin:0}.hero-copy strong{color:#4c334f;font-weight:600}.hero-points{display:flex;flex-wrap:wrap;gap:13px;align-items:center;color:var(--muted);font:500 10px var(--mono);letter-spacing:.3px;margin-top:28px}.hero-points i{color:var(--pink);font-style:normal}.hero-art{margin:0}.hero-illustration{border-radius:24px;overflow:hidden;box-shadow:0 12px 36px rgba(34,12,38,.08)}.hero-illustration svg{display:block;width:100%;height:auto}.hero-art figcaption{margin-top:11px;color:var(--muted);font:500 9px var(--mono);letter-spacing:1.5px}.ticker{border-radius:999px;overflow:hidden;background:var(--purple);color:#dfd0dc;padding:12px 0}.ticker-track{display:flex;white-space:nowrap;width:max-content;animation:marquee 52s linear infinite}.ticker-track span{font:500 10px var(--mono);letter-spacing:1.2px;padding:0 12px}.ticker-track b{color:#e53783;padding:0 24px}@keyframes marquee{to{transform:translateX(-50%)}}.workspace{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:29px;margin-top:30px;align-items:start}.form-card{background:white;border-radius:25px;border:1px solid var(--border);padding:29px;box-shadow:0 24px 60px -45px rgba(43,16,53,.47)}.card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--border);padding-bottom:18px}.card-head h2{font:400 22px var(--serif);margin:0}.card-head>span,.form-foot{font:500 9px var(--mono);color:#8f858c;letter-spacing:1.4px}.two{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:25px 0 14px}.field-label{display:block;margin-bottom:9px}.field-label em{color:var(--pink);font-style:normal}.field-label .minor{font:400 10px var(--sans);letter-spacing:0;float:right;color:#aaa2a8}.two input,.add-row input{width:100%;border:0;border-bottom:1px solid #dbd4d7;padding:8px 0;background:transparent;color:#2b142f;font:400 17px var(--serif);min-width:0;border-radius:0}.two input::placeholder,.add-row input::placeholder{font:400 13px var(--sans);color:#b4abb1}.train-hint{font-size:11.5px;color:#877b84;line-height:1.65;margin:12px 0 26px}.train-hint strong{font-weight:600;color:var(--pink)}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:9px 0 8px}.chip{display:inline-flex;gap:9px;align-items:center;border-radius:30px;background:#f2edf4;padding:6px 7px 6px 11px;font-size:12px}.chip button{border:0;background:transparent;color:#746775;font-size:17px;line-height:1;padding:0 2px}.add-row{display:flex;gap:10px;align-items:center}.add-row input{flex:1}.add-row button{background:white;border:1px solid #d6ccd6;border-radius:100%;font-size:18px;width:34px;height:34px;color:#6f5e6a}.humor{margin-top:32px}.segmented{display:grid;grid-template-columns:1fr 1fr 1fr;background:#f3edf0;padding:4px;gap:3px;border-radius:999px;margin-top:10px}.segmented button{background:transparent;color:#7b6e76;border:0;border-radius:999px;padding:12px 3px;font-size:11.5px;white-space:nowrap}.segmented button.active{background:white;color:#26122b;box-shadow:0 1px 6px rgba(43,18,40,.12);font-weight:600}.humor-caption{font-size:11px;color:var(--muted);margin:11px 0 0}.generate{background:var(--pink);color:white;border:0;border-radius:999px;padding:17px 22px;width:100%;display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:600;margin-top:27px;transition:.2s}.generate:hover{background:#b6105d;transform:translateY(-1px)}.generate:disabled{opacity:.55;cursor:wait;transform:none}.form-status{font-size:12px;line-height:1.55;min-height:16px;margin-top:13px;color:#776672}.form-status.error{color:#a01634}.form-foot{margin-top:13px;line-height:1.7}.result{border-radius:25px;background:var(--purple);color:#f5ebee;padding:29px;box-shadow:0 40px 90px -55px rgba(24,11,34,.9);position:relative;overflow:hidden}.result:before{content:'';position:absolute;top:-90px;right:-80px;width:280px;height:280px;border-radius:50%;background:rgba(206,22,109,.2);filter:blur(38px);pointer-events:none}.result>*{position:relative}.result-head{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#b7a8b9;font:500 9px var(--mono);letter-spacing:1.65px}.antenna{display:flex;gap:8px;align-items:center}.antenna>span:first-child{width:7px;height:7px;border-radius:50%;background:#f43f90;box-shadow:0 0 0 4px rgba(244,63,144,.09)}.trip-kpis{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;border-block:1px solid rgba(255,255,255,.12);padding:20px 0;margin:25px 0 22px}.trip-kpis small{display:block;font:500 9px var(--mono);letter-spacing:1.5px;color:#ae9ba9}.trip-kpis b{display:block;margin-top:10px;font:500 15px var(--mono);color:var(--peach);overflow-wrap:anywhere}.route-title{color:#c2acc4;font:500 11px var(--mono);letter-spacing:1px;text-transform:uppercase;line-height:1.7}.stops{margin-top:12px;display:flex;gap:6px;flex-wrap:wrap}.stop-pill{padding:7px 9px;border:1px solid rgba(255,255,255,.14);border-radius:20px;font:400 10px var(--mono);color:#e6dbe4}.stop-pill time{color:var(--peach)}.caution{border:1px solid rgba(255,214,163,.5);color:#ffdfba;background:rgba(255,214,163,.09);border-radius:13px;padding:13px;font-size:12px;margin-top:17px;line-height:1.6}.hidden{display:none!important}.announcement-buttons{margin-top:25px}.label-small{color:#ae98ae;font-size:9px;margin-bottom:10px}.stop-buttons{display:flex;flex-wrap:wrap;gap:7px}.stop-buttons button{border:1px solid rgba(255,255,255,.21);background:transparent;color:#f4e9f1;padding:9px 12px;border-radius:20px;font-size:11px;transition:.2s}.stop-buttons button[aria-pressed=true]{border-color:#ea4d99;background:rgba(226,43,123,.2)}.stop-buttons button:hover{border-color:#fff}.output{margin-top:27px}.output h2{font:400 25px/1.25 var(--serif);margin:8px 0 20px;color:#fff}.annonce-text{font-size:14px;line-height:1.8;color:#f0e5ec}.annonce-text p{margin:0 0 17px;white-space:pre-wrap}.annonce-text p:last-child{margin-bottom:0}.output-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:27px}.output-actions button{border:1px solid rgba(255,255,255,.22);border-radius:999px;background:none;color:#fff;padding:11px 16px;font-size:12px}.output-actions button:hover{background:rgba(255,255,255,.08)}.source{font-size:10px;color:#beaab9;line-height:1.7;margin:20px 0 0}.result-footer{font:400 9px/1.8 var(--mono);color:#ac94a8;letter-spacing:.8px;border-top:1px solid rgba(255,255,255,.09);padding-top:17px;margin-top:20px;overflow-wrap:anywhere}.footer{border-top:1px solid var(--border);margin-top:58px;padding-top:23px;display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;color:#968b92;font:500 9px/1.7 var(--mono);letter-spacing:.8px}.footer a{color:var(--pink);text-decoration:none}@media(max-width:940px){.shell{padding:0 22px 35px}.hero{gap:24px}.workspace{gap:18px}.form-card,.result{padding:22px}.hero h1{font-size:54px}}@media(max-width:720px){.hero{grid-template-columns:1fr;padding-top:33px;gap:29px}.hero h1{font-size:clamp(49px,11vw,69px)}.hero-art{max-width:440px}.workspace{grid-template-columns:1fr}.two{gap:16px}.header-right{display:none}.hero-copy>p{font-size:14px}.hero-points{font-size:9px}.result{padding:24px}.shell{padding:0 17px 38px}}@media(max-width:365px){.two{grid-template-columns:1fr}.segmented button{font-size:10px}.trip-kpis b{font-size:12px}}
