:root{--primary: #0B3D91;--accent: #1E6BD6;--surface: #E8F1FC;--ink: #0A2540;--ink-muted: #3A516B;--warn: #B45309;--critical: #C2410C;--over: #B91C1C;--ok: #047857;--disabled: #64748B;--white: #FFFFFF;--border: #C5D8F0;--radius: 12px;--shadow: 0 8px 24px rgba(10, 37, 64, .08);--font: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--font);color:var(--ink);background:var(--white);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}.container{width:min(1080px,calc(100% - 2rem));margin:0 auto}.site-header{position:sticky;top:0;z-index:20;background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);overflow:visible}.site-header .inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0}.brand{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.brand img{height:40px;width:auto;max-width:none;display:block;flex-shrink:0}.nav{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}.nav a{color:var(--ink);font-weight:500;font-size:.95rem}.nav a.active{color:var(--primary)}.lang-switch select{border:1px solid var(--border);border-radius:8px;padding:.35rem .5rem;background:var(--surface);color:var(--ink)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:none;border-radius:999px;padding:.7rem 1.2rem;font-weight:600;cursor:pointer;font-size:.95rem;text-decoration:none}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:#093278;text-decoration:none}.btn-secondary{background:var(--surface);color:var(--primary)}.btn-secondary:hover{background:#d5e6fa;text-decoration:none}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--border)}.btn-danger{background:#fee2e2;color:var(--over)}.btn:disabled{opacity:.55;cursor:not-allowed}.hero{background:linear-gradient(160deg,var(--surface),#ffffff 60%);padding:3rem 0 2.5rem}.hero h1{font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.15;margin:0 0 1rem;color:var(--ink)}.hero p.lead{font-size:1.1rem;color:var(--ink-muted);max-width:40rem}.hero-cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.grid-3{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;box-shadow:var(--shadow)}.card h3{margin:0 0 .5rem;color:var(--primary)}.section{padding:2.5rem 0}.section h2{margin:0 0 1rem}.border-list{display:grid;gap:.6rem}.border-chip{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.85rem 1rem;border-radius:10px;background:var(--surface);border:1px solid var(--border)}.site-footer{margin-top:3rem;padding:2rem 0;background:var(--ink);color:#dbe7f7}.site-footer a{color:#9ec5f5}.site-footer .inner{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between}.app-shell{padding:1.25rem 0 3rem}.day-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.day-type-btn{border:2px solid var(--border);border-radius:12px;padding:.9rem;background:#fff;text-align:left;cursor:pointer;min-height:72px}.day-type-btn.selected{border-color:var(--accent);background:var(--surface)}.day-type-btn strong{display:block;color:var(--ink)}.day-type-btn span{font-size:.8rem;color:var(--ink-muted)}.counter-card{margin-bottom:.75rem}.counter-card .label{font-weight:600}.counter-card .meta{font-size:.85rem;color:var(--ink-muted)}.bar{height:10px;border-radius:999px;background:#d9e6f7;overflow:hidden;margin:.5rem 0}.bar>span{display:block;height:100%;background:var(--accent)}.bar.warn>span{background:var(--warn)}.bar.critical>span{background:var(--critical)}.bar.at_limit>span{background:var(--critical)}.bar.over>span{background:var(--over)}.counter-message.warn{color:var(--warn);font-weight:600}.bar.disabled{background:#e2e8f0}.badge{display:inline-block;font-size:.75rem;font-weight:700;padding:.15rem .5rem;border-radius:999px}.badge.ok{background:#d1fae5;color:var(--ok)}.badge.warn{background:#fef3c7;color:var(--warn)}.badge.critical,.badge.at_limit{background:#ffedd5;color:var(--critical)}.badge.over{background:#fee2e2;color:var(--over)}.badge.disabled{background:#e2e8f0;color:var(--disabled)}.banner{background:#fff7ed;border:1px solid #FDBA74;color:#9a3412;padding:.75rem 1rem;border-radius:10px;margin-bottom:1rem;font-size:.9rem}.price-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.price-card .price{font-size:1.6rem;font-weight:700;color:var(--primary);margin:.5rem 0}.price-card ul{padding-left:1.1rem;color:var(--ink-muted)}.coming-soon{display:inline-block;background:var(--accent);color:#fff;font-size:.75rem;font-weight:700;padding:.2rem .55rem;border-radius:999px}.waitlist{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.waitlist input{flex:1 1 200px;padding:.7rem .9rem;border-radius:999px;border:1px solid var(--border);font-size:1rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:.75rem}.cal-cell{aspect-ratio:1;border-radius:8px;border:1px solid var(--border);font-size:.75rem;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;cursor:pointer;padding:2px}.cal-cell.muted{opacity:.35}.cal-cell.telework{background:#dbeafe;border-color:#93c5fd}.cal-cell.onsite{background:#d1fae5;border-color:#6ee7b7}.cal-cell.third_country{background:#fef3c7;border-color:#fcd34d}.cal-cell.non_working{background:#f1f5f9}.cal-cell.selected{outline:2px solid var(--primary)}.cal-head{font-size:.7rem;text-align:center;color:var(--ink-muted);font-weight:600}.prose h2{margin-top:1.75rem}.prose p,.prose li{color:var(--ink-muted)}.pre-line{white-space:pre-line}.table-scroll{overflow-x:auto;margin:1rem 0}.legal-table{border-collapse:collapse;min-width:56rem;font-size:.85rem}.legal-table th,.legal-table td{border:1px solid var(--border);padding:.5rem .6rem;text-align:left;vertical-align:top}.legal-table thead th{background:var(--surface)}.legal-table tbody th{font-weight:600}select.border-select,input.num{width:100%;padding:.65rem .75rem;border-radius:10px;border:1px solid var(--border);font-size:1rem;background:#fff}.toolbar{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.skip-link{position:absolute;left:.5rem;top:-4rem;z-index:100;background:#fff;padding:.5rem .75rem;border-radius:8px}.skip-link:focus{top:.5rem}main:focus{outline:none}.nav-toggle{display:none}@media(max-width:640px){.site-header .inner{flex-wrap:wrap}.nav-toggle{display:inline-flex}.nav .hide-sm{display:none}.nav.open{flex-direction:column;align-items:flex-start;width:100%}.nav.open .hide-sm{display:inline}.day-type-grid{grid-template-columns:1fr}}.demo-banner{background:#fef3c7;border:1px solid var(--warn);color:#78350f;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.95rem}.stack-form{display:flex;flex-direction:column;gap:.75rem}.stack-form label{display:flex;flex-direction:column;gap:.25rem;font-weight:600;font-size:.9rem}.stack-form input,.stack-form select,.consent-box input{font-weight:400}.dash-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.dash-actions{display:flex;flex-wrap:wrap;gap:.5rem}.filters{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0;align-items:flex-end}.filters label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;font-weight:600}.employee-list{display:grid;gap:1rem}.employee-card .employee-head{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;margin-bottom:.75rem}.counter-table{width:100%;border-collapse:collapse;font-size:.9rem}.counter-table th,.counter-table td{text-align:left;padding:.4rem .5rem;border-bottom:1px solid var(--border);vertical-align:top}.consent-box{border:1px solid var(--border);border-radius:8px;padding:.75rem 1rem;background:var(--surface)}.consent-box legend{font-weight:700;padding:0 .25rem}.consent-check{display:flex;gap:.5rem;align-items:flex-start;font-weight:600}.badge.mixed{background:#e0e7ff;color:#3730a3}
