:root{--ink: #17181c;--ink-soft: #1f2127;--ink-line: #2c2f38;--brand: #3b5bf6;--brand-dark: #2743d6;--brand-soft: #eaeeff;--cyan: #2ed3f2;--brand-gradient: linear-gradient(135deg, #2ed3f2 0%, #3b5bf6 100%);--color-bg: #f4f5f7;--color-surface: #ffffff;--color-text: #14161b;--color-muted: #6b7080;--color-border: #e3e5ea;--color-accent: var(--brand);--color-accent-dark: var(--brand-dark);--color-error-bg: #fdecec;--color-error-text: #9b1c1c;--color-warning-bg: #fdf2e0;--color-warning-text: #8a5406;--color-success-bg: #e7f7ee;--color-success-text: #12673c;--color-info-bg: var(--brand-soft);--color-info-text: #23349c;--radius-sm: 8px;--radius: 14px;--radius-lg: 22px;--shadow-sm: 0 1px 2px rgb(20 22 27 / 6%), 0 4px 12px rgb(20 22 27 / 5%);--shadow-md: 0 12px 32px rgb(20 22 27 / 10%);--shadow-lg: 0 28px 70px rgb(20 22 27 / 18%);--header-height: 68px;--content-width: 1160px}*{box-sizing:border-box}html{overflow-y:scroll}body{margin:0;font-family:Inter,SF Pro Text,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;background:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{line-height:1.2;letter-spacing:-.02em;margin:0 0 .5rem}h1{font-size:1.75rem;font-weight:700}.form h1{font-size:1.5rem}h2{font-size:clamp(1.5rem,2.7vw,2.15rem);font-weight:700}h3{font-size:1.06rem;font-weight:650}p{margin:0 0 .75rem}a{color:var(--color-accent)}.app-shell{min-height:100vh;display:flex;flex-direction:column}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1.15rem;font:inherit;font-weight:600;background:var(--brand);color:#fff;border:1px solid transparent;border-radius:999px;cursor:pointer;text-decoration:none;text-align:center;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}button:hover:not(:disabled),.button:hover{background:var(--brand-dark);box-shadow:0 8px 22px #3b5bf647;transform:translateY(-1px)}button:disabled{opacity:.55;cursor:default;transform:none;box-shadow:none}button.secondary,.button.secondary{background:transparent;color:var(--color-text);border-color:var(--color-border)}button.secondary:hover,.button.secondary:hover{background:var(--color-surface);border-color:var(--brand);color:var(--color-accent);box-shadow:var(--shadow-sm)}.button-sm{padding:.5rem 1.25rem;font-size:.9rem}.button-lg{padding:.85rem 1.6rem;font-size:1.02rem}.button-invert{background:#fff;color:var(--color-accent)}.button-invert:hover{background:#fff;color:var(--brand-dark)}.button svg{width:18px;height:18px}.site-header{position:sticky;top:0;z-index:30;background:#ffffffe0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .2s ease,box-shadow .2s ease}.site-header.scrolled{border-bottom-color:var(--color-border);box-shadow:var(--shadow-sm)}.header-inner{max-width:var(--content-width);margin:0 auto;min-height:var(--header-height);padding:calc(.6rem + env(safe-area-inset-top)) calc(1.25rem + env(safe-area-inset-right)) .6rem calc(1.25rem + env(safe-area-inset-left));display:flex;align-items:center;gap:1.5rem;min-width:0}.brand{text-decoration:none;color:inherit;flex-shrink:0}.logo{display:inline-flex;align-items:center;gap:.6rem}.logo-word{font-size:1.32rem;font-weight:500;letter-spacing:-.03em;color:var(--color-text)}.logo-word-strong{font-weight:800}.site-nav{display:flex;align-items:center;gap:1.6rem;margin-left:auto}.site-nav a:not(.button){color:var(--color-muted);text-decoration:none;font-size:.95rem;font-weight:550;padding:.35rem 0;border-bottom:2px solid transparent;transition:color .16s ease}.site-nav a:not(.button):hover{color:var(--color-text)}.site-nav a:not(.button).active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.site-nav a{flex-shrink:0;white-space:nowrap}.site-menu{display:contents}.header-tools{display:flex;align-items:center;gap:.75rem;margin-left:auto;min-width:0;flex-shrink:0}button.logout-button{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:.45rem;color:var(--color-muted);background:transparent;border:1px solid var(--color-border);border-radius:999px;box-shadow:none}button.logout-button svg{width:18px;height:18px;flex-shrink:0}button.logout-button:hover{color:var(--color-text);background:var(--color-bg);transform:none;box-shadow:none}.lang-switch{display:flex;gap:2px;padding:3px;background:var(--color-bg);border-radius:999px}.lang-switch button{min-height:24px;padding:.35rem .75rem;font-size:.78rem;font-weight:700;background:transparent;color:var(--color-muted);border:none;border-radius:999px;box-shadow:none}.lang-switch button:hover:not(.active){background:transparent;color:var(--color-text);transform:none;box-shadow:none}.lang-switch button.active{background:var(--color-surface);color:var(--color-accent);box-shadow:var(--shadow-sm)}.menu-toggle{display:none;flex-direction:column;justify-content:center;gap:4px;width:40px;height:40px;padding:0;background:transparent;border:1px solid var(--color-border);border-radius:10px}.menu-toggle span{display:block;width:17px;height:2px;margin:0 auto;background:var(--color-text);border-radius:2px}.menu-toggle:hover:not(:disabled){background:var(--color-bg);transform:none;box-shadow:none}.container{flex:1;width:100%;max-width:960px;margin:0 auto;padding:2.5rem calc(1.25rem + env(safe-area-inset-right)) 4rem calc(1.25rem + env(safe-area-inset-left))}.landing-main{flex:1}.section{padding:clamp(3.5rem,7vw,6rem) 1.25rem;scroll-margin-top:var(--header-height)}.section-inner{max-width:var(--content-width);margin:0 auto}.section-muted{background:var(--color-surface)}.section-dark{background:var(--ink);color:#fff}.section-dark h2,.section-dark h3{color:#fff}.section-heading{max-width:46rem;margin-bottom:2.75rem}.eyebrow{margin:0 0 .6rem;font-size:.79rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent)}.section-dark .eyebrow{color:var(--cyan)}.section-lead{margin:0;font-size:1.1rem;color:var(--color-muted)}.section-dark .section-lead{color:#a8adbd}.hero{position:relative;overflow:hidden;padding:clamp(3rem,7vw,5.5rem) 1.25rem clamp(4rem,8vw,6.5rem);background:radial-gradient(900px 520px at 12% -10%,rgb(46 211 242 / 22%),transparent 60%),radial-gradient(760px 460px at 88% 8%,rgb(59 91 246 / 30%),transparent 62%),linear-gradient(165deg,#191b21,#12141a);color:#fff}.hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgb(255 255 255 / 4%) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / 4%) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(circle at 50% 30%,#000 0%,transparent 72%);mask-image:radial-gradient(circle at 50% 30%,#000 0%,transparent 72%);pointer-events:none}.hero-inner{position:relative;z-index:1;max-width:var(--content-width);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(2rem,5vw,4rem);align-items:center}.hero-eyebrow{display:inline-flex;align-items:center;gap:.55rem;margin:0 0 1.25rem;padding:.4rem .95rem .4rem .7rem;font-size:.84rem;font-weight:600;color:#d7dbe8;background:#ffffff12;border:1px solid rgb(255 255 255 / 12%);border-radius:999px}.pulse-dot{width:9px;height:9px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px #2ed3f22e}.hero h1{margin-bottom:1.1rem;font-size:clamp(2rem,4.4vw,3.35rem);text-wrap:balance;background:linear-gradient(180deg,#fff 40%,#c7cddf);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-lead{max-width:34rem;margin-bottom:2rem;font-size:1.09rem;color:#aab0c2}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem}.hero-actions .button.secondary{color:#fff;border-color:#ffffff38;background:#ffffff0d}.hero-actions .button.secondary:hover{background:#ffffff1f;border-color:#fff6;color:#fff}.hero-badges{display:flex;flex-wrap:wrap;gap:.5rem 1.6rem;margin:2.5rem 0 0;padding:0;list-style:none}.hero-badges li{position:relative;padding-left:1.15rem;font-size:.9rem;color:#8c92a6}.hero-badges li:before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--cyan)}.hero-preview{position:relative;display:flex;justify-content:center}.hero-glow{position:absolute;pointer-events:none;inset:-18% -8%;background:radial-gradient(closest-side,rgb(59 91 246 / 42%),transparent);filter:blur(24px)}.preview-card{position:relative;width:min(100%,25rem);padding:1.4rem;background:#fffffff5;color:#1f2530;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transform:rotate(-1.4deg)}.preview-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.preview-status{padding:.28rem .75rem;font-size:.76rem;font-weight:700;color:var(--color-success-text);background:var(--color-success-bg);border-radius:999px}.preview-route{display:grid;grid-template-columns:auto 1fr;gap:.9rem}.route-line{display:flex;flex-direction:column;align-items:center;padding:.45rem 0}.route-dot{width:11px;height:11px;border-radius:50%;flex-shrink:0}.route-dot-start{background:var(--cyan)}.route-dot-end{background:var(--brand)}.route-track{flex:1;width:2px;min-height:34px;margin:4px 0;background:linear-gradient(180deg,var(--cyan),var(--brand));border-radius:2px}.route-stops{display:flex;flex-direction:column;justify-content:space-between}.route-when{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem;margin:.15rem 0 0}.route-when-label{font-size:.82rem;color:var(--color-muted)}.route-when strong{font-size:1.02rem;font-variant-numeric:tabular-nums}.route-when-guess{font-size:.78rem;color:var(--color-muted)}.route-drive{margin:.3rem 0 0;font-size:.8rem;color:var(--color-muted)}.route-stop{margin:0;font-weight:600;font-size:.97rem}.preview-meta{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:1.25rem 0;padding-top:1rem;border-top:1px solid var(--color-border);font-size:.9rem;color:var(--color-muted)}.preview-card .route-when-label,.preview-card .route-when-guess,.preview-card .route-drive,.preview-card .preview-meta{color:#667085}.preview-chip{padding:.25rem .7rem;font-size:.76rem;font-weight:650;color:var(--color-info-text);background:var(--color-info-bg);border-radius:999px}.preview-action{padding:.7rem;text-align:center;font-weight:650;color:#fff;background:var(--brand-gradient);border-radius:999px}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(330px,100%),1fr));gap:1.15rem}.feature-card{padding:1.6rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.feature-card:hover{transform:translateY(-3px);border-color:transparent;box-shadow:var(--shadow-md)}.feature-card h3{margin-bottom:.35rem}.feature-card p{margin:0;color:var(--color-muted);font-size:.95rem}.feature-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;margin-bottom:1.1rem;color:#fff;background:var(--brand-gradient);border-radius:13px;box-shadow:0 8px 20px #3b5bf642}.feature-icon svg{width:23px;height:23px}.section-dark .feature-card{background:var(--ink-soft);border-color:var(--ink-line)}.section-dark .feature-card:hover{border-color:#2ed3f259;box-shadow:0 18px 40px #00000059}.section-dark .feature-card p{color:#a8adbd}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:1.15rem;margin:0;padding:0;list-style:none;counter-reset:step}.steps li{position:relative;padding:1.6rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.steps h3{margin:0 0 .35rem}.steps p{margin:0;color:var(--color-muted);font-size:.95rem}.step-number{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-bottom:1rem;font-size:.95rem;font-weight:750;color:var(--color-accent);background:var(--brand-soft);border-radius:50%}.about-inner{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:clamp(2rem,5vw,3.5rem);align-items:start}.about-inner p{color:var(--color-muted);font-size:1.02rem}.partner-card{padding:1.9rem;background:var(--ink);color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.partner-text{margin:1.1rem 0 0;font-size:.96rem}.about-inner .partner-text{color:#a8adbd}.contact-inner{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(310px,100%),1fr));gap:clamp(2rem,4vw,3rem);align-items:start}.contact-stack{display:grid;gap:1.5rem}.contact-card{min-width:0;padding:1.75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.contact-company-id{display:inline-flex;align-items:center;gap:.55rem;margin:0;padding:.55rem 1rem;font-size:.92rem;font-weight:600;color:var(--color-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px}.contact-company-id svg{width:17px;height:17px;color:var(--color-accent)}.contact-form{display:flex;flex-direction:column;gap:1rem}.contact-form label{display:flex;flex-direction:column;gap:.3rem;font-size:.88rem;font-weight:600}.contact-form input,.contact-form textarea{padding:.62rem .75rem;font:inherit;font-weight:400;color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);transition:border-color .16s ease,box-shadow .16s ease}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #3b5bf626}.cta-panel{min-width:0;padding:clamp(2rem,4vw,2.75rem);background:var(--brand-gradient);color:#fff;border-radius:var(--radius-lg);box-shadow:0 22px 50px #3b5bf64d}.cta-panel h2{color:#fff}.cta-panel p{margin-bottom:1.6rem;color:#ffffffe0}.site-footer{background:var(--ink);color:#9aa0b2;padding:clamp(2.5rem,5vw,4rem) calc(1.25rem + env(safe-area-inset-right)) env(safe-area-inset-bottom) calc(1.25rem + env(safe-area-inset-left))}.footer-inner{max-width:var(--content-width);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:2.5rem}.footer-brand .logo-word{color:#fff}.footer-brand p{margin:1rem 0 0;max-width:26rem;font-size:.95rem}.footer-brand .footer-partner{font-size:.86rem;color:#83899d}.footer-column{display:flex;flex-direction:column;gap:.6rem}.footer-column h2{margin:0 0 .35rem;font-size:.79rem;font-weight:750;letter-spacing:.11em;text-transform:uppercase;color:#fff}.footer-column a{color:#9aa0b2;text-decoration:none;font-size:.94rem;transition:color .16s ease}.footer-column a:hover{color:var(--cyan)}.footer-meta{font-size:.94rem}.footer-bottom{max-width:var(--content-width);margin:clamp(2rem,4vw,3rem) auto 0;padding:1.35rem 0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;border-top:1px solid var(--ink-line);font-size:.88rem;color:#83899d}.footer-bottom-right{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem}.form{max-width:27rem;margin:0 auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:2rem;display:flex;flex-direction:column;gap:1rem}.form form{display:flex;flex-direction:column;gap:1rem}.form label{display:flex;flex-direction:column;gap:.3rem;font-size:.88rem;font-weight:600}.form input,.form select,.form textarea{padding:.62rem .75rem;font-size:1rem;font-family:inherit;font-weight:400;color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);transition:border-color .16s ease,box-shadow .16s ease}.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #3b5bf626}.form label .hint{font-weight:400;font-size:.82rem;color:var(--color-muted)}.form input[aria-invalid=true]{border-color:var(--color-error-text)}.form label.checkbox{flex-direction:row;align-items:flex-start;gap:.55rem;font-weight:400}.field-error{color:var(--color-error-text);font-size:.8rem}.field-hint{color:var(--color-muted);font-size:.8rem;font-weight:400}.form-intro{margin:0 0 .25rem;color:var(--color-muted);font-size:.94rem}.form-wide{max-width:46rem}.form fieldset{margin:0;min-width:0;width:100%;padding:1.35rem;display:flex;flex-direction:column;gap:1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg)}.form fieldset legend{padding:0 .5rem;font-size:.79rem;font-weight:750;letter-spacing:.11em;text-transform:uppercase;color:var(--color-accent)}.form fieldset .button-sm{align-self:flex-start}.requirement-list{margin:0;padding:0;list-style:none;display:grid;gap:.6rem}@media(min-width:52rem){.requirement-list{grid-template-columns:1fr 1fr}}.form .requirement{display:flex;width:100%;flex-direction:row;align-items:flex-start;gap:.75rem;padding:.8rem .9rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .16s ease}.requirement:hover{border-color:var(--brand)}.requirement input{margin-top:.2rem;width:17px;height:17px;accent-color:var(--brand);flex-shrink:0}.requirement span{display:flex;flex-direction:column;gap:.15rem}.requirement strong{font-size:.95rem;font-weight:650}.requirement small{color:var(--color-muted);font-size:.85rem;font-weight:400}.document-list{margin:1.5rem 0 0;padding:0;list-style:none;display:grid;gap:.75rem}.document-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;padding:1rem 1.15rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.document-info{flex:1 1 16rem;display:flex;flex-direction:column;gap:.15rem}.document-info strong{font-size:.98rem;font-weight:650}.document-info small{color:var(--color-muted);font-size:.85rem}.document-upload{cursor:pointer}.document-upload input{display:none}.notice{margin:0;padding:.65rem .9rem;border-radius:var(--radius-sm);font-size:.92rem}.notice-error{background:var(--color-error-bg);color:var(--color-error-text)}.notice-success{background:var(--color-success-bg);color:var(--color-success-text)}.notice-warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.offline-notice{margin-bottom:1.25rem}.notice-info{background:var(--color-info-bg);color:var(--color-info-text)}.loading{color:var(--color-muted)}.ride-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(290px,100%),1fr));gap:1rem;margin-top:1.25rem}.ride-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.25rem;display:flex;flex-direction:column;gap:.85rem}.ride-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.ride-card-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;font-size:.9rem;color:var(--color-muted)}.ride-card-earning{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;margin:0;padding-top:.85rem;border-top:1px solid var(--color-border);font-size:.8rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted)}.ride-card-amount{font-size:1.15rem;font-weight:700;letter-spacing:normal;text-transform:none;color:var(--color-text)}.badge{font-size:.74rem;font-weight:650;padding:.16rem .6rem;border-radius:999px;background:var(--color-bg);color:var(--color-muted);border:1px solid var(--color-border);white-space:nowrap}.badge.status-new{background:var(--color-success-bg);color:var(--color-success-text);border-color:transparent}.badge.status-in_progress,.badge.status-booked{background:var(--color-info-bg);color:var(--color-info-text);border-color:transparent}.badge.badge-late{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:transparent}.badge.status-cancelled{background:var(--color-error-bg);color:var(--color-error-text);border-color:transparent}.ride-details{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:.6rem 1rem;font-size:.92rem}.ride-details>div{display:flex;flex-direction:column}.ride-details dt{color:var(--color-muted);font-size:.74rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.ride-details dd{margin:0}.legal{max-width:42rem}.legal-doc{max-width:48rem}.legal-doc h1{margin-bottom:1rem}.legal-doc h2{margin:2.25rem 0 .75rem;font-size:1.15rem}.legal-doc p,.legal-doc li{color:#3d4150;font-size:.97rem}.legal-doc ul{margin:0 0 .75rem;padding-left:1.15rem;display:grid;gap:.5rem}.legal-doc .legal-intro{padding:1rem 1.15rem;background:var(--color-info-bg);border-radius:var(--radius-sm);font-size:.94rem}.crash-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem calc(1.25rem + env(safe-area-inset-right)) 2rem calc(1.25rem + env(safe-area-inset-left));background:var(--color-bg)}.crash-card{max-width:30rem;text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:2rem 1.75rem}.crash-card h1{margin:0 0 .75rem;font-size:1.35rem}.crash-card p{margin:0 0 1.5rem;color:var(--color-muted)}.crash-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.back-to-top{position:fixed;right:calc(1rem + env(safe-area-inset-right));bottom:calc(1rem + env(safe-area-inset-bottom));z-index:50;width:2.75rem;height:2.75rem;padding:0;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-md);font-size:1.1rem;line-height:1;cursor:pointer}.back-to-top:hover:not(:disabled){background:var(--color-bg)}@media(max-width:900px){.hero-inner,.about-inner{grid-template-columns:1fr}.preview-card{transform:none}.footer-inner{grid-template-columns:1fr 1fr}}@media(max-width:68rem){.site-menu.open{position:absolute;top:100%;left:0;right:0;display:flex;flex-direction:column;align-items:stretch;gap:.35rem;margin:0;padding:1rem 1.25rem 1.35rem;background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-md)}.site-menu.open .site-nav{display:flex;flex-direction:column;align-items:stretch;gap:.35rem;margin:0}.site-menu.open .lang-switch,.site-menu.open .logout-button{align-self:flex-start;margin-top:.5rem}.site-nav.open{display:flex;flex-direction:column;align-items:stretch;gap:.35rem;margin:0}.site-nav.open a{padding:.6rem 0;border-bottom:none}.site-nav.open a.button{margin-top:.35rem}.client-zone .menu-toggle{display:flex}:where(.client-zone) .site-menu:not(.open){display:none}}@media(max-width:56rem){.menu-toggle{display:flex}.site-menu:not(.open){display:none}}@media(max-width:34rem){.header-inner{padding:.5rem .85rem;gap:.6rem}.header-tools{gap:.45rem}.lang-switch{padding:2px}.lang-switch button{padding:.28rem .45rem;font-size:.72rem}.logo-word{font-size:1.15rem}}@media(max-width:560px){.footer-inner{grid-template-columns:1fr;gap:1.75rem}.ride-grid,.ride-details{grid-template-columns:1fr}.form{padding:1.35rem}.hero-actions .button{width:100%}}@media(prefers-reduced-motion:reduce){button,.button,.feature-card,.site-header,.site-nav a,.footer-column a,.form input,.form select,.form textarea{transition:none}.feature-card:hover,button:hover:not(:disabled),.button:hover{transform:none}}[data-theme=dark]{--color-bg: #101116;--color-surface: #181a21;--color-text: #e8eaf0;--color-muted: #9aa0b2;--color-border: #2a2d38;--brand-soft: #1c2447;--color-error-bg: #38191a;--color-error-text: #ffb4ae;--color-warning-bg: #33280f;--color-warning-text: #f2c67c;--color-success-bg: #12291d;--color-success-text: #7fdca7;--color-info-bg: #1c2447;--color-info-text: #b9c5ff;--shadow-sm: 0 1px 2px rgb(0 0 0 / 40%), 0 4px 12px rgb(0 0 0 / 30%);--shadow-md: 0 12px 32px rgb(0 0 0 / 45%);--shadow-lg: 0 28px 70px rgb(0 0 0 / 55%);color-scheme:dark}[data-theme=dark]{--color-accent: #8aa5ff}[data-theme=dark] .site-header{background:#181a21e0}[data-theme=dark] .button.secondary{color:var(--color-text)}[data-theme=dark] .legal-doc p,[data-theme=dark] .legal-doc li{color:#c3c8d6}.profile{max-width:62rem;margin:0 auto}.profile-cards{columns:1;column-gap:1.5rem}@media(min-width:48rem){.profile-cards{columns:2}}.profile .form{max-width:none;margin:0 0 1.5rem;break-inside:avoid}.profile h2{font-size:1.1rem;margin:0}.avatar-row{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid var(--color-border)}.avatar-empty{display:inline-flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:700;color:#fff;background:var(--brand-gradient);border-color:transparent}.avatar-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.avatar-upload{cursor:pointer}.avatar-upload input{display:none}.form .theme-choice{gap:.5rem}.form .theme-choice .checkbox{padding:0;background:none;border:none}.login-choice{align-items:stretch;text-align:center}.phone-row{display:flex;gap:.6rem}.form .phone-dial{flex:0 0 6.5rem;min-width:0}.form .phone-number{flex:1;min-width:0}.earnings{max-width:46rem;margin:0 auto}.earnings-range{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin:1.25rem 0}.earnings-range label{display:flex;flex-direction:column;gap:.3rem;flex:0 0 10rem;min-width:0;font-size:.85rem;font-weight:600;color:var(--color-muted)}.earnings-summary{margin-bottom:1.5rem}.earnings-total{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(9rem,100%),1fr));gap:.75rem;padding:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.earnings-total>div{display:flex;flex-direction:column;gap:.2rem}.earnings-total span{font-size:.82rem;color:var(--color-muted)}.earnings-total strong{font-size:1.1rem}.earnings-payout strong{color:var(--color-accent)}.earnings-negative{color:#c2362b}[data-theme=dark] .earnings-negative{color:#ff9d95}.earnings-positive{color:var(--color-success-text)}.earnings-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.earnings-item{display:grid;grid-template-columns:1fr auto;gap:.35rem 1rem;padding:.8rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.earnings-item.kind-fine{border-left:3px solid #c2362b}.earnings-item-main{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.earnings-item-meta{grid-column:1;display:flex;gap:.75rem;font-size:.82rem;color:var(--color-muted)}.earnings-amount{grid-row:1 / span 2;grid-column:2;align-self:center;font-weight:700;white-space:nowrap}.kind-badge-fine{background:#fbe4e2;color:#9c2a21}.earnings-item.kind-bonus{border-left:3px solid var(--color-success-text)}.kind-badge-bonus{background:var(--color-success-bg);color:var(--color-success-text)}.earnings-request,.earnings-requests{margin-bottom:1.5rem}.earnings-summary h2,.earnings-request h2,.earnings-requests h2,.expenses h2{font-size:1.15rem}.earnings-request form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(10rem,100%),1fr));align-items:start;gap:.75rem 1rem}.earnings-request form>label{display:flex;flex-direction:column;gap:.3rem;min-width:0;font-size:.85rem;font-weight:600;color:var(--color-muted)}.earnings-request-actions{grid-column:1 / -1;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.earnings-request .earnings-save-iban{display:flex;flex:0 1 auto;flex-direction:row;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;color:var(--color-text)}.badge.request-pending{background:#fdf3d7;color:#7a5a00}.badge.request-approved{background:#e0f2ea;color:#12673c}.badge.request-rejected{background:#fbe4e2;color:#9c2a21}.earnings-item.kind-payout{border-left:3px solid var(--brand)}.kind-badge-payout{background:var(--brand-soft);color:#23349c}.file-input{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .7rem;border:1px solid var(--color-border);border-radius:8px;font-size:.85rem;cursor:pointer;white-space:nowrap}.file-input input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.detail-list{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem;margin:0 0 1rem}.detail-list dt{color:var(--color-muted);font-size:.9rem}.detail-list dd{margin:0;font-weight:600}.requirement-list li{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}@media(max-width:34rem){.form{padding:1.25rem}.form fieldset{padding:1rem}.container{padding:1.5rem .9rem 3rem}}.ride-grid-single{grid-template-columns:minmax(0,26rem)}.ride-tabs{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.ride-tabs a{padding:.55rem .9rem;border-bottom:2px solid transparent;color:var(--color-muted);text-decoration:none;font-weight:600}.ride-tabs a:hover{color:var(--color-text)}.ride-tabs a.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.ride-grid>.ride-card{display:flex;flex-direction:column}.ride-card .ride-details{flex:1}.ride-card-actions{margin-top:auto;padding-top:.75rem;display:flex;gap:.5rem;align-items:stretch}.ride-card-actions>.button,.ride-card-actions>button{flex:1}.preview-route-single .route-stops{grid-template-rows:auto}.lang-switch button{display:inline-flex;align-items:center;padding:.25rem .35rem;line-height:0}.lang-switch button svg{border-radius:2px;box-shadow:0 0 0 1px #0000001f}.lang-switch button:not(.active) svg{opacity:.55}.lang-switch button.active svg{box-shadow:0 0 0 2px var(--brand)}.ride-card-actions>.btn-detail{flex:0 0 auto;display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .85rem;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-muted);font:inherit;font-size:.88rem;cursor:pointer}.ride-card-actions>.btn-detail:hover{border-color:var(--color-accent);color:var(--color-accent)}.btn-detail svg{width:16px;height:16px}.flight-link{color:inherit;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:.15em}.flight-link:hover{color:var(--color-accent);text-decoration-style:solid}.modal-overlay{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-backdrop{position:absolute;inset:0;border:0;padding:0;border-radius:0;background:#14161b8c;cursor:pointer}.modal-overlay .modal-backdrop:hover,.modal-overlay .modal-close:hover{box-shadow:none;transform:none}.modal-overlay .modal-backdrop:hover{background:#14161b8c}.modal{position:relative;width:min(44rem,100%);max-height:min(80vh,44rem);display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg)}[data-theme=dark] .modal{background:#232733;border-color:#434a5e;box-shadow:0 0 0 1px #ffffff12,0 28px 70px #000000b3}[data-theme=dark] .modal-overlay:not([data-layer="0"]) .modal{background:#2c3140;border-color:#515a71}.modal-overlay:not([data-layer="0"]){background:#1419238c}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border)}.modal-header h2{margin:0;font-size:1.05rem}.modal-close{border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-muted);font-size:1rem;line-height:1;padding:.35rem .5rem;cursor:pointer}.modal-overlay .modal-close:hover{background:transparent;color:var(--color-text)}.modal-body{padding:1.25rem;overflow-y:auto}.modal-body .ride-details{grid-template-columns:1fr}@media(min-width:40rem){.modal-body .ride-details{grid-template-columns:1fr 1fr;column-gap:2rem}.modal-body .ride-details>.detail-wide{grid-column:1 / -1}}button.flight-link{display:inline;padding:0;border:0;border-radius:0;background:none;font:inherit;color:inherit;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:.15em;cursor:pointer}button.flight-link:hover{background:none;box-shadow:none;transform:none;color:var(--color-accent);text-decoration-style:solid}.flight-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.flight-number{font-weight:700}.flight-tone-ok{background:var(--color-success-bg);color:var(--color-success-text)}.flight-tone-warn{background:#fdf3d7;color:#7a5a00}.flight-tone-bad{background:var(--color-error-bg);color:var(--color-error-text)}.flight-route{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.9rem 0;border-block:1px solid var(--color-border)}.flight-route-end{display:flex;flex-direction:column;gap:.1rem;min-width:0}.flight-route-end strong{font-size:1.6rem;line-height:1.1;letter-spacing:.02em}.flight-route-side-end{text-align:right;align-items:flex-end}.flight-route-times{display:flex;gap:.4rem;align-items:baseline;font-size:.95rem}.flight-route-times s{color:var(--color-muted)}.flight-route-city{font-size:.8rem;color:var(--color-muted)}.flight-route-line{height:2px;background:var(--color-border)}.flight-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.6rem 1rem;margin:.9rem 0}.flight-meta dt,.flight-side-title,.flight-times dt{font-size:.72rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted)}.flight-meta dd{margin:0;font-size:.92rem}.flight-sides{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.flight-side{padding:.8rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:0}.flight-side-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem}.flight-airport{margin:0 0 .6rem;display:flex;flex-direction:column}.flight-airport strong{font-size:1.05rem}.flight-airport span{font-size:.82rem;color:var(--color-muted)}.flight-facilities{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.6rem}.flight-chip{padding:.15rem .5rem;border:1px solid var(--color-border);border-radius:999px;font-size:.78rem;white-space:nowrap}.flight-chip-late{border-color:#7a5a00;color:#7a5a00}.flight-chip-early{border-color:var(--color-success-text);color:var(--color-success-text)}.flight-times{margin:0;display:grid;gap:.3rem}.flight-times>div{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.flight-times dd{margin:0;font-weight:600;white-space:nowrap}.flight-times .muted,.flight-times small{color:var(--color-muted);font-weight:400}.flight-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin:1rem 0 0;font-size:.8rem;color:var(--color-muted)}@media(max-width:34rem){.flight-sides{grid-template-columns:1fr}.flight-route-end strong{font-size:1.3rem}}[data-theme=dark] .modal-header,[data-theme=dark] .flight-route,[data-theme=dark] .flight-side,[data-theme=dark] .flight-chip:not(.flight-chip-late):not(.flight-chip-early){border-color:#4d556a}.address-link{color:inherit;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:.15em;transition:text-decoration-color .15s ease}.address-link:hover{text-decoration-color:currentColor;color:var(--color-accent)}.bell{position:relative}.bell-button{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.35rem;background:none;border:0;color:inherit;cursor:pointer}.bell-badge{position:absolute;top:-.1rem;right:-.1rem;min-width:1.05rem;padding:0 .2rem;font-size:.7rem;line-height:1.05rem;font-weight:700;text-align:center;color:#fff;background:#d92d20;border-radius:999px}.bell-panel{position:absolute;right:0;top:calc(100% + .5rem);z-index:40;width:min(22rem,calc(100vw - 2rem));padding:.9rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 12px 32px #1018282e}.bell-panel h2{margin:0 0 .6rem;font-size:1rem}.bell-list{max-height:60vh;overflow-y:auto;margin:0;padding:0;list-style:none}.bell-list li+li{border-top:1px solid var(--color-border)}.bell-item{display:grid;gap:.15rem;width:100%;padding:.55rem .2rem;text-align:left;background:none;border:0;color:inherit;cursor:pointer}.bell-item:disabled{cursor:default}.bell-list li.unread .bell-item-title{font-weight:700}.bell-item-body,.bell-item-when{font-size:.85rem;color:var(--color-muted)}.bell-empty,.bell-note{margin:.2rem 0;font-size:.9rem;color:var(--color-muted)}.bell-push{margin-top:.7rem;padding-top:.7rem;border-top:1px solid var(--color-border)}.rides-overdue{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--color-border)}.confirm-actions{display:flex;justify-content:space-between;gap:.75rem;margin-top:1.25rem}.confirm-actions button{flex:1 1 0;min-width:0}.clash-list{list-style:none;margin:.75rem 0;padding:0;display:grid;gap:.5rem}.clash-list li{display:grid;gap:.15rem;padding:.6rem .75rem;border-radius:var(--radius, 8px);background:var(--color-bg)}.ride-card-arrival{margin:.35rem 0 0;font-size:.9rem}.ride-card-route{margin-left:auto;font-size:.85rem;white-space:nowrap}.supplier-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin:0 0 1.25rem;padding:.85rem 1rem;border:1px solid var(--color-warning-text);border-radius:var(--radius);background:var(--color-warning-bg)}.supplier-banner a{margin-left:auto;font-weight:600;white-space:nowrap}.button.portal-switch{padding:.4rem .9rem;font-size:.9rem;white-space:nowrap}.flight-mismatch{display:grid;gap:.75rem}.flight-mismatch-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem;margin:0}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px;border-radius:4px}.site-header.client-zone :focus-visible,.section-dark :focus-visible,.cta-panel :focus-visible,[data-theme=dark] :focus-visible{outline-color:#fff}.skip-link{position:absolute;z-index:100;top:.5rem;left:.5rem;padding:.7rem 1.1rem;background:#14161c;color:#fff;font-weight:600;border-radius:var(--radius-sm);text-decoration:none;transform:translateY(-200%)}.skip-link:focus-visible{transform:translateY(0);outline-color:#fff}.photo-viewer{position:fixed;inset:0;z-index:1100;display:grid;grid-template-rows:auto 1fr auto}.photo-viewer-backdrop,.photo-viewer-step{display:block;font:inherit;font-weight:inherit;transform:none;box-shadow:none}.photo-viewer-backdrop:hover:not(:disabled),.photo-viewer-step:hover:not(:disabled){transform:none;box-shadow:none}.photo-viewer-backdrop{position:absolute;inset:0;border:0;border-radius:0;padding:0;background:#0c0f14;cursor:default}.photo-viewer-bar,.photo-viewer-zoom{position:relative;display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;color:#fff}.photo-viewer-bar .button,.photo-viewer-zoom .button{color:#fff}.photo-viewer-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-viewer-count,.photo-viewer-level{font-variant-numeric:tabular-nums;color:#ffffffbf}.photo-viewer-stage{position:relative;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.photo-viewer-image{max-width:96%;max-height:100%;object-fit:contain;transform-origin:center center;touch-action:none;-webkit-user-select:none;user-select:none}.photo-viewer-step{display:flex;align-items:center;justify-content:center;position:absolute;z-index:1;top:50%;transform:translateY(-50%);border:0;border-radius:50%;width:2.75rem;height:2.75rem;font-size:1.75rem;line-height:1;color:#fff;background:#ffffff26;cursor:pointer}.photo-viewer-step:hover:not(:disabled){background:#ffffff47}.photo-viewer-prev{left:.75rem}.photo-viewer-next{right:.75rem}.vehicle-card{padding:clamp(1.1rem,3vw,1.6rem);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.vehicle-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.vehicle-head h2{margin:0;font-size:1.5rem}.vehicle-plate{margin:.2rem 0 0;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.06em;color:var(--color-muted)}.vehicle-badges{display:flex;flex-wrap:wrap;gap:.4rem}.vehicle-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:.85rem 1.25rem;margin:0 0 1.5rem;padding:.9rem 0 0;border-top:1px solid var(--color-border)}.vehicle-facts dt{margin-bottom:.15rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted)}.vehicle-facts dd{margin:0;font-weight:600}.note-form,.expense-form{max-width:100%;margin:1.25rem 0 1.75rem}@media(min-width:40rem){.note-form button[type=submit],.expense-form button[type=submit]{align-self:flex-start;min-width:12rem}}.note-list{margin:0;padding:0;list-style:none;display:grid;gap:.85rem}.note-card{padding:1rem 1.1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.note-body{margin:0 0 .75rem;white-space:pre-wrap;overflow-wrap:anywhere}.note-card textarea{width:100%;margin-bottom:.75rem}.note-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.note-when{flex:1 1 auto;font-size:.84rem;color:var(--color-muted)}.expenses{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.form fieldset.expense-categories{flex-direction:row;flex-wrap:wrap;gap:.4rem;padding:.9rem 1.1rem 1.1rem}.expense-fields{display:flex;flex-wrap:wrap;gap:.75rem}.expense-fields label{flex:1 1 8rem;min-width:0}.expense-totals{display:grid;gap:.75rem}.expense-net{display:grid;gap:.35rem;margin:1rem 0 0;padding:.85rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:1.05rem}.expense-net div{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.expense-list{margin:1.25rem 0 0;padding:0;list-style:none;display:grid;gap:.5rem}.expense-list li{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;padding:.6rem .8rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.expense-amount{display:flex;flex-direction:column;align-items:flex-end;line-height:1.3}.expense-converted{font-size:.82rem;font-weight:500;color:var(--color-muted)}.expense-day{font-variant-numeric:tabular-nums;color:var(--color-muted);font-size:.86rem}.expense-what{flex:1 1 8rem;min-width:0}.day-tabs{display:flex;gap:.4rem;margin:0 0 1.1rem;padding-bottom:.3rem;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}.day-tabs::-webkit-scrollbar{display:none}.day-tab{display:inline-flex;align-items:center;gap:.4rem;flex:0 0 auto;scroll-snap-align:start;padding:.45rem .8rem;font-size:.9rem;font-weight:600;white-space:nowrap;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;cursor:pointer}.day-tab:hover:not(:disabled){border-color:var(--brand);transform:none}.day-tab-on,.day-tab-on:hover:not(:disabled){color:#fff;background:var(--brand);border-color:var(--brand)}.day-tab-count{min-width:1.35rem;padding:0 .3rem;font-variant-numeric:tabular-nums;text-align:center;background:var(--color-bg);border-radius:999px;color:var(--color-muted)}.day-tab-on .day-tab-count{color:var(--color-accent);background:#fff}.vehicle-returned{margin:0 0 1.25rem;padding:.85rem 1rem;background:var(--color-warning-bg);border-left:3px solid var(--color-warning-text);border-radius:var(--radius-sm)}.vehicle-returned strong{display:block;margin-bottom:.25rem;color:var(--color-warning-text)}.vehicle-returned p{margin:0}.vehicle-submit{margin-top:1.5rem;padding-top:1.1rem;border-top:1px solid var(--color-border)}.vehicle-submit p{margin:0 0 .75rem}.doc-grid{display:grid;grid-auto-rows:1fr;grid-template-columns:repeat(auto-fit,minmax(min(15rem,100%),1fr));gap:.85rem;margin:.75rem 0 0;padding:0;list-style:none}.doc-tile{display:flex;flex-direction:column;gap:.7rem;min-width:0;padding:.9rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.doc-tile-filed{background:var(--color-surface)}.doc-tile-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.doc-tile-head strong{min-width:0;font-size:.94rem;line-height:1.6;min-height:3.2em}.badge-missing{background:var(--color-warning-bg);color:var(--color-warning-text)}.doc-tile-files{display:flex;flex-wrap:wrap;gap:.45rem}.doc-thumb{width:4.5rem;height:4.5rem;padding:0;overflow:hidden;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.doc-thumb:hover:not(:disabled){border-color:var(--brand);box-shadow:var(--shadow-sm);transform:none}.doc-thumb img{width:100%;height:100%;object-fit:cover;display:block}.doc-file{align-self:center;font-size:.86rem;word-break:break-all}.doc-tile-upload{margin-top:auto;align-self:flex-start}.terms-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.25rem}.terms-banner .button{margin-left:auto;white-space:nowrap}.terms-accept{display:grid;gap:.9rem;justify-items:start;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.form-card{max-width:none;margin:1.5rem 0 0}.cropper{display:flex;flex-direction:column;align-items:center;gap:.9rem}.cropper-viewport{position:relative;overflow:hidden;border-radius:var(--radius-sm);background:var(--color-bg);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.cropper-viewport:active{cursor:grabbing}.cropper-viewport img{position:absolute;top:50%;left:50%;max-width:none}.cropper-mask{position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 9999px #00000073;pointer-events:none}.cropper-zoom{display:flex;align-items:center;gap:.6rem;width:100%;font-size:.88rem;font-weight:600}.cropper-zoom input{flex:1;min-width:0}.cropper-nudge{display:flex;gap:.35rem}.cropper-actions{display:flex;gap:.6rem;width:100%}.cropper-actions .button{flex:1}.calendar{margin:1.25rem 0 1.5rem}.calendar-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;margin-bottom:.85rem}.calendar-head>:first-child{justify-self:start}.calendar-head-end{display:flex;justify-self:end;gap:.5rem}.calendar-month{margin:0;text-align:center;white-space:nowrap;font-size:1.15rem;text-transform:capitalize}.calendar-grid{width:100%;border-collapse:collapse;table-layout:fixed}.calendar-grid th{padding:0 0 .5rem;font-size:clamp(.8rem,1vw,.95rem);font-weight:650;text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted)}.calendar-grid abbr{text-decoration:none;cursor:help}.calendar-grid td{padding:2px}.calendar-day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;width:100%;min-height:clamp(2.9rem,7vw,6rem);padding:.3rem 0;font-variant-numeric:tabular-nums;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.calendar-day:hover:not(:disabled){border-color:var(--brand);transform:none}.calendar-number{font-size:clamp(1.05rem,1.6vw,1.5rem);font-weight:700;line-height:1.1}.calendar-day-outside{background:transparent;border-color:transparent;color:var(--color-muted);opacity:.55}.calendar-day-today{box-shadow:inset 0 0 0 2px var(--brand)}.calendar-day-busy{background:var(--color-bg);font-weight:700}.calendar-day-on,.calendar-day-on:hover:not(:disabled){color:#fff;background:var(--brand);border-color:var(--brand)}.calendar-count{font-size:clamp(.8rem,1.1vw,1.05rem);font-weight:700;line-height:1;padding:.12rem .42rem;border-radius:999px;color:var(--color-accent);background:var(--color-surface)}.calendar-day-on .calendar-count{color:var(--color-accent);background:#fff}.calendar-warn{position:absolute;top:3px;right:3px;width:9px;height:9px;border-radius:999px;background:var(--color-warning-text, #b45309)}.calendar-offer{font-size:.72rem;font-weight:700;line-height:1;padding:.1rem .32rem;border-radius:999px;color:var(--color-success-text, #12673c);background:var(--color-success-bg, #e7f4ec)}.calendar-day-on .calendar-offer{color:var(--color-success-text, #12673c);background:#fff}.calendar-offers-title{margin:1.5rem 0 .75rem;font-size:1.05rem}.calendar-legend{display:flex;flex-wrap:wrap;gap:.4rem 1.25rem;margin:.75rem 0 0;font-size:.86rem;color:var(--color-muted)}.calendar-legend-item{display:inline-flex;align-items:center;gap:.4rem}.calendar-legend-dot{position:static}.calendar-day-title{margin:1.5rem 0 .75rem;font-size:1.15rem;text-transform:capitalize}.calendar-day-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.75rem}.calendar-day-head .calendar-day-title{margin-bottom:0}.planner-cue{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.25rem;margin:0 0 1.5rem;padding:1.25rem 1.4rem;border-radius:var(--radius-lg);background:var(--brand-gradient);color:#fff}.planner-cue-icon{display:grid;flex:none;place-items:center;width:3rem;height:3rem;border-radius:50%;background:#ffffff2e}.planner-cue-icon svg{width:1.6rem;height:1.6rem}.planner-cue-words{min-width:0;flex:1 1 16rem}.planner-cue-words h2{margin:0 0 .25rem;font-size:1.2rem}.planner-cue-words p{margin:0;opacity:.92;font-size:.95rem}.planner-cue-action{flex:none;background:#fff;color:var(--brand-dark)}.planner-cue-action:hover:not(:disabled){background:#fff;color:var(--brand-dark);opacity:.92}@media(max-width:32rem){.planner-cue-action{flex:1 1 100%;text-align:center}}.planner-controls{display:flex;flex-wrap:wrap;align-items:end;gap:1rem 1.25rem;margin:1.25rem 0 .75rem;padding:1rem 1.25rem;border:1px solid var(--color-border);border-left:4px solid var(--brand);border-radius:var(--radius-lg);background:var(--color-surface)}.planner-controls input[type=date]{padding:.5rem .6rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit;font-variant-numeric:tabular-nums}.planner-controls .button{margin-left:auto}.planner-day{display:flex;flex-direction:column;gap:.35rem;min-width:0;font-weight:600}.planner-overflow{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:999px;cursor:pointer;font-weight:500}.planner-overflow:has(:checked){border-color:var(--brand);background:var(--brand-soft);color:var(--color-info-text)}.planner-overflow input{width:1.05rem;height:1.05rem;accent-color:var(--brand)}@media(max-width:32rem){.planner-controls{flex-direction:column;align-items:stretch}.planner-controls .button{margin-left:0}.planner-overflow{justify-content:flex-start}}.planner-padded{margin-bottom:1.25rem}.planner-plans{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr))}.planner-plan{display:flex;flex-direction:column;padding:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.planner-plan-head h2{margin:0 0 .25rem;font-size:1.15rem}.planner-plan-hint{margin:0}.planner-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(6rem,1fr));gap:.75rem 1rem;margin:1rem 0 0;padding:.9rem 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.planner-summary dt{margin:0;color:var(--color-muted);font-size:.8rem}.planner-summary dd{margin:.15rem 0 0;font-size:1.05rem;font-weight:700;font-variant-numeric:tabular-nums}.planner-timeline{margin:1rem 0 0;padding:0;list-style:none}.planner-stop+.planner-stop{margin-top:.75rem}.planner-gap{display:flex;flex-wrap:wrap;gap:.25rem .75rem;margin:0 0 .5rem;padding-left:.9rem;border-left:3px dashed var(--color-border);color:var(--color-muted);font-size:.85rem}.planner-stop-body{padding:.85rem 1rem;border-radius:var(--radius-sm);background:var(--color-bg)}.planner-tag{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .9rem;margin:0 0 .5rem;color:var(--color-muted);font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.planner-lines{display:grid;grid-template-columns:minmax(5.5rem,auto) auto 1fr;align-items:baseline;gap:.35rem .75rem}.planner-line{display:contents}.planner-verb{color:var(--color-muted);font-size:.85rem}.planner-time{font-size:1.1rem;font-weight:700;font-variant-numeric:tabular-nums}.planner-place{min-width:0;font-size:.95rem}@media(max-width:30rem){.planner-lines{grid-template-columns:minmax(5rem,auto) 1fr}.planner-place{grid-column:1 / -1}}.planner-tag-links{display:flex;flex-wrap:wrap;gap:.35rem .9rem;margin-left:auto;font-weight:600;letter-spacing:normal;text-transform:none}.planner-take{margin-top:auto;padding-top:1rem}.planner-take-hint{margin:.5rem 0 0}.planner-report{display:grid;gap:.6rem;margin:1rem 0 1.25rem}.planner-confirm-list{display:grid;gap:.5rem;margin:.75rem 0;padding:0;list-style:none}.planner-confirm-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;padding:.5rem .75rem;border-radius:var(--radius-sm);background:var(--color-bg)}.planner-confirm-list strong{font-variant-numeric:tabular-nums}.planner-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.25rem 0}.planner-tab{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:600;cursor:pointer}.planner-tab-on{border-color:var(--brand);background:var(--brand);color:#fff}.planner-tab-count{padding:.05rem .45rem;border-radius:999px;background:#00000014;font-size:.8rem;font-variant-numeric:tabular-nums}.planner-tab-on .planner-tab-count{background:#ffffff38}.planner-mine{max-width:100%}.planner-clash{margin:1rem 0 0;padding:1rem 1.1rem;border:2px solid var(--color-error-text);border-radius:var(--radius-lg);background:var(--color-error-bg);color:var(--color-error-text)}.planner-clash-action{margin-top:.9rem;background:var(--color-error-text)}.planner-clash-action:hover:not(:disabled){background:var(--color-error-text);opacity:.9}.planner-clash h3{margin:0 0 .35rem;font-size:1.05rem}.planner-clash p{margin:0}.planner-clash ul{margin:.6rem 0 0;padding-left:1.1rem;font-size:.9rem}.planner-stop-clash .planner-stop-body{border-left:4px solid var(--color-error-text)}.planner-stop-note{margin:0 0 .5rem;color:var(--color-error-text);font-size:.85rem;font-weight:600}.planner-stop-clash .planner-time{font-size:.95rem}.planner-route{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin:1rem 0 0}.planner-route-hint{flex:1 1 14rem;margin:0}.planner-approach{margin:0 0 .35rem;padding-left:.9rem;font-size:.85rem}
