:root{--bg:#f7f7f4;--surface:#fff;--ink:#14140f;--ink2:#52514e;--mut:#7b7a74;--line:#e3e2dc;--acc:#2a78d6;--accsoft:#e8f0fb;--good:#0e7a55;--goodsoft:#e3f4ec;--warn:#b45309;--shadow:0 1px 2px rgba(20,20,15,.05),0 8px 28px rgba(20,20,15,.07);--r:14px}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#111110;--surface:#1a1a19;--ink:#f6f6f2;--ink2:#c3c2b7;--mut:#8f8e86;--line:#2f2f2c;--acc:#3987e5;--accsoft:#16273b;--good:#3ccf9f;--goodsoft:#12302a;--warn:#e0a458;--shadow:0 1px 2px rgba(0,0,0,.3),0 8px 28px rgba(0,0,0,.35)}}
:root[data-theme=dark]{--bg:#111110;--surface:#1a1a19;--ink:#f6f6f2;--ink2:#c3c2b7;--mut:#8f8e86;--line:#2f2f2c;--acc:#3987e5;--accsoft:#16273b;--good:#3ccf9f;--goodsoft:#12302a;--warn:#e0a458;--shadow:0 1px 2px rgba(0,0,0,.3),0 8px 28px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--acc)}.wrap{max-width:1060px;margin:0 auto;padding:0 20px}
header.top{border-bottom:1px solid var(--line);background:var(--surface)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}
.logo{font-weight:800;letter-spacing:-.02em;text-decoration:none;color:var(--ink);font-size:1.1rem}.logo span{color:var(--acc)}
nav a{color:var(--ink2);text-decoration:none;margin-left:20px;font-size:.95rem}nav a:hover{color:var(--ink)}
.hero{padding:44px 0 28px;background:radial-gradient(900px 300px at 20% -10%,var(--accsoft),transparent 70%)}
h1{font-size:clamp(1.9rem,4.6vw,3rem);line-height:1.1;letter-spacing:-.03em;margin:0 0 12px;max-width:760px}
.lead{color:var(--ink2);font-size:1.12rem;max-width:660px;margin:0 0 26px}
.search{background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:18px}
.tabs{display:flex;gap:6px;margin-bottom:14px;flex-wrap:wrap}
.tab{border:1px solid var(--line);background:transparent;color:var(--ink2);padding:7px 14px;border-radius:999px;font:inherit;font-size:.92rem;cursor:pointer}
.tab[aria-selected=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.tab[disabled]{opacity:.55;cursor:not-allowed}.tab small{font-size:.7rem;margin-left:4px;color:var(--mut)}
.fields{display:grid;grid-template-columns:2.2fr 1fr 1fr .8fr 1.2fr;gap:10px}
.field{display:flex;flex-direction:column;gap:4px}
.field label{font-size:.75rem;color:var(--mut);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
input,select{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:11px 12px;min-width:0;width:100%}
input:focus,select:focus,button:focus-visible{outline:2px solid var(--acc);outline-offset:1px}
.big{font-size:1.08rem;padding:13px 14px}
.picker{margin-top:18px;border-top:1px solid var(--line);padding-top:16px}
.picker-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:10px}
.picker-head h2{font-size:1rem;margin:0}.presets{display:flex;gap:6px;flex-wrap:wrap}
.pill{border:1px solid var(--line);background:var(--bg);color:var(--ink2);padding:5px 12px;border-radius:999px;font:inherit;font-size:.85rem;cursor:pointer}
.pill:hover{border-color:var(--acc);color:var(--ink)}
.region{margin:12px 0 4px;font-size:.78rem;color:var(--mut);font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.chips{display:flex;flex-wrap:wrap;gap:7px}
.chip{display:inline-flex;align-items:center;gap:7px;border:1.5px solid var(--line);background:var(--bg);border-radius:12px;padding:7px 11px 7px 9px;font:inherit;font-size:.9rem;color:var(--ink);cursor:pointer;position:relative}
.chip .f{font-size:1.35rem;line-height:1}
.chip[aria-pressed=true]{border-color:var(--acc);background:var(--accsoft)}
.chip[aria-pressed=true]::after{content:"✓";color:var(--acc);font-weight:800;font-size:.8rem}
.chip i{font-style:normal;font-size:.62rem;color:var(--good);background:var(--goodsoft);border-radius:6px;padding:1px 5px}
.go{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;flex-wrap:wrap}
.count{color:var(--ink2);font-size:.95rem}.count b{color:var(--ink)}
.btn{background:var(--acc);color:#fff;border:0;border-radius:12px;padding:13px 24px;font:inherit;font-weight:700;cursor:pointer;font-size:1rem}
.btn:hover{filter:brightness(1.08)}
section.block{padding:42px 0 6px}
h2.sec{font-size:1.6rem;letter-spacing:-.02em;margin:0 0 6px}.sub{color:var(--ink2);margin:0 0 20px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px}
.kpi .v{font-size:1.75rem;font-weight:800;letter-spacing:-.02em;line-height:1.1}.kpi .l{color:var(--mut);font-size:.82rem;margin-top:4px}
.kpi.hot{background:var(--goodsoft);border-color:transparent}.kpi.hot .v{color:var(--good)}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px 20px}
.card h3{margin:0 0 4px;font-size:1.05rem}.card .hint{color:var(--mut);font-size:.85rem;margin:0 0 14px}
.homebar{display:flex;align-items:center;gap:10px;margin-bottom:14px;font-size:.92rem;color:var(--ink2);flex-wrap:wrap}.homebar select{width:auto;padding:7px 10px}
ol.bars{list-style:none;margin:0;padding:0}
ol.bars li{display:grid;grid-template-columns:minmax(120px,170px) 1fr 74px;align-items:center;gap:12px;padding:5px 0;border-radius:8px}
ol.bars li:hover{background:var(--bg)}
.bars .nm{display:flex;align-items:center;gap:9px;font-size:.95rem}.bars .nm .f{font-size:1.4rem;line-height:1}
.track{position:relative;height:18px;background:var(--bg);border-radius:6px}
.fill{height:100%;background:var(--acc);border-radius:2px 4px 4px 2px;opacity:.78}
.bars li.best .fill{opacity:1}.bars li.home .fill{background:var(--mut);opacity:.6}
.base{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--ink);opacity:.55;border-radius:1px}
.val{text-align:right;font-variant-numeric:tabular-nums;font-size:.92rem}.val b{display:block;line-height:1.2}
.val small{color:var(--good);font-weight:700}.val small.up{color:var(--warn)}
.legend{font-size:.8rem;color:var(--mut);margin-top:10px}.legend i{display:inline-block;width:2px;height:12px;background:var(--ink);opacity:.55;vertical-align:-2px;margin-right:5px}
.hotels{display:grid;gap:10px}
a.hrow{display:grid;grid-template-columns:minmax(150px,1.3fr) 2fr minmax(110px,.8fr);gap:16px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 18px;text-decoration:none;color:var(--ink)}
a.hrow:hover{border-color:var(--acc)}
.hrow .n{font-weight:600;line-height:1.3}.hrow .n small{display:block;color:var(--mut);font-weight:400}
.hrow .r{text-align:right}.hrow .r b{display:block;font-size:1.15rem}.hrow .r span{color:var(--good);font-size:.85rem;font-weight:700}
svg.dots{width:100%;height:34px;overflow:visible;display:block}
svg.dots .ln{stroke:var(--line);stroke-width:3;stroke-linecap:round}
svg.dots .d{fill:var(--acc);stroke:var(--surface);stroke-width:2}svg.dots .d.min{fill:var(--good)}svg.dots .d.home{fill:var(--surface);stroke:var(--ink);stroke-width:2}
svg.dots text{font-size:9px;fill:var(--mut)}
table{width:100%;border-collapse:collapse;font-size:.92rem}
th,td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:right;font-variant-numeric:tabular-nums}
th:first-child,td:first-child{text-align:left}th{color:var(--mut);font-weight:600;font-size:.8rem}
td.min{color:var(--good);font-weight:800}.scroll{overflow-x:auto}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.step{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px}.step b{display:block;margin-bottom:4px}
.step em{font-style:normal;display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--accsoft);color:var(--acc);font-weight:800;margin-bottom:8px}
details{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin-bottom:8px}
summary{cursor:pointer;font-weight:600}details p{margin:8px 0 2px;color:var(--ink2)}
.answer{background:var(--surface);border-left:4px solid var(--acc);border-radius:0 var(--r) var(--r) 0;padding:16px 20px;margin:0 0 22px;font-size:1.05rem}
.crumbs{font-size:.85rem;color:var(--mut);padding:18px 0 0}.crumbs a{color:var(--mut)}
footer{margin-top:60px;border-top:1px solid var(--line);padding:26px 0 40px;color:var(--mut);font-size:.85rem}
footer a{color:var(--mut);margin-right:14px}
dialog{border:0;border-radius:18px;padding:26px;max-width:480px;width:calc(100% - 32px);background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}
dialog::backdrop{background:rgba(0,0,0,.45)}dialog h3{margin:0 0 8px}dialog p{color:var(--ink2)}
.tip{position:fixed;pointer-events:none;background:var(--ink);color:var(--surface);font-size:.8rem;padding:6px 9px;border-radius:8px;z-index:9;display:none;max-width:240px}
@media(max-width:860px){.fields{grid-template-columns:1fr 1fr}.field.wide{grid-column:1/-1}.kpis{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr}
a.hrow{grid-template-columns:1fr;gap:6px}.hrow .r{text-align:left}ol.bars li{grid-template-columns:minmax(100px,130px) 1fr 64px;gap:8px}nav a{margin-left:12px}}

.answer.big{font-size:1.25rem;line-height:1.45;border-left-width:6px}.answer b{color:var(--good)}
.results{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(310px,1fr))}
.res{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px 20px}
.res.big{grid-column:1/-1;border:2px solid var(--good);box-shadow:var(--shadow)}
.res h3{margin:0 0 12px;font-size:1.05rem;line-height:1.3}.res.big h3{font-size:1.3rem}
.pair{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}
.pair .p{display:flex;flex-direction:column;gap:2px;background:var(--bg);border-radius:12px;padding:12px 14px}
.pair .p.now{background:var(--goodsoft)}.pair .lbl{font-size:.8rem;color:var(--mut)}
.pair .amt{font-size:1.6rem;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.res.big .amt{font-size:2.2rem}
.pair .now .amt{color:var(--good)}.arrow{color:var(--mut);font-size:1.4rem}
.save{margin:12px 0 0;font-size:1.02rem}.save b{color:var(--good);font-size:1.15rem}.save.none{color:var(--mut)}
.acts{display:flex;gap:8px;align-items:center;margin:14px 0 4px;flex-wrap:wrap}
.btn.small{padding:9px 16px;font-size:.92rem;text-decoration:none;display:inline-block;border-radius:10px}
.res details{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:10px 0 0;margin:10px 0 0}
ul.diff{list-style:none;margin:8px 0 0;padding:0}ul.diff li{display:grid;grid-template-columns:1fr auto 70px;gap:10px;padding:6px 0;border-bottom:1px solid var(--line);font-size:.93rem}
ul.diff li.best b{color:var(--good)}ul.diff small{color:var(--mut);text-align:right}ul.diff.wide li{grid-template-columns:1fr auto 80px}
details.more{margin-top:16px}
.feed{padding:16px}.feed .when{color:var(--mut)}.feed h3{margin:2px 0 4px}.feed .mini{margin:0 0 10px;color:var(--ink2);font-size:.88rem;line-height:1.3}
.feed .amt{font-size:1.3rem!important}.feed .pair .p{padding:9px 11px}
a.hrow2{display:grid;grid-template-columns:minmax(150px,1.4fr) 2fr minmax(110px,.8fr);gap:16px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 18px;text-decoration:none;color:var(--ink)}
a.hrow2:hover{border-color:var(--acc)}.hrow2 .n{font-weight:600;line-height:1.3}.hrow2 .n small{display:block;color:var(--mut);font-weight:400}
.hrow2 .m{display:flex;align-items:center;gap:10px;font-variant-numeric:tabular-nums}.hrow2 .m span{font-size:.8rem;color:var(--mut)}.hrow2 .m b{font-size:1.15rem}.hrow2 .m .g{color:var(--good)}
.hrow2 .r{text-align:right;color:var(--good);font-weight:800}
@media(max-width:860px){.pair{grid-template-columns:1fr}.arrow{transform:rotate(90deg);justify-self:center}a.hrow2{grid-template-columns:1fr;gap:6px}.hrow2 .r{text-align:left}ul.diff li{grid-template-columns:1fr auto 60px}}

.field.wide{position:relative}
.sug{position:absolute;z-index:20;top:100%;left:0;right:0;margin:4px 0 0;padding:6px;list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);max-height:340px;overflow:auto}
.sug li{display:flex;gap:10px;padding:9px 10px;border-radius:9px;cursor:pointer;align-items:flex-start}.sug li:hover{background:var(--accsoft)}
.sug li .ic{font-size:1.15rem;line-height:1.3}.sug li b{display:block;font-size:.95rem;line-height:1.3}.sug li small{color:var(--mut);font-size:.8rem}
.sug li.none{cursor:default;color:var(--warn);font-size:.9rem}.sug li.none:hover{background:transparent}
input.ok{border-color:var(--good)}.qhint{color:var(--warn);font-size:.85rem;margin-top:2px}.qhint:empty{display:none}

