:root{--durion-blue-800: #1c2e48;--durion-blue-700: #2b4c78;--durion-blue-600: #355d92;--durion-blue-500: #4d76b2;--durion-blue-400: #668fc2;--durion-blue-300: #7fa4d1;--durion-blue-200: #aac4e4;--durion-blue-100: #d3e3f6;--durion-blue-50: #f4f8fe;--durion-graphite-800: #333842;--durion-graphite-700: #444a55;--durion-graphite-600: #5a616e;--durion-graphite-500: #727986;--durion-graphite-200: #d7d9dd;--durion-graphite-100: #e7e8eb;--durion-teal-600: #158f83;--durion-teal-500: #1fa497;--durion-teal-400: #2bbbad;--durion-teal-300: #55d7cc;--durion-teal-200: #a4e9e1;--durion-teal-100: #d7f3f0;--durion-grey-900: #121213;--durion-grey-800: #1f2022;--durion-grey-700: #3a3a3e;--durion-grey-500: #707078;--durion-grey-100: #f2f2f4;--functional-error-red: #ba1a1a;--functional-warning: #e6a540;--functional-info-blue: #355d92;--functional-success: #2e7d32;--brand-primary: var(--durion-blue-700);--brand-primary-soft: var(--durion-blue-50);--brand-secondary: var(--durion-graphite-700);--brand-accent: var(--durion-teal-400);--brand-background: var(--durion-grey-100);--brand-surface: #ffffff;--font-primary: "Michelin Unit Titling", "Noto Sans", sans-serif;--font-body: "Noto Sans", sans-serif;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--transition-fast: .15s ease;--transition-base: .25s ease}:root,[data-theme=light]{--themeBackground: var(--durion-grey-100);--navBackground: var(--durion-blue-800);--menuBackground: var(--durion-blue-700);--subMenuBackground: var(--durion-blue-600);--cardBackground: var(--brand-surface);--currentTextColor: var(--durion-grey-900);--contrastTextColor: #ffffff;--primaryA400: var(--brand-primary);--primaryA300: var(--durion-blue-500);--primaryA100: var(--durion-blue-100);--primary50: var(--durion-blue-50);--accentA400: var(--durion-teal-600);--accentA700: #006a6a;--accentA100: var(--durion-teal-100);--trackColor: var(--durion-graphite-200);--handleColor: var(--durion-graphite-600);--border-color: var(--durion-graphite-200);--input-background: #ffffff;--input-border: var(--durion-graphite-200);--input-focus-border: var(--durion-blue-500);--input-placeholder-color: var(--handleColor);--shadow-card: 0 2px 8px rgba(0, 0, 0, .08);--shadow-nav: 2px 0 8px rgba(0, 0, 0, .12);--chat-bubble-user-bg: var(--durion-blue-100);--chat-bubble-system-bg: var(--durion-graphite-100)}[data-theme=dark]{--themeBackground: var(--durion-grey-800);--navBackground: var(--durion-grey-900);--menuBackground: #16181c;--subMenuBackground: var(--durion-graphite-800);--cardBackground: var(--durion-grey-700);--currentTextColor: #e8e9eb;--contrastTextColor: #ffffff;--primaryA400: var(--durion-blue-400);--primaryA300: var(--durion-blue-300);--primaryA100: var(--durion-blue-700);--primary50: var(--durion-blue-800);--accentA400: var(--durion-teal-300);--accentA700: var(--durion-teal-400);--accentA100: var(--durion-teal-600);--trackColor: var(--durion-grey-700);--handleColor: var(--durion-graphite-200);--border-color: var(--durion-graphite-700);--input-background: var(--durion-graphite-800);--input-border: var(--durion-graphite-600);--input-focus-border: var(--durion-blue-400);--input-placeholder-color: var(--handleColor);--shadow-card: 0 2px 8px rgba(0, 0, 0, .4);--shadow-nav: 2px 0 8px rgba(0, 0, 0, .5);--chat-bubble-user-bg: var(--durion-blue-700);--chat-bubble-system-bg: var(--durion-graphite-700)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;width:100%;overflow:hidden;background-color:var(--themeBackground);color:var(--currentTextColor);font-family:var(--font-body);font-size:16px;line-height:1.5;transition:background-color var(--transition-base),color var(--transition-base)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--trackColor)}::-webkit-scrollbar-thumb{background:var(--handleColor);border-radius:3px}.mic-elevation-1{box-shadow:0 1px 3px #0000001f}.mic-elevation-2{box-shadow:var(--shadow-card)}.mic-elevation-3{box-shadow:0 4px 16px #00000029}.mic-elevation-4{box-shadow:0 8px 32px #0003}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:.875rem;border-left:4px solid transparent}.alert-info{background:var(--primary50);border-color:var(--functional-info-blue);color:var(--functional-info-blue)}.alert-success{background:#edfaef;border-color:var(--functional-success);color:#2e7d3a}.alert-warning{background:#fef8ec;border-color:var(--functional-warning);color:#8a5e0a}.alert-error{background:#fbeaea;border-color:var(--functional-error-red);color:var(--functional-error-red)}.alert-critical{background:var(--functional-error-red);border-color:#8b2020;color:#fff}.alert-soft{background:var(--cardBackground);border-color:var(--border-color);color:var(--currentTextColor)}.mic-status{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:999px;font-size:.75rem;font-weight:600}.mic-status.primary{background:var(--primaryA100);color:var(--brand-primary)}.mic-status.valid{background:#edfaef;color:#2e7d3a}.mic-status.warn{background:#fef8ec;color:#8a5e0a}.mic-status.error{background:#fbeaea;color:var(--functional-error-red)}input,textarea,select{background:var(--input-background);color:var(--currentTextColor);border:1px solid var(--input-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:.9375rem;transition:border-color var(--transition-fast);outline:none;width:100%}input:focus,textarea:focus,select:focus{border-color:var(--input-focus-border);box-shadow:0 0 0 3px color-mix(in srgb,var(--input-focus-border) 20%,transparent)}input::placeholder,textarea::placeholder{color:var(--input-placeholder-color);opacity:1}button{cursor:pointer;font-family:var(--font-body)}app-estimate-detail-page .section-overline{margin:0 0 var(--space-3, .75rem);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--handleColor)}app-estimate-detail-page .hint-text{font-size:.875rem;color:var(--handleColor);margin:0}app-estimate-detail-page .crm-ref-block,app-workorder-detail-page .crm-ref-block{background:var(--cardBackground);padding:var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-4)}app-estimate-detail-page .crm-ref-grid,app-workorder-detail-page .crm-ref-grid{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-2) var(--space-4);align-items:baseline}app-estimate-detail-page .crm-ref-label{font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--handleColor);white-space:nowrap}app-workorder-detail-page .crm-ref-label{font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--currentTextColor);opacity:.55;white-space:nowrap}app-estimate-detail-page .crm-ref-value,app-workorder-detail-page .crm-ref-value{font-family:var(--font-mono, monospace);font-size:.875rem;color:var(--color-brand-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:28ch}app-estimate-detail-page .crm-ref-value--empty{font-family:inherit;color:var(--handleColor);font-style:italic}app-workorder-detail-page .crm-ref-value--empty{font-family:inherit;color:var(--currentTextColor);opacity:.45;font-style:italic}app-estimate-detail-page .crm-ref-contacts,app-workorder-detail-page .crm-ref-contacts{display:inline-flex;flex-wrap:wrap;gap:var(--space-2)}app-estimate-detail-page .crm-ref-badge{display:inline-flex;align-items:center;font-family:var(--font-mono, monospace);font-size:.75rem;background:var(--brand-primary-soft, var(--primaryA100));color:var(--color-brand-primary);padding:.125rem .5rem;border-radius:9999px;overflow:hidden;text-overflow:ellipsis;max-width:22ch;white-space:nowrap}app-workorder-detail-page .crm-ref-badge{display:inline-flex;align-items:center;font-family:var(--font-mono, monospace);font-size:.7rem;background:var(--brand-primary-soft, var(--primaryA100));color:var(--color-brand-primary);padding:2px 7px;border-radius:9999px;overflow:hidden;text-overflow:ellipsis;max-width:22ch;white-space:nowrap}app-estimate-detail-page .crm-ref-block .section-overline{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--handleColor);margin:0 0 var(--space-2)}app-workorder-detail-page .section-overline{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--currentTextColor, #1f2328);opacity:.55;margin:0 0 var(--space-3)}app-workorder-detail-page .crm-ref-block .section-overline{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--currentTextColor);opacity:.55;margin:0 0 var(--space-2)}app-workorder-detail-page .hint-text{opacity:.55;font-size:.875rem;font-style:italic}app-workorder-detail-page .btn-link{background:none;border:none;cursor:pointer;padding:0;color:var(--brand-accent, #006a62);text-decoration:underline;font-size:inherit}app-workorder-detail-page .alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-3);font-size:.875rem}app-workorder-detail-page .alert--error{background:#ffebee;color:#c62828}app-workorder-detail-page .alert--warn{background:#fff8e1;color:#f57f17}app-workorder-detail-page .alert--success{background:var(--color-success-surface, #dcfce7);color:var(--color-success, #16a34a);border:1px solid var(--color-success, #16a34a);border-radius:var(--radius-sm, 4px);padding:.75rem 1rem;font-size:.875rem}app-workorder-detail-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:opacity .15s,background .15s}app-workorder-detail-page .btn--accent{background:linear-gradient(135deg,#006a62,#00897b);color:#fff;border:none}app-workorder-detail-page .btn--accent:disabled{opacity:.5;cursor:not-allowed}app-workorder-detail-page .btn--ghost{background:transparent;border:1px solid rgba(var(--outline-variant-rgb, 130, 130, 130),.35);color:var(--currentTextColor, #1f2328)}app-workorder-detail-page .btn--full{width:100%}app-workorder-detail-page .tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;border-radius:9999px;font-size:.65rem;font-weight:700;padding:0 .3rem;margin-left:.4rem;line-height:1}app-workorder-detail-page .tab-badge--warning{background:var(--color-warning, #f59e0b);color:var(--color-on-warning, #1f2328)}app-workorder-detail-page .inline-error{font-size:.8rem;color:var(--color-error, #dc2626);margin-left:.5rem}app-workorder-detail-page .checklist-panel{margin:1.25rem 1.5rem;padding:1rem 1.25rem;border-radius:var(--radius-md, 8px);background:var(--color-surface-container-low, #f8fafc);border:1px solid var(--color-outline-variant, #d0d7de)}app-workorder-detail-page .checklist-panel__title{font-size:.875rem;font-weight:600;color:var(--color-on-surface, #1f2328);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.04em}app-workorder-detail-page .checklist-item{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem 0;font-size:.875rem;border-bottom:1px solid var(--color-outline-variant, #d0d7de)}app-workorder-detail-page .checklist-item:last-child{border-bottom:none}app-workorder-detail-page .checklist-item__icon{flex-shrink:0;font-weight:700;width:1.25rem;text-align:center}app-workorder-detail-page .checklist-item--ok .checklist-item__icon{color:var(--color-success, #16a34a)}app-workorder-detail-page .checklist-item--blocking .checklist-item__icon{color:var(--color-error, #dc2626)}app-workorder-detail-page .checklist-item--warning .checklist-item__icon{color:var(--color-warning, #f59e0b)}app-workorder-detail-page .checklist-item__label{flex:1}app-workorder-detail-page .form-field{margin-bottom:1rem}app-workorder-detail-page .form-label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.35rem;color:var(--color-on-surface, #1f2328)}app-workorder-detail-page .form-textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--color-outline-variant, #d0d7de);border-radius:var(--radius-sm, 4px);font-size:.875rem;font-family:inherit;resize:vertical;background:var(--color-surface, #ffffff);color:var(--color-on-surface, #1f2328)}app-workorder-detail-page .form-textarea:focus{outline:2px solid var(--brand-accent, #14c8b4);outline-offset:1px;border-color:var(--brand-accent, #14c8b4)}app-workorder-detail-page .required-mark{color:var(--color-error, #dc2626)}app-workorder-detail-page .failed-checks{list-style:none;padding:0;margin:.5rem 0 1rem}app-workorder-detail-page .failed-check{display:flex;align-items:flex-start;gap:.5rem;padding:.4rem 0;font-size:.875rem}app-workorder-detail-page .failed-check__icon{flex-shrink:0;font-weight:700}app-workorder-detail-page .failed-check--blocking .failed-check__icon{color:var(--color-error, #dc2626)}app-workorder-detail-page .failed-check--warning .failed-check__icon{color:var(--color-warning, #f59e0b)}app-party-detail .modal-backdrop{position:fixed;inset:0;background:#12121373;display:flex;align-items:center;justify-content:center;z-index:200;padding:var(--space-4)}app-party-detail .modal{background:var(--cardBackground, #fff);border-radius:var(--radius-lg);min-width:320px;max-width:480px;width:100%;display:flex;flex-direction:column;overflow:hidden}app-party-detail .modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);background:var(--themeBackground, #f8f9fb)}app-party-detail .modal__header h3{margin:0;font-family:var(--font-primary);font-size:1rem;font-weight:600;color:var(--currentTextColor)}app-party-detail .modal__body{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}app-party-detail .modal__footer{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-6);background:var(--themeBackground, #f8f9fb)}app-party-detail .btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-size:.9rem;font-weight:600;font-family:var(--font-body);cursor:pointer;border:none;transition:opacity var(--transition-fast),transform var(--transition-fast)}app-party-detail .btn:active:not(:disabled){transform:scale(.97)}app-party-detail .btn:disabled{opacity:.45;cursor:not-allowed}app-party-detail .btn--sm{padding:var(--space-1) var(--space-4);font-size:.82rem}app-party-detail .btn--primary{background:var(--durion-teal-400);color:#fff}app-party-detail .btn--primary:hover:not(:disabled){background:var(--durion-teal-500)}app-party-detail .btn--secondary{background:var(--primary50, var(--brand-primary-soft));color:var(--brand-primary)}app-party-detail .btn--ghost{background:transparent;color:var(--handleColor)}app-party-detail .btn--ghost:hover:not(:disabled){background:var(--themeBackground, rgba(0, 0, 0, .04))}app-party-detail .btn--icon{background:transparent;padding:var(--space-1) var(--space-2);font-size:.9rem;color:var(--handleColor)}app-party-detail .modal__close{font-size:1rem}app-party-detail .state-panel{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-6);border-radius:var(--radius-lg);text-align:center}app-party-detail .state-panel p{margin:0;color:var(--handleColor)}app-party-detail .state-panel--denied,app-party-detail .state-panel--error{background:#c84c470f}app-party-detail .state-icon{font-size:1.5rem}app-party-detail .skeleton-header{height:80px;background:linear-gradient(90deg,var(--durion-graphite-100) 25%,var(--durion-graphite-200) 50%,var(--durion-graphite-100) 75%);background-size:200% 100%;border-radius:var(--radius-md);animation:party-detail-shimmer 1.4s infinite}@keyframes party-detail-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}app-party-detail .hint-text,app-party-detail .loading-hint{font-size:.87rem;color:var(--handleColor);margin:0}app-party-detail .hint-text--warn{color:var(--functional-warning)}app-party-detail .inline-error{display:flex;align-items:center;gap:var(--space-2);font-size:.87rem;color:var(--functional-error-red);background:#c84c4714;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm)}app-party-detail .form-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}app-party-detail .sr-only,app-landing-page .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}app-create-commercial-account .state-panel{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-8);text-align:center;background:var(--cardBackground, #fff);border-radius:var(--radius-lg)}app-create-commercial-account .state-panel h2{margin:0;font-family:var(--font-primary);font-size:1.25rem;color:var(--currentTextColor)}app-create-commercial-account .state-panel p{margin:0;color:var(--handleColor)}app-create-commercial-account .state-panel--loading{color:var(--handleColor)}app-create-commercial-account .state-panel--error,app-create-commercial-account .state-panel--denied{background:#c84c470f}app-create-commercial-account .state-panel--success{background:#5bbe720f}app-create-commercial-account .state-hint{font-size:.85rem}app-create-commercial-account .state-icon{font-size:2rem;line-height:1}app-create-commercial-account .state-icon--success{color:var(--functional-success)}app-create-commercial-account .spinner{display:inline-block;width:28px;height:28px;border:3px solid var(--durion-graphite-100);border-top-color:var(--durion-teal-400);border-radius:50%;animation:create-commercial-account-spin .7s linear infinite}@keyframes create-commercial-account-spin{to{transform:rotate(360deg)}}app-invoice-payment-status-page .ips-skeleton{height:3rem;border-radius:var(--radius-sm);background:linear-gradient(90deg,color-mix(in srgb,var(--surface-container, var(--durion-surface-container, var(--brand-surface))) 92%,transparent),color-mix(in srgb,var(--color-secondary, var(--brand-secondary)) 14%,transparent),color-mix(in srgb,var(--surface-container, var(--durion-surface-container, var(--brand-surface))) 92%,transparent));background-size:220% 100%;animation:invoice-payment-status-shimmer 1.1s linear infinite}@keyframes invoice-payment-status-shimmer{0%{background-position:200% 0}to{background-position:-20% 0}}app-landing-page{display:block;height:100%;overflow-y:auto;scroll-behavior:smooth}app-landing-page .landing-footer{background:var(--durion-blue-800);padding:var(--space-8) var(--space-6)}app-landing-page .footer-inner{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}app-landing-page .footer-tagline{font-size:.9375rem;font-weight:600;color:var(--durion-blue-300);margin:0;letter-spacing:.05em;text-transform:uppercase}app-landing-page .footer-copyright{font-size:.8125rem;color:var(--durion-blue-300);margin:0}@media(max-width:600px){app-party-detail .party-meta{grid-template-columns:1fr}app-party-detail .contacts-table thead{display:none}app-party-detail .contacts-table td{display:block;padding:var(--space-2) var(--space-3)}app-party-detail .form-actions,app-create-commercial-account .form-actions{flex-direction:column;align-items:stretch}app-party-detail .btn,app-create-commercial-account .btn{width:100%}app-create-commercial-account .crm-page{padding:var(--space-4) var(--space-3)}}@media(max-width:640px){app-landing-page .landing-header-inner{padding:var(--space-2) var(--space-4)}app-landing-page .landing-brand-name{display:none}app-landing-page .landing-nav{gap:var(--space-2)}app-landing-page .landing-hero{padding:4rem var(--space-4) 3.5rem}app-landing-page .features-intro{padding:3rem var(--space-4) 2rem}app-landing-page .features-grid-section{padding:0 var(--space-4) 3rem}app-landing-page .features-grid{grid-template-columns:1fr}app-landing-page .cta-section{padding:3rem var(--space-4)}}@media(max-width:768px){app-invoice-payment-status-page .ips-history-table{min-width:32rem}}@media(max-width:900px){app-landing-page .features-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media(prefers-reduced-motion:reduce){app-landing-page{scroll-behavior:auto}app-landing-page .feature-card,app-landing-page .hero-cta-btn,app-landing-page .landing-signin-btn,app-landing-page .landing-icon-btn,app-landing-page .landing-locale-select{transition:none}app-landing-page .feature-card:hover,app-landing-page .hero-cta-btn:hover,app-landing-page .landing-signin-btn:hover{transform:none}app-invoice-payment-status-page .ips-skeleton{animation:none}}
