:root{--color-primary: #0b2545;--color-primary-dark: #071a33;--color-secondary: #14315c;--color-accent: #d99b3f;--color-accent-dark: #b87f28;--color-background: #f5f7fa;--color-surface: #ffffff;--color-surface-muted: #eef1f6;--color-text: #101826;--color-text-muted: #5b6778;--color-border: #dde3ec;--color-success: #1c7c4c;--color-success-bg: #e6f5ec;--color-warning: #b8790a;--color-warning-bg: #fdf1de;--color-error: #b3261e;--color-error-bg: #fbeaea;--font-display: "Fraunces", "Georgia", serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 18px;--shadow-sm: 0 1px 2px rgba(11, 37, 69, .06);--shadow-md: 0 4px 16px rgba(11, 37, 69, .08);--shadow-lg: 0 12px 32px rgba(11, 37, 69, .12);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--touch-target: 64px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-body);background:var(--color-background);color:var(--color-text);-webkit-font-smoothing:antialiased}button,input,select{font-family:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.app-shell{min-height:100%;display:flex;flex-direction:column}.app-header{background:var(--color-primary);color:#fff;padding:var(--space-4) var(--space-5);display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow-sm)}.app-header__brand{display:flex;flex-direction:column;line-height:1.15}.app-header__brand-name{font-family:var(--font-display);font-weight:600;font-size:1.25rem;letter-spacing:.02em}.app-header__brand-sub{font-size:.78rem;color:#ffffffb8;letter-spacing:.04em;text-transform:uppercase}.app-header__right{display:flex;align-items:center;gap:var(--space-4)}.driver-screen{flex:1;display:flex;flex-direction:column;align-items:center;padding:var(--space-5) var(--space-4) var(--space-8);width:100%}.driver-screen__inner{width:100%;max-width:560px;display:flex;flex-direction:column;gap:var(--space-5)}.driver-title{font-family:var(--font-display);font-size:1.9rem;font-weight:600;color:var(--color-primary);margin:0;line-height:1.2}.driver-subtitle{font-size:1.05rem;color:var(--color-text-muted);margin:0}.progress-bar{width:100%;height:8px;background:var(--color-surface-muted);border-radius:99px;overflow:hidden}.progress-bar__fill{height:100%;background:var(--color-accent);transition:width .3s ease}.progress-label{font-size:.85rem;color:var(--color-text-muted);font-weight:600}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5)}.big-choice-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}@media (min-width: 480px){.big-choice-grid.cols-2{grid-template-columns:1fr 1fr}}.big-choice-card{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-5);min-height:var(--touch-target);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);text-align:center;cursor:pointer;font-size:1.1rem;font-weight:600;color:var(--color-text);transition:border-color .15s ease,transform .1s ease,box-shadow .15s ease}.big-choice-card:hover,.big-choice-card:focus-visible{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.big-choice-card:active{transform:scale(.98)}.big-choice-card__icon{color:var(--color-primary)}.big-choice-card__subtitle{font-size:.92rem;font-weight:400;color:var(--color-text-muted)}.language-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}@media (min-width: 640px){.language-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 960px){.language-grid{grid-template-columns:repeat(4,1fr)}}.language-card{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);cursor:pointer;min-height:96px;justify-content:center}.language-card:hover,.language-card:focus-visible{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.language-card__flag{font-size:2rem}.language-card__name{font-weight:600;font-size:.95rem;text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target);padding:var(--space-4) var(--space-6);border-radius:var(--radius-md);font-size:1.05rem;font-weight:600;border:2px solid transparent;cursor:pointer;width:100%}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-dark)}.btn-primary:disabled{background:var(--color-border);color:var(--color-text-muted);cursor:not-allowed}.btn-secondary{background:#fff;color:var(--color-primary);border-color:var(--color-primary)}.btn-danger{background:#fff;color:var(--color-error);border-color:var(--color-error)}.btn-ghost{background:transparent;color:var(--color-text-muted);border-color:var(--color-border)}.btn-row{display:flex;gap:var(--space-3);flex-wrap:wrap}.btn-row .btn{flex:1;min-width:140px}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field label{font-weight:600;font-size:.95rem;color:var(--color-text)}.field input,.field select{min-height:var(--touch-target);font-size:1.15rem;padding:0 var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-md);background:#fff;color:var(--color-text)}.field input:focus,.field select:focus{border-color:var(--color-primary);outline:none}.field-hint{font-size:.85rem;color:var(--color-text-muted)}.field-error{font-size:.9rem;color:var(--color-error);font-weight:600}.phone-input-row{display:flex;gap:var(--space-2)}.phone-input-row select{width:46%}.phone-input-row input{flex:1}.code-input-row{display:flex;gap:var(--space-2);justify-content:center}.code-input-row input{width:48px;height:60px;text-align:center;font-size:1.6rem;font-weight:700;border:2px solid var(--color-border);border-radius:var(--radius-sm)}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.badge-neutral{background:var(--color-surface-muted);color:var(--color-text-muted)}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-error{background:var(--color-error-bg);color:var(--color-error)}.badge-info{background:#e7edf7;color:var(--color-primary)}.demo-tag{display:inline-block;background:var(--color-accent);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.06em;padding:3px 8px;border-radius:4px;text-transform:uppercase}.gate-hero{background:var(--color-primary);color:#fff;border-radius:var(--radius-lg);padding:var(--space-8) var(--space-5);text-align:center}.gate-hero__gate{font-family:var(--font-display);font-size:4rem;font-weight:700;margin:var(--space-3) 0 0}.toilet-card{background:#fff8ec;border:2px solid var(--color-accent);border-radius:var(--radius-lg);padding:var(--space-5);text-align:center}.toilet-card__code{font-family:var(--font-display);font-size:3rem;font-weight:700;color:var(--color-accent-dark);letter-spacing:.08em;margin:var(--space-2) 0}.warehouse-shell{padding:var(--space-5);max-width:1440px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:var(--space-5)}.warehouse-title{font-family:var(--font-display);font-size:1.6rem;color:var(--color-primary);margin:0}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-3)}.kpi-tile{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4)}.kpi-tile__value{font-size:1.8rem;font-weight:700;color:var(--color-primary)}.kpi-tile__label{font-size:.82rem;color:var(--color-text-muted);font-weight:600}.filter-row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.chip{padding:6px 14px;border-radius:99px;border:1.5px solid var(--color-border);background:#fff;cursor:pointer;font-size:.85rem;font-weight:600;color:var(--color-text-muted)}.chip.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.data-table{width:100%;border-collapse:collapse;background:var(--color-surface);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border)}.data-table th,.data-table td{text-align:left;padding:10px 14px;font-size:.88rem;border-bottom:1px solid var(--color-border);white-space:nowrap}.data-table th{background:var(--color-surface-muted);color:var(--color-text-muted);font-weight:700;text-transform:uppercase;font-size:.72rem;letter-spacing:.04em}.data-table tbody tr{cursor:pointer}.data-table tbody tr:hover{background:#f9fafc}.detail-drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,100vw);background:var(--color-surface);box-shadow:var(--shadow-lg);overflow-y:auto;padding:var(--space-5);z-index:50}.detail-drawer__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b254559;z-index:40}.detail-section{margin-bottom:var(--space-5)}.detail-section h4{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin:0 0 var(--space-2)}.detail-kv{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed var(--color-border);font-size:.92rem}.signature-pad-wrap{border:2px dashed var(--color-border);border-radius:var(--radius-md);background:#fff;touch-action:none}.link-btn{background:none;border:none;color:var(--color-primary);font-weight:700;cursor:pointer;font-size:.95rem;text-decoration:underline}.lang-switcher{background:#ffffff1f;color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:var(--radius-sm);padding:6px 10px;font-size:.85rem;cursor:pointer}.delivery-note{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-6);max-width:720px;margin:0 auto}.delivery-note h1{font-family:var(--font-display);color:var(--color-primary)}.delivery-note table{width:100%;border-collapse:collapse}.delivery-note td{padding:6px 0;border-bottom:1px solid var(--color-border);font-size:.95rem}.delivery-note td:first-child{color:var(--color-text-muted);width:45%}@media print{.app-header,.no-print{display:none!important}}.qr-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-4);background:var(--color-surface-muted);border-radius:var(--radius-md)}
