.page-shell{padding-top:calc(var(--nav-height) + var(--space-10));padding-bottom:var(--space-20);min-height:100vh;min-height:100dvh}.page-head{margin-bottom:var(--space-8)}.page-title{font-family:var(--font-display);font-size:clamp(2rem, 4vw, 3rem);font-weight:600;line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--fg-primary)}.page-sub{margin-top:var(--space-2);font-size:var(--text-base);color:var(--fg-tertiary)}.steps{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-8)}.step{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--line-subtle);border-radius:var(--radius-full);background:var(--bg-inset);font-size:var(--text-sm);font-weight:600;color:var(--fg-muted);transition:color var(--dur-base) var(--ease-out-soft),border-color var(--dur-base) var(--ease-out-soft),background-color var(--dur-base) var(--ease-out-soft)}.step-num{display:grid;place-items:center;width:24px;height:24px;border-radius:var(--radius-full);background:var(--line-soft);color:var(--fg-tertiary);font-size:var(--text-xs);font-weight:700}.step.is-active{color:var(--accent-200);border-color:rgba(var(--accent-rgb),.45);background:rgba(var(--accent-rgb),.1)}.step.is-active .step-num{background:var(--accent-gradient-soft);color:var(--accent-contrast)}.step.is-done{color:var(--state-success);border-color:rgba(79,191,139,.35)}.step.is-done .step-num{background:var(--state-success);color:#fff}.step-arrow{color:var(--fg-muted);flex:0 0 auto}.step-arrow svg{width:16px;height:16px;display:block}.checkout-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,400px);gap:var(--space-6);align-items:start}.panel{border:1px solid var(--line-subtle);border-radius:var(--radius-lg);background:var(--bg-raised);overflow:hidden}.panel+.panel{margin-top:var(--space-5)}.panel-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line-subtle);background:var(--bg-inset)}.panel-head svg{width:18px;height:18px;color:var(--accent-400);flex:0 0 auto}.panel-title{flex:1 1 auto;font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;letter-spacing:var(--tracking-tight);color:var(--fg-primary)}.panel-body{padding:var(--space-5)}.summary{position:sticky;top:calc(var(--nav-height) + var(--space-5))}.summary-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;font-size:var(--text-sm);color:var(--fg-secondary)}.summary-row.is-total{margin-top:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--line-soft);font-size:var(--text-base);color:var(--fg-primary);font-weight:600}.summary-total{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:600;color:var(--accent-300);font-variant-numeric:tabular-nums}.summary-deposit{font-variant-numeric:tabular-nums;color:var(--accent-300);font-weight:600}.cart-line{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--line-subtle)}.cart-line:first-child{padding-top:0}.cart-line:last-child{border-bottom:0;padding-bottom:0}.cart-thumb{flex:0 0 auto;width:74px;height:74px;border-radius:var(--radius-md);overflow:hidden;background:var(--bg-inset);border:1px solid var(--line-soft);display:grid;place-items:center}.cart-thumb img{width:100%;height:100%;object-fit:cover}.cart-thumb svg{width:26px;height:26px;color:var(--fg-muted)}.cart-info{flex:1 1 auto;min-width:0}.cart-name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;color:var(--fg-primary);line-height:var(--leading-snug)}.cart-meta{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-top:3px;font-size:var(--text-xs);color:var(--fg-muted)}.cart-price{flex:0 0 auto;text-align:right}.cart-price strong{display:block;font-size:var(--text-lg);font-weight:600;color:var(--fg-primary);font-variant-numeric:tabular-nums}.cart-price small{display:block;font-size:var(--text-xs);color:var(--fg-muted)}.cart-remove{flex:0 0 auto;display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line-soft);border-radius:var(--radius-md);background:0 0;color:var(--fg-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out-soft),border-color var(--dur-fast) var(--ease-out-soft)}.cart-remove svg{width:16px;height:16px}.cart-remove:hover{color:var(--state-danger);border-color:var(--state-danger)}.daystrip{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-2);scrollbar-width:thin;scroll-snap-type:x proximity}.daystrip::-webkit-scrollbar{height:4px}.daystrip::-webkit-scrollbar-thumb{background:var(--line-medium);border-radius:var(--radius-full)}.day{flex:0 0 auto;scroll-snap-align:start;display:grid;gap:2px;justify-items:center;min-width:66px;padding:var(--space-3) var(--space-2);border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--bg-inset);color:var(--fg-secondary);font-family:inherit;cursor:pointer;transition:color var(--dur-fast) var(--ease-out-soft),border-color var(--dur-fast) var(--ease-out-soft),background-color var(--dur-fast) var(--ease-out-soft),transform var(--dur-fast) var(--ease-spring)}.day:hover:not(:disabled){border-color:rgba(var(--accent-rgb),.45);transform:translateY(-2px)}.day:disabled{opacity:.3;cursor:not-allowed}.day-dow{font-size:var(--text-2xs);font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--fg-muted)}.day-num{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;line-height:1;color:var(--fg-primary);font-variant-numeric:tabular-nums}.day-mon{font-size:var(--text-2xs);color:var(--fg-muted)}.day.is-selected{background:var(--accent-gradient-soft);border-color:transparent;color:var(--accent-contrast)}.day.is-selected .day-dow,.day.is-selected .day-mon,.day.is-selected .day-num{color:var(--accent-contrast)}.time-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:var(--space-2);margin-top:var(--space-4)}.time{padding:var(--space-3) var(--space-2);border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--bg-inset);color:var(--fg-secondary);font-family:inherit;font-size:var(--text-sm);font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer;transition:color var(--dur-fast) var(--ease-out-soft),border-color var(--dur-fast) var(--ease-out-soft),background-color var(--dur-fast) var(--ease-out-soft)}.time:hover{border-color:rgba(var(--accent-rgb),.5);color:var(--fg-primary)}.time.is-selected{background:var(--accent-gradient-soft);border-color:transparent;color:var(--accent-contrast)}.iban-box{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px dashed rgba(var(--accent-rgb),.4);border-radius:var(--radius-md);background:rgba(var(--accent-rgb),.06)}.iban-value{flex:1 1 auto;min-width:0;font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.04em;color:var(--fg-primary);overflow-wrap:anywhere}.account-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:var(--space-6);align-items:start}.account-side{position:sticky;top:calc(var(--nav-height) + var(--space-5));border:1px solid var(--line-subtle);border-radius:var(--radius-lg);background:var(--bg-raised);overflow:hidden}.account-id{display:grid;justify-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center;border-bottom:1px solid var(--line-subtle);background:radial-gradient(90% 70% at 50% 0,rgba(var(--accent-rgb),.14),transparent 70%),var(--bg-inset)}.account-avatar{display:grid;place-items:center;width:62px;height:62px;border-radius:var(--radius-full);background:var(--accent-gradient-soft);color:var(--accent-contrast);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700}.account-name{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;color:var(--fg-primary)}.account-mail{font-size:var(--text-xs);color:var(--fg-muted);overflow-wrap:anywhere}.account-nav{padding:var(--space-3)}.account-link{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3);border:0;border-radius:var(--radius-md);background:0 0;color:var(--fg-secondary);font-family:inherit;font-size:var(--text-sm);font-weight:500;text-align:left;text-decoration:none;cursor:pointer;transition:color var(--dur-fast) var(--ease-out-soft),background-color var(--dur-fast) var(--ease-out-soft)}.account-link+.account-link{margin-top:2px}.account-link svg{width:18px;height:18px;opacity:.75;flex:0 0 auto}.account-link:hover{color:var(--fg-primary);background:var(--bg-inset)}.account-link.is-active{color:var(--accent-200);background:rgba(var(--accent-rgb),.1)}.account-link.is-active svg{opacity:1}.account-link-count{margin-left:auto;min-width:20px;height:20px;padding:0 6px;display:grid;place-items:center;border-radius:var(--radius-full);background:rgba(var(--accent-rgb),.18);color:var(--accent-200);font-size:var(--text-2xs);font-weight:700;font-variant-numeric:tabular-nums}.booking{border:1px solid var(--line-subtle);border-left:3px solid var(--line-medium);border-radius:var(--radius-md);background:var(--bg-raised);overflow:hidden}.booking+.booking{margin-top:var(--space-4)}.booking[data-status=pending]{border-left-color:var(--state-warning)}.booking[data-status=approved]{border-left-color:var(--state-success)}.booking[data-status=rejected]{border-left-color:var(--state-danger)}.booking[data-status=cancelled]{border-left-color:var(--fg-muted)}.booking-head{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-4);background:var(--bg-inset);border-bottom:1px solid var(--line-subtle)}.booking-when{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-base);font-weight:600;color:var(--fg-primary)}.booking-when svg{width:16px;height:16px;color:var(--accent-400)}.booking-body{padding:var(--space-4)}.booking-items{display:grid;gap:var(--space-2)}.booking-item{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--fg-secondary)}.booking-item svg{width:14px;height:14px;color:var(--accent-400);flex:0 0 auto}.booking-foot{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);border-top:1px solid var(--line-subtle);background:var(--bg-inset)}.booking-total{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;color:var(--accent-300);font-variant-numeric:tabular-nums}.mini-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.mini-stat{padding:var(--space-4);border:1px solid var(--line-subtle);border-radius:var(--radius-md);background:var(--bg-raised)}.mini-stat-label{font-size:var(--text-2xs);font-weight:700;letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--fg-muted)}.mini-stat-value{margin-top:var(--space-1);font-family:var(--font-display);font-size:var(--text-3xl);font-weight:600;line-height:1;color:var(--fg-primary);font-variant-numeric:tabular-nums}@media (max-width:1000px){.account-grid,.checkout-grid{grid-template-columns:1fr}.account-side,.summary{position:static}.account-nav{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:thin}.account-link{flex:0 0 auto;white-space:nowrap}.account-link+.account-link{margin-top:0}}@media (max-width:560px){.page-shell{padding-top:calc(var(--nav-height) + var(--space-6))}.panel-body{padding:var(--space-4)}.cart-line{flex-wrap:wrap}.cart-thumb{width:56px;height:56px}.cart-price{margin-left:auto}.mini-stats{grid-template-columns:repeat(2,1fr)}}