:root{--color-primary: #3347d9;--color-primary-hover: #2a3abf;--color-dark: #1b1f3b;--color-background: #eef0f8;--color-surface: #ffffff;--color-border: #1b1f3b;--color-border-light: #d1d5e4;--color-accent: #f5a623;--color-error: #e53e3e;--color-success: #38a169;--color-text-muted: #6b7280;--radius-button: 999px;--radius-card: 12px;--radius-input: 8px;--font-heading: "Montserrat", sans-serif;--font-body: "Open Sans", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);font-size:16px;color:var(--color-dark);background:var(--color-background);line-height:1.5;-webkit-font-smoothing:antialiased}.header{position:sticky;top:0;z-index:100;background:var(--color-surface);border-bottom:1px solid var(--color-border-light);padding:16px 24px}.header-inner{max-width:720px;margin:0 auto;display:flex;align-items:center;gap:10px}.header-logo{height:36px;width:auto}.header-inner .lang-selector{margin-left:auto}.lang-selector{display:flex;align-items:center;gap:4px}.lang-btn{background:none;border:none;font-family:var(--font-heading);font-weight:700;font-size:14px;color:var(--color-text-muted);cursor:pointer;padding:4px 6px;border-radius:4px;transition:color .15s,background-color .15s}.lang-btn:hover{color:var(--color-dark)}.lang-btn--active{color:var(--color-primary);background:#3347d914}.lang-divider{color:var(--color-border-light);font-size:14px}.page{max-width:720px;margin:0 auto;padding:32px 24px 64px}.page-heading{font-family:var(--font-heading);font-weight:800;font-size:36px;color:var(--color-dark);margin-bottom:8px}.page-subheading{font-size:16px;color:var(--color-text-muted);margin-bottom:32px}.card{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-card);padding:24px;margin-bottom:24px}.card-title{font-family:var(--font-heading);font-weight:700;font-size:22px;color:var(--color-dark);margin-bottom:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full-width{grid-column:1 / -1}.field{display:flex;flex-direction:column;gap:4px}.field-label{font-family:var(--font-body);font-weight:600;font-size:14px;color:var(--color-dark)}.field-required{color:var(--color-error);margin-left:2px}.field-input{font-family:var(--font-body);font-size:16px;padding:10px 12px;border:1px solid var(--color-border-light);border-radius:var(--radius-input);background:var(--color-surface);color:var(--color-dark);outline:none;transition:border-color .15s}.field-input:focus{border:2px solid var(--color-primary);padding:9px 11px}.field-input::placeholder{color:var(--color-text-muted)}.field-input--error{border-color:var(--color-error)}.field-input--error:focus{border-color:var(--color-error)}.field-error{font-size:13px;color:var(--color-error)}textarea.field-input{resize:vertical;min-height:80px}.searchable-select{position:relative;width:100%}.searchable-select .field-input{width:100%;box-sizing:border-box}.searchable-select__list{position:absolute;z-index:10;top:100%;left:0;right:0;margin:4px 0 0;padding:4px 0;list-style:none;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-input);box-shadow:0 4px 12px #0000001a;max-height:200px;overflow-y:auto}.searchable-select__item{font-family:var(--font-body);font-size:15px;padding:8px 12px;cursor:pointer;color:var(--color-dark)}.searchable-select__item--active{background:var(--color-primary);color:var(--color-surface)}.btn{font-family:var(--font-heading);font-weight:700;font-size:16px;border-radius:var(--radius-button);padding:12px 32px;cursor:pointer;border:none;transition:background-color .15s,opacity .15s;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface);color:var(--color-dark);border:2px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-background)}.upload-zone{border:2px dashed var(--color-border-light);border-radius:var(--radius-card);padding:40px 24px;text-align:center;cursor:pointer;transition:border-color .15s,background-color .15s;margin-bottom:24px}.upload-zone:hover{border-color:var(--color-primary);background:#3347d908}.upload-zone--dragover{border-color:var(--color-primary);background:#3347d90f}.upload-zone--loading{pointer-events:none;opacity:.7}.upload-icon{font-size:32px;margin-bottom:8px;display:block}.upload-text{font-size:16px;color:var(--color-dark);margin-bottom:4px}.upload-hint{font-size:13px;color:var(--color-text-muted)}.upload-preview{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-background);border-radius:var(--radius-input);margin-bottom:24px}.upload-preview img{width:48px;height:48px;object-fit:cover;border-radius:6px}.upload-preview-info{flex:1;text-align:left}.upload-preview-name{font-size:14px;font-weight:600;color:var(--color-dark)}.upload-preview-status{font-size:13px;color:var(--color-success)}.upload-remove{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:18px;padding:4px}.upload-remove:hover{color:var(--color-error)}.upload-error{font-size:13px;color:var(--color-error);margin-top:8px}.spinner{display:inline-block;width:20px;height:20px;border:3px solid var(--color-border-light);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.submit-area{display:flex;justify-content:center;margin-top:8px}.success{text-align:center;padding:80px 24px}.success-icon{width:64px;height:64px;background:var(--color-success);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;color:#fff;font-size:32px}.success-title{font-family:var(--font-heading);font-weight:800;font-size:28px;color:var(--color-dark);margin-bottom:8px}.success-reference{font-family:var(--font-heading);font-weight:700;font-size:22px;color:var(--color-primary);margin-bottom:16px}.success-message{font-size:16px;color:var(--color-text-muted);margin-bottom:16px}.success-steps{font-size:14px;color:var(--color-text-muted);margin-bottom:32px;max-width:480px;margin-left:auto;margin-right:auto;line-height:1.6}.forfait-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.forfait-auto-hint{font-size:13px;color:var(--color-success);margin-bottom:12px}.forfait-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px 12px;background:var(--color-surface);border:2px solid var(--color-border-light);border-radius:var(--radius-card);cursor:pointer;transition:border-color .15s,background-color .15s;text-align:center}.forfait-card:hover{border-color:var(--color-primary);background:#3347d908}.forfait-card--selected{border-color:var(--color-primary);background:#3347d90f}.forfait-label{font-family:var(--font-heading);font-weight:700;font-size:15px;color:var(--color-dark)}.forfait-desc{font-size:12px;color:var(--color-text-muted)}.forfait-price{font-family:var(--font-heading);font-weight:800;font-size:24px;color:var(--color-primary)}.forfait-original{font-size:12px;color:var(--color-text-muted);text-decoration:line-through}.forfait-badge{font-family:var(--font-heading);font-weight:600;font-size:12px;color:var(--color-text-muted);padding:4px 12px;border-radius:var(--radius-button);border:1px solid var(--color-border-light);transition:all .15s}.forfait-badge--active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.footer{text-align:center;padding:24px;font-size:13px;color:var(--color-text-muted);border-top:1px solid var(--color-border-light)}.step-indicator{display:flex;justify-content:center;gap:32px;margin-bottom:32px}.step-item{display:flex;flex-direction:column;align-items:center;gap:6px}.step-circle{width:36px;height:36px;border-radius:50%;border:2px solid var(--color-border-light);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:700;font-size:14px;color:var(--color-text-muted);background:var(--color-surface);transition:all .2s}.step-item--active .step-circle{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.step-item--done .step-circle{border-color:var(--color-success);background:var(--color-success);color:#fff}.step-label{font-size:13px;font-weight:600;color:var(--color-text-muted)}.step-item--active .step-label{color:var(--color-primary)}.step-item--done .step-label{color:var(--color-success)}.step-nav{display:flex;justify-content:center;gap:12px;margin-top:8px}select.field-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3e%3cpath fill='%236b7280' d='M6 8L1 3h10z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;cursor:pointer}select.field-input:focus{padding-right:31px}.upload-camera-btn{display:flex;margin:-12px auto 24px;padding:10px 24px;font-size:15px}.sos-plus-upsell{margin-top:20px;padding:16px 20px;border:2px solid var(--color-border-light);border-radius:var(--radius-card);cursor:pointer;transition:border-color .15s,background-color .15s}.sos-plus-upsell:hover{border-color:var(--color-primary)}.sos-plus-upsell--active{border-color:var(--color-primary);background:#3347d90a}.sos-plus-toggle{display:flex;align-items:flex-start;gap:14px}.sos-plus-switch{flex-shrink:0;width:44px;height:24px;border-radius:12px;background:var(--color-border-light);position:relative;transition:background-color .2s;margin-top:2px}.sos-plus-switch--on{background:var(--color-primary)}.sos-plus-switch-knob{width:20px;height:20px;border-radius:50%;background:#fff;position:absolute;top:2px;left:2px;transition:transform .2s;box-shadow:0 1px 3px #0003}.sos-plus-switch--on .sos-plus-switch-knob{transform:translate(20px)}.sos-plus-info{display:flex;flex-direction:column;gap:4px}.sos-plus-label{font-family:var(--font-heading);font-weight:700;font-size:16px;color:var(--color-dark)}.sos-plus-price{color:var(--color-primary);font-weight:800}.sos-plus-desc{font-size:13px;color:var(--color-text-muted);line-height:1.4}@media(max-width:768px){.page-heading{font-size:28px}.form-grid{grid-template-columns:1fr}.page{padding:24px 16px 48px}.card{padding:20px 16px}.submit-area{display:block}.submit-area .btn{width:100%}.forfait-grid{grid-template-columns:repeat(2,1fr)}.step-indicator{gap:16px}.step-label{font-size:11px}.step-nav{flex-direction:column-reverse}.step-nav .btn{width:100%}}
