:root{--navy:#071c3d;--teal:#17c8c5;--yellow:#ffc518;--paper:#f3f8fb;--text:#102747;--line:#ccdde6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:white;font:17px/1.55 system-ui,sans-serif}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}button,a,input,select{outline-offset:5px}button{cursor:pointer}header,main,footer{max-width:1280px;margin:auto}header{padding:24px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:750;text-decoration:none}.brand b{background:var(--navy);color:white;padding:7px 13px;border-radius:12px;font-size:25px}.brand b span{color:var(--teal)}.access{display:flex;gap:8px}.access button{background:var(--paper);border:1px solid var(--line);padding:8px 12px;border-radius:8px;font-size:.85em}main{padding:0 32px}.notice{border-left:5px solid var(--yellow);background:#fff6d7;padding:13px 20px;font-size:.9em}.notice strong{margin-right:15px}.intro{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:45px;padding:46px 0 52px}.eyebrow{font-size:.8em;letter-spacing:.11em;font-weight:800}h1{font-size:clamp(2.5rem,4.8vw,4.6rem);line-height:1.06;letter-spacing:-.045em;margin:18px 0 24px}h1 em{font-style:normal;color:#007f86}.lead{font-size:1.12em}figure{margin:0}figure img{width:100%;border-radius:22px;background:var(--paper)}figcaption{font-size:.8em;margin:8px 10px;color:#52677b}.actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:28px}.primary{background:var(--navy);color:white;padding:15px 22px;border-radius:10px;text-decoration:none;font-weight:700}h2{font-size:2rem;line-height:1.2;margin:10px 0 24px}.tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.tabs button{border:1px solid var(--line);background:var(--paper);padding:16px 10px;border-radius:10px;font-weight:700;color:var(--navy)}.tabs button[aria-selected=true]{background:var(--navy);color:white;box-shadow:inset 0 -5px var(--teal)}.filters{display:grid;grid-template-columns:2fr 1fr;gap:20px;padding:25px 0 5px}label{font-size:.9em;font-weight:650}input,select{display:block;width:100%;padding:14px;border:1px solid #95aebf;border-radius:8px;margin-top:8px;background:white;color:var(--text)}#explain,#count{font-size:.88em;color:#52677b}#results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-height:850px;overflow:auto;padding:3px 5px 12px 2px}.connection{border:1px solid var(--line);border-radius:13px;padding:21px;background:var(--paper)}.connection h3{font-size:1.12em;margin:0 0 5px}.meta{font-size:.82em;color:#52677b}.route{display:inline-block;background:white;border:1px solid var(--line);padding:4px 10px;border-radius:6px;font-weight:700;margin:12px 0}.times{font-size:1.25em;font-weight:800;white-space:pre-line;color:var(--navy)}.detail{font-size:.88em;margin:10px 0 0;white-space:pre-line}.vehicles{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:55px 0}.vehicles img{width:100%;height:240px;object-fit:cover;border-radius:16px}.vehicles p{margin:8px 0;font-weight:650}.feedback{background:var(--navy);color:white;padding:35px;border-radius:18px;display:grid;grid-template-columns:2fr 1fr;gap:35px;align-items:center}.feedback .eyebrow{color:var(--teal)}.feedback button{background:var(--yellow);color:var(--navy);border:0;padding:15px;border-radius:8px;font-weight:750;cursor:default}.feedback small{display:block;margin-top:10px}.credits{font-size:.83em;padding:35px 0;color:#52677b}.credits p{max-width:1000px}footer{padding:25px 32px;border-top:1px solid var(--line);display:flex;gap:25px;flex-wrap:wrap;font-size:.85em}.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:white;z-index:10;padding:15px}.large{font-size:21px}.contrast{--navy:#000;--text:#000;--paper:#fff;--line:#000}.contrast .meta,.contrast #count,.contrast #explain,.contrast .credits{color:#000}.contrast h1 em{color:#005c62}.document{max-width:900px;padding:40px 24px}.document h1{font-size:2.5rem}.document h2{font-size:1.4rem;margin-top:32px}.pdf{width:100%;height:75vh;border:1px solid var(--line);margin-top:25px}@media(max-width:750px){header{align-items:flex-start;flex-direction:column;padding:18px}.access{flex-wrap:wrap}main{padding:0 18px}.intro{grid-template-columns:1fr;gap:25px;padding:30px 0}h1{font-size:2.8rem}.intro figure{max-width:500px}.tabs{grid-template-columns:1fr 1fr}.filters,#results,.feedback{grid-template-columns:1fr}.vehicles{gap:12px}.vehicles img{height:150px}.feedback{padding:25px}#results{max-height:none}.actions{gap:15px}footer{padding:20px 18px}.notice strong{display:block}.times{overflow-wrap:anywhere}}
.about,.thanks{padding:36px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.about p,.thanks p{max-width:1050px}.thanks{border-top:3px solid var(--teal)}.signature{font-size:.95em}.intro{grid-template-columns:1fr}.intro figure img{width:100%;max-height:620px;object-fit:contain}.intro figure{width:100%}.intro h1 br{display:none}@media(max-width:750px){.about-grid{grid-template-columns:1fr}.intro h1{font-size:2.6rem}}

/* A közös kép változatlan; a felirat olvasható HTML-réteg. */
.hero-intro{display:block;padding:28px 0 46px}.hero-intro .hero-figure{max-width:none;margin:0}.hero-scene{position:relative;isolation:isolate;border-radius:24px;overflow:hidden;background:#dceffa;box-shadow:0 18px 45px #071c3d18}.hero-intro .hero-scene img{display:block;width:100%;height:auto;max-height:none;border-radius:0;object-fit:contain}.hero-scene:after{content:"";position:absolute;inset:0 0 auto;height:43%;background:linear-gradient(180deg,#f5fbffed 0%,#eef8ffc9 55%,#e7f5ff00 100%);z-index:1;pointer-events:none}.hero-copy{position:absolute;z-index:2;inset:0 0 auto;text-align:center;padding:28px 20px 0}.hero-copy .eyebrow{margin:0 0 12px;font-size:.76em;letter-spacing:.16em;color:#183954}.hero-intro .hero-copy h1{font-size:clamp(2rem,4.2vw,3.8rem);line-height:1.14;letter-spacing:-.04em;margin:0 0 13px;color:#071c3d}.hero-copy h1 em{color:#006c76;font-weight:750}.hero-tagline{font-size:clamp(1rem,1.7vw,1.35rem);line-height:1.4;font-weight:550;margin:0;color:#102747}.hero-signature{text-align:center!important;font-size:1.02em!important;color:var(--navy)!important;padding:19px 8px 0;margin:0!important}.hero-signature:before{content:"";display:block;width:56px;height:3px;margin:0 auto 13px;background:var(--yellow)}.hero-actions{justify-content:center;margin-top:25px}.hero-secondary{border:1px solid var(--line);border-radius:10px;padding:14px 20px;text-decoration:none;font-weight:650}.contrast .hero-copy{background:#fff}.large .hero-copy{position:relative;padding-bottom:22px;background:#edf8ff}.large .hero-scene{display:flex;flex-direction:column}.large .hero-copy{order:-1}.large .hero-scene:after{display:none}@media(max-width:750px){.hero-copy{padding:18px 15px 0}.hero-copy .eyebrow{font-size:.65em;letter-spacing:.08em;margin-bottom:9px}.hero-intro .hero-copy h1{font-size:clamp(1.8rem,6vw,2.7rem);margin-bottom:9px}.hero-tagline{font-size:1rem}.hero-intro .hero-scene img{padding-top:85px}.hero-scene:after{height:62%}.hero-signature{font-size:.95em!important}.hero-actions{gap:10px}.hero-actions a{width:100%;text-align:center}.hero-scene{border-radius:16px}.large .hero-scene img{padding-top:0}}
/* Megállóalapú, egy átszállás = egy sor nézet. */
[hidden]{display:none!important}.stop-planner{padding:24px 0 40px;scroll-margin-top:15px}.stop-controls{display:grid;grid-template-columns:1.5fr 1fr;gap:24px;margin:25px 0}.stop-controls label{font-size:1rem}.step{display:inline-grid;place-items:center;width:29px;height:29px;background:var(--navy);color:white;border-radius:50%;margin-right:7px}.stop-controls select{min-height:56px}.stop-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}.stop-choice{padding:20px 17px;border:1px solid var(--line);border-left:5px solid var(--teal);border-radius:9px;background:var(--paper);color:var(--navy);font-weight:650;text-align:left}.stop-choice:hover,.stop-choice:focus-visible{background:var(--navy);color:white}.result-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:3px solid var(--teal);padding:18px 0}.result-heading h3{font-size:1.8rem;margin:4px 0;scroll-margin-top:15px}.result-heading .eyebrow{margin:0}.secondary-button{background:white;color:var(--navy);border:1px solid var(--line);border-radius:8px;padding:12px 18px}.reading-help{background:#fff6d7;padding:14px 18px;border-radius:8px}.transfer-table{width:100%;border-collapse:collapse;text-align:left;font-size:1rem}.transfer-table th{padding:16px 12px;background:var(--navy);color:white;font-size:.9rem}.transfer-table td{padding:20px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.transfer-table tbody tr:nth-child(even){background:var(--paper)}.transfer-table strong{font-size:1.3em;display:inline-block;min-width:65px;font-variant-numeric:tabular-nums}.route-name{display:block;font-weight:650}.transfer-arrow{color:#006c76;font-size:1.6rem}.direction{max-width:370px}.direction small,.wait small{display:block;margin-top:5px;font-size:.85rem;color:#46596d}.wait{white-space:nowrap}.transfer-note{font-size:.9rem;color:#46596d;margin:20px 0}.print-links{display:flex;gap:24px;flex-wrap:wrap;margin:30px 0 0;padding:20px 0;border-top:1px solid var(--line)}.empty{padding:24px;background:var(--paper)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.contrast .reading-help{border:2px solid black}.contrast small,.contrast .transfer-note{color:#000}@media(max-width:750px){.stop-list{grid-template-columns:1fr 1fr}.stop-controls{grid-template-columns:1fr;gap:16px}.result-heading{align-items:flex-start;flex-direction:column}.transfer-table,.transfer-table tbody{display:block}.transfer-table thead{display:none}.transfer-table tr{display:grid;grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr);margin:15px 0;border:1px solid var(--line);border-radius:10px;overflow:hidden}.transfer-table td{padding:15px 12px;border:0}.transfer-table td:before{content:attr(data-label);display:block;font-size:.8rem;font-weight:500;margin-bottom:5px}.transfer-table .transfer-arrow{padding:40px 0 0;text-align:center}.transfer-table .transfer-arrow:before{display:none}.transfer-table .direction{grid-column:1/4;max-width:none;border-top:1px solid var(--line);padding-bottom:7px}.transfer-table .wait{grid-column:1/4;padding-top:4px}.transfer-table .wait:before{display:inline;margin-right:8px}.wait small{display:inline;margin-left:8px}.transfer-table strong{font-size:1.45em}}@media(max-width:390px){.stop-list{grid-template-columns:1fr}}@media print{body{font-size:11pt;color:black!important;background:white!important}header,footer,.intro,.notice,.feedback,.about,.thanks,.credits,.stop-controls,.stop-list,.print-links,.reading-help,#all-stops,#print-stop,.stop-planner>p,.stop-planner>h2,.skip{display:none!important}main{max-width:none;padding:0}.stop-planner{padding:0}.result-heading{padding:0}.result-heading:before{content:'Vácz–Aranyosi menetrendtervezet – még be nem vezetett javaslat';font-size:10pt}.result-heading{display:block}.transfer-table,.transfer-table tbody{display:table;width:100%}.transfer-table tbody{display:table-row-group}.transfer-table thead{display:table-header-group}.transfer-table tr{display:table-row;break-inside:avoid}.transfer-table th,.transfer-table td{display:table-cell;padding:8px!important;color:black!important;background:white!important;border-bottom:1px solid #999}.transfer-table td:before{display:none!important}.transfer-table strong{font-size:12pt}.route-name{font-size:11pt}.transfer-table .transfer-arrow{padding:8px!important}.direction small,.wait small{font-size:9pt}.transfer-note{color:black}}

.stop-controls{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:760px){.stop-controls{grid-template-columns:1fr}}

.draft-badge{display:inline-block;background:#fff0c9;color:#603c00;padding:8px 12px;border-radius:6px;max-width:100%;line-height:1.5}.draft-warning{background:#fff3d6;border-left:5px solid #b97b13;color:#49340d;padding:20px;margin:22px 0;border-radius:8px}.draft-warning p{margin:8px 0 15px}.current-links{display:flex;flex-wrap:wrap;gap:12px 24px}.current-links a{color:#174b58;text-decoration:underline;font-weight:650}.result-draft{font-weight:700;color:#775000;font-size:1rem}.contrast .draft-warning,.contrast .draft-badge{background:#fff;color:#000;border:2px solid #000}.contrast .result-draft{color:#000}@media print{.draft-warning,.current-links{display:none!important}.result-draft{color:#000}.result-heading:before{content:'Vácz–Aranyosi menetrendtervezet'}.transfer-table thead:before{content:'TERVEZET – NEM ÉRVÉNYES MENETREND';display:table-caption;font-weight:bold;padding:5px 0}}

.direction-control{display:block;font-weight:700;margin:20px 0}.direction-control select{display:block;width:100%;font:inherit;padding:14px;margin-top:8px;border:1px solid #819c9b;border-radius:8px;background:white;color:#173f41}.approach{display:block;font-size:.9rem;margin-top:6px;font-weight:400}.contrast .direction-control select{border:2px solid black}@media print{.direction-control{display:none}}

/* JOY4U-inspired turquoise and sunshine, with a distinct rose draft notice. */
:root{--rose:#f9dce5;--burgundy:#76243f;--aqua-soft:#e1f7f5;--sun-soft:#fff1b8}
body:not(.contrast){background:#f7fcfd}
body:not(.contrast) header{border-bottom:3px solid var(--teal)}
body:not(.contrast) .notice,body:not(.contrast) .draft-warning{background:var(--rose);color:var(--burgundy);border-left-color:#b84e72}
body:not(.contrast) .draft-warning strong,body:not(.contrast) .draft-warning a{color:var(--burgundy)}
body:not(.contrast) .draft-badge{background:var(--rose);color:var(--burgundy)}
body:not(.contrast) .result-draft{color:var(--burgundy)}
body:not(.contrast) .stop-choice{background:var(--aqua-soft);border-color:#a8ded9;border-left-color:#079b98}
body:not(.contrast) .stop-choice:nth-child(even){background:var(--sun-soft);border-color:#e8d680;border-left-color:#dfa900}
body:not(.contrast) .stop-choice:hover,body:not(.contrast) .stop-choice:focus-visible{background:#b8eeea;border-color:#007b79}
body:not(.contrast) .step{background:var(--yellow);color:var(--navy)}
body:not(.contrast) .transfer-table thead th{background:#087e80;color:white}
body:not(.contrast) .transfer-table tbody tr:nth-child(even){background:#eaf9f7}
body:not(.contrast) .feedback{background:#d5f2ef;color:var(--navy);border-top:5px solid var(--teal)}
body:not(.contrast) .feedback small{color:#334d61}
body:not(.contrast) .feedback + .feedback{background:#fff1bd;border-top-color:var(--yellow)}
body:not(.contrast) .about-grid article{background:white;border-top:4px solid var(--teal);border-radius:12px;padding:24px}
body:not(.contrast) .about-grid article:nth-child(2){border-top-color:var(--yellow)}
body:not(.contrast) .thanks{background:#e2f6f3;padding:28px;border-radius:16px;margin-bottom:24px}
.source-summary{max-width:650px;font-size:.9rem}.source-summary summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px;font-weight:650}.source-summary p{line-height:1.65}.source-summary[open]{flex-basis:100%}
@media print{body:not(.contrast){background:white}.source-summary{display:none}body:not(.contrast) .notice,body:not(.contrast) .draft-warning{background:white;color:black}}
