/* Fahrzeit 2.1: spacious touch targets, compact overview, quiet countryside. */
:root{--bg:#293e43;--panel:#354e51;--panel-2:#3d595b;--line:#e0eed91f;--ink:#f6f4e9;--muted:#c3d0c6;--radius:24px}
body{background:#293e43}.app-scene{background:linear-gradient(180deg,#293e43ec,#293e43cc 48%,#293e4370),url('/scene.svg') center bottom/cover}.login-scene{background:linear-gradient(90deg,#263e416e,#293e4375),url('/scene.svg') center bottom/cover}.app-scene:after{opacity:.18}
.shell{max-width:1180px}.topbar{height:80px}.menu-intro{padding:26px 0 23px}.menu-intro h1{font-size:36px;line-height:1.18;margin:8px 0 12px}.menu-intro h1 br{display:none}.menu-intro h1 em{margin-left:12px;font-size:29px}.menu-intro>p{display:none}.family-row{margin-top:16px}.menu-grid{gap:18px}.menu-card{min-height:185px;padding:23px 25px;display:grid;grid-template-columns:65px 1fr;column-gap:20px;align-content:center}.menu-card-icon{grid-column:1;grid-row:1/4;margin:0;align-self:center;width:60px;height:64px;border-radius:20px}.menu-card h2{grid-column:2;font-size:29px;margin-bottom:7px}.menu-card p{grid-column:2;font-size:15px;opacity:.85}.menu-card p br{display:none}.menu-bottom{grid-column:2;margin-top:15px;padding-top:11px;font-size:13px}.menu-number{top:15px;right:16px}.menu-motto{display:none}.card-calendar{background:linear-gradient(135deg,#477c73ed,#355d5ced)}.card-fuel{background:linear-gradient(135deg,#9b7756ed,#725b48ed)}.card-analysis{background:linear-gradient(135deg,#79718eed,#57566eed)}.card-settings{background:linear-gradient(135deg,#687d61ed,#485e4fed)}footer{margin-top:25px;padding:18px 0}.page-title{padding:23px 0}.page-title h1{font-size:39px}.page-title p{font-size:17px;margin-top:8px}.panel{background:#334d50ed;box-shadow:0 12px 35px #132e3022}.button,.small-button,.text-button{min-height:48px}.button{font-size:17px}.field>span{font-size:15px!important}.field input,.field select{font-size:17px;min-height:52px}.field-hint,.page-copy{font-size:15px;line-height:1.6}.auth-card{background:#2e494bec;margin-bottom:0}.auth-intro{padding-bottom:0}.auth-intro h1{font-size:46px}.auth-shell{gap:28px 65px;grid-template-rows:auto 1fr auto}.auth-card .button{font-size:17px}.auth-foot{font-size:12px}.auth-caption{font-size:13px}.info-button{display:inline-grid;place-items:center;min-width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:#f5edd00a;color:#dfdfbd;flex-shrink:0}.demo-banner{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#e6be7a20;border:1px solid #e6be7a65;border-radius:16px;padding:12px 17px;margin-top:17px;color:#ffe0a6}.demo-banner span{font-size:14px}.demo-banner button{margin-left:auto}.compact-days{display:grid;grid-template-columns:repeat(var(--days),minmax(0,1fr));gap:13px;padding:4px 24px 24px}.compact-day{border:1px solid #dfeddf26;border-radius:20px;padding:16px 10px;display:flex;flex-direction:column;align-items:center;background:#d2e2c309;color:var(--ink);gap:8px;min-height:217px}.compact-day.is-today{border-color:#93d6bd;background:#91cdbd16}.day-week{font-size:16px;color:#c2d3c7}.day-number{font-size:40px;font-weight:650;line-height:1}.day-road{display:flex;flex-direction:column;gap:4px;width:75%;min-height:41px;justify-content:center}.day-road i{height:5px;border-radius:8px;background:var(--person)}.day-road i.is-request{background:transparent;border:1px dashed var(--person);height:6px}.day-road .empty-road{background:#bdcec520;height:3px}.compact-day>b{font-size:23px}.compact-day>b small{font-size:15px;font-weight:400}.day-count{font-size:13px;color:#c3d0c4}.day-detail-actions{display:grid;gap:12px;margin-top:20px}.day-detail-list .entry-row{padding-inline:0}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.overview-card{margin:0!important;padding:22px}.overview-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.overview-heading h2{font-size:24px}.overview-plot{width:100%;border:0;background:none;padding:0;text-align:left;display:grid;gap:17px}.mini-row{display:grid;grid-template-columns:1fr auto;gap:8px;font-size:16px}.mini-row>b{font-size:17px;font-weight:550}.mini-row>i{grid-column:1/-1;display:block;height:11px;background:#152f323d;border-radius:10px;overflow:hidden}.mini-row em{height:100%;min-width:0;display:block;border-radius:10px}.mini-open{display:flex;align-items:center;justify-content:space-between;color:#d1e5d3;font-size:14px;padding-top:8px;margin-top:5px;border-top:1px solid var(--line)}.price-overview{min-height:188px}.price-overview>span:not(.mini-open){display:flex;align-items:center;justify-content:space-between;gap:12px}.price-overview b{font-size:24px;color:#f1ce97}.price-overview p{color:var(--muted)}.range-tools{flex-wrap:wrap}.range-tools button{min-height:44px;font-size:15px}.range-tools .reset-button{margin-left:auto}.gesture-hint{font-size:14px}.panel-foot{font-size:13px}.family-legend{font-size:14px}.entry-row{min-height:74px}.entry-person strong{font-size:17px}.entry-person span{font-size:15px}.entry-date small{font-size:14px}.settings-panel .page-copy{margin-bottom:14px}.setting-buttons .button{font-size:16px}
@media(min-width:1050px) and (min-height:800px){.menu-card{min-height:214px}}
@media(min-width:1450px){.shell{max-width:1360px}.menu-grid{grid-template-columns:repeat(4,1fr)}.menu-card{display:flex;flex-direction:column;align-items:flex-start;min-height:260px;gap:12px}.menu-card-icon{align-self:flex-start}.menu-card h2{font-size:28px}.menu-bottom{align-self:stretch;margin-top:auto;width:100%}.menu-card p{font-size:15px}}
@media(max-width:700px){.shell{padding:0 18px}.topbar{height:76px}.menu-intro{padding:25px 0 22px}.menu-intro h1{font-size:31px}.menu-intro h1 br{display:block}.menu-intro h1 em{margin:6px 0 0;font-size:25px;display:block}.menu-grid{gap:13px}.menu-card{display:flex;flex-direction:column;align-items:flex-start;min-height:209px;padding:18px;gap:12px}.menu-card-icon{width:47px;height:49px;align-self:flex-start}.menu-card-icon svg{width:28px;height:28px}.menu-card h2{font-size:24px;margin:0}.menu-card p{display:none}.menu-bottom{margin-top:auto;width:100%;font-size:12px;min-height:46px}.family-row{gap:13px}.page-title h1{font-size:34px}.overview-grid{gap:13px}.overview-card{padding:18px}.overview-heading h2{font-size:21px}.compact-days{gap:8px;padding:0 13px 18px}.compact-day{border-radius:16px;min-height:204px;padding:14px 5px}.compact-day>b{font-size:20px}.day-number{font-size:34px}.day-count{font-size:12px}.day-detail-list .entry-person span{font-size:14px}.auth-intro{padding:0;margin:27px 0 24px}.auth-intro h1{font-size:35px}.auth-caption{font-size:12px}.auth-foot{font-size:11px}.panel-heading h2{font-size:23px}.demo-banner{font-size:14px}.demo-banner button{margin-left:0}.overview-plot .mini-row{font-size:15px}.mini-row>b{font-size:16px}}
@media(max-width:520px){.overview-grid{grid-template-columns:1fr}.overview-card{padding:20px}.overview-heading h2{font-size:24px}.menu-grid{gap:11px}.menu-card{padding:16px;min-height:200px}.menu-card h2{font-size:22px}.menu-bottom svg{width:18px}.menu-intro h1 em{font-size:24px}.auth-shell{padding:24px 18px}.auth-heading h2{font-size:21px}.auth-card{padding:23px 20px}.auth-tabs button{font-size:15px;min-height:44px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(min-width:1100px){.overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.overview-card{padding:20px 17px}.overview-heading h2{font-size:21px}.overview-heading{gap:6px;min-height:48px}.overview-card .info-button{width:38px;min-width:38px;height:38px}.mini-row{grid-template-columns:1fr;gap:5px}.mini-row>b{grid-column:1;font-size:21px}.mini-row>span{font-size:15px}.overview-plot{gap:18px}.price-overview{min-height:268px}.price-overview>span:not(.mini-open){flex-wrap:wrap}.price-overview b{font-size:22px}.overview-card .mini-open{margin-top:8px}}
@media(max-width:520px){.menu-grid{grid-template-columns:1fr;gap:12px}.menu-card{display:grid;grid-template-columns:54px minmax(0,1fr);column-gap:16px;row-gap:0;padding:18px;min-height:106px}.menu-card-icon{grid-column:1;grid-row:1/3;align-self:center;width:52px;height:56px}.menu-card h2{grid-column:2;font-size:25px;overflow-wrap:anywhere}.menu-bottom{grid-column:2;min-height:0;margin:7px 0 0;border:0;padding:0;font-size:13px}.menu-number{top:12px;right:12px}.demo-banner{padding:11px 15px;gap:7px}.demo-banner button{min-height:40px}.demo-banner>span{font-size:13px}.calendar-actions .button{min-height:65px;padding:14px;gap:8px;font-size:16px;justify-content:center}.calendar-actions .button svg{width:22px;height:22px}.page-title{padding:20px 0}.compact-day{min-height:204px}.panel-foot{line-height:1.6}}
@media(min-width:1100px){.overview-heading{min-height:54px}}
