:root{--brand-blue: #306f7a;--brand-blue-hover: #245862;--brand-blue-soft: #edf5f6;--brand-blue-border: #a8ccd1;--brand-coral: #e36c5b;--brand-coral-hover: #cf5645;--brand-coral-soft: #fdf2f0;--brand-coral-border: #f6b5ab;--brand-ochre: #dda153;--brand-ochre-hover: #c78d42;--brand-ochre-soft: #fdf7ee;--brand-ochre-border: #f3d4a6;--brand-brown: #b37f55;--brand-brown-hover: #9c6b43;--brand-brown-soft: #f9f5f1;--brand-brown-border: #debfa7;--primary: var(--brand-blue);--primary-hover: var(--brand-blue-hover);--primary-soft: var(--brand-blue-soft);--accent-ochre: var(--brand-ochre);--accent-ochre-hover: var(--brand-ochre-hover);--accent-ochre-soft: var(--brand-ochre-soft);--accent-coral: var(--brand-coral);--accent-coral-hover: var(--brand-coral-hover);--accent-coral-soft: var(--brand-coral-soft);--danger: var(--brand-coral);--danger-hover: var(--brand-coral-hover);--danger-soft: var(--brand-coral-soft);--success: #2e8b57;--success-hover: #246e45;--success-soft: #eef8f2;--success-border: #a3d9b8;--bg-page: #f6f9fa;--bg-surface: #ffffff;--bg-subtle: #edf3f5;--border-color: #dbe5e8;--text-main: #1f2f33;--text-muted: #567076;--radius-lg: 16px;--radius-md: 12px;--radius-sm: 8px;--shadow-sm: 0 1px 3px rgba(48, 111, 122, .05);--shadow-md: 0 4px 14px rgba(48, 111, 122, .07);--font-headings: "Quicksand", "Nunito", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Inter", "Segoe UI", -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);background:var(--bg-page);color:var(--text-main);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6,.card-title,.kpi-value,.brand-title{font-family:var(--font-headings);font-weight:700;color:var(--brand-blue);letter-spacing:-.01em}.app-shell{max-width:1260px;margin:0 auto;padding:20px 24px 64px}.top-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;background:var(--bg-surface);padding:14px 20px;border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);margin-bottom:20px}.brand-group{display:flex;align-items:center;gap:12px}.brand-logo{width:48px;height:48px;border-radius:12px;background:#fff;border:1px solid var(--brand-blue-border);overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 6px #306f7a14}.brand-logo img{width:100%;height:100%;object-fit:cover;display:block}.brand-title{font-family:var(--font-headings);font-size:1.3rem;font-weight:800;color:var(--brand-blue);line-height:1.15}.nav-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.nav-tab{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-muted);font-family:var(--font-headings);font-weight:600;font-size:.94rem;cursor:pointer;transition:all .15s ease}.nav-tab:hover{border-color:var(--brand-blue);color:var(--brand-blue);background:var(--brand-blue-soft)}.nav-tab.active{background:var(--brand-blue)!important;border-color:var(--brand-blue)!important;color:#fff!important;box-shadow:0 3px 10px #306f7a38}.nav-tab.active svg{color:#fff!important;stroke:#fff!important}.card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:22px;box-shadow:var(--shadow-sm);margin-bottom:20px}.card-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;border-bottom:1px solid var(--brand-blue-soft);padding-bottom:12px}.card-title{margin:0;font-size:1.18rem;display:flex;align-items:center;gap:8px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:20px}.kpi-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px 18px;box-shadow:var(--shadow-sm);transition:transform .12s ease}.kpi-card:hover{transform:translateY(-2px);border-color:var(--brand-blue-border)}.kpi-label{font-family:var(--font-headings);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:6px}.kpi-value{font-size:1.65rem;font-weight:800;color:var(--brand-blue)}.kpi-sub{font-size:.84rem;color:var(--text-muted);margin-top:6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;border-radius:10px;border:1px solid transparent;font-family:var(--font-headings);font-weight:700;font-size:.92rem;cursor:pointer;transition:all .15s ease}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--brand-blue);color:#fff;border-color:var(--brand-blue)}.btn-primary:hover:not(:disabled){background:var(--brand-blue-hover);border-color:var(--brand-blue-hover)}.btn-ochre,.btn-validation,.btn-signature{background:var(--brand-ochre);color:#fff;border-color:var(--brand-ochre)}.btn-ochre:hover:not(:disabled),.btn-validation:hover:not(:disabled),.btn-signature:hover:not(:disabled){background:var(--brand-ochre-hover);border-color:var(--brand-ochre-hover)}.btn-coral,.btn-danger{background:var(--brand-coral);color:#fff;border-color:var(--brand-coral)}.btn-coral:hover:not(:disabled),.btn-danger:hover:not(:disabled){background:var(--brand-coral-hover);border-color:var(--brand-coral-hover)}.btn-brown{background:var(--brand-brown);color:#fff;border-color:var(--brand-brown)}.btn-brown:hover:not(:disabled){background:var(--brand-brown-hover);border-color:var(--brand-brown-hover)}.btn-success{background:var(--success);color:#fff;border-color:var(--success)}.btn-success:hover:not(:disabled){background:var(--success-hover);border-color:var(--success-hover)}.btn-outline{background:#fff;border-color:var(--border-color);color:var(--brand-blue)}.btn-outline:hover:not(:disabled){border-color:var(--brand-blue);background:var(--brand-blue-soft);color:var(--brand-blue-hover)}.btn-sm{padding:6px 12px;font-size:.82rem;border-radius:8px}.input,.select{width:100%;padding:10px 13px;border-radius:10px;border:1px solid var(--border-color);font-family:var(--font-body);font-size:.92rem;background:#fff;color:var(--text-main);transition:border-color .15s ease,box-shadow .15s ease}.input:focus,.select:focus{outline:none;border-color:var(--brand-blue);box-shadow:0 0 0 3px #306f7a29}.field-important{border-color:var(--brand-blue)!important;background-color:var(--brand-blue-soft)!important}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.field-label{display:block;font-size:.85rem;font-weight:600;color:var(--text-muted);margin-bottom:5px}.badge-blue{background:var(--brand-blue-soft);color:var(--brand-blue);border:1px solid var(--brand-blue-border);font-family:var(--font-headings);font-weight:700}.badge-ochre{background:var(--brand-ochre-soft);color:#a46d28;border:1px solid var(--brand-ochre-border);font-family:var(--font-headings);font-weight:700}.badge-coral{background:var(--brand-coral-soft);color:var(--brand-coral);border:1px solid var(--brand-coral-border);font-family:var(--font-headings);font-weight:700}.badge-brown{background:var(--brand-brown-soft);color:var(--brand-brown);border:1px solid var(--brand-brown-border);font-family:var(--font-headings);font-weight:700}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}@media(max-width:900px){.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.calendar-grid{grid-template-columns:1fr}}.day-cell{border-radius:12px;padding:12px;border:1.5px solid var(--border-color);background:var(--bg-surface);display:flex;flex-direction:column;justify-content:space-between;min-height:138px;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.day-cell:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--brand-blue-border)}.day-cell.validated{border-color:var(--brand-ochre-border);background:var(--brand-ochre-soft)}.legend-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.legend-pill{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-family:var(--font-headings);font-weight:700;padding:5px 12px;border-radius:999px;border:1px solid transparent}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1f2f3380;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal-panel{background:#fff;border-radius:18px;width:100%;max-width:540px;padding:24px;box-shadow:0 10px 30px #306f7a2e;border:1px solid var(--brand-blue-soft)}.auth-container{max-width:1140px;margin:36px auto;padding:0 20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}.auth-hero-column{display:flex;flex-direction:column;gap:22px}.auth-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}@media(max-width:990px){.auth-container{grid-template-columns:1fr;max-width:520px;margin:20px auto;padding:0 16px}.auth-feature-grid{grid-template-columns:1fr}}.wizard-container{max-width:880px;margin:28px auto 64px;padding:0 16px}.wizard-stepper{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:22px}@media(max-width:980px){.wizard-stepper{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.wizard-stepper{grid-template-columns:repeat(2,minmax(0,1fr))}}.wizard-step-pill{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;border:1.5px solid var(--border-color);background:var(--bg-surface);color:var(--text-muted);font-family:var(--font-headings);transition:all .18s ease}.wizard-step-pill.active{border-color:var(--brand-blue);background:var(--brand-blue-soft);color:var(--brand-blue);box-shadow:0 4px 14px #306f7a1f}.wizard-step-pill.done{border-color:var(--brand-ochre-border);background:var(--brand-ochre-soft);color:#925d19}.wizard-step-badge{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-headings);font-weight:800;font-size:.85rem;flex-shrink:0;background:var(--bg-subtle);color:var(--text-muted)}.wizard-step-pill.active .wizard-step-badge{background:var(--brand-blue);color:#fff}.wizard-step-pill.done .wizard-step-badge{background:var(--brand-ochre);color:#fff}.wizard-progress-track{height:6px;background:var(--border-color);border-radius:999px;overflow:hidden;margin-bottom:22px}.wizard-progress-fill{height:100%;background:var(--brand-blue);transition:width .25s ease}.choice-card-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.choice-card{border:1.5px solid var(--border-color);border-radius:12px;padding:14px 16px;background:#fff;cursor:pointer;text-align:left;transition:all .15s ease}.choice-card:hover{border-color:var(--brand-blue-border)}.choice-card.selected{border-color:var(--brand-blue);background:var(--brand-blue-soft);box-shadow:0 0 0 3px #306f7a1f}.invite-toggle-box{border:1.5px dashed var(--brand-blue-border);background:var(--brand-blue-soft);border-radius:14px;padding:16px;margin-top:8px}.autocomplete-dropdown{border:1px solid var(--border-color);border-radius:12px;margin-top:6px;background:#fff;box-shadow:var(--shadow-md);overflow:hidden}.autocomplete-item{padding:10px 14px;cursor:pointer;border-bottom:1px solid var(--border-color);font-size:.86rem;display:flex;justify-content:space-between;align-items:center}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background:var(--brand-blue-soft)}
