.spi-icon[data-v-7b95c85e]{display:inline-block;vertical-align:middle}.spi-icon--xs[data-v-7b95c85e]{font-size:calc(var(--font-size-xs) * .8)}.spi-icon--sm[data-v-7b95c85e]{font-size:var(--font-size-sm)}.spi-icon--lg[data-v-7b95c85e]{font-size:var(--font-size-lg)}.spi-icon--xl[data-v-7b95c85e]{font-size:var(--font-size-xl)}.spi-icon--2x[data-v-7b95c85e]{font-size:calc(var(--font-size-base) * 2)}.spi-icon--3x[data-v-7b95c85e]{font-size:calc(var(--font-size-base) * 3)}[data-theme=high-contrast] .spi-icon[data-v-7b95c85e]{filter:contrast(1.5)}.toast-container[data-v-6d811ba1]{position:fixed;top:1rem;right:1rem;z-index:9999;pointer-events:none}.toast-stack[data-v-6d811ba1]{display:flex;flex-direction:column;gap:.5rem;max-width:400px}.toast[data-v-6d811ba1]{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#fff;border-radius:.5rem;box-shadow:0 4px 12px #00000026;border-left:4px solid transparent;pointer-events:auto;position:relative;overflow:hidden;max-width:100%;word-wrap:break-word}.toast--success[data-v-6d811ba1]{border-left-color:#10b981;background:linear-gradient(135deg,#f0fdf4,#fff)}.toast--error[data-v-6d811ba1]{border-left-color:#ef4444;background:linear-gradient(135deg,#fef2f2,#fff)}.toast--warning[data-v-6d811ba1]{border-left-color:#f59e0b;background:linear-gradient(135deg,#fffbeb,#fff)}.toast--info[data-v-6d811ba1]{border-left-color:#3b82f6;background:linear-gradient(135deg,#eff6ff,#fff)}.toast--loading[data-v-6d811ba1]{border-left-color:#6b7280;background:linear-gradient(135deg,#f9fafb,#fff)}.toast__icon[data-v-6d811ba1]{flex-shrink:0;width:1.25rem;height:1.25rem;margin-top:.125rem}.toast__icon--success[data-v-6d811ba1]{color:#10b981}.toast__icon--error[data-v-6d811ba1]{color:#ef4444}.toast__icon--warning[data-v-6d811ba1]{color:#f59e0b}.toast__icon--info[data-v-6d811ba1]{color:#3b82f6}.toast__icon--loading[data-v-6d811ba1]{color:#6b7280;animation:spin-6d811ba1 1s linear infinite}.toast__content[data-v-6d811ba1]{flex:1;min-width:0}.toast__message[data-v-6d811ba1]{font-size:.875rem;line-height:1.25rem;color:#374151;margin-bottom:0}.toast__action[data-v-6d811ba1]{margin-top:.5rem;padding:.25rem .5rem;background:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.2);border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease}.toast__action[data-v-6d811ba1]:hover{background:#3b82f633;border-color:#3b82f64d}.toast__spinner[data-v-6d811ba1]{flex-shrink:0;width:1rem;height:1rem;margin-top:.125rem}.spinner[data-v-6d811ba1]{width:1rem;height:1rem;border:2px solid #e5e7eb;border-top:2px solid #6b7280;border-radius:50%;animation:spin-6d811ba1 1s linear infinite}.toast__close[data-v-6d811ba1]{flex-shrink:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:.25rem;color:#9ca3af;cursor:pointer;transition:all .2s ease;margin-top:-.25rem;margin-right:-.25rem}.toast__close[data-v-6d811ba1]:hover{background:#0000000d;color:#6b7280}.toast__progress[data-v-6d811ba1]{position:absolute;bottom:0;left:0;height:2px;background:currentColor;opacity:.3;animation:progress-6d811ba1 linear forwards;transform-origin:left}.toast--success .toast__progress[data-v-6d811ba1]{background:#10b981}.toast--error .toast__progress[data-v-6d811ba1]{background:#ef4444}.toast--warning .toast__progress[data-v-6d811ba1]{background:#f59e0b}.toast--info .toast__progress[data-v-6d811ba1]{background:#3b82f6}@keyframes spin-6d811ba1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes progress-6d811ba1{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast-enter-active[data-v-6d811ba1],.toast-leave-active[data-v-6d811ba1]{transition:all .3s cubic-bezier(.25,.8,.25,1)}.toast-enter-from[data-v-6d811ba1],.toast-leave-to[data-v-6d811ba1]{opacity:0;transform:translate(100%) scale(.95)}.toast-move[data-v-6d811ba1]{transition:transform .3s cubic-bezier(.25,.8,.25,1)}@media (max-width: 640px){.toast-container[data-v-6d811ba1]{top:1rem;left:1rem;right:1rem}.toast-stack[data-v-6d811ba1]{max-width:none}.toast[data-v-6d811ba1]{padding:.875rem}.toast__message[data-v-6d811ba1]{font-size:.8125rem}}@media (prefers-color-scheme: dark){.toast[data-v-6d811ba1]{background:#1f2937;color:#f9fafb;box-shadow:0 4px 12px #0000004d}.toast--success[data-v-6d811ba1]{background:linear-gradient(135deg,#064e3b,#1f2937)}.toast--error[data-v-6d811ba1]{background:linear-gradient(135deg,#7f1d1d,#1f2937)}.toast--warning[data-v-6d811ba1]{background:linear-gradient(135deg,#78350f,#1f2937)}.toast--info[data-v-6d811ba1]{background:linear-gradient(135deg,#1e3a8a,#1f2937)}.toast--loading[data-v-6d811ba1]{background:linear-gradient(135deg,#374151,#1f2937)}.toast__message[data-v-6d811ba1]{color:#e5e7eb}.toast__close[data-v-6d811ba1]{color:#9ca3af}.toast__close[data-v-6d811ba1]:hover{background:#ffffff1a;color:#d1d5db}}@media (prefers-reduced-motion: reduce){.toast-enter-active[data-v-6d811ba1],.toast-leave-active[data-v-6d811ba1],.toast-move[data-v-6d811ba1]{transition:none}.toast__icon--loading[data-v-6d811ba1],.spinner[data-v-6d811ba1],.toast__progress[data-v-6d811ba1]{animation:none}}#app{font-family:Inter,Nunito Sans,Avenir,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#1f2937}*{margin:0;padding:0;box-sizing:border-box}.input-wrapper[data-v-aeebb2bb]{position:relative;display:flex;align-items:center}.input-wrapper .form-input[data-v-aeebb2bb]{width:100%}.input-icon[data-v-aeebb2bb]{position:absolute;display:flex;align-items:center;justify-content:center;pointer-events:none;color:var(--color-text-secondary);z-index:var(--z-10)}.input-icon-left[data-v-aeebb2bb]{left:var(--space-3)}.input-icon-right[data-v-aeebb2bb]{right:var(--space-3)}.input-wrapper:has(.input-icon-left) .form-input[data-v-aeebb2bb]{padding-left:var(--space-10)}.input-wrapper:has(.input-icon-right) .form-input[data-v-aeebb2bb]{padding-right:var(--space-10)}.password-toggle[data-v-aeebb2bb]{background:none;border:none;padding:var(--space-1);cursor:pointer;pointer-events:auto;border-radius:var(--radius-base);transition:background-color var(--transition-base);font-size:var(--font-size-sm)}.password-toggle[data-v-aeebb2bb]:hover{background-color:var(--color-gray-100)}.password-toggle[data-v-aeebb2bb]:focus{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.form-input-sm[data-v-aeebb2bb]{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);min-height:var(--space-10)}.form-input-lg[data-v-aeebb2bb]{padding:var(--space-4) var(--space-4);font-size:var(--font-size-lg);min-height:var(--space-14)}.input-wrapper-error .form-input[data-v-aeebb2bb]{border-color:var(--color-error-500);box-shadow:var(--shadow-focus-error)}.input-wrapper-disabled[data-v-aeebb2bb]{opacity:.6;cursor:not-allowed}.input-wrapper-loading .form-input[data-v-aeebb2bb]{padding-right:var(--space-12)}.form-input[data-v-aeebb2bb]{transition:all var(--transition-base)}.form-input[data-v-aeebb2bb]:focus{transform:translateY(-1px)}@media (prefers-reduced-motion: reduce){.form-input[data-v-aeebb2bb]:focus{transform:none}}@media (prefers-color-scheme: dark){.input-icon[data-v-aeebb2bb]{color:var(--color-gray-400)}.password-toggle[data-v-aeebb2bb]:hover{background-color:var(--color-gray-700)}}@media (prefers-contrast: high){.form-input[data-v-aeebb2bb],.input-wrapper-error .form-input[data-v-aeebb2bb]{border-width:var(--border-width-4)}}.card-elevated[data-v-5a54163d]{box-shadow:var(--shadow-lg)}.card-bordered[data-v-5a54163d]{border-width:var(--border-width-2);border-color:var(--color-border)}.card-flat[data-v-5a54163d]{box-shadow:none;border:none}.card-outlined[data-v-5a54163d]{border:var(--border-width-2) solid var(--color-primary-500);box-shadow:none}.card-sm[data-v-5a54163d]{border-radius:var(--radius-lg)}.card-lg[data-v-5a54163d]{border-radius:var(--radius-2xl)}.card-xl[data-v-5a54163d]{border-radius:var(--radius-3xl)}.card-interactive[data-v-5a54163d]{cursor:pointer;transition:all var(--transition-base);user-select:none}.card-interactive[data-v-5a54163d]:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.card-interactive[data-v-5a54163d]:active{transform:translateY(0)}.card-interactive[data-v-5a54163d]:focus{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.card-loading[data-v-5a54163d]{opacity:.7;pointer-events:none;position:relative}.card-loading[data-v-5a54163d]:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:var(--space-8);height:var(--space-8);border:var(--border-width-2) solid var(--color-gray-200);border-top-color:var(--color-primary-500);border-radius:var(--radius-full);animation:spin var(--animation-slow) linear infinite;z-index:var(--z-10)}.card-title[data-v-5a54163d]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0;line-height:var(--line-height-tight)}.card-subtitle[data-v-5a54163d]{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:var(--space-1) 0 0 0;line-height:var(--line-height-normal)}.card-body-none[data-v-5a54163d]{padding:0}.card-body-sm[data-v-5a54163d]{padding:var(--space-3)}.card-body-lg[data-v-5a54163d]{padding:var(--space-8)}.card-body-xl[data-v-5a54163d]{padding:var(--space-12)}.card-footer[data-v-5a54163d]{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}@media (max-width: 640px){.card-interactive[data-v-5a54163d]:hover{transform:none}.card-body[data-v-5a54163d]{padding:var(--space-4)}.card-body-lg[data-v-5a54163d]{padding:var(--space-6)}.card-body-xl[data-v-5a54163d]{padding:var(--space-8)}}@media (prefers-color-scheme: dark){.card-outlined[data-v-5a54163d]{border-color:var(--color-primary-400)}}@media (prefers-reduced-motion: reduce){.card-interactive[data-v-5a54163d]:hover{transform:none}.card-loading[data-v-5a54163d]:before{animation:none;border-top-color:var(--color-gray-200);border-right-color:var(--color-primary-500)}}@media (prefers-contrast: high){.card-bordered[data-v-5a54163d],.card-outlined[data-v-5a54163d]{border-width:var(--border-width-4)}.card-interactive[data-v-5a54163d]:focus{outline-width:var(--border-width-4)}}.alert[data-v-ac3b5dc0]{display:flex;align-items:flex-start;gap:var(--space-3);position:relative}.alert-icon[data-v-ac3b5dc0]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:var(--space-5);height:var(--space-5);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.alert-content[data-v-ac3b5dc0]{flex:1;min-width:0}.alert-title[data-v-ac3b5dc0]{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);margin-bottom:var(--space-1);line-height:var(--line-height-tight)}.alert-message[data-v-ac3b5dc0]{font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.alert-close[data-v-ac3b5dc0]{flex-shrink:0;background:none;border:none;padding:var(--space-1);margin:calc(var(--space-1) * -1);cursor:pointer;font-size:var(--font-size-lg);line-height:1;color:inherit;opacity:.7;border-radius:var(--radius-base);transition:all var(--transition-base)}.alert-close[data-v-ac3b5dc0]:hover{opacity:1;background-color:#0000001a}.alert-close[data-v-ac3b5dc0]:focus{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset);opacity:1}.alert-sm[data-v-ac3b5dc0]{padding:var(--space-3);font-size:var(--font-size-xs)}.alert-sm .alert-icon[data-v-ac3b5dc0]{width:var(--space-4);height:var(--space-4);font-size:var(--font-size-xs)}.alert-sm .alert-title[data-v-ac3b5dc0],.alert-sm .alert-message[data-v-ac3b5dc0]{font-size:var(--font-size-xs)}.alert-lg[data-v-ac3b5dc0]{padding:var(--space-6)}.alert-lg .alert-icon[data-v-ac3b5dc0]{width:var(--space-6);height:var(--space-6);font-size:var(--font-size-base)}.alert-lg .alert-title[data-v-ac3b5dc0]{font-size:var(--font-size-base);margin-bottom:var(--space-2)}.alert-lg .alert-message[data-v-ac3b5dc0]{font-size:var(--font-size-base)}.alert-success .alert-icon[data-v-ac3b5dc0]{color:var(--color-success-600)}.alert-warning .alert-icon[data-v-ac3b5dc0]{color:var(--color-warning-600)}.alert-error .alert-icon[data-v-ac3b5dc0]{color:var(--color-error-600)}.alert-info .alert-icon[data-v-ac3b5dc0]{color:var(--color-primary-600)}.alert[data-v-ac3b5dc0]{animation:alertSlideIn-ac3b5dc0 var(--animation-normal) var(--ease-out)}@keyframes alertSlideIn-ac3b5dc0{0%{opacity:0;transform:translateY(calc(var(--space-4) * -1))}to{opacity:1;transform:translateY(0)}}@media (max-width: 640px){.alert[data-v-ac3b5dc0]{gap:var(--space-2)}.alert-close[data-v-ac3b5dc0]{margin-top:calc(var(--space-1) * -1);margin-right:calc(var(--space-1) * -1)}}@media (prefers-color-scheme: dark){.alert-close[data-v-ac3b5dc0]:hover{background-color:#ffffff1a}}@media (prefers-reduced-motion: reduce){.alert[data-v-ac3b5dc0]{animation:none}}@media (prefers-contrast: high){.alert[data-v-ac3b5dc0]{border-width:var(--border-width-4)}.alert-close[data-v-ac3b5dc0]:focus{outline-width:var(--border-width-4)}}.help-system[data-v-a81fc2a7]{position:fixed;bottom:2rem;right:2rem;z-index:1000}.help-trigger[data-v-a81fc2a7]{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;border:none;box-shadow:0 4px 12px #00000026;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.help-trigger[data-v-a81fc2a7]:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0003}.help-panel[data-v-a81fc2a7]{position:absolute;bottom:0;right:0;width:400px;max-height:600px;background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;border:1px solid var(--color-border);display:flex;flex-direction:column;overflow:hidden}.help-header[data-v-a81fc2a7]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border);background:var(--color-surface-secondary)}.help-title[data-v-a81fc2a7]{margin:0;display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.help-close[data-v-a81fc2a7]{background:none;border:none;padding:.5rem;cursor:pointer;border-radius:6px;color:var(--color-text-secondary);transition:background-color .2s ease}.help-close[data-v-a81fc2a7]:hover{background:var(--color-surface-tertiary);color:var(--color-text-primary)}.help-content[data-v-a81fc2a7]{flex:1;overflow-y:auto;padding:1.5rem}.help-search[data-v-a81fc2a7]{position:relative;margin-bottom:1.5rem}.help-search-input[data-v-a81fc2a7]{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:1px solid var(--color-border);border-radius:8px;font-size:.875rem;background:var(--color-surface-primary)}.search-icon[data-v-a81fc2a7]{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:var(--color-text-secondary)}.search-results[data-v-a81fc2a7]{margin-bottom:1.5rem}.search-results h4[data-v-a81fc2a7]{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.results-list[data-v-a81fc2a7]{list-style:none;padding:0;margin:0}.result-item[data-v-a81fc2a7]{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border-radius:6px;cursor:pointer;transition:background-color .2s ease}.result-item[data-v-a81fc2a7]:hover{background:var(--color-surface-secondary)}.result-icon[data-v-a81fc2a7]{color:var(--color-primary);margin-top:.125rem}.result-content[data-v-a81fc2a7]{flex:1}.result-title[data-v-a81fc2a7]{font-weight:500;color:var(--color-text-primary);margin-bottom:.25rem}.result-description[data-v-a81fc2a7]{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.4}.quick-actions h4[data-v-a81fc2a7],.contextual-help h4[data-v-a81fc2a7]{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.action-grid[data-v-a81fc2a7]{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.5rem}.action-button[data-v-a81fc2a7]{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:var(--color-surface-secondary);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:center}.action-button[data-v-a81fc2a7]:hover{background:var(--color-surface-tertiary);border-color:var(--color-primary);transform:translateY(-1px)}.action-button span[data-v-a81fc2a7]{font-size:.8125rem;font-weight:500;color:var(--color-text-primary)}.help-list[data-v-a81fc2a7]{list-style:none;padding:0;margin:0}.help-item[data-v-a81fc2a7]{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:6px;cursor:pointer;transition:background-color .2s ease}.help-item[data-v-a81fc2a7]:hover{background:var(--color-surface-secondary)}.guided-tour[data-v-a81fc2a7]{display:flex;flex-direction:column;height:100%}.tour-header[data-v-a81fc2a7]{margin-bottom:1rem}.tour-header h4[data-v-a81fc2a7]{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:var(--color-text-primary)}.tour-progress[data-v-a81fc2a7]{display:flex;align-items:center;gap:.75rem;font-size:.8125rem;color:var(--color-text-secondary)}.progress-bar[data-v-a81fc2a7]{flex:1;height:4px;background:var(--color-surface-tertiary);border-radius:2px;overflow:hidden}.progress-fill[data-v-a81fc2a7]{height:100%;background:var(--color-primary);transition:width .3s ease}.tour-content[data-v-a81fc2a7]{flex:1;display:flex;flex-direction:column}.step-content[data-v-a81fc2a7]{flex:1;margin-bottom:1rem}.step-content h5[data-v-a81fc2a7]{margin:0 0 .5rem;font-size:.9375rem;font-weight:600;color:var(--color-text-primary)}.step-content p[data-v-a81fc2a7]{margin:0 0 1rem;color:var(--color-text-secondary);line-height:1.5}.step-image img[data-v-a81fc2a7]{width:100%;border-radius:6px;border:1px solid var(--color-border)}.tour-controls[data-v-a81fc2a7]{display:flex;gap:.75rem}.tour-button[data-v-a81fc2a7]{flex:1;padding:.75rem;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.tour-button.primary[data-v-a81fc2a7]{background:var(--color-primary);color:#fff}.tour-button.primary[data-v-a81fc2a7]:hover:not(:disabled){background:var(--color-primary-dark)}.tour-button.secondary[data-v-a81fc2a7]{background:var(--color-surface-secondary);color:var(--color-text-primary);border:1px solid var(--color-border)}.tour-button.secondary[data-v-a81fc2a7]:hover:not(:disabled){background:var(--color-surface-tertiary)}.tour-button.success[data-v-a81fc2a7]{background:var(--color-success);color:#fff}.tour-button[data-v-a81fc2a7]:disabled{opacity:.5;cursor:not-allowed}.help-article[data-v-a81fc2a7]{height:100%;display:flex;flex-direction:column}.article-header[data-v-a81fc2a7]{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.back-button[data-v-a81fc2a7]{background:none;border:none;padding:.5rem;cursor:pointer;border-radius:6px;color:var(--color-text-secondary);transition:background-color .2s ease;display:flex;align-items:center;gap:.5rem}.back-button[data-v-a81fc2a7]:hover{background:var(--color-surface-secondary);color:var(--color-text-primary)}.article-content[data-v-a81fc2a7]{flex:1;overflow-y:auto;line-height:1.6;color:var(--color-text-primary)}.article-actions[data-v-a81fc2a7]{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.rating[data-v-a81fc2a7]{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.rating-button[data-v-a81fc2a7]{background:none;border:1px solid var(--color-border);padding:.5rem;border-radius:6px;cursor:pointer;transition:all .2s ease}.rating-button[data-v-a81fc2a7]:hover,.rating-button.active[data-v-a81fc2a7]{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.related-articles h5[data-v-a81fc2a7]{margin:0 0 .5rem;font-size:.875rem;font-weight:600;color:var(--color-text-secondary)}.related-articles ul[data-v-a81fc2a7]{list-style:none;padding:0;margin:0}.related-articles li[data-v-a81fc2a7]{padding:.5rem 0;color:var(--color-primary);cursor:pointer;text-decoration:underline}.help-footer[data-v-a81fc2a7]{padding:1rem 1.5rem;border-top:1px solid var(--color-border);background:var(--color-surface-secondary)}.mode-switcher[data-v-a81fc2a7]{display:flex;gap:.5rem;margin-bottom:.75rem}.mode-button[data-v-a81fc2a7]{flex:1;padding:.5rem;background:none;border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.8125rem}.mode-button.active[data-v-a81fc2a7]{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.help-links[data-v-a81fc2a7]{display:flex;gap:.75rem}.help-link[data-v-a81fc2a7]{display:flex;align-items:center;gap:.5rem;color:var(--color-text-secondary);text-decoration:none;font-size:.8125rem;transition:color .2s ease}.help-link[data-v-a81fc2a7]:hover{color:var(--color-primary)}.tour-overlay[data-v-a81fc2a7]{position:fixed;inset:0;background:#00000080;z-index:2000;pointer-events:none}.tour-spotlight[data-v-a81fc2a7]{position:absolute;background:transparent;border:3px solid var(--color-primary);border-radius:8px;box-shadow:0 0 0 9999px #00000080;pointer-events:none;transition:all .3s ease}.tour-tooltip[data-v-a81fc2a7]{position:absolute;background:#fff;border-radius:8px;box-shadow:0 8px 32px #0003;border:1px solid var(--color-border);pointer-events:all;max-width:300px;z-index:2001}.tooltip-content[data-v-a81fc2a7]{padding:1.5rem}.tooltip-content h5[data-v-a81fc2a7]{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:var(--color-text-primary)}.tooltip-content p[data-v-a81fc2a7]{margin:0 0 1rem;color:var(--color-text-secondary);line-height:1.5}.tooltip-actions[data-v-a81fc2a7]{display:flex;gap:.75rem}@media (max-width: 768px){.help-panel[data-v-a81fc2a7]{width:calc(100vw - 2rem);right:1rem;max-height:calc(100vh - 4rem)}.action-grid[data-v-a81fc2a7]{grid-template-columns:1fr}.tour-tooltip[data-v-a81fc2a7]{max-width:calc(100vw - 4rem);left:2rem!important;right:2rem;width:auto}}.help-tooltip-wrapper[data-v-abf3a757]{display:inline-block;position:relative}.help-tooltip[data-v-abf3a757]{position:absolute;z-index:1050;max-width:300px;padding:0;background:#fff;border:1px solid var(--color-border);border-radius:8px;box-shadow:0 8px 32px #0000001f;font-size:.875rem;line-height:1.4;opacity:0;visibility:hidden;transform:translateY(-4px);transition:all .2s ease}.help-tooltip.tooltip-interactive[data-v-abf3a757]{cursor:auto}.help-tooltip[data-v-abf3a757]{opacity:1;visibility:visible;transform:translateY(0)}.tooltip-arrow[data-v-abf3a757]{position:absolute;width:12px;height:12px;background:#fff;border:1px solid var(--color-border);transform:rotate(45deg);z-index:-1}.tooltip-top .arrow-top[data-v-abf3a757]{bottom:-6px;left:50%;margin-left:-6px;border-bottom:none;border-right:none}.tooltip-bottom .arrow-bottom[data-v-abf3a757]{top:-6px;left:50%;margin-left:-6px;border-top:none;border-left:none}.tooltip-left .arrow-left[data-v-abf3a757]{right:-6px;top:50%;margin-top:-6px;border-right:none;border-bottom:none}.tooltip-right .arrow-right[data-v-abf3a757]{left:-6px;top:50%;margin-top:-6px;border-left:none;border-top:none}.tooltip-content[data-v-abf3a757]{padding:1rem}.tooltip-title[data-v-abf3a757]{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.5rem}.tooltip-icon[data-v-abf3a757]{color:var(--color-primary);font-size:1rem}.tooltip-body[data-v-abf3a757]{color:var(--color-text-secondary);margin-bottom:.75rem}.tooltip-body[data-v-abf3a757]:last-child{margin-bottom:0}.tooltip-body p[data-v-abf3a757]{margin:0;line-height:1.5}.tooltip-actions[data-v-abf3a757]{display:flex;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border)}.tooltip-action[data-v-abf3a757]{flex:1;padding:.5rem .75rem;border:none;border-radius:4px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease}.tooltip-action.primary[data-v-abf3a757]{background:var(--color-primary);color:#fff}.tooltip-action.primary[data-v-abf3a757]:hover{background:var(--color-primary-dark)}.tooltip-action.secondary[data-v-abf3a757]{background:var(--color-surface-secondary);color:var(--color-text-primary);border:1px solid var(--color-border)}.tooltip-action.secondary[data-v-abf3a757]:hover{background:var(--color-surface-tertiary)}.tooltip-learn-more[data-v-abf3a757]{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border)}.learn-more-link[data-v-abf3a757]{display:inline-flex;align-items:center;gap:.375rem;color:var(--color-primary);text-decoration:none;font-size:.8125rem;font-weight:500;transition:color .2s ease}.learn-more-link[data-v-abf3a757]:hover{color:var(--color-primary-dark)}@media (max-width: 640px){.help-tooltip[data-v-abf3a757]{max-width:280px;font-size:.8125rem}.tooltip-content[data-v-abf3a757]{padding:.875rem}.tooltip-actions[data-v-abf3a757]{flex-direction:column}.tooltip-action[data-v-abf3a757]{width:100%}}@media (prefers-color-scheme: dark){.help-tooltip[data-v-abf3a757],.tooltip-arrow[data-v-abf3a757]{background:var(--color-surface-dark, #1f2937);border-color:var(--color-border-dark, #374151)}.tooltip-title[data-v-abf3a757]{color:var(--color-text-primary-dark, #f9fafb)}.tooltip-body[data-v-abf3a757]{color:var(--color-text-secondary-dark, #d1d5db)}}.tooltip-enter-active[data-v-abf3a757],.tooltip-leave-active[data-v-abf3a757]{transition:all .2s ease}.tooltip-enter-from[data-v-abf3a757],.tooltip-leave-to[data-v-abf3a757]{opacity:0;transform:translateY(-4px)}@media (prefers-contrast: high){.help-tooltip[data-v-abf3a757]{border-width:2px;box-shadow:0 4px 16px #0000004d}.tooltip-action[data-v-abf3a757]{border-width:2px}}@media (prefers-reduced-motion: reduce){.help-tooltip[data-v-abf3a757],.tooltip-action[data-v-abf3a757],.learn-more-link[data-v-abf3a757]{transition:none}}--color-role-god: #dc2626; --color-role-god-light: #fca5a5; --color-role-god-dark: #991b1b; --color-role-superadmin: #ea580c; --color-role-superadmin-light: #fed7aa; --color-role-superadmin-dark: #c2410c; --color-role-admin: #d97706; --color-role-admin-light: #fde68a; --color-role-admin-dark: #92400e; --color-role-intervenant: #0891b2; --color-role-intervenant-light: #a5f3fc; --color-role-intervenant-dark: #0e7490; --color-role-user: #059669; --color-role-user-light: #a7f3d0; --color-role-user-dark: #065f46; --color-role-public: #6b7280; --color-role-public-light: #d1d5db; --color-role-public-dark: #374151; --permission-granted: #10b981; --permission-denied: #ef4444; --permission-partial: #f59e0b; --permission-pending: #8b5cf6; --permission-loading: #6b7280; --permission-granted-bg: #d1fae5; --permission-denied-bg: #fee2e2; --permission-partial-bg: #fef3c7; --permission-pending-bg: #ede9fe; --permission-loading-bg: #f3f4f6; --brick-xs: 1rem; --brick-sm: 1.5rem; --brick-md: 2rem; --brick-lg: 3rem; --brick-xl: 4rem; --brick-inactive: var(--color-gray-400); --brick-learning: var(--color-primary-400); --brick-adapted: var(--color-success-500); --brick-attention: var(--color-warning-500); --brick-error: var(--color-error-500); --brick-hover-scale: 1.05; --brick-active-scale: .98; --brick-transition: .2s ease-out; --brick-cognitive-delay: .3s; --brick-adaptation-duration: .5s; --space-0-25: .0625rem; --space-0-75: .1875rem; --space-1-25: .3125rem; --space-1-75: .4375rem; --space-2-25: .5625rem; --space-2-75: .6875rem; --space-4-5: 1.125rem; --space-5-5: 1.375rem; --space-6-5: 1.625rem; --space-7-5: 1.875rem; --space-8-5: 2.125rem; --space-9-5: 2.375rem; --space-10-5: 2.625rem; --space-11-5: 2.875rem; --space-13: 3.25rem; --space-15: 3.75rem; --space-18: 4.5rem; --space-22: 5.5rem; --space-26: 6.5rem; --space-30: 7.5rem; --space-34: 8.5rem; --space-38: 9.5rem; --space-42: 10.5rem; --space-46: 11.5rem; --space-50: 12.5rem; --form-input-bg: var(--color-white); --form-input-border: var(--color-gray-300); --form-input-border-focus: var(--color-primary-500); --form-input-border-error: var(--color-error-500); --form-input-text: var(--color-gray-800); --form-input-placeholder: var(--color-gray-400); --form-input-disabled-bg: var(--color-gray-100); --form-input-disabled-border: var(--color-gray-200); --form-input-disabled-text: var(--color-gray-400); --btn-primary-bg: var(--color-primary-500); --btn-primary-hover: var(--color-primary-600); --btn-primary-active: var(--color-primary-700); --btn-secondary-bg: var(--color-gray-500); --btn-secondary-hover: var(--color-gray-600); --btn-secondary-active: var(--color-gray-700); --btn-god: var(--color-role-god); --btn-admin: var(--color-role-admin); --btn-disabled-bg: var(--color-gray-300); --btn-disabled-text: var(--color-gray-500); --card-bg: var(--color-white); --card-border: var(--color-gray-200); --card-hover-border: var(--color-gray-300); --card-shadow: var(--shadow-sm); --card-hover-shadow: var(--shadow-base); --card-header-bg: var(--color-gray-50); --card-header-border: var(--color-gray-200); --nav-link-text: var(--color-gray-700); --nav-link-hover: var(--color-primary-500); --nav-link-active: var(--color-primary-600); --status-pending: #f59e0b; --status-confirmed: #10b981; --status-completed: #059669; --status-cancelled: #ef4444; --status-rescheduled: #8b5cf6; --system-online: #10b981; --system-warning: #f59e0b; --system-offline: #ef4444; --system-maintenance: #6b7280; --urgency-low: #6b7280; --urgency-medium: #f59e0b; --urgency-high: #ef4444; --urgency-critical: #dc2626; --available: #10b981; --busy: #f59e0b; --unavailable: #ef4444; --unknown: #6b7280; --quality-excellent: #059669; --quality-good: #10b981; --quality-fair: #f59e0b; --quality-poor: #ef4444; --attention-subtle: var(--color-gray-400); --attention-normal: var(--color-gray-600); --attention-elevated: var(--color-primary-500); --attention-high: var(--color-warning-500); --attention-urgent: var(--color-error-500); --familiarity-new: var(--color-primary-400); --familiarity-learning: var(--color-warning-400); --familiarity-known: var(--color-success-400); --familiarity-expert: var(--color-success-600); --cognitive-minimal: #f9fafb; --cognitive-light: #f3f4f6; --cognitive-moderate: #e5e7eb; --cognitive-heavy: #d1d5db; --cognitive-overload: #9ca3af; --adaptation-analyzing: var(--color-primary-300); --adaptation-learning: var(--color-warning-300); --adaptation-adapting: var(--color-success-300); --adaptation-optimized: var(--color-success-500); --behavior-positive: var(--color-success-400); --behavior-neutral: var(--color-gray-400); --behavior-negative: var(--color-error-400); --behavior-encouraging: var(--color-primary-400); --behavior-corrective: var(--color-warning-400); --intelligence-passive: var(--color-gray-300); --intelligence-active: var(--color-primary-400); --intelligence-predictive: var(--color-success-400); --intelligence-adaptive: var(--color-warning-400); --focus-ring-width-thin: 1px; --focus-ring-width-standard: 2px; --focus-ring-width-thick: 3px; --focus-ring-width-extra: 4px; --focus-ring-offset-tight: 1px; --focus-ring-offset-standard: 2px; --focus-ring-offset-generous: 3px; --focus-ring-offset-spacious: 4px; --hc-border-width: 2px; --hc-outline-width: 3px; --hc-text-shadow: 1px 1px 1px rgba(0,0,0,.5); --motion-reduced-duration: .01ms; --motion-standard-duration: .2s; --motion-enhanced-duration: .4s; --touch-xs: 36px; --touch-sm: 40px; --touch-md: 44px; --touch-lg: 48px; --touch-xl: 56px; --sr-only-position: absolute; --sr-only-size: 1px; --micro-instant: 50ms; --micro-quick: .1s; --micro-snappy: .15s; --micro-smooth: .2s; --micro-flowing: .3s; --ease-bounce: cubic-bezier(.68, -.55, .265, 1.55); --ease-smooth: cubic-bezier(.25, .46, .45, .94); --ease-swift: cubic-bezier(.55, .085, .68, .53); --ease-gentle: cubic-bezier(.25, .1, .25, 1); --anim-fade-in: var(--micro-smooth) var(--ease-gentle); --anim-slide-up: var(--micro-flowing) var(--ease-smooth); --anim-scale-up: var(--micro-snappy) var(--ease-bounce); --anim-rotate: var(--micro-flowing) var(--ease-smooth); --anim-cognitive: var(--micro-flowing) var(--ease-gentle); --anim-attention: var(--micro-quick) var(--ease-swift); --context-church-primary: #1d4ed8; --context-church-secondary: #7c3aed; --context-church-accent: #f59e0b; --context-monastery-primary: #059669; --context-monastery-secondary: #92400e; --context-monastery-accent: #f3f4f6; --context-pilgrimage-primary: #dc2626; --context-pilgrimage-secondary: #ea580c; --context-pilgrimage-accent: #fbbf24; --context-retreat-primary: #6b7280; --context-retreat-secondary: #10b981; --context-retreat-accent: #e0e7ff; --context-cathedral-primary: #7c2d12; --context-cathedral-secondary: #dc2626; --context-cathedral-accent: #fbbf24; --context-chapel-primary: #0891b2; --context-chapel-secondary: #059669; --context-chapel-accent: #f3f4f6; --event-mass-color: var(--context-church-primary); --event-confession-color: var(--context-cathedral-primary); --event-wedding-color: var(--context-pilgrimage-accent); --event-funeral-color: var(--context-retreat-primary); --event-baptism-color: var(--context-chapel-primary); --event-retreat-color: var(--context-retreat-secondary); --widget-primary: #10b981; --widget-primary-dark: #059669; --widget-primary-light: #d1fae5; --widget-secondary: #047857; --color-widget-primary-50: #ecfdf5; --color-widget-primary-100: #d1fae5; --color-widget-primary-200: #a7f3d0; --color-widget-primary-500: #10b981; --color-widget-primary-600: #059669; --color-widget-primary-700: #047857; --widget-surface: #ffffff; --widget-surface-elevated: #f9fafb; --widget-border: #e5e7eb; --widget-text: #111827; --widget-text-secondary: #6b7280; [data-theme="dark"] {--color-background: var(--color-gray-900);--color-surface: var(--color-gray-800);--color-text: var(--color-gray-100);--color-text-secondary: var(--color-gray-300);--color-text-disabled: var(--color-gray-500);--color-border: var(--color-gray-700);--color-border-focus: var(--color-primary-400);--color-gray-50: var(--color-gray-800);--color-gray-100: var(--color-gray-700);--color-gray-900: var(--color-gray-100);--form-input-bg: var(--color-gray-700);--form-input-border: var(--color-gray-600);--form-input-text: var(--color-gray-100);--form-input-placeholder: var(--color-gray-400);--form-input-disabled-bg: var(--color-gray-800);--btn-primary-bg: var(--color-primary-400);--btn-primary-hover: var(--color-primary-300);--btn-primary-active: var(--color-primary-500);--btn-secondary-bg: var(--color-gray-600);--btn-secondary-hover: var(--color-gray-500);--btn-disabled-bg: var(--color-gray-700);--btn-disabled-text: var(--color-gray-500);--card-bg: var(--color-gray-800);--card-border: var(--color-gray-700);--card-hover-border: var(--color-gray-600);--card-header-bg: var(--color-gray-700);--card-header-border: var(--color-gray-600);--nav-link-text: var(--color-gray-300);--nav-link-hover: var(--color-primary-400);--nav-link-active: var(--color-primary-300);--color-role-god: #fca5a5;--color-role-superadmin: #fed7aa;--color-role-admin: #fde68a;--color-role-intervenant: #a5f3fc;--color-role-user: #a7f3d0;--color-role-public: #d1d5db;--permission-granted: var(--color-success-400);--permission-denied: var(--color-error-400);--permission-partial: var(--color-warning-400);--permission-pending: var(--color-primary-400);--brick-learning: var(--color-primary-300);--brick-adapted: var(--color-success-400);--brick-attention: var(--color-warning-400);--brick-error: var(--color-error-400);--context-church-primary: #60a5fa;--context-monastery-primary: #34d399;--context-pilgrimage-primary: #f87171;--context-retreat-primary: #9ca3af;--context-cathedral-primary: #d97706;--context-chapel-primary: #22d3ee}[data-theme=high-contrast]{--color-background: #000000;--color-surface: #000000;--color-text: #ffffff;--color-text-secondary: #ffffff;--color-text-disabled: #cccccc;--color-border: #ffffff;--color-border-focus: #ffffff;--color-primary-500: #ffffff;--color-primary-600: #ffffff;--color-primary-700: #ffffff;--color-success-500: #00ff00;--color-warning-500: #ffff00;--color-error-500: #ff0000;--form-input-bg: #000000;--form-input-border: #ffffff;--form-input-border-focus: #ffffff;--form-input-border-error: #ff0000;--form-input-text: #ffffff;--form-input-placeholder: #cccccc;--form-input-disabled-bg: #333333;--form-input-disabled-border: #cccccc;--form-input-disabled-text: #cccccc;--btn-primary-bg: #ffffff;--btn-primary-hover: #cccccc;--btn-primary-active: #999999;--btn-secondary-bg: #333333;--btn-secondary-hover: #666666;--btn-secondary-active: #999999;--btn-disabled-bg: #333333;--btn-disabled-text: #666666;--card-bg: #000000;--card-border: #ffffff;--card-hover-border: #ffffff;--card-shadow: none;--card-hover-shadow: none;--card-header-bg: #000000;--card-header-border: #ffffff;--nav-link-text: #ffffff;--nav-link-hover: #cccccc;--nav-link-active: #ffffff;--color-role-god: #ff0000;--color-role-superadmin: #ff8800;--color-role-admin: #ffff00;--color-role-intervenant: #00ffff;--color-role-user: #00ff00;--color-role-public: #ffffff;--permission-granted: #00ff00;--permission-denied: #ff0000;--permission-partial: #ffff00;--permission-pending: #ff00ff;--permission-loading: #ffffff;--permission-granted-bg: #003300;--permission-denied-bg: #330000;--permission-partial-bg: #333300;--permission-pending-bg: #330033;--permission-loading-bg: #333333;--brick-inactive: #666666;--brick-learning: #ffffff;--brick-adapted: #00ff00;--brick-attention: #ffff00;--brick-error: #ff0000;--focus-ring-width-standard: var(--hc-outline-width);--focus-ring-offset-standard: 2px;--border-width-1: var(--hc-border-width);--shadow-xs: none;--shadow-sm: none;--shadow-base: none;--shadow-md: none;--shadow-lg: none;--shadow-xl: none;--shadow-2xl: none;--shadow-inner: none;--shadow-focus: 0 0 0 3px #ffffff;--shadow-focus-error: 0 0 0 3px #ff0000;--shadow-focus-success: 0 0 0 3px #00ff00;--context-church-primary: #0066ff;--context-monastery-primary: #00cc00;--context-pilgrimage-primary: #ff0000;--context-retreat-primary: #888888;--context-cathedral-primary: #cc6600;--context-chapel-primary: #00cccc;--event-mass-color: #0066ff;--event-confession-color: #cc6600;--event-wedding-color: #ffff00;--event-funeral-color: #888888;--event-baptism-color: #00cccc;--event-retreat-color: #00cc00}:root{transition:background-color var(--transition-base),color var(--transition-base),border-color var(--transition-base)}*{transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}@media (prefers-contrast: high){:root:not([data-theme]){--border-width-1: var(--hc-border-width);--focus-ring-width-standard: var(--hc-outline-width);--shadow-focus: 0 0 0 3px var(--color-primary-500)}}@media (prefers-reduced-motion: reduce){:root,*{transition:none!important}}:root{--color-primary-50: #EFF6FF;--color-primary-100: #DBEAFE;--color-primary-200: #BFDBFE;--color-primary-300: #93C5FD;--color-primary-400: #60A5FA;--color-primary-500: #3B82F6;--color-primary-600: #2563EB;--color-primary-700: #1D4ED8;--color-primary-800: #1E40AF;--color-primary-900: #1E3A8A;--color-primary-950: #172554;--color-success-50: #ECFDF5;--color-success-100: #D1FAE5;--color-success-200: #A7F3D0;--color-success-300: #6EE7B7;--color-success-400: #34D399;--color-success-500: #10B981;--color-success-600: #059669;--color-success-700: #047857;--color-success-800: #065F46;--color-success-900: #064E3B;--color-warning-50: #FFFBEB;--color-warning-100: #FEF3C7;--color-warning-200: #FDE68A;--color-warning-300: #FCD34D;--color-warning-400: #FBBF24;--color-warning-500: #F59E0B;--color-warning-600: #D97706;--color-warning-700: #B45309;--color-warning-800: #92400E;--color-warning-900: #78350F;--color-error-50: #FEF2F2;--color-error-100: #FEE2E2;--color-error-200: #FECACA;--color-error-300: #FCA5A5;--color-error-400: #F87171;--color-error-500: #EF4444;--color-error-600: #DC2626;--color-error-700: #B91C1C;--color-error-800: #991B1B;--color-error-900: #7F1D1D;--color-white: #FFFFFF;--color-gray-50: #F9FAFB;--color-gray-100: #F3F4F6;--color-gray-200: #E5E7EB;--color-gray-300: #D1D5DB;--color-gray-400: #9CA3AF;--color-gray-500: #6B7280;--color-gray-600: #4B5563;--color-gray-700: #374151;--color-gray-800: #1F2937;--color-gray-900: #111827;--color-black: #000000;--color-background: var(--color-gray-50);--color-surface: var(--color-white);--color-text: var(--color-gray-800);--color-text-secondary: var(--color-gray-500);--color-text-disabled: var(--color-gray-400);--color-border: var(--color-gray-200);--color-border-focus: var(--color-primary-500);--font-primary: "Inter", "Nunito Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-mono: "SF Mono", "Monaco", "Cascadia Code", "Roboto Mono", monospace;--font-weight-thin: 100;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-weight-black: 900;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--letter-spacing-tighter: -.05em;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em;--space-px: 1px;--space-0: 0;--space-0-5: .125rem;--space-1: .25rem;--space-1-5: .375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-3-5: .875rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-9: 2.25rem;--space-10: 2.5rem;--space-11: 2.75rem;--space-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-28: 7rem;--space-32: 8rem;--space-36: 9rem;--space-40: 10rem;--space-44: 11rem;--space-48: 12rem;--space-52: 13rem;--space-56: 14rem;--space-60: 15rem;--space-64: 16rem;--space-72: 18rem;--space-80: 20rem;--space-96: 24rem;--border-width-0: 0;--border-width-1: 1px;--border-width-2: 2px;--border-width-4: 4px;--border-width-8: 8px;--radius-none: 0;--radius-sm: .125rem;--radius-base: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--shadow-base: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-2xl: 0 50px 100px -20px rgba(0, 0, 0, .25);--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .06);--shadow-focus: 0 0 0 3px rgba(59, 130, 246, .1);--shadow-focus-error: 0 0 0 3px rgba(239, 68, 68, .1);--shadow-focus-success: 0 0 0 3px rgba(16, 185, 129, .1);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--transition-slower: .5s cubic-bezier(.4, 0, .2, 1);--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--z-auto: auto;--z-0: 0;--z-10: 10;--z-20: 20;--z-30: 30;--z-40: 40;--z-50: 50;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-toast: 1080;--z-loading: 1090;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--container-sm: 100%;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1536px;--touch-target-min: 44px;--touch-target-comfortable: 48px;--touch-target-spacious: 56px;--focus-ring-width: 2px;--focus-ring-offset: 2px;--focus-ring-color: var(--color-primary-500);--contrast-ratio-min: 4.5;--contrast-ratio-large: 3;--contrast-ratio-aaa: 7;--animation-fast: .2s;--animation-normal: .3s;--animation-slow: .5s;--motion-safe: 1;--motion-duration: var(--animation-normal)}@custom-media --sm (min-width: 640px);@custom-media --md (min-width: 768px);@custom-media --lg (min-width: 1024px);@custom-media --xl (min-width: 1280px);@custom-media --2xl (min-width: 1536px);@media (prefers-color-scheme: dark){:root{--color-background: var(--color-gray-900);--color-surface: var(--color-gray-800);--color-text: var(--color-gray-100);--color-text-secondary: var(--color-gray-400)}}@media (prefers-reduced-motion: reduce){:root{--motion-safe: 0;--motion-duration: 0ms;--transition-fast: 0ms;--transition-base: 0ms;--transition-slow: 0ms;--animation-fast: 0ms;--animation-normal: 0ms;--animation-slow: 0ms}}@media (prefers-contrast: high){:root{--border-width-1: 2px;--focus-ring-width: 3px}}--color-role-god: #dc2626; --color-role-god-light: #fca5a5; --color-role-god-dark: #991b1b; --color-role-superadmin: #ea580c; --color-role-superadmin-light: #fed7aa; --color-role-superadmin-dark: #c2410c; --color-role-admin: #d97706; --color-role-admin-light: #fde68a; --color-role-admin-dark: #92400e; --color-role-intervenant: #0891b2; --color-role-intervenant-light: #a5f3fc; --color-role-intervenant-dark: #0e7490; --color-role-user: #059669; --color-role-user-light: #a7f3d0; --color-role-user-dark: #065f46; --color-role-public: #6b7280; --color-role-public-light: #d1d5db; --color-role-public-dark: #374151; --permission-granted: #10b981; --permission-denied: #ef4444; --permission-partial: #f59e0b; --permission-pending: #8b5cf6; --permission-loading: #6b7280; --permission-granted-bg: #d1fae5; --permission-denied-bg: #fee2e2; --permission-partial-bg: #fef3c7; --permission-pending-bg: #ede9fe; --permission-loading-bg: #f3f4f6; --brick-xs: 1rem; --brick-sm: 1.5rem; --brick-md: 2rem; --brick-lg: 3rem; --brick-xl: 4rem; --brick-inactive: var(--color-gray-400); --brick-learning: var(--color-primary-400); --brick-adapted: var(--color-success-500); --brick-attention: var(--color-warning-500); --brick-error: var(--color-error-500); --brick-hover-scale: 1.05; --brick-active-scale: .98; --brick-transition: .2s ease-out; --brick-cognitive-delay: .3s; --brick-adaptation-duration: .5s; --space-0-25: .0625rem; --space-0-75: .1875rem; --space-1-25: .3125rem; --space-1-75: .4375rem; --space-2-25: .5625rem; --space-2-75: .6875rem; --space-4-5: 1.125rem; --space-5-5: 1.375rem; --space-6-5: 1.625rem; --space-7-5: 1.875rem; --space-8-5: 2.125rem; --space-9-5: 2.375rem; --space-10-5: 2.625rem; --space-11-5: 2.875rem; --space-13: 3.25rem; --space-15: 3.75rem; --space-18: 4.5rem; --space-22: 5.5rem; --space-26: 6.5rem; --space-30: 7.5rem; --space-34: 8.5rem; --space-38: 9.5rem; --space-42: 10.5rem; --space-46: 11.5rem; --space-50: 12.5rem; --form-input-bg: var(--color-white); --form-input-border: var(--color-gray-300); --form-input-border-focus: var(--color-primary-500); --form-input-border-error: var(--color-error-500); --form-input-text: var(--color-gray-800); --form-input-placeholder: var(--color-gray-400); --form-input-disabled-bg: var(--color-gray-100); --form-input-disabled-border: var(--color-gray-200); --form-input-disabled-text: var(--color-gray-400); --btn-primary-bg: var(--color-primary-500); --btn-primary-hover: var(--color-primary-600); --btn-primary-active: var(--color-primary-700); --btn-secondary-bg: var(--color-gray-500); --btn-secondary-hover: var(--color-gray-600); --btn-secondary-active: var(--color-gray-700); --btn-god: var(--color-role-god); --btn-admin: var(--color-role-admin); --btn-disabled-bg: var(--color-gray-300); --btn-disabled-text: var(--color-gray-500); --card-bg: var(--color-white); --card-border: var(--color-gray-200); --card-hover-border: var(--color-gray-300); --card-shadow: var(--shadow-sm); --card-hover-shadow: var(--shadow-base); --card-header-bg: var(--color-gray-50); --card-header-border: var(--color-gray-200); --nav-link-text: var(--color-gray-700); --nav-link-hover: var(--color-primary-500); --nav-link-active: var(--color-primary-600); --status-pending: #f59e0b; --status-confirmed: #10b981; --status-completed: #059669; --status-cancelled: #ef4444; --status-rescheduled: #8b5cf6; --system-online: #10b981; --system-warning: #f59e0b; --system-offline: #ef4444; --system-maintenance: #6b7280; --urgency-low: #6b7280; --urgency-medium: #f59e0b; --urgency-high: #ef4444; --urgency-critical: #dc2626; --available: #10b981; --busy: #f59e0b; --unavailable: #ef4444; --unknown: #6b7280; --quality-excellent: #059669; --quality-good: #10b981; --quality-fair: #f59e0b; --quality-poor: #ef4444; --attention-subtle: var(--color-gray-400); --attention-normal: var(--color-gray-600); --attention-elevated: var(--color-primary-500); --attention-high: var(--color-warning-500); --attention-urgent: var(--color-error-500); --familiarity-new: var(--color-primary-400); --familiarity-learning: var(--color-warning-400); --familiarity-known: var(--color-success-400); --familiarity-expert: var(--color-success-600); --cognitive-minimal: #f9fafb; --cognitive-light: #f3f4f6; --cognitive-moderate: #e5e7eb; --cognitive-heavy: #d1d5db; --cognitive-overload: #9ca3af; --adaptation-analyzing: var(--color-primary-300); --adaptation-learning: var(--color-warning-300); --adaptation-adapting: var(--color-success-300); --adaptation-optimized: var(--color-success-500); --behavior-positive: var(--color-success-400); --behavior-neutral: var(--color-gray-400); --behavior-negative: var(--color-error-400); --behavior-encouraging: var(--color-primary-400); --behavior-corrective: var(--color-warning-400); --intelligence-passive: var(--color-gray-300); --intelligence-active: var(--color-primary-400); --intelligence-predictive: var(--color-success-400); --intelligence-adaptive: var(--color-warning-400); --focus-ring-width-thin: 1px; --focus-ring-width-standard: 2px; --focus-ring-width-thick: 3px; --focus-ring-width-extra: 4px; --focus-ring-offset-tight: 1px; --focus-ring-offset-standard: 2px; --focus-ring-offset-generous: 3px; --focus-ring-offset-spacious: 4px; --hc-border-width: 2px; --hc-outline-width: 3px; --hc-text-shadow: 1px 1px 1px rgba(0,0,0,.5); --motion-reduced-duration: .01ms; --motion-standard-duration: .2s; --motion-enhanced-duration: .4s; --touch-xs: 36px; --touch-sm: 40px; --touch-md: 44px; --touch-lg: 48px; --touch-xl: 56px; --sr-only-position: absolute; --sr-only-size: 1px; --micro-instant: 50ms; --micro-quick: .1s; --micro-snappy: .15s; --micro-smooth: .2s; --micro-flowing: .3s; --ease-bounce: cubic-bezier(.68, -.55, .265, 1.55); --ease-smooth: cubic-bezier(.25, .46, .45, .94); --ease-swift: cubic-bezier(.55, .085, .68, .53); --ease-gentle: cubic-bezier(.25, .1, .25, 1); --anim-fade-in: var(--micro-smooth) var(--ease-gentle); --anim-slide-up: var(--micro-flowing) var(--ease-smooth); --anim-scale-up: var(--micro-snappy) var(--ease-bounce); --anim-rotate: var(--micro-flowing) var(--ease-smooth); --anim-cognitive: var(--micro-flowing) var(--ease-gentle); --anim-attention: var(--micro-quick) var(--ease-swift); --context-church-primary: #1d4ed8; --context-church-secondary: #7c3aed; --context-church-accent: #f59e0b; --context-monastery-primary: #059669; --context-monastery-secondary: #92400e; --context-monastery-accent: #f3f4f6; --context-pilgrimage-primary: #dc2626; --context-pilgrimage-secondary: #ea580c; --context-pilgrimage-accent: #fbbf24; --context-retreat-primary: #6b7280; --context-retreat-secondary: #10b981; --context-retreat-accent: #e0e7ff; --context-cathedral-primary: #7c2d12; --context-cathedral-secondary: #dc2626; --context-cathedral-accent: #fbbf24; --context-chapel-primary: #0891b2; --context-chapel-secondary: #059669; --context-chapel-accent: #f3f4f6; --event-mass-color: var(--context-church-primary); --event-confession-color: var(--context-cathedral-primary); --event-wedding-color: var(--context-pilgrimage-accent); --event-funeral-color: var(--context-retreat-primary); --event-baptism-color: var(--context-chapel-primary); --event-retreat-color: var(--context-retreat-secondary); --widget-primary: #10b981; --widget-primary-dark: #059669; --widget-primary-light: #d1fae5; --widget-secondary: #047857; --color-widget-primary-50: #ecfdf5; --color-widget-primary-100: #d1fae5; --color-widget-primary-200: #a7f3d0; --color-widget-primary-500: #10b981; --color-widget-primary-600: #059669; --color-widget-primary-700: #047857; --widget-surface: #ffffff; --widget-surface-elevated: #f9fafb; --widget-border: #e5e7eb; --widget-text: #111827; --widget-text-secondary: #6b7280; *, *::before, *::after {box-sizing:border-box}html{font-size:16px;line-height:var(--line-height-normal);font-family:var(--font-primary);color:var(--color-text);background-color:var(--color-background)}body{margin:0;padding:0;min-height:100vh;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-4xl{font-size:var(--font-size-4xl)}.font-light{font-weight:var(--font-weight-light)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--color-text)}.text-secondary{color:var(--color-text-secondary)}.text-disabled{color:var(--color-text-disabled)}.text-success{color:var(--color-success-600)}.text-warning{color:var(--color-warning-600)}.text-error{color:var(--color-error-600)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border:var(--border-width-1) solid transparent;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;line-height:var(--line-height-tight);text-decoration:none;cursor:pointer;transition:all var(--transition-base);user-select:none;white-space:nowrap;min-height:var(--touch-target-min);min-width:var(--touch-target-min)}.btn:focus{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.btn-primary{background-color:var(--color-primary-500);color:var(--color-white);border-color:var(--color-primary-500)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-600);border-color:var(--color-primary-600)}.btn-primary:active:not(:disabled){background-color:var(--color-primary-700);border-color:var(--color-primary-700)}.btn-secondary{background-color:var(--color-white);color:var(--color-gray-700);border-color:var(--color-gray-300)}.btn-secondary:hover:not(:disabled){background-color:var(--color-gray-50);border-color:var(--color-gray-400)}.btn-outline{background-color:transparent;color:var(--color-primary-600);border-color:var(--color-primary-500)}.btn-outline:hover:not(:disabled){background-color:var(--color-primary-50);border-color:var(--color-primary-600)}.btn-ghost{background-color:transparent;color:var(--color-gray-700);border-color:transparent}.btn-ghost:hover:not(:disabled){background-color:var(--color-gray-100)}.btn-success{background-color:var(--color-success-500);color:var(--color-white);border-color:var(--color-success-500)}.btn-success:hover:not(:disabled){background-color:var(--color-success-600)}.btn-warning{background-color:var(--color-warning-500);color:var(--color-white);border-color:var(--color-warning-500)}.btn-warning:hover:not(:disabled){background-color:var(--color-warning-600)}.btn-error{background-color:var(--color-error-500);color:var(--color-white);border-color:var(--color-error-500)}.btn-error:hover:not(:disabled){background-color:var(--color-error-600)}.btn-xs{padding:var(--space-1-5) var(--space-3);font-size:var(--font-size-xs);min-height:var(--space-8)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);min-height:var(--space-10)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-lg);min-height:var(--space-14)}.btn-xl{padding:var(--space-5) var(--space-10);font-size:var(--font-size-xl);min-height:var(--space-16)}.btn-full{width:100%}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text);margin-bottom:var(--space-2);line-height:var(--line-height-tight)}.form-label.required:after{content:" *";color:var(--color-error-500)}.form-input,.form-textarea,.form-select{display:block;width:100%;padding:var(--space-3);font-size:var(--font-size-sm);font-family:inherit;color:var(--color-text);background-color:var(--color-white);border:var(--border-width-1) solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base);min-height:var(--touch-target-min)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}.form-input:invalid,.form-textarea:invalid,.form-select:invalid{border-color:var(--color-error-500);box-shadow:var(--shadow-focus-error)}.form-input:disabled,.form-textarea:disabled,.form-select:disabled{background-color:var(--color-gray-100);color:var(--color-text-disabled);cursor:not-allowed}.form-textarea{min-height:var(--space-24);resize:vertical}.form-select{cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236B7280'%3E%3Cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd'/%3E%3C/svg%3E");background-position:right var(--space-3) center;background-repeat:no-repeat;background-size:1.25em 1.25em;padding-right:var(--space-10)}.form-checkbox,.form-radio{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:var(--space-5);height:var(--space-5);border:var(--border-width-2) solid var(--color-border);background-color:var(--color-white);cursor:pointer;transition:all var(--transition-base)}.form-checkbox{border-radius:var(--radius-base)}.form-radio{border-radius:var(--radius-full)}.form-checkbox:checked,.form-radio:checked{background-color:var(--color-primary-500);border-color:var(--color-primary-500)}.form-checkbox:checked:before{content:"✓";color:var(--color-white);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.form-radio:checked:before{content:"";width:var(--space-2);height:var(--space-2);border-radius:var(--radius-full);background-color:var(--color-white)}.form-checkbox:focus,.form-radio:focus{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.checkbox-label,.radio-label{display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer;font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.form-error{display:block;font-size:var(--font-size-xs);color:var(--color-error-600);margin-top:var(--space-1)}.form-help{display:block;font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-top:var(--space-1)}.alert{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);border-width:var(--border-width-1);border-style:solid;font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.alert-success{background-color:var(--color-success-50);border-color:var(--color-success-200);color:var(--color-success-800)}.alert-warning{background-color:var(--color-warning-50);border-color:var(--color-warning-200);color:var(--color-warning-800)}.alert-error{background-color:var(--color-error-50);border-color:var(--color-error-200);color:var(--color-error-800)}.alert-info{background-color:var(--color-primary-50);border-color:var(--color-primary-200);color:var(--color-primary-800)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2-5);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-full);white-space:nowrap}.badge-primary{background-color:var(--color-primary-100);color:var(--color-primary-800)}.badge-success{background-color:var(--color-success-100);color:var(--color-success-800)}.badge-warning{background-color:var(--color-warning-100);color:var(--color-warning-800)}.badge-error{background-color:var(--color-error-100);color:var(--color-error-800)}.badge-gray{background-color:var(--color-gray-100);color:var(--color-gray-800)}.spinner{display:inline-block;width:var(--space-5);height:var(--space-5);border:var(--border-width-2) solid var(--color-gray-200);border-top-color:var(--color-primary-500);border-radius:var(--radius-full);animation:spin var(--animation-normal) linear infinite}.spinner-sm{width:var(--space-4);height:var(--space-4)}.spinner-lg{width:var(--space-8);height:var(--space-8);border-width:var(--border-width-4)}@media (prefers-reduced-motion: reduce){.spinner{animation:none;border-top-color:var(--color-gray-200);border-right-color:var(--color-primary-500)}}.divider{height:var(--border-width-1);background-color:var(--color-border);border:none;margin:var(--space-4) 0}.divider-vertical{width:var(--border-width-1);height:auto;margin:0 var(--space-4)}.card{background-color:var(--color-surface);border:var(--border-width-1) solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow var(--transition-base)}.card:hover{box-shadow:var(--shadow-md)}.card-header{padding:var(--space-6);border-bottom:var(--border-width-1) solid var(--color-border)}.card-body{padding:var(--space-6)}.card-footer{padding:var(--space-6);border-top:var(--border-width-1) solid var(--color-border);background-color:var(--color-gray-50)}.container{width:100%;margin:0 auto;padding:0 var(--space-4)}@media (min-width: 640px){.container{max-width:var(--container-sm);padding:0 var(--space-6)}}@media (min-width: 768px){.container{max-width:var(--container-md)}}@media (min-width: 1024px){.container{max-width:var(--container-lg)}}@media (min-width: 1280px){.container{max-width:var(--container-xl)}}@media (min-width: 1536px){.container{max-width:var(--container-2xl)}}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.p-0{padding:var(--space-0)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.m-0{margin:var(--space-0)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.mx-auto{margin-left:auto;margin-right:auto}.hidden{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (min-width: 640px){.sm\:hidden{display:none}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:grid{display:grid}}@media (min-width: 768px){.md\:hidden{display:none}.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}}@media (min-width: 1024px){.lg\:hidden{display:none}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:grid{display:grid}}@media (prefers-contrast: high){.btn,.form-input,.form-textarea,.form-select,.card{border-width:var(--border-width-2)}}@supports selector(:focus-visible){.btn:focus{outline:none}.btn:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}}:root{--color-primary: var(--color-primary-500);--color-success: var(--color-success-500);--color-warning: var(--color-warning-500);--color-text: var(--color-gray-800);--color-background: var(--color-gray-50);--color-white: var(--color-white);--color-gray-light: var(--color-gray-100);--color-gray-medium: var(--color-gray-400);--color-gray-dark: var(--color-gray-500)}.app-header{background:linear-gradient(135deg,var(--color-primary-500),var(--color-primary-600));color:var(--color-white)}.app-footer{background-color:var(--color-gray-800);color:var(--color-gray-300)}.booking-widget-embed{border:none;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(var(--space-4))}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn var(--animation-normal) var(--ease-out)}::-webkit-scrollbar{width:var(--space-2)}::-webkit-scrollbar-track{background:var(--color-gray-100)}::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.touch-target,button,.btn,a[role=button],input[type=submit],input[type=button],.card.clickable,.menu-item{min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;position:relative}.touch-target:active,button:active,.btn:active,.card.clickable:active{transform:scale(.98);transition:transform .1s ease-out}.touch-spacing{margin:8px;padding:8px}@media (max-width: 575.98px){.container{padding:0 16px}.card{margin:8px 0;border-radius:12px}.modal{margin:16px;border-radius:16px}.btn{padding:12px 16px;font-size:16px}.grid{grid-template-columns:1fr!important;gap:16px}.form-control,.input,.select{width:100%;font-size:16px}.nav-horizontal{flex-direction:column}.nav-horizontal .nav-item{width:100%;border-bottom:1px solid var(--border-color, #e5e7eb)}}@media (min-width: 576px) and (max-width: 767.98px){.container{padding:0 24px}.grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.card{border-radius:8px}}@media (min-width: 768px) and (max-width: 991.98px){.grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.sidebar{width:280px}.main-content{margin-left:280px}}@media (min-width: 992px){.grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.sidebar{width:320px}.main-content{margin-left:320px}}.mobile-nav{display:none;position:fixed;top:0;left:0;right:0;background:var(--bg-primary, #ffffff);border-bottom:1px solid var(--border-color, #e5e7eb);z-index:1000;padding:12px 16px}.mobile-nav-toggle{background:none;border:none;font-size:24px;cursor:pointer;padding:8px;border-radius:8px;transition:background-color .2s}.mobile-nav-toggle:hover,.mobile-nav-toggle:focus{background-color:var(--bg-secondary, #f8fafc)}.mobile-nav-menu{position:fixed;top:60px;left:-100%;width:280px;height:calc(100vh - 60px);background:var(--bg-primary, #ffffff);border-right:1px solid var(--border-color, #e5e7eb);transition:left .3s ease-out;overflow-y:auto;z-index:999}.mobile-nav-menu.open{left:0}.mobile-nav-overlay{position:fixed;inset:60px 0 0;background:#00000080;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;z-index:998}.mobile-nav-overlay.visible{opacity:1;visibility:visible}@media (max-width: 767.98px){.mobile-nav{display:flex;justify-content:space-between;align-items:center}.desktop-nav{display:none!important}.main-content{margin-left:0;margin-top:60px}.sidebar{display:none}}.swipeable{position:relative;overflow:hidden;touch-action:pan-x}.swipeable:before{content:"";position:absolute;top:50%;left:-20px;width:40px;height:2px;background:var(--primary-color, #059669);border-radius:1px;transform:translateY(-50%);opacity:0;transition:opacity .2s,left .2s}.swipeable.swiping:before{opacity:1;left:10px}.pull-refresh{position:relative;overflow:hidden;touch-action:pan-y}.pull-refresh-indicator{position:absolute;top:-60px;left:50%;transform:translate(-50%);width:40px;height:40px;border-radius:50%;background:var(--primary-color, #059669);display:flex;align-items:center;justify-content:center;color:#fff;transition:top .2s}.pull-refresh.pulling .pull-refresh-indicator{top:20px}.long-pressable{position:relative;user-select:none}.long-pressable:after{content:"";position:absolute;inset:0;background:var(--primary-color, #059669);opacity:0;border-radius:inherit;transition:opacity .2s;pointer-events:none}.long-pressable.pressing:after{opacity:.1}.form-mobile{padding:16px}.form-mobile .form-group{margin-bottom:24px}.form-mobile .form-label{font-size:14px;font-weight:600;margin-bottom:8px;color:var(--text-primary, #1f2937)}.form-mobile .form-control{width:100%;min-height:44px;padding:12px 16px;font-size:16px;border:2px solid var(--border-color, #e5e7eb);border-radius:12px;background:var(--bg-primary, #ffffff);transition:border-color .2s,box-shadow .2s}.form-mobile .form-control:focus{outline:none;border-color:var(--primary-color, #059669);box-shadow:0 0 0 4px #0596691a}.form-mobile .form-control:invalid{border-color:var(--error-color, #ef4444)}.form-mobile .form-error{color:var(--error-color, #ef4444);font-size:14px;margin-top:4px}.select-mobile{appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:20px;padding-right:44px}.checkbox-mobile,.radio-mobile{position:relative;display:flex;align-items:center;cursor:pointer;min-height:44px;padding:8px 0}.checkbox-mobile input,.radio-mobile input{position:absolute;opacity:0;width:0;height:0}.checkbox-mobile .checkmark,.radio-mobile .checkmark{width:24px;height:24px;border:2px solid var(--border-color, #e5e7eb);border-radius:6px;margin-right:12px;display:flex;align-items:center;justify-content:center;transition:all .2s}.radio-mobile .checkmark{border-radius:50%}.checkbox-mobile input:checked+.checkmark,.radio-mobile input:checked+.checkmark{background:var(--primary-color, #059669);border-color:var(--primary-color, #059669)}.checkbox-mobile input:checked+.checkmark:after{content:"✓";color:#fff;font-weight:700;font-size:14px}.radio-mobile input:checked+.checkmark:after{content:"";width:8px;height:8px;border-radius:50%;background:#fff}.table-mobile{width:100%;border-collapse:collapse}@media (max-width: 767.98px){.table-mobile{border:0}.table-mobile thead{display:none}.table-mobile tr{display:block;border:1px solid var(--border-color, #e5e7eb);border-radius:12px;margin-bottom:16px;padding:16px;background:var(--bg-primary, #ffffff)}.table-mobile td{display:block;text-align:left;border:none;position:relative;padding:8px 0 8px 40%}.table-mobile td:before{content:attr(data-label);position:absolute;left:0;top:8px;font-weight:600;color:var(--text-secondary, #6b7280);font-size:14px}}.card-mobile{background:var(--bg-primary, #ffffff);border-radius:16px;padding:20px;margin:12px 0;box-shadow:0 2px 8px #0000000f;border:1px solid var(--border-color, #e5e7eb);transition:transform .2s,box-shadow .2s}.card-mobile.clickable{cursor:pointer}.card-mobile.clickable:active{transform:translateY(1px);box-shadow:0 1px 4px #0000001a}.list-mobile{background:var(--bg-primary, #ffffff);border-radius:16px;overflow:hidden;margin:12px 0;border:1px solid var(--border-color, #e5e7eb)}.list-mobile-item{padding:16px 20px;border-bottom:1px solid var(--border-color, #e5e7eb);display:flex;align-items:center;min-height:44px;transition:background-color .2s}.list-mobile-item:last-child{border-bottom:none}.list-mobile-item.clickable{cursor:pointer}.list-mobile-item.clickable:active{background:var(--bg-secondary, #f8fafc)}.list-mobile-item-icon{width:24px;height:24px;margin-right:16px;color:var(--text-secondary, #6b7280)}.list-mobile-item-content{flex:1}.list-mobile-item-title{font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:4px}.list-mobile-item-subtitle{color:var(--text-secondary, #6b7280);font-size:14px}.list-mobile-item-action{color:var(--text-tertiary, #9ca3af);margin-left:12px}@media (max-width: 767.98px){.modal{position:fixed;inset:0;margin:0;border-radius:0;max-width:none;max-height:none;display:flex;flex-direction:column}.modal-header{padding:16px 20px;border-bottom:1px solid var(--border-color, #e5e7eb);flex-shrink:0}.modal-body{flex:1;padding:20px;overflow-y:auto}.modal-footer{padding:16px 20px;border-top:1px solid var(--border-color, #e5e7eb);flex-shrink:0}.modal.slide-up{transform:translateY(100%);transition:transform .3s ease-out}.modal.slide-up.open{transform:translateY(0)}}.modal-bottom-sheet{position:fixed;bottom:0;left:0;right:0;max-height:80vh;transform:translateY(100%);transition:transform .3s ease-out;border-radius:20px 20px 0 0;background:var(--bg-primary, #ffffff);box-shadow:0 -4px 20px #00000026}.modal-bottom-sheet.open{transform:translateY(0)}.modal-bottom-sheet-handle{width:40px;height:4px;background:var(--border-color, #e5e7eb);border-radius:2px;margin:12px auto 0}.loading-mobile{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.loading-mobile-spinner{width:40px;height:40px;border:3px solid var(--border-color, #e5e7eb);border-top:3px solid var(--primary-color, #059669);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.loading-mobile-text{color:var(--text-secondary, #6b7280);font-size:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,var(--bg-secondary, #f8fafc) 25%,var(--border-color, #e5e7eb) 50%,var(--bg-secondary, #f8fafc) 75%);background-size:200% 100%;animation:skeleton 1.5s infinite;border-radius:8px}@keyframes skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:16px;margin:8px 0}.skeleton-title{height:20px;width:60%;margin:8px 0}.skeleton-button{height:44px;width:120px;border-radius:12px}@media (max-width: 767.98px){*:focus{outline:3px solid var(--primary-color, #059669);outline-offset:2px}*:focus:not(:focus-visible){outline:none}}.sr-only-mobile{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (prefers-contrast: high){.card-mobile,.list-mobile,.form-control{border:2px solid var(--text-primary, #1f2937)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width: 767.98px){.hidden-mobile{display:none!important}}.visible-mobile{display:none!important}@media (max-width: 767.98px){.visible-mobile{display:block!important}.visible-mobile.flex{display:flex!important}.visible-mobile.grid{display:grid!important}}.p-mobile{padding:16px}.px-mobile{padding-left:16px;padding-right:16px}.py-mobile{padding-top:16px;padding-bottom:16px}.m-mobile{margin:16px}.mx-mobile{margin-left:16px;margin-right:16px}.my-mobile{margin-top:16px;margin-bottom:16px}