body.mode-live>.hero,body.mode-live>section:not(#live){display:none}
.wait{text-align:center;padding:90px 0 120px}.wait h2{font-size:1.6rem;letter-spacing:-.02em;margin:26px 0 8px}.wait p{color:var(--ink2);font-size:1.1rem;margin:0}
.spin{width:72px;height:72px;margin:0 auto;border-radius:50%;border:7px solid var(--line);border-top-color:var(--acc);animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.spin{animation-duration:3s}}

.results{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}
.res.big{grid-column:auto;border:2px solid var(--good)}.res.big h3{font-size:1.05rem}.res.big .amt{font-size:1.6rem}
.res{display:flex;flex-direction:column}.res h3{min-height:2.6em}.res .acts{margin-top:auto;padding-top:14px}
.pair{grid-template-columns:1fr 24px 1fr}.pair.one{grid-template-columns:1fr}.pair .p{min-height:84px;justify-content:center}
.wait p+p{margin-top:6px}.wait #live-wait-sub{font-weight:600;color:var(--ink)}
@media(max-width:860px){.pair{grid-template-columns:1fr}.pair .p{min-height:0}}

:root{--s0:#2a78d6;--s1:#eb6834;--s2:#1baf7a;--s3:#eda100;--s4:#e87ba4;--s5:#4a3aa7;--s6:#8d8c85;--s7:#cfcec7}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--s0:#3987e5;--s1:#d95926;--s2:#199e70;--s3:#c98500;--s4:#d55181;--s5:#9085e9;--s6:#7b7a74;--s7:#4a4a46}}
:root[data-theme=dark]{--s0:#3987e5;--s1:#d95926;--s2:#199e70;--s3:#c98500;--s4:#d55181;--s5:#9085e9;--s6:#7b7a74;--s7:#4a4a46}
.two{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.donutbox{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
svg.donut{flex:none;max-width:100%;height:auto}svg.donut .ring{stroke:var(--line)}
svg.donut .sl{transition:opacity .15s;cursor:pointer}svg.donut:hover .sl{opacity:.55}svg.donut .sl:hover{opacity:1}
.s0{stroke:var(--s0)}.s1{stroke:var(--s1)}.s2{stroke:var(--s2)}.s3{stroke:var(--s3)}.s4{stroke:var(--s4)}.s5{stroke:var(--s5)}.s6{stroke:var(--s6)}.s7{stroke:var(--s7)}
svg.donut .dc{font-size:7px;font-weight:800;fill:var(--ink)}svg.donut .ds{font-size:2.6px;fill:var(--mut)}
ul.legend{list-style:none;margin:0;padding:0;flex:1;min-width:190px}
ul.legend li button{all:unset;box-sizing:border-box;display:grid;grid-template-columns:14px 1fr auto;gap:10px;align-items:center;width:100%;padding:8px 10px;border-radius:10px;cursor:pointer;font-size:.95rem}
ul.legend li button:hover,ul.legend li button[aria-pressed=true]{background:var(--accsoft)}
ul.legend i{width:12px;height:12px;border-radius:4px;display:block}
ul.legend .pc{font-weight:800;font-variant-numeric:tabular-nums}
.bg0{background:var(--s0)}.bg1{background:var(--s1)}.bg2{background:var(--s2)}.bg3{background:var(--s3)}.bg4{background:var(--s4)}.bg5{background:var(--s5)}.bg6{background:var(--s6)}.bg7{background:var(--s7)}
.hl{list-style:none;margin:14px 0 0;padding:0}.hl li{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.92rem}
.hl li small{grid-column:1/-1;color:var(--mut)}.hl li b{color:var(--good);white-space:nowrap}
.empty{color:var(--mut);padding:30px 6px}
@media(max-width:860px){.two{grid-template-columns:1fr}}

ul.legend i.bg0{background:var(--s0);opacity:1;width:12px;height:12px}ul.legend i.bg1{background:var(--s1);opacity:1;width:12px;height:12px}ul.legend i.bg2{background:var(--s2);opacity:1;width:12px;height:12px}ul.legend i.bg3{background:var(--s3);opacity:1;width:12px;height:12px}
ul.legend i.bg4{background:var(--s4);opacity:1;width:12px;height:12px}ul.legend i.bg5{background:var(--s5);opacity:1;width:12px;height:12px}ul.legend i.bg6{background:var(--s6);opacity:1;width:12px;height:12px}ul.legend i.bg7{background:var(--s7);opacity:1;width:12px;height:12px}

main.home{padding:34px 20px 20px}main.home h1{font-size:clamp(1.8rem,4.6vw,2.6rem)}main.home .lead{margin-bottom:22px}
.chart1{padding:26px 24px}.chart1 .donutbox{justify-content:center;gap:34px}.chart1 ul.legend{max-width:340px;font-size:1.05rem}
#detail{margin-top:16px}.dh{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.dh h3{margin:0}
.from{font-size:.88rem;color:var(--ink2)}.from select{width:auto;padding:6px 8px;margin-left:6px}
.basis{color:var(--mut);font-size:.85rem;margin:16px 0}
ul.hl.linked li{display:block;padding:0}ul.hl.linked li a{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:11px 8px;color:var(--ink);text-decoration:none;border-radius:8px}
ul.hl.linked li a:hover{background:var(--accsoft)}ul.hl.linked .nm{font-weight:600}ul.hl.linked .ext{font-style:normal;color:var(--acc);margin-left:6px}
ul.hl.linked small{grid-column:1/-1;color:var(--mut)}

.hero2{text-align:center;padding:10px 0 26px}
.badge25{width:min(190px,52vw);aspect-ratio:1;margin:0 auto 22px;border-radius:50%;background:var(--good);color:#fff;display:grid;place-items:center;box-shadow:0 10px 30px color-mix(in srgb,var(--good) 35%,transparent);animation:pop .6s cubic-bezier(.2,1.4,.4,1) both}
.badge25 span{font-size:clamp(2.6rem,10vw,3.6rem);font-weight:800;letter-spacing:-.04em}
@keyframes pop{from{transform:scale(.6);opacity:0}to{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){.badge25{animation:none}}
.hero2 h1{font-size:clamp(2rem,7vw,3.2rem);line-height:1.08;margin:0 auto 12px;max-width:none}
.hero2 .fn{color:var(--mut);font-size:.85rem;margin:0 auto;max-width:480px}
.chart1 .q{font-weight:700;font-size:1.15rem;margin:0 0 14px;text-align:center}
details.info{max-width:680px;margin:0 auto}details.info summary{text-align:center;color:var(--ink2)}details.info h3{font-size:1rem;margin:16px 0 4px}details.info p{margin:0;color:var(--ink2)}
main.home{padding-top:26px}

.hero2 .ind{font-weight:700;margin:0 auto 10px;font-size:1.05rem}
.chart1 .qs{text-align:center;color:var(--mut);font-size:.88rem;margin:-8px 0 14px}
.offer{text-align:center;margin:30px 0 10px}.offer h2{font-size:1.5rem;margin:0 0 14px}
.plans{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.plan{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:170px;padding:16px 22px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);text-decoration:none;color:var(--ink);transition:border-color .15s,transform .15s}
.plan:hover{border-color:var(--acc);transform:translateY(-2px)}.plan .pn{font-weight:700}.plan .pc2{font-size:2rem;font-weight:800;letter-spacing:-.03em;color:var(--acc)}.plan .pd{color:var(--ink2);font-size:.9rem}
.offer .why{max-width:560px;margin:16px auto 0;color:var(--ink2);font-size:.92rem}
.hotelcard{padding:14px 4px;border-bottom:1px solid var(--line)}
.hotelcard .hn{font-weight:700;font-size:1.02rem;margin:0}
.hotelcard .loc{color:var(--ink2);font-size:.88rem;margin:2px 0 10px}
.hotelcard .pr{display:grid;grid-template-columns:1fr 22px 1fr;gap:8px;align-items:stretch}
.hotelcard .b{border-radius:10px;padding:9px 12px;background:var(--bg)}
.hotelcard .b.g{background:var(--goodsoft)}
.hotelcard .b small{display:block;color:var(--mut);font-size:.8rem}.hotelcard .b.g small{color:var(--good)}
.hotelcard .b strong{font-size:1.3rem;font-variant-numeric:tabular-nums}.hotelcard .b.g strong{color:var(--good)}
.hotelcard .ar{display:grid;place-items:center;color:var(--mut)}
.hotelcard .ft{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}
.hotelcard .sv{color:var(--good);font-weight:700}.hotelcard a.go2{color:var(--acc);text-decoration:none;font-size:.9rem}
.hotelcard a.go2:hover{text-decoration:underline}
@media(max-width:560px){.hotelcard .pr{grid-template-columns:1fr}.hotelcard .ar{transform:rotate(90deg)}}
.steps3{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 6px}.steps3 span{flex:1;min-width:140px;background:var(--bg);border-radius:10px;padding:8px 12px;font-size:.88rem;color:var(--ink2)}
.steps3 b{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--ink);color:var(--surface);font-size:.75rem;margin-right:8px}
.vpnnote{color:var(--mut);font-size:.8rem;margin:0 0 6px}

.packs{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.pack{flex:1;min-width:160px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 18px;border:2px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);cursor:pointer;font:inherit}
.pack[aria-checked=true]{border-color:var(--acc);background:var(--accsoft)}
.pack .pn{font-weight:700}.pack .pc2{font-size:1.7rem;font-weight:800;letter-spacing:-.03em;color:var(--acc)}.pack .pd{color:var(--ink2);font-size:.9rem}
.testnote{color:var(--mut);font-size:.82rem;margin:8px 0 0}
details.custom{border:0;background:transparent;padding:0;margin-top:14px}details.custom summary{font-weight:400;color:var(--ink2);font-size:.92rem}

/* Startseite: Gutschein-Karten */
.deal{background:var(--goodsoft);color:var(--good);border:2px dashed var(--good);border-radius:16px;overflow:hidden;margin:0 auto 14px;max-width:640px;text-align:left}
.deal .dn{padding:14px 18px 2px;font-weight:700;font-size:1.1rem;color:var(--ink)}
.deal .dl{padding:0 18px 8px;font-size:.85rem;color:var(--ink2)}
.deal .halves{display:grid;grid-template-columns:1fr 1fr;border-top:2px dashed var(--good)}
.deal .halves>div{padding:14px 18px}.deal .halves>div+div{border-left:2px dashed var(--good)}
.deal .fl{font-size:1.7rem;line-height:1}.deal small{display:block;font-size:.8rem;margin:4px 0 2px;opacity:.9}
.deal b{font-size:clamp(1.5rem,6vw,2rem);font-weight:800;letter-spacing:-.02em}
.deal .old{text-decoration:line-through;opacity:.65;color:var(--ink2)}
.deal .sv{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:2px dashed var(--good);padding:10px 18px;font-weight:600}
.deal .sv strong{font-size:1.4rem;font-weight:800}
.deal a.gol{color:var(--good);font-size:.85rem;font-weight:600}
.bigbtn{display:inline-block;text-decoration:none;font-size:1.15rem;padding:15px 32px}
details.stat{max-width:900px;margin:0 auto 10px}
.dealmore{text-align:center;margin:0 0 10px}

nav a.lang{border:1px solid var(--line);border-radius:999px;padding:4px 12px;font-size:.85rem}
@media(max-width:480px){
.deal .dn{font-size:1rem;padding:12px 14px 2px}.deal .dl{padding:0 14px 8px}
.deal .halves>div{padding:10px 14px}.deal .fl{font-size:1.4rem}.deal small{font-size:.75rem}
.deal b{font-size:1.45rem}.deal .sv{padding:9px 14px;font-size:.92rem}.deal .sv strong{font-size:1.2rem}
header.top nav a{margin-left:12px;font-size:.88rem}.logo{font-size:1rem}
.bigbtn{display:block;margin:0 auto;font-size:1.1rem}
}
.fields>.field{min-width:0}.field.wide input{max-width:100%}

/* Anmeldung */
.acct{margin-left:16px}.acct-btn{font:inherit;font-size:.9rem;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:5px 14px;cursor:pointer}
.acct-btn.in{background:var(--ink);color:var(--surface);border-color:var(--ink);font-weight:600}
#authdlg{text-align:center}#authdlg h3{margin:0 0 6px;font-size:1.3rem}#authdlg::backdrop{background:rgba(20,20,15,.45)}
.gbtn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;font:inherit;font-weight:600;background:#fff;color:#1f1f1f;border:1px solid #dadce0;border-radius:12px;padding:12px;cursor:pointer;margin-top:10px}
.gbtn:hover{background:#f6f7f8}
.or{display:flex;align-items:center;gap:10px;color:var(--mut);font-size:.85rem;margin:14px 0}.or::before,.or::after{content:"";flex:1;border-top:1px solid var(--line)}
#auth-mail{display:flex;flex-direction:column;gap:8px}.authfine{font-size:.78rem;color:var(--mut);margin:10px 0}
.teaser{background:var(--goodsoft);color:var(--good);border:2px dashed var(--good);border-radius:14px;padding:14px;margin-bottom:14px;text-align:left}
.teaser .tn{font-weight:700;color:var(--ink)}.teaser .tp{display:flex;justify-content:space-between;gap:10px;margin-top:8px;font-weight:800;font-size:1.4rem}
.teaser .blur{filter:blur(7px);user-select:none}.teaser .tl{font-size:.8rem;font-weight:500}
@media(max-width:480px){.acct{margin-left:8px}.acct-btn{padding:4px 10px;font-size:.82rem}}

/* Pakete und Konto */
.acct-btn.credit{text-decoration:none;display:inline-block;background:var(--goodsoft);color:var(--good);border-color:var(--good);font-weight:700}
.packs3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;max-width:700px;margin:0 auto}
.pack3{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:22px 18px;border:1.5px solid var(--line);border-radius:18px;background:var(--surface);text-align:center;cursor:pointer;font:inherit;color:var(--ink)}
.pack3:hover{border-color:var(--acc)}.pack3.best{border-color:var(--good);box-shadow:0 0 0 2px var(--goodsoft)}
.pack3 .tag{position:absolute;top:-11px;background:var(--good);color:#fff;font-size:.75rem;font-weight:700;border-radius:999px;padding:2px 12px}
.pack3 .pn{font-weight:700;font-size:1.05rem}.pack3 .pr{font-size:2.3rem;font-weight:800;letter-spacing:-.03em;color:var(--acc)}
.pack3 .big2{font-weight:700}.pack3 .sm{color:var(--ink2);font-size:.88rem}
.pack3 .buy{margin-top:10px;background:var(--acc);color:#fff;border-radius:10px;padding:9px 20px;font-weight:700}
.perks{list-style:none;padding:0;margin:18px auto 0;max-width:520px;text-align:left;color:var(--ink2);font-size:.95rem}
.perks li{padding:5px 0 5px 26px;position:relative}.perks li::before{content:"✓";position:absolute;left:0;color:var(--good);font-weight:800}
#buydlg{text-align:center;max-width:520px}#buydlg .plans{margin:14px 0}#buydlg .plan{cursor:pointer;font:inherit}
.cost{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0 0;font-size:.95rem;color:var(--ink2)}
.cost b{color:var(--ink)}.cost .free{background:var(--goodsoft);color:var(--good);font-weight:700;border-radius:999px;padding:2px 10px;font-size:.82rem}
.acctbox{max-width:760px;margin:0 auto}.bal{font-size:3rem;font-weight:800;letter-spacing:-.03em;color:var(--good);margin:0}
table.hist{width:100%;border-collapse:collapse;font-size:.92rem}table.hist td{padding:6px 4px;border-top:1px solid var(--line)}table.hist td:last-child{text-align:right;font-weight:700}
.demo{background:var(--accsoft);border-radius:10px;padding:8px 12px;font-size:.85rem;color:var(--ink2);margin:0 0 14px}
/* Tarife */
.packs3{max-width:980px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
a.buy{text-decoration:none}.pack3 .buy{cursor:pointer;border:0;font:inherit;font-weight:700}
.pack3 .sm{line-height:1.4}.steps{max-width:620px;margin:0 auto;text-align:left;color:var(--ink2);padding-left:22px}.steps li{padding:4px 0}
.source{color:var(--mut);font-size:.8rem;margin:22px 0 0;line-height:1.5}.source a{color:var(--mut)}
.plansgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:16px}
.planc.cur{border-color:var(--good);box-shadow:0 0 0 2px var(--goodsoft)}.planc h3 small{font-weight:500;color:var(--good)}
.chip:disabled{cursor:default;opacity:.85}
.sug .ver{color:var(--good);font-weight:600}.sug .unver{color:var(--mut)}
/* Admin: Reiter und Filter */
.admtabs{display:flex;gap:4px;flex-wrap:wrap;margin:16px 0 18px;border-bottom:1px solid var(--line)}
.admtabs button{font:inherit;font-size:.95rem;background:none;border:0;border-bottom:3px solid transparent;padding:9px 14px;color:var(--ink2);cursor:pointer;margin-bottom:-1px}
.admtabs button:hover{color:var(--ink)}.admtabs button.on{color:var(--ink);font-weight:700;border-bottom-color:var(--acc)}
.fchips{display:flex;gap:6px;flex-wrap:wrap}.pill.on{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.finput{padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font:inherit;min-width:200px}
button.stat.link{font:inherit;text-align:left;color:var(--ink);cursor:pointer}button.stat.link:hover{border-color:var(--acc)}
.admtabs+#view h3{margin:22px 0 8px;font-size:1.05rem}
/* Admin: Aktivitaet */
.actgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}
.actgrid .card h3{margin:0 0 10px}
.bar{height:10px;border-radius:6px;background:var(--line);overflow:hidden;margin-top:10px}.barfill{height:100%;background:var(--good);border-radius:6px;transition:width .4s}.barfill.warn{background:var(--warn)}
.barlab{font-size:.82rem;color:var(--mut);margin:4px 0 0}
ul.kv{list-style:none;margin:0;padding:0}ul.kv li{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-top:1px solid var(--line);font-size:.9rem}ul.kv li span{color:var(--ink2)}
/* Admin: Balken */
.hbars{display:flex;flex-direction:column;gap:6px}.hbar{display:grid;grid-template-columns:150px 1fr 70px;gap:8px;align-items:center;font-size:.86rem}
.hbar .hl{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hbar .hb{height:12px;background:var(--line);border-radius:6px;overflow:hidden}
.hbar .hf{display:block;height:100%;background:var(--good);border-radius:6px}.hbar .hf.neg{background:var(--warn)}.hbar .hv{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
@media(max-width:480px){.hbar{grid-template-columns:110px 1fr 58px}}
.cchip{display:inline-block;background:var(--accsoft);border-radius:999px;padding:2px 10px;font-size:.85rem;white-space:nowrap}
.okbanner{background:var(--goodsoft);color:var(--good);border-radius:10px;padding:10px 14px;margin:0 0 12px;font-weight:600;line-height:1.5}
.warnbanner{background:#fff3e0;color:var(--warn);border-radius:10px;padding:10px 14px;margin:0 0 12px;font-weight:600}
@media(prefers-color-scheme:dark){.warnbanner{background:#2e2410}}
/* ===== Startseite ===== */
.hp-hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(1100px 520px at 12% -8%,#2b5fe0 0%,transparent 62%),radial-gradient(900px 480px at 92% 8%,#0fb5a8 0%,transparent 58%),linear-gradient(180deg,#0a0f20 0%,#101a36 100%);padding:54px 0 0;margin:0 0 8px}
.hp-bg{position:absolute;inset:0;pointer-events:none}
.orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.35}.orb.o1{width:320px;height:320px;background:#6d5dfc;left:-80px;top:120px}.orb.o2{width:260px;height:260px;background:#22d3b0;right:6%;top:-60px}.orb.o3{width:220px;height:220px;background:#f59e0b;right:-60px;bottom:40px;opacity:.22}
.ftag{position:absolute;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px);border-radius:999px;padding:6px 14px;font-size:.85rem;font-weight:600;white-space:nowrap;animation:floaty 7s ease-in-out infinite}
.ftag.f1{left:3%;top:22%}.ftag.f2{left:44%;top:9%;animation-delay:-2s}.ftag.f3{right:4%;top:46%;animation-delay:-4s}.ftag.f4{left:38%;bottom:26%;animation-delay:-1s}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.hp-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center;padding-bottom:34px}
.hp-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:5px 14px;font-size:.84rem;font-weight:600;margin:0 0 18px}
.dotlive{width:8px;height:8px;border-radius:50%;background:#34d399;box-shadow:0 0 0 0 rgba(52,211,153,.7);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(52,211,153,0)}100%{box-shadow:0 0 0 0 rgba(52,211,153,0)}}
.hp-copy h1{font-size:clamp(2.5rem,6.2vw,4.4rem);line-height:1.02;letter-spacing:-.035em;margin:0 0 16px;max-width:none;color:#fff}
.hp-copy h1 .grad{background:linear-gradient(90deg,#7dd3fc,#34d399 55%,#fde047);-webkit-background-clip:text;background-clip:text;color:transparent}
.hp-sub{font-size:1.12rem;color:rgba(255,255,255,.82);max-width:520px;margin:0 0 24px}
.hp-search{display:flex;align-items:center;gap:6px;background:#fff;border-radius:18px;padding:7px 7px 7px 16px;box-shadow:0 18px 50px rgba(0,0,0,.35);max-width:560px}
.hp-search .mag{font-size:1.1rem}.hp-search input{flex:1;min-width:0;border:0;outline:0;font:inherit;font-size:1.05rem;color:#14140f;background:transparent;padding:10px 4px}
.hp-search .btn{border-radius:13px;padding:13px 22px;white-space:nowrap;background:linear-gradient(135deg,#2a78d6,#1f9d8a)}
.hp-trust{display:flex;gap:6px 18px;flex-wrap:wrap;margin:14px 0 0;font-size:.86rem;color:rgba(255,255,255,.75)}
.hp-ticket{position:relative;min-height:300px}
.hpt-skel{height:300px;border-radius:24px;background:rgba(255,255,255,.06)}
.hpt{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(16px);border-radius:24px;padding:22px 22px 18px;box-shadow:0 24px 60px rgba(0,0,0,.35);color:#fff;opacity:0;transform:translateY(10px);transition:opacity .5s,transform .5s}
.hpt.shown{opacity:1;transform:none}
.hpt-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.hpt-live{display:inline-flex;align-items:center;gap:7px;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#a7f3d0}.hpt-live i{width:8px;height:8px;border-radius:50%;background:#34d399}
.hpt-badge{background:linear-gradient(135deg,#34d399,#10b981);color:#04281d;font-weight:800;border-radius:999px;padding:4px 14px;font-size:1.15rem}
.hpt h3{font-size:1.35rem;margin:6px 0 2px;color:#fff;line-height:1.2}.hpt-loc{margin:0 0 14px;color:rgba(255,255,255,.7);font-size:.88rem}
.hpt-save{margin:14px 0 4px;font-size:1.02rem;color:rgba(255,255,255,.9)}.hpt-save b{font-size:1.5rem;color:#6ee7b7;letter-spacing:-.02em}
.hpt-dots{display:flex;gap:8px;margin-top:10px}.hpt-dots button{width:26px;height:5px;border-radius:3px;border:0;background:rgba(255,255,255,.25);cursor:pointer;padding:0}.hpt-dots button.on{background:#6ee7b7}
/* Preisbalken (Ticket und Karten) */
.pbars{display:flex;flex-direction:column;gap:9px}.pbrow{display:grid;grid-template-columns:128px 1fr auto;gap:10px;align-items:center;font-size:.9rem}
.pbrow .pwho{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pbrow b{font-variant-numeric:tabular-nums;font-size:1.05rem;letter-spacing:-.01em}.pbrow b.old{text-decoration:line-through;opacity:.6;font-weight:600}
.ptrack{height:12px;border-radius:7px;background:rgba(127,127,127,.2);overflow:hidden}.pfill{display:block;height:100%;width:0;border-radius:7px;transition:width 1.1s cubic-bezier(.2,.8,.2,1)}
.pfill.hi{background:linear-gradient(90deg,#94a3b8,#64748b)}.pfill.lo{background:linear-gradient(90deg,#34d399,#10b981)}
.hpt.shown .pfill,.dealc.in .pfill{width:var(--w)}
.hp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid rgba(255,255,255,.14);padding:22px 0 26px;margin-top:6px}
.hp-stats div{padding:0 14px;border-left:1px solid rgba(255,255,255,.12)}.hp-stats div:first-child{border-left:0;padding-left:0}
.hp-stats b{display:block;font-size:clamp(1.6rem,4.2vw,2.5rem);letter-spacing:-.03em;line-height:1.1}.hp-stats span{font-size:.84rem;color:rgba(255,255,255,.7)}
/* Abschnitte */
main.hp{padding-top:10px}
.hp-sec{margin:54px 0;opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s}.hp-sec.in{opacity:1;transform:none}
.hp-head{text-align:center;margin:0 0 26px}.hp-head h2{font-size:clamp(1.6rem,4vw,2.2rem);letter-spacing:-.025em;margin:0 0 6px}.hp-head p{margin:0;color:var(--ink2)}
.hp-deals{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.dealc{background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s;opacity:0;transform:translateY(16px)}
.dealc.in{opacity:1;transform:none;transition:opacity .6s,transform .6s,box-shadow .25s}.dealc:hover{transform:translateY(-5px);box-shadow:0 18px 44px rgba(20,20,15,.16)}
.dc-top{position:relative;height:84px;background:linear-gradient(135deg,hsl(var(--h) 78% 56%),hsl(calc(var(--h) + 45) 80% 44%));display:flex;justify-content:space-between;align-items:flex-start;padding:12px 14px}
.dc-flag{position:absolute;right:-6px;bottom:-22px;font-size:5.2rem;opacity:.28;transform:rotate(-10deg);line-height:1}
.dc-badge{background:#fff;color:#0b6b4d;font-weight:800;font-size:1.25rem;border-radius:12px;padding:3px 12px;box-shadow:0 6px 18px rgba(0,0,0,.2)}
.dc-body{padding:14px 18px 16px}.dc-body h3{margin:0 0 3px;font-size:1.1rem;line-height:1.25}.dc-loc{margin:0 0 14px;color:var(--mut);font-size:.84rem}
.dc-body .ptrack{background:var(--line)}
.dc-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:.9rem}.dc-foot .save b{color:var(--good);font-size:1.25rem;letter-spacing:-.02em}
.dc-go{font-weight:700;text-decoration:none;white-space:nowrap}.dc-go:hover{text-decoration:underline}
.dealmore{grid-column:1/-1;text-align:center;margin:6px 0 0}
.hp-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;position:relative}
.hp-step{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:24px 22px;text-align:left;box-shadow:var(--shadow)}
.hp-step .ico{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,var(--accsoft),var(--goodsoft));color:var(--acc);margin-bottom:12px}
.hp-step em{position:absolute;right:18px;top:12px;font-style:normal;font-size:3.2rem;font-weight:800;color:var(--line);line-height:1}.hp-step b{display:block;font-size:1.1rem;margin-bottom:4px}.hp-step p{margin:0;color:var(--ink2);font-size:.94rem}
.hp-chart{padding:30px 26px}.hp-chart .donutbox{justify-content:center;gap:40px}
.hp .offer{margin-top:54px}
@media(max-width:900px){.hp-grid{grid-template-columns:1fr}.hp-deals{grid-template-columns:1fr 1fr}.hp-steps{grid-template-columns:1fr}.ftag.f2,.ftag.f4{display:none}}
@media(max-width:600px){.hp-hero{padding-top:34px}.hp-deals{grid-template-columns:1fr}.hp-stats{grid-template-columns:1fr 1fr;gap:16px 0}.hp-stats div:nth-child(3){border-left:0;padding-left:0}.pbrow{grid-template-columns:104px 1fr auto}.hp-search{flex-wrap:wrap;padding:8px}.hp-search input{flex:1 1 60%}.hp-search .btn{flex:1 1 100%}.ftag{display:none}}
@media(prefers-reduced-motion:reduce){.ftag,.dotlive{animation:none}.hp-sec,.dealc{opacity:1;transform:none;transition:none}.pfill{transition:none}}
@media(max-width:560px){header.top .wrap{height:auto;min-height:58px;padding-top:8px;padding-bottom:8px;gap:6px}header.top nav{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:2px 0}header.top nav a{margin-left:10px;font-size:.88rem}header.top nav .lang{padding:3px 8px}}
/* VPN-Seite */
.vpnhero{margin-bottom:0}.vpnsteps{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:26px}
.vstep{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:22px 22px 18px;box-shadow:var(--shadow)}
.vstep em{position:absolute;right:18px;top:10px;font-style:normal;font-size:3rem;font-weight:800;color:var(--line);line-height:1}.vstep h2{margin:0 0 6px;font-size:1.2rem}
.vstep details{margin:6px 0;border-top:1px solid var(--line);padding-top:6px}.vstep summary{cursor:pointer;font-weight:600}.vstep ol{margin:8px 0 4px;padding-left:20px;color:var(--ink2);font-size:.94rem}
.vstep code{background:var(--bg);border-radius:5px;padding:1px 6px;font-size:.85em}.vstep .btn{display:inline-block;text-decoration:none;margin:4px 6px 0 0}
@media(max-width:760px){.vpnsteps{grid-template-columns:1fr}}
/* Ratgeber */
.guide{max-width:760px;padding-top:26px;padding-bottom:50px}.guide article h1{font-size:clamp(1.8rem,4.2vw,2.5rem);line-height:1.12;letter-spacing:-.025em;margin:6px 0 18px}
.guide article h2{font-size:1.35rem;margin:30px 0 8px}.guide article p,.guide article li{color:var(--ink2);line-height:1.7;font-size:1.04rem}.guide article ul,.guide article ol{padding-left:22px}
.guide blockquote{margin:18px 0;padding:12px 16px;border-left:4px solid var(--acc);background:var(--accsoft);border-radius:0 12px 12px 0;color:var(--ink2)}
.guide table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.95rem}.guide th,.guide td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line)}.guide th{background:var(--surface);color:var(--mut);font-weight:600}
.guidemore{margin-top:34px;border-top:1px solid var(--line);padding-top:10px}.guidemore h2{font-size:1.1rem}.guidemore ul{padding-left:20px}
.guidelist{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:900px;margin:0 auto}.guide:has(.guidelist){max-width:960px}
.guidecard{display:block;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px 22px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}
.guidecard:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(20,20,15,.14)}.guidecard small{color:var(--mut)}.guidecard h2{font-size:1.15rem;line-height:1.3;margin:4px 0 8px}.guidecard p{color:var(--ink2);font-size:.93rem;margin:0 0 10px}.guidecard span{color:var(--acc);font-weight:700;font-size:.92rem}
@media(max-width:700px){.guidelist{grid-template-columns:1fr}}
/* Artikel als Magazin-Seite */
.guidecard{overflow:hidden;padding:0}.guidecard>*:not(.gband){margin-left:22px;margin-right:22px}.guidecard small{display:block;margin-top:14px}.guidecard h2{margin-top:14px}.guidecard span:last-child{display:block;margin-bottom:20px}
.gband{display:flex;align-items:flex-end;justify-content:flex-end;height:74px;margin:0 !important;padding:0 16px 6px;font-size:3.1rem;line-height:1;background:linear-gradient(135deg,var(--c1),var(--c2));color:#fff}
.ghero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(900px 400px at 15% 0%,var(--c2),transparent 65%),radial-gradient(700px 400px at 95% 20%,var(--c3),transparent 60%),var(--c1);padding:44px 0 0;min-height:320px}
.ghero-in{position:relative;z-index:2;max-width:860px;padding-bottom:110px}.gcrumb{margin:0 0 14px;font-size:.9rem;opacity:.85}.gcrumb a{color:#fff}
.gflag{font-size:4.2rem;line-height:1;margin:0 0 10px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.35))}
.ghero h1{font-size:clamp(1.9rem,4.6vw,3rem);line-height:1.08;letter-spacing:-.03em;margin:0 0 14px;max-width:820px;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.25)}
.gmeta{margin:0;font-size:.92rem;opacity:.85}.ghero .skyline{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:150px;z-index:1}
.gbody{max-width:760px;margin:0 auto}.guide:has(.gbody){max-width:1000px;padding-top:34px}
.gtoc{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:14px 18px;margin:0 0 24px}.gtoc b{font-size:.9rem;color:var(--mut);text-transform:uppercase;letter-spacing:.05em}.gtoc ol{margin:6px 0 0;padding-left:20px;columns:2;column-gap:28px}.gtoc li{padding:2px 0;font-size:.95rem;break-inside:avoid}
.guide article>p:first-of-type{font-size:1.18rem;color:var(--ink);line-height:1.65}
.guide article h2{margin:40px 0 10px;font-size:1.55rem;letter-spacing:-.02em;scroll-margin-top:20px}.guide article h3{font-size:1.15rem;margin:22px 0 6px}
.guide article ul li,.guide article ol li{margin:5px 0}
blockquote.callout{border-left-width:5px;padding:14px 18px 14px 20px;margin:22px 0;border-radius:0 14px 14px 0;line-height:1.65}
blockquote.callout::before{display:block;font-weight:800;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}
blockquote.tip{border-color:var(--good);background:var(--goodsoft)}blockquote.tip::before{content:"💡 Tip";color:var(--good)}
blockquote.info{border-color:var(--acc);background:var(--accsoft)}blockquote.info::before{content:"ℹ️ Good to know";color:var(--acc)}
blockquote.warn{border-color:var(--warn);background:#fff3e0}blockquote.warn::before{content:"⚠️ Careful";color:var(--warn)}
blockquote.example{border-color:#7c3aed;background:#f3ecff}blockquote.example::before{content:"🧮 Example";color:#7c3aed}
:lang(de) blockquote.tip::before{content:"💡 Tipp"}:lang(de) blockquote.info::before{content:"ℹ️ Gut zu wissen"}:lang(de) blockquote.warn::before{content:"⚠️ Achtung"}:lang(de) blockquote.example::before{content:"🧮 Beispiel"}
@media(prefers-color-scheme:dark){blockquote.warn{background:#2e2410}blockquote.example{background:#241a3b}}
.gglance{display:grid;grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:10px;margin:26px 0}
.gtile{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:14px 16px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:2px}
.gtile .gi{font-size:1.5rem;line-height:1}.gtile b{font-size:1.2rem;letter-spacing:-.02em;margin-top:4px}.gtile .gl{color:var(--mut);font-size:.82rem;line-height:1.3}.gtile small{color:var(--mut);font-size:.75rem}
.gchart{margin:28px 0;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px 20px;box-shadow:var(--shadow)}
.gchart figcaption{display:flex;flex-direction:column;gap:2px;margin-bottom:14px}.gchart figcaption b{font-size:1.02rem}.gchart figcaption span{color:var(--mut);font-size:.82rem}
.crow{display:grid;grid-template-columns:150px 1fr 74px 44px;gap:10px;align-items:center;padding:5px 0;font-size:.92rem}.crow .cl{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.crow .ctrack{height:14px;border-radius:8px;background:var(--bg);overflow:hidden}.crow i{display:block;height:100%;border-radius:8px}.crow i.neg{background:linear-gradient(90deg,#10b981,#34d399)}.crow i.pos{background:linear-gradient(90deg,#f59e0b,#f97316)}.crow i.blue{background:linear-gradient(90deg,#2a78d6,#60a5fa)}
.crow b{text-align:right;font-variant-numeric:tabular-nums}.crow b.good{color:var(--good)}.crow b.bad{color:var(--warn)}.crow small{color:var(--mut);text-align:right}
.csep{margin:10px 0 2px;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--mut)}.cnone{margin:0;color:var(--ink2)}
.gcols{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;align-items:end;height:200px}.gcol{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;height:100%;text-align:center;font-size:.8rem}
.gcol i{display:block;width:100%;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#2a78d6,#10b981)}.gcol b{font-size:.85rem}.gcol span{color:var(--mut);font-size:.76rem;line-height:1.2}
.gcities{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.gcity{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}.gcity b{font-size:1.02rem}.gcity span{color:var(--ink2);font-size:.9rem;line-height:1.45}
.gnote{font-size:.9rem;color:var(--mut);margin:0 0 6px}
.gshare{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:34px 0 0;padding-top:18px;border-top:1px solid var(--line)}.gshare span{font-weight:700;margin-right:4px}
.gshare a,.gshare button{font:inherit;font-size:.88rem;font-weight:600;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:7px 14px;border-radius:999px;text-decoration:none;cursor:pointer}.gshare a:hover,.gshare button:hover{border-color:var(--acc);color:var(--acc)}
.gcta{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;margin:40px auto;max-width:760px;padding:24px 28px;border-radius:22px;color:#fff;background:linear-gradient(135deg,#1d4ed8,#0e9f8e)}.gcta div{display:flex;flex-direction:column;gap:2px}.gcta b{font-size:1.25rem}.gcta span{opacity:.9;font-size:.95rem}.gcta .btn{background:#fff;color:#0b4a6f;text-decoration:none;font-weight:800}
.grelated{margin:30px auto 0;max-width:1000px}.grelated h2{font-size:1.4rem}
@media(max-width:700px){.crow{grid-template-columns:104px 1fr 62px 34px;gap:6px;font-size:.84rem}.gcities{grid-template-columns:1fr}.gtoc ol{columns:1}.ghero{min-height:280px}.ghero-in{padding-bottom:90px}.gflag{font-size:3.2rem}.gcols{height:170px;gap:6px}.ghero .skyline{height:110px}}
/* Rechtliche Seiten */
.legal-page .legal{max-width:780px}.legal h1{font-size:clamp(1.8rem,4vw,2.4rem);letter-spacing:-.02em;margin:0 0 6px}.legal h2{font-size:1.2rem;margin:30px 0 6px}.legal h3{font-size:1.02rem;margin:18px 0 4px}
.legal p,.legal li{color:var(--ink2);line-height:1.65}.legal ul{padding-left:22px}.legal .hint{font-size:.9rem}
/* Live-Anzeige der Suche */
#lboard{max-width:760px;margin:20px auto 0;text-align:left}
.lb-top{display:flex;justify-content:space-between;font-size:.95rem;color:var(--ink2);margin-bottom:8px}.lb-top b{color:var(--ink);font-size:1.15rem}
.lb-bar{height:14px;border-radius:9px;background:var(--line);overflow:hidden}
.lb-bar i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,#2a78d6,#10b981,#2a78d6);background-size:200% 100%;animation:lbshine 1.6s linear infinite;transition:width .6s cubic-bezier(.2,.8,.2,1)}
@keyframes lbshine{to{background-position:-200% 0}}
.lb-now{margin:12px 0 0;font-weight:600;min-height:1.4em}
.lb-best{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;margin:12px 0 0;padding:10px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line);font-size:.92rem;color:var(--ink2)}
.lb-best.good{background:var(--goodsoft);border-color:var(--good);color:var(--good)}.lb-best b{color:var(--ink);font-size:1.05rem}
.lb-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-top:14px}
.lc{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:12px;border:1px solid var(--line);background:var(--surface);font-size:.85rem;transition:background .3s,border-color .3s,opacity .3s}
.lc .lf{font-style:normal;font-size:1.2rem;line-height:1}.lc>span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lc b{font-variant-numeric:tabular-nums}
.lc.wait{opacity:.5}.lc.work{border-color:var(--acc);background:var(--accsoft);animation:lcpulse 1.2s ease-in-out infinite}
.lc.ok{border-color:var(--good);background:var(--goodsoft)}.lc.ok b{color:var(--good)}.lc.none{opacity:.55}
@keyframes lcpulse{50%{box-shadow:0 0 0 4px rgba(42,120,214,.18)}}
.dots::after{content:"";display:inline-block;width:1.2em;text-align:left;animation:lbdots 1.2s steps(4) infinite}
@keyframes lbdots{0%{content:""}25%{content:"."}50%{content:".."}75%,100%{content:"..."}}
@media(prefers-reduced-motion:reduce){.lb-bar i,.lc.work{animation:none}}
/* Goldfunde */
.fbadge{display:flex;align-items:center;flex-wrap:wrap;gap:6px 16px;margin:4px 0 18px}.fbadge b{font-size:clamp(2.8rem,9vw,4.4rem);line-height:1;letter-spacing:-.04em;background:linear-gradient(135deg,#b45309,#f59e0b);-webkit-background-clip:text;background-clip:text;color:transparent}.fbadge span{color:var(--mut);font-weight:600}
.finds-grid{margin:26px auto 0;max-width:960px}.dealc[hidden]{display:none}
.fnote{background:var(--accsoft);border-left:4px solid var(--acc);padding:12px 16px;border-radius:0 12px 12px 0;margin:0 0 18px}
/* Streaming-Vergleich */
.tablewrap{overflow-x:auto;margin:18px 0}table.stream{border-collapse:collapse;width:100%;font-size:.92rem}table.stream th,table.stream td{padding:9px 12px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}table.stream th:first-child,table.stream td:first-child{text-align:left;position:sticky;left:0;background:var(--surface)}table.stream td.min{color:var(--good);font-weight:800;background:rgba(16,185,129,.1)}table.stream th a{color:inherit}

.flive{background:var(--accsoft);border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin:0 0 20px}.flive p{margin:4px 0 10px;color:var(--ink2)}.flive .fok{color:#047857;font-weight:600}.flive .fno{color:#b45309;font-weight:600}.flive [data-live-out]{margin-top:10px}

/* Anbietervergleich */
.osteps{list-style:none;padding:0;margin:14px auto 0;max-width:420px;text-align:left}.osteps li{padding:6px 0;color:var(--mut)}.osteps li.ok{color:var(--good)}.osteps li.now{color:var(--ink);font-weight:700}.osteps li.osec{font-size:.8rem}
.ohead{display:flex;gap:16px;align-items:center;margin:0 0 10px}.ohead img{width:120px;height:90px;object-fit:cover;border-radius:12px}.ohead h2{margin:0 0 4px}
table.otab{width:100%;border-collapse:collapse;font-size:.95rem}table.otab th,table.otab td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}table.otab tr.best{background:rgba(16,185,129,.1)}table.otab tr.best td:first-child{font-weight:800}
.osrc{display:inline-flex;align-items:center;gap:8px}.osrc img{width:20px;height:20px;border-radius:4px}.otag{background:var(--accsoft);padding:2px 8px;border-radius:999px;font-size:.75rem}
.onum b{display:block;font-size:1.05rem}.onum small{color:var(--mut)}.ook{color:var(--good);font-size:.88rem}.ohint{color:var(--mut);font-size:.85rem}
@media(max-width:640px){table.otab th:nth-child(3),table.otab td:nth-child(3){display:none}.ohead img{width:80px;height:64px}}
.hp-ticket .dealc{background:#fff;color:#14140f}.hp-ticket .dealc h3,.hp-ticket .dealc b,.hp-ticket .dealc .pwho{color:#14140f}.hp-ticket .dealc .dc-loc,.hp-ticket .dealc .ohint{color:#6b6b63}.hp-ticket .dealc .save{color:#14140f}.hp-ticket .dealc .save b{color:#047857}.hpt-t{margin:0 0 10px;font-weight:700;color:#fff}

.alts{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.alts .pill.alt{cursor:pointer}

.olink{display:block;margin-top:6px;background:none;border:0;color:var(--mut);font-size:.78rem;text-decoration:underline;cursor:pointer;padding:0}

/* Startseite im Stil eines Hotel-Preisvergleichs */
.tv-hero{position:relative;overflow:hidden;color:#fff;background:linear-gradient(135deg,#0f2a6b 0%,#1d5fd0 55%,#10a5a0 100%);padding:70px 0 120px}
.tv-in{position:relative;z-index:2}.tv-eyebrow{margin:0 0 10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;opacity:.85}
.tv-hero h1{margin:0 0 14px;font-size:clamp(2.2rem,5.4vw,3.8rem);line-height:1.06;letter-spacing:-.03em;color:#fff}.tv-sub{margin:0;max-width:560px;font-size:1.15rem;opacity:.92;line-height:1.5}
.tv-sky{position:absolute;left:0;right:0;bottom:0;width:100%;height:150px;opacity:.28;z-index:1}
.tv-cardwrap{position:relative;z-index:5;margin-top:-62px}
.tv-card{display:grid;grid-template-columns:2.2fr 1.9fr .7fr auto;gap:0;background:#fff;border-radius:20px;box-shadow:0 20px 60px rgba(15,42,107,.28);padding:10px}
.tv-f{position:relative;display:flex;flex-direction:column;gap:2px;padding:10px 16px;border-right:1px solid var(--line);min-width:0}.tv-f:last-of-type{border-right:0}
.tv-f span{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--mut)}
.tv-f input,.tv-f select{border:0;outline:0;font:inherit;font-size:1.05rem;font-weight:600;color:#14140f;background:transparent;width:100%;padding:2px 0}
.tv-dates{flex-direction:row;gap:14px}.tv-dates label{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.tv-go{border:0;cursor:pointer;border-radius:14px;padding:0 34px;font:inherit;font-size:1.1rem;font-weight:800;color:#fff;background:linear-gradient(135deg,#2a78d6,#10a5a0);min-height:64px}.tv-go:hover{filter:brightness(1.08)}
.tv-sug{position:absolute;left:0;right:0;top:100%;z-index:20;margin:6px 0 0;padding:6px;list-style:none;background:#fff;border-radius:14px;box-shadow:0 16px 40px rgba(0,0,0,.2);max-height:340px;overflow:auto}
.tv-sug li{padding:10px 12px;border-radius:10px;cursor:pointer;display:flex;gap:10px;align-items:center;color:#14140f}.tv-sug li:hover,.tv-sug li.on{background:#eef4ff}.tv-sug small{display:block;color:var(--mut);font-weight:400}
.tv-trust{display:flex;flex-wrap:wrap;gap:6px 22px;margin:14px 6px 0;color:var(--ink2);font-size:.92rem}
.tv-sec{margin:56px 0}.tv-label{text-align:center;color:var(--mut);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;margin:0 0 14px}
.tv-prov{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.tv-prov span{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:9px 18px;font-weight:700;color:var(--ink2)}.tv-prov .more{background:transparent;border-style:dashed;color:var(--mut);font-weight:600}
.tv-pop{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tv-pc{display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}.tv-pc:hover{transform:translateY(-4px);box-shadow:0 14px 36px rgba(20,20,15,.14)}.tv-pc .e{font-size:2rem;line-height:1}.tv-pc b{margin-top:8px}.tv-pc small{color:var(--mut)}
.tv-note{text-align:center;color:var(--ink2);margin:18px 0 0;font-weight:600}
.tv-why{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tv-why>div{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:22px}.tv-why .e{font-size:1.8rem}.tv-why h3{margin:8px 0 6px}.tv-why p{margin:0;color:var(--ink2);line-height:1.55}
@media(max-width:900px){.tv-card{grid-template-columns:1fr 1fr;gap:4px}.tv-hotel{grid-column:1/-1}.tv-f{border-right:0;border-bottom:1px solid var(--line)}.tv-go{grid-column:1/-1;min-height:54px}.tv-pop{grid-template-columns:1fr 1fr}.tv-why{grid-template-columns:1fr}.tv-hero{padding:46px 0 100px}}
@media(max-width:520px){.tv-card{grid-template-columns:1fr}.tv-dates{flex-direction:row}}

.ganswer{background:linear-gradient(135deg,rgba(42,120,214,.1),rgba(16,185,129,.1));border:1px solid var(--line);border-left:5px solid var(--acc);border-radius:0 16px 16px 0;padding:14px 18px;margin:0 0 22px}.ganswer b{display:block;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--acc);margin-bottom:4px}.ganswer p{margin:0;font-size:1.08rem;line-height:1.6;color:var(--ink)}.gbyline{color:var(--mut);font-size:.88rem;margin:0 0 14px}

/* Beliebte Hotels in beliebten Staedten */
.pc-city{margin:0 0 22px}.pc-city h3{font-size:1.05rem;margin:0 0 10px}
.pc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.pc-card{display:flex;flex-direction:column;gap:5px;padding:14px 16px;border:1px solid var(--line,#e3e6ec);border-radius:12px;background:var(--card,#fff);color:inherit;text-decoration:none}
.pc-card:hover{border-color:#2f6fde;box-shadow:0 2px 10px rgba(30,60,120,.1)}
.pc-card b{font-size:.95rem;line-height:1.3}.pc-best strong{font-size:1.15rem}.pc-best em{font-style:normal;margin-left:8px;padding:1px 7px;border-radius:999px;background:#e6f6ec;color:#16794a;font-size:.8rem;font-weight:700}
.pc-card small{color:var(--muted,#667085);font-size:.8rem}.pc-flag{color:#a15c00!important}

[hidden]{display:none!important}

.tv-sug .sug-head{padding:10px 14px 6px;font-size:.78rem;font-weight:700;letter-spacing:.02em;text-transform:none;color:#2f6fde;cursor:default}
.tv-sug .sug-hint{padding:10px 14px;font-size:.85rem;color:var(--muted,#667085);cursor:default}
.tv-sug .sug-free{border-top:1px solid var(--line,#e3e6ec)}
.tv-sug .sug-head:hover,.tv-sug .sug-hint:hover{background:none}

.tv-sug{min-width:min(460px,92vw)}.tv-sug b,.tv-sug small{text-transform:none!important;letter-spacing:0!important}.tv-sug small{font-size:.82rem}

.gimg{margin:22px 0}.gimg img{width:100%;height:auto;border-radius:14px;display:block;background:#e9edf3}.gimg figcaption{font-size:.82rem;color:var(--muted,#667085);margin-top:6px}
/* Dashboard, Aktionen unter dem Ergebnis, Konto-Knopf */
.acct-dot{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:7px;border-radius:50%;background:var(--good);color:#fff;font-size:.72rem;font-weight:800;vertical-align:middle}
.acctbox .card{margin-top:16px}.acctbox h1{margin:0 0 6px}
.dlist{list-style:none;margin:0;padding:0}.dlist li{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:11px 0;border-top:1px solid var(--line)}.dlist li:first-child{border-top:0}
.dlist small{display:block;color:var(--mut);font-size:.82rem;margin-top:2px}
.actrow{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.actrow input{flex:1 1 220px;min-width:0;font:inherit;padding:11px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}
.actcard{margin-top:18px}.actcard .hint{margin:0 0 12px}
.switch{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.switch input{width:20px;height:20px;margin-top:2px}
.tv-sug.recent li small{display:block}
@media(max-width:560px){.dlist li{flex-direction:column;align-items:flex-start}}
/* Admin-Postfach */
.mhead{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.mhead .admtabs{margin:0 auto 0 0}
.mgrid{display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:16px;align-items:start}@media(max-width:820px){.mgrid{grid-template-columns:1fr}}
.mlist{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}
.mlist li{padding:10px 12px;border-top:1px solid var(--line);cursor:pointer}.mlist li:first-child{border-top:0}.mlist li:hover,.mlist li.on{background:var(--goodsoft)}
.mlist li.unread b,.mlist li.unread .msub{font-weight:800}.mlist li b,.mlist li .msub{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mlist small{display:block;color:var(--mut);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mview,.mcmp{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--surface)}.mview h3{margin:0 0 6px}
.mbody{white-space:pre-wrap;word-wrap:break-word;font:inherit;line-height:1.5;margin:12px 0;padding:0}
.mcmp label{display:block;font-size:.8rem;font-weight:600;color:var(--mut);margin-bottom:10px}.mcmp input,.mcmp textarea{display:block;width:100%;margin-top:4px;font:inherit;font-size:.95rem;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}
/* Admin-Statistik */
.sgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:16px;margin:16px 0}
.sc h3{margin:0 0 10px}.sbars{list-style:none;margin:0;padding:0}.sbars li{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(40px,1fr) auto;gap:10px;align-items:center;padding:4px 0;font-size:.9rem}
.sbars .sl{overflow:hidden;text-overflow:ellipsis}.sbars .sb{display:block;height:8px;background:var(--line);border-radius:6px;overflow:hidden}.sbars .sb i{display:block;height:100%;background:var(--good);border-radius:6px}
.hours{display:grid;grid-template-columns:repeat(24,1fr);gap:3px;height:120px;align-items:end}.hours div{display:flex;flex-direction:column;justify-content:flex-end;height:100%;text-align:center}.hours i{display:block;background:var(--good);border-radius:3px 3px 0 0}.hours span{font-size:.65rem;color:var(--mut);margin-top:3px}
.sfeed{list-style:none;margin:0;padding:0;font-size:.88rem;max-height:360px;overflow:auto}.sfeed li{padding:5px 0;border-top:1px solid var(--line)}.sfeed li:first-child{border-top:0}
tr.vrow{cursor:pointer}tr.vrow:hover{background:var(--goodsoft)}.sdlg{max-width:min(720px,94vw);border:1px solid var(--line);border-radius:14px;padding:18px 20px}.sdlg::backdrop{background:rgba(20,20,15,.45)}.sdlg .sfeed{max-height:55vh}
.stat small{display:block;font-size:.75rem;color:var(--mut);margin-top:2px}

/* ---- Flugsuche ---- */
.tabs a.tab{text-decoration:none;display:inline-block}
.fl-fields{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;position:relative}
.fl-fields .fl-ap{grid-column:span 3}.fl-fields>.field{min-width:0}
.fl-swap{position:absolute;left:50%;top:27px;transform:translateX(-50%);z-index:5;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:1.05rem;cursor:pointer;box-shadow:var(--shadow)}
.fl-swap:hover{border-color:var(--acc);color:var(--acc)}
.fl-fields .fl-ap:first-child input{padding-right:26px}.fl-fields .fl-ap:nth-child(3) input{padding-left:26px}
.field.off{opacity:.45}
input.ok{border-color:var(--good)}
.sug li.act{background:var(--accsoft)}
.qhint{color:var(--warn);font-size:.9rem;margin-top:8px;min-height:0}
.go .free{display:inline-block;margin-left:6px;font-size:.75rem;font-weight:700;color:var(--good);background:var(--goodsoft);border-radius:6px;padding:2px 7px}
.fl-route{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin:0 0 14px;flex-wrap:wrap}.fl-route h2{margin:0 0 4px;letter-spacing:-.02em}.fl-route .hint{margin:0;color:var(--mut)}
.fl-level{font-size:.95rem}.fl-level.good b{color:var(--good)}.fl-level.warn b{color:var(--warn)}
.fl-tools{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px}
.fl-chk{display:inline-flex;align-items:center;gap:8px;font-size:.92rem;color:var(--ink2);cursor:pointer}.fl-chk input{width:auto}
.fl-list{display:flex;flex-direction:column;gap:10px}
.fl-card{display:grid;grid-template-columns:120px 1.3fr 1fr 1fr auto;gap:12px 16px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px}
.fl-card.best{border-color:var(--acc)}
.fl-card b{display:block;font-size:1.05rem}.fl-card small{color:var(--mut);font-size:.82rem}.fl-card small.ok{color:var(--good);font-weight:600}
.fl-card sup{font-size:.7rem;color:var(--warn);margin-left:2px}
.fl-air{display:flex;flex-direction:column;gap:4px}.fl-air img{width:32px;height:32px;object-fit:contain}.fl-noimg{font-size:1.4rem}
.fl-price b{font-size:1.3rem;color:var(--ink)}
.fl-go .btn{white-space:nowrap}
details.fl-more{grid-column:1/-1;background:transparent;border:0;border-top:1px dashed var(--line);border-radius:0;padding:8px 0 0;margin:0}.fl-more summary{cursor:pointer;color:var(--acc);font-size:.88rem}
.fl-more ol{margin:8px 0;padding-left:20px;font-size:.9rem;line-height:1.5}.fl-more li{margin:6px 0}.fl-more .warn{color:var(--warn)}.fl-more .hint{margin:4px 0;font-size:.85rem;color:var(--mut)}
.fl-chosen{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0 0 14px;padding:12px 16px}.fl-chosen small{color:var(--mut);text-transform:uppercase;font-size:.72rem;font-weight:700;letter-spacing:.04em}
.fl-h{margin:4px 0 12px}
.fl-sum{list-style:none;margin:0 0 16px;padding:12px 16px;display:flex;flex-direction:column;gap:10px}.fl-sum li{display:flex;flex-direction:column}.fl-sum small{color:var(--mut);text-transform:uppercase;font-size:.72rem;font-weight:700;letter-spacing:.04em}.fl-sum span{color:var(--ink2);font-size:.9rem}
.olink{background:none;border:0;color:var(--acc);font:inherit;font-size:.85rem;cursor:pointer;padding:0;text-decoration:underline}
@media(max-width:860px){
  .fl-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.fl-fields .fl-ap{grid-column:1/-1}
  .fl-swap{left:auto;right:10px;top:62px;transform:none}
  .fl-fields .fl-ap:first-child input{padding-right:12px}.fl-fields .fl-ap:nth-child(3) input{padding-left:12px}
  .fl-card{grid-template-columns:1fr auto;grid-template-areas:"times price" "dur go" "air air" "more more"}
  .fl-times{grid-area:times}.fl-price{grid-area:price;text-align:right}.fl-dur{grid-area:dur}.fl-go{grid-area:go;text-align:right}.fl-air{grid-area:air;flex-direction:row;align-items:center}.fl-air img{width:22px;height:22px}.fl-more{grid-area:more}
}
@media(max-width:640px){table.otab.fl-otab th:nth-child(3),table.otab.fl-otab td:nth-child(3){display:table-cell}table.otab.fl-otab td,table.otab.fl-otab th{padding:10px 6px}}
/* Startseite: Umschalter Hotels / Fluege ueber der Suche */
.tv-tabs{display:flex;gap:6px;margin:0 0 10px}.tv-tab{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:999px;font-weight:700;font-size:.95rem;text-decoration:none;color:#fff;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28)}
.tv-tab.on{background:#fff;color:#14140f;border-color:#fff}.tv-tab:not(.on):hover{background:rgba(255,255,255,.28)}
/* Abzeichen Mensch/Bot */
.kind{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.02em;padding:2px 8px;border-radius:999px;margin-top:3px;cursor:help;white-space:nowrap}
.k-human{background:#dcfce7;color:#14532d}.k-lh{background:#ecfccb;color:#3f6212}.k-unclear{background:#e5e7eb;color:#374151}.k-lb{background:#fef3c7;color:#92400e}.k-bot{background:#fee2e2;color:#991b1b}
.legend li button i[style]{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:2px}
#whocard{--s0:#16a34a;--s1:#84cc16;--s2:#9ca3af;--s3:#f59e0b;--s4:#dc2626}
/* Streaming: Kategorien, Ranking-Karten, Rechner */
.svchips{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 18px}.svchips a{padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none;font-weight:600;font-size:.92rem}.svchips a.on{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.svcat{margin:22px 0}.svcat h2{display:flex;align-items:baseline;gap:10px;margin:0 0 10px}.svcat h2 a{color:inherit;text-decoration:none}.svcat h2 small{font-size:.8rem;color:var(--mut);font-weight:500}
.svgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.svc{display:grid;gap:7px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);text-decoration:none;transition:transform .15s,box-shadow .15s}.svc:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.08)}
.svt{display:flex;align-items:center;gap:8px;font-size:1.05rem}.svi{font-size:1.4rem}
.svr{display:flex;justify-content:space-between;gap:10px;font-size:.88rem}.svr small{color:var(--mut)}.svr strong{font-weight:700}.svr .min{color:var(--good)}
.svbar{display:block;height:7px;border-radius:6px;background:var(--line);overflow:hidden}.svbar i{display:block;height:100%;background:var(--good);border-radius:6px}
.sav{color:var(--mut);font-size:.82rem}
.sctl{display:flex;gap:12px;flex-wrap:wrap;margin:8px 0 14px}.sctl label{display:flex;flex-direction:column;gap:3px;font-size:.78rem;font-weight:600;color:var(--mut)}.sctl select{font:inherit;font-size:.95rem;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}
.crow.me{background:var(--goodsoft);border-radius:8px}
.bundle{margin:26px 0;padding:18px 20px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.bundle h2{margin:0 0 6px}
.bchecks{display:flex;gap:8px 16px;flex-wrap:wrap;margin:12px 0}.bchecks label{display:flex;gap:6px;align-items:center;cursor:pointer;padding:6px 12px;border:1px solid var(--line);border-radius:999px}
.bout{margin-top:6px}.bout tr.me td{background:var(--goodsoft)}
.svother{list-style:none;padding:0;display:grid;gap:6px}.svother li{display:flex;justify-content:space-between;max-width:420px;padding:8px 12px;border:1px solid var(--line);border-radius:10px}
.answerbox{margin:12px 0 18px;padding:12px 16px;border-left:4px solid var(--good);background:var(--goodsoft);border-radius:0 12px 12px 0;line-height:1.5}
/* Hotelseiten: einfach und grafisch */
.hu-hero{background:linear-gradient(160deg,#0f2a6b,#1f5fd0);color:#fff;padding:26px 0 30px}.hu-hero h1{margin:0 0 6px;font-size:clamp(1.6rem,4.5vw,2.4rem);line-height:1.1}.hu-sub{margin:0 0 16px;opacity:.92;font-size:1.05rem}.hu-sub small{opacity:.85}
.hu-form{display:flex;gap:10px;flex-wrap:wrap;align-items:end;background:#fff;color:#14140f;padding:12px;border-radius:14px;max-width:880px}.hu-form label{display:flex;flex-direction:column;gap:3px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#667;flex:1 1 150px}.hu-form select,.hu-form input{font:inherit;font-size:.95rem;text-transform:none;letter-spacing:0;font-weight:500;padding:9px 10px;border:1px solid #d6dae2;border-radius:10px;color:#14140f;background:#fff}.hu-form .btn{flex:0 0 auto;align-self:end}
.hu-hh{display:flex;gap:20px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}.hu-price{text-align:right;background:rgba(255,255,255,.14);border-radius:14px;padding:10px 16px;display:flex;flex-direction:column;line-height:1.1}.hu-price b{font-size:2rem}.hu-price small{opacity:.85}.hu-cta{margin:6px 0 0}
.hu-wrap{padding-top:22px;padding-bottom:40px;max-width:880px}.hu-sec{margin:0 0 30px}.hu-sec h2{margin:0 0 6px;font-size:1.35rem}
.hu-r{color:#b45309;font-weight:700}
.wc{margin:12px 0 0}.wc svg{width:100%;height:auto;display:block}.wc-cheap{fill:#16a34a}.wc-mid{fill:#c7cddb}.wc-dear{fill:#f59e0b}.wc-ax{font-size:11px;fill:#778;font-family:inherit}.wc-lbl{font-size:12px;font-weight:700;font-family:inherit}.wc-lbl.g{fill:#15803d}.wc-lbl.o{fill:#b45309}
.wc figcaption{margin-top:8px;font-size:.92rem;line-height:1.5}.wc figcaption small{color:var(--mut)}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .wc-mid{fill:#3b4560}}
.hu-bars{display:grid;gap:8px;margin-top:10px}.hu-bar{display:grid;grid-template-columns:minmax(120px,1.3fr) 2fr auto;gap:12px;align-items:center;text-decoration:none;color:inherit;padding:6px 0}a.hu-bar:hover .hu-bn{text-decoration:underline}
.hu-bn{font-size:.95rem;overflow:hidden;text-overflow:ellipsis}.hu-bn em{font-style:normal;font-size:.72rem;font-weight:700;color:#15803d;background:#dcfce7;padding:1px 7px;border-radius:999px;margin-left:4px}
.hu-bt{display:block;height:12px;background:var(--line);border-radius:8px;overflow:hidden}.hu-bt i{display:block;height:100%;background:#2f6fde;border-radius:8px}.hu-bar.best .hu-bt i{background:#16a34a}
.hu-save{margin:10px 0 0;color:#15803d;font-weight:700}
.hu-picks{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:10px}.hu-pick{display:flex;flex-direction:column;gap:3px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:inherit;text-decoration:none;transition:transform .15s,box-shadow .15s}.hu-pick:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.08)}
.hu-pi{font-size:1.4rem}.hu-pick>small{color:var(--mut);font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.hu-pick b{font-size:1.02rem}.hu-pp{font-size:1.25rem;font-weight:800}.hu-pp small{font-size:.75rem;font-weight:500;color:var(--mut)}.hu-pm{font-size:.88rem}.hu-why{color:var(--mut)}
.hu-all{margin:14px 0;border:1px solid var(--line);border-radius:12px;padding:0 14px;background:var(--surface)}.hu-all summary{padding:12px 0;cursor:pointer;font-weight:700}.hu-all ul{list-style:none;margin:0;padding:0 0 8px}.hu-all li{display:grid;grid-template-columns:1fr auto auto;gap:12px;padding:7px 0;border-top:1px solid var(--line);font-size:.93rem}.hu-all li a{color:inherit}
.hu-alert{padding:16px 18px;border:1px dashed var(--line);border-radius:14px}.hu-note{margin-top:10px}
.hu-sticky{display:none}
@media(max-width:700px){.hu-bar{grid-template-columns:1fr auto}.hu-bt{grid-column:1/-1;order:3}.hu-price{text-align:left}.hu-sticky{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -6px 18px rgba(0,0,0,.08)}.hu-hotel~.hu-wrap{padding-bottom:80px}}
.hu-img{background-size:cover;background-position:center}.hu-credit{display:block;margin-top:10px;opacity:.75;font-size:.72rem}
.hu-stay{margin:0 0 26px}.hu-stay img{width:100%;max-height:300px;object-fit:cover;border-radius:14px;display:block}.hu-stay figcaption{margin-top:6px;font-size:.78rem;color:var(--mut)}
@media(min-width:900px){.hu-picks{grid-template-columns:repeat(3,1fr)}}.hu-alert{padding:12px 16px;margin-bottom:26px}.hu-alert h2{font-size:1.1rem}
.hu-ad{margin:8px 0 0;font-size:12px;opacity:.85}
.hu-book{display:inline-block;background:#f97316;color:#fff;font-size:1.3rem;font-weight:800;padding:17px 36px;border-radius:14px;text-decoration:none;box-shadow:0 6px 18px rgba(249,115,22,.4)}.hu-book:hover{filter:brightness(1.07)}
.hu-deal{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:var(--card,#fff);border:1px solid var(--line);border-radius:16px;padding:20px 22px}.hu-deal .hu-pp{display:block;font-size:2rem;font-weight:800;margin:4px 0}
@media(max-width:560px){.hu-book{display:block;text-align:center;width:100%}}
.hu-h1{font-size:clamp(1.6rem,4vw,2.2rem);margin:22px 0 4px}.hu-sub2{margin:0 0 6px;color:var(--muted,#555)}
.vbox{display:grid;gap:14px;margin-top:18px}.vstep{display:flex;gap:14px;align-items:flex-start;background:var(--card,#fff);border:1px solid var(--line);border-radius:16px;padding:16px 18px}.vstep>.vn{flex:none;width:32px;height:32px;border-radius:50%;background:var(--acc,#2563eb);color:#fff;font-weight:800;display:grid;place-items:center}.vstep.done>.vn{background:#16a34a}.vstep p{margin:6px 0}.vhow{margin:8px 0 0;padding-left:20px}.vhow li{margin:4px 0}.vuse{font-size:1.05rem;margin:4px 2px}
.gsearch{max-width:760px;margin:18px auto 0;background:var(--card,#fff);border:1px solid var(--line);border-radius:16px;padding:14px 16px;box-shadow:0 4px 14px rgba(0,0,0,.06)}.gsearch label{display:block;margin-bottom:8px}.gsearch small{color:var(--muted,#666);font-weight:400;margin-left:6px}.gsearch>div{display:flex;gap:8px}.gsearch input{flex:1;min-width:0;border:1px solid var(--line);border-radius:12px;padding:12px 14px;font:inherit}
.hu-answer{background:var(--card,#f1f5f9);border-left:4px solid var(--acc,#2563eb);padding:12px 16px;border-radius:8px;margin:12px 0;line-height:1.5}
.vpnbar{background:linear-gradient(135deg,#1d4ed8,#0f766e);color:#fff}.vpnbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px}.vpnbar b{display:block;font-size:1.15rem}.vpnbar small{display:block;opacity:.9;margin-top:2px}.vpnbar .hu-book{font-size:1.05rem;padding:12px 24px;box-shadow:none}@media(max-width:560px){.vpnbar .hu-book{width:100%}}
.vpnbox{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:18px 0;padding:16px 20px;border-radius:16px;background:linear-gradient(135deg,#1d4ed8,#0f766e);color:#fff}.vpnbox b{display:block;font-size:1.1rem}.vpnbox small{display:block;opacity:.92;margin-top:2px}.vpnbox .hu-book{font-size:1.05rem;padding:12px 24px;box-shadow:none}@media(max-width:560px){.vpnbox .hu-book{width:100%}}
.nextsteps{margin:18px 0}.ns-h{font-size:1.15rem;margin:0 0 10px}.ns-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ns{display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:left;background:var(--card,#fff);border:1px solid var(--line);border-radius:14px;padding:14px 16px;font:inherit;color:inherit;text-decoration:none;cursor:pointer}.ns:hover{border-color:var(--acc,#2563eb);box-shadow:0 4px 14px rgba(37,99,235,.15)}.ns b{font-size:1rem}.ns small{color:var(--muted,#555)}@media(max-width:700px){.ns-row{grid-template-columns:1fr}}.bestlink{margin:12px 0}.bestlink .hu-book{font-size:1.05rem;padding:13px 22px;display:inline-block}
