.nav-blocker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.nav-blocker-modal{background:var(--color-bg-primary);border-radius:8px;max-width:400px;width:90%;padding:24px;box-shadow:0 4px 20px #00000026}.nav-blocker-title{margin:0 0 12px;font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.nav-blocker-message{margin:0 0 24px;color:var(--color-text-secondary);line-height:1.5}.nav-blocker-actions{display:flex;justify-content:flex-end;gap:12px}.nav-blocker-btn{padding:8px 20px;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-secondary);color:var(--color-text-primary);font-weight:500;cursor:pointer;transition:opacity .2s ease}.nav-blocker-btn:hover{opacity:.8}.nav-blocker-btn--danger{background:var(--color-error);border-color:var(--color-error);color:#fff}.app-header{background-color:var(--color-bg-primary);border-bottom:1px solid var(--color-border);position:fixed;top:0;left:0;right:0;z-index:1000}.app-header__inner{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem}.app-header__logo{cursor:pointer;transition:opacity .2s ease-in-out;flex-shrink:0}.app-header__logo:hover{opacity:.8}.app-header__logo:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:4px}.app-header__logo img{height:40px;width:auto;display:block}@media (prefers-color-scheme: dark){.app-header__logo img{filter:invert(1)}}.app-header__logo-fallback{font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.app-header__title{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text-primary);text-align:center;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-header__menu-container{position:relative;flex-shrink:0}.app-header__dropdown{position:absolute;top:calc(100% + .5rem);right:0;background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary) 20%,transparent);min-width:180px;overflow:hidden}@media (prefers-color-scheme: dark){.app-header__dropdown{box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary) 25%,transparent)}}.app-header__dropdown-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:none;border:none;text-align:left;cursor:pointer;color:var(--color-text-primary);font-size:1rem;transition:background-color .2s ease-in-out}.app-header__dropdown-item svg{flex-shrink:0;opacity:.7}.app-header__dropdown-item:hover{background-color:var(--color-bg-secondary)}.app-header__dropdown-item:focus{outline:none;background-color:var(--color-bg-secondary)}.app-header__dropdown-item--logout{border-top:1px solid var(--color-border);margin-top:.25rem;padding-top:.75rem;color:var(--color-danger, #dc3545)}.app-header__dropdown-item--logout:hover{background-color:#dc35451a}@media (max-width: 480px){.app-header__inner{padding:.5rem}.app-header__logo img{height:32px}.app-header__title{font-size:1rem}}.icon-button-wrapper{position:relative;display:inline-flex}button.icon-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--color-border);border-radius:10px;background-color:var(--color-bg-secondary);color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease}button.icon-button:hover:not(:disabled){background-color:var(--color-bg-primary);border-color:var(--color-text-secondary);color:var(--color-text-primary);transform:scale(1.05);box-shadow:0 2px 8px color-mix(in srgb,var(--color-text-primary) 10%,transparent);opacity:1}button.icon-button:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 15%,transparent)}button.icon-button:disabled{cursor:not-allowed;opacity:.4;background-color:var(--color-bg-secondary)}button.icon-button.icon-button--active{background-color:var(--color-bg-primary);border-color:var(--color-text-secondary);color:var(--color-text-primary);cursor:default}button.icon-button.icon-button--active:hover{transform:none;box-shadow:none}button.icon-button.icon-button--inverted{background-color:var(--color-text-primary);border-color:var(--color-text-primary);color:var(--color-bg-primary)}button.icon-button.icon-button--inverted:hover{transform:none;box-shadow:none}button.icon-button.icon-button--danger{border-color:var(--color-error);color:var(--color-error)}button.icon-button.icon-button--danger:hover:not(:disabled){background-color:var(--color-error);border-color:var(--color-error);color:#fff}.icon-button svg{flex-shrink:0}.icon-button-spinner{width:20px;height:20px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:icon-button-spin .8s linear infinite}@keyframes icon-button-spin{to{transform:rotate(360deg)}}.icon-button-tooltip{position:absolute;top:calc(100% + 8px);right:0;padding:.5rem .75rem;background-color:#1f2937;color:#f9fafb;font-family:inherit;font-size:1rem;font-weight:600;line-height:1.5;white-space:nowrap;border-radius:6px;opacity:0;visibility:hidden;transition:all .2s ease;pointer-events:none;z-index:1000;box-shadow:0 4px 12px #00000040}.icon-button-tooltip:before{content:"";position:absolute;bottom:100%;right:12px;border:6px solid transparent;border-bottom-color:#1f2937}.icon-button-wrapper:hover .icon-button-tooltip,.icon-button:focus-visible+.icon-button-tooltip{opacity:1;visibility:visible}.icon-button-tooltip--left{right:auto;left:0}.icon-button-tooltip--left:before{right:auto;left:12px}.icon-button-tooltip--center{right:auto;left:50%;transform:translate(-50%)}.icon-button-tooltip--center:before{right:auto;left:50%;transform:translate(-50%)}.icon-button-tooltip--top{top:auto;bottom:calc(100% + 8px)}.icon-button-tooltip--top:before{bottom:auto;top:100%;border-bottom-color:transparent;border-top-color:#1f2937}.client-form{width:100%;max-width:800px;margin:0 auto}.client-form .error{color:var(--color-error);margin-bottom:16px;padding:8px 12px;background:#ef44441a;border-radius:4px;font-size:14px}.form-section{margin-bottom:24px}.form-section h3{font-size:16px;font-weight:600;margin-bottom:16px;color:var(--color-text-primary)}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:var(--color-text-primary);font-size:14px}.form-group input,.form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;transition:border-color .2s ease;background:var(--color-bg-primary);color:var(--color-text-primary)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary)}.form-group input:disabled,.form-group textarea:disabled{background:var(--color-bg-secondary);cursor:not-allowed;opacity:.7}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-tertiary)}.form-group .error{display:block;margin-top:4px;font-size:12px;background:none;padding:0}.form-row{display:flex;gap:16px}.form-row .form-group{flex:1}.form-row--3col{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.form-row--4col{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.client-form .form-actions{margin-top:24px;display:flex;justify-content:flex-end;gap:12px}.form-actions button{padding:12px 24px;font-weight:600}.form-actions button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.form-row--3col,.form-row--4col{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.form-row{flex-direction:column;gap:0}.form-row--3col,.form-row--4col{grid-template-columns:1fr}}.pagination{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin-top:1.5rem;padding:1rem}.pagination__controls{display:flex;align-items:center;gap:.5rem}.pagination__numbers{display:flex;align-items:center;gap:.25rem}.pagination__ellipsis{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;color:var(--color-text-secondary);font-size:.9rem;font-weight:500;-webkit-user-select:none;user-select:none}.pagination__info{font-size:.875rem;color:var(--color-text-secondary);white-space:nowrap}@media (max-width: 480px){.pagination{gap:.5rem}.pagination__controls{gap:.25rem}.pagination__numbers{gap:.125rem}.pagination__ellipsis{min-width:24px}.pagination__info{font-size:.8rem}}@media (max-width: 360px){.pagination__controls>.icon-button-wrapper:first-child,.pagination__controls>.icon-button-wrapper:last-child{display:none}}.list-filters{display:flex;gap:1rem;flex-wrap:wrap;align-items:flex-end;margin-bottom:1.5rem;padding:1rem;background-color:var(--color-bg-secondary);border-radius:8px;border:1px solid var(--color-border)}.list-filters__group{display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:200px}.list-filters__group label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.list-filters__search-row{display:flex;gap:.5rem;align-items:center}.list-filters__search-row .list-filters__input{flex:1}.list-filters__select,.list-filters__input{padding:.5rem;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-primary);color:var(--color-text-primary);font-size:1rem}.list-filters__select:focus,.list-filters__input:focus{outline:2px solid var(--color-accent);outline-offset:0}.list-filters__clear{padding:.5rem 1rem;background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);cursor:pointer;font-size:.875rem;transition:all .2s ease-in-out;height:fit-content}.list-filters__clear:hover{background-color:var(--color-text-secondary);color:var(--color-bg-primary);border-color:var(--color-text-secondary)}.list-table-container{overflow-x:auto;border-radius:8px;border:1px solid var(--color-border);background-color:var(--color-bg-primary)}.list-table{width:100%;border-collapse:collapse}.list-table thead{background-color:var(--color-bg-secondary)}.list-table th{padding:1rem;text-align:left;font-weight:600;color:var(--color-text-primary);border-bottom:2px solid var(--color-border)}.list-table__sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease-in-out}.list-table__sortable:hover{background-color:#0000000d}@media (prefers-color-scheme: dark){.list-table__sortable:hover{background-color:#ffffff0d}}.list-table__sort-indicator{font-size:.875rem;margin-left:.25rem}.list-table tbody tr{border-bottom:1px solid var(--color-border)}.list-table__row{cursor:pointer;transition:background-color .2s ease-in-out}.list-table__row:hover{background-color:var(--color-bg-secondary)}.list-table td{padding:1rem;color:var(--color-text-primary)}.list-table th:last-child,.list-table td:last-child{text-align:right}.list-table__unavailable{color:var(--color-text-secondary);font-style:italic}.list-no-results{text-align:center;padding:3rem 1rem;color:var(--color-text-secondary);font-size:1.125rem}.list-header{display:flex;justify-content:flex-end;align-items:center;gap:.5rem;position:sticky;top:60px;z-index:100;background-color:var(--color-bg-primary);padding:1rem 0;margin:0 0 1rem}@media (max-width: 600px){.list-header{top:50px}}.list-loading,.list-error{text-align:center;padding:2rem;font-size:1.125rem;color:var(--color-text-secondary)}.list-error{color:var(--color-error)}@media (max-width: 768px){.list-table th,.list-table td{padding:.75rem .5rem;font-size:.875rem}}@media (max-width: 480px){.list-filters{padding:.75rem;gap:.75rem}.list-filters__group{min-width:100%}.list-table-container{border:none;background-color:transparent}.list-table{border:none}.list-table thead{display:none}.list-table tbody{display:flex;flex-direction:column;gap:.75rem}.list-table tbody tr{display:flex;flex-direction:column;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;padding:.75rem;gap:.5rem}.list-table tbody tr:last-child{border-bottom:1px solid var(--color-border)}.list-table td{display:flex;flex-direction:column;padding:0;font-size:.875rem}.list-table td:before{content:attr(data-label);font-size:.75rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:.125rem}.list-table td:first-child{font-weight:500}}.work-type-selector{display:flex;flex-direction:column;gap:.5rem}.work-type-selector__label{font-weight:500;color:var(--color-text-primary);font-size:1rem}.work-type-selector__list{display:flex;flex-direction:column;gap:.75rem;padding:.75rem;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-primary);max-height:300px;overflow-y:auto}.work-type-selector__list .work-type-selector__item{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.5rem;border-radius:4px;transition:background-color .15s ease-in-out;margin-bottom:0}.work-type-selector__list .work-type-selector__item:hover{background-color:var(--color-bg-secondary)}.work-type-selector__list .work-type-selector__item input[type=checkbox]{width:1.25rem;height:1.25rem;margin:0;padding:0;cursor:pointer;flex-shrink:0}.work-type-selector__list .work-type-selector__item input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.work-type-selector__list .work-type-selector__item span{font-size:1rem;color:var(--color-text-primary)}.work-type-selector__help{font-size:.875rem;color:var(--color-text-secondary);font-style:italic}.work-type-selector__message{margin:0;padding:.5rem 0;font-style:italic;color:var(--color-text-secondary)}.work-type-selector__message--loading{color:var(--color-text-secondary)}.work-type-selector__message--warning{color:#ffc107}.conditional-question{opacity:0;transform:translateY(-10px);transition:opacity .3s ease,transform .3s ease;margin-bottom:20px}.conditional-question--visible{opacity:1;transform:translateY(0)}.conditional-question--depth-1{margin-left:20px;padding-left:16px;border-left:3px solid color-mix(in srgb,var(--color-accent) 40%,transparent)}.conditional-question--depth-2{margin-left:40px;padding-left:16px;border-left:3px solid color-mix(in srgb,var(--color-accent) 60%,transparent)}.conditional-question--depth-3{margin-left:60px;padding-left:16px;border-left:3px solid color-mix(in srgb,var(--color-accent) 80%,transparent)}.conditional-question__depth-indicator{color:var(--color-text-secondary);margin-right:8px;font-weight:400;-webkit-user-select:none;user-select:none}.conditional-question__label{display:block;font-weight:600;font-size:16px;margin-bottom:12px;color:var(--color-text-primary)}.conditional-question__required{color:var(--color-error);margin-left:4px;font-weight:700}.conditional-question__input{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;font-family:inherit;background-color:var(--color-bg-primary);color:var(--color-text-primary);transition:border-color .2s ease}.conditional-question__input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 15%,transparent)}.conditional-question__select{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;font-family:inherit;background-color:var(--color-bg-primary);color:var(--color-text-primary);cursor:pointer;transition:border-color .2s ease}.conditional-question__select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 15%,transparent)}.conditional-question__radio-group{display:flex;gap:24px}.conditional-question__radio-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:400;cursor:pointer;color:var(--color-text-primary)}.conditional-question__radio-label input[type=radio]{cursor:pointer;width:18px;height:18px}.conditional-question__checkbox-group{display:flex;flex-direction:column;gap:12px}.conditional-question__checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:400;cursor:pointer;color:var(--color-text-primary)}.conditional-question__checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px}.conditional-question__radio-label input[type=radio]:focus,.conditional-question__checkbox-label input[type=checkbox]:focus{outline:2px solid var(--color-accent);outline-offset:2px}.conditional-question__radio-label:hover,.conditional-question__checkbox-label:hover{color:var(--color-accent)}.room-questionnaire,.edit-questionnaire{max-width:800px;margin:0 auto}.question-flow__intro{margin-bottom:1.5rem}.room-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-size:1.1rem}.room-type-badge{display:inline-block;padding:.25rem .5rem;background-color:#f0f0f0;border-radius:4px;font-size:.875rem;color:#666;margin-left:.5rem}.room-pricing-header{max-width:400px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-notes-section{padding:1rem;background-color:var(--color-bg-secondary, #f8f9fa);border-left:4px solid var(--color-accent, #007bff);margin:1rem 0 1.5rem;border-radius:4px}.room-notes-section h3{font-size:1rem;margin:0 0 .5rem;color:var(--color-text-primary, #495057);font-weight:600}.room-notes-section p{margin:0;white-space:pre-wrap;color:var(--color-text-primary, #212529);line-height:1.5}.current-room-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--color-border, #dee2e6)}.current-room-header h2{margin:0 0 1rem;color:var(--color-text-primary, #212529)}.help-text{display:block;margin-top:.25rem;font-size:.875rem;color:#6c757d;font-style:italic}.room-item{padding:1.25rem;border:1px solid var(--color-border, #dee2e6);border-radius:8px;margin-bottom:1rem;background-color:var(--color-bg-primary, #fff);box-shadow:0 1px 3px #0000001a;transition:box-shadow .2s ease}.room-item:hover{box-shadow:0 2px 8px #00000026}.room-item__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border, #dee2e6)}.room-item__title{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.room-actions{display:flex;flex-direction:row;gap:.5rem;flex-shrink:0}.room-item__content{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:start}.room-item__details{display:flex;flex-direction:column;gap:.75rem}.room-item__measurements{display:flex;gap:1.5rem;padding:.75rem 1rem;background-color:var(--color-bg-secondary, #f8f9fa);border-radius:6px;border-left:3px solid var(--color-primary, #007bff)}.room-item__field{display:flex;flex-direction:column;gap:.25rem}.room-item__label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary, #888)}.room-item__value{font-size:.9rem;color:var(--color-text-primary, #212529)}.room-item__value--measurement{font-size:1rem;font-weight:600}.room-item__files{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border, #dee2e6)}.room-item__files summary{cursor:pointer;font-weight:500;color:var(--color-text-secondary, #666);-webkit-user-select:none;user-select:none}.room-item__files summary:hover{color:var(--color-text-primary, #212529)}.notes-section{background-color:var(--color-bg-secondary, #f8f9fa);padding:1rem;border-radius:4px;border-left:4px solid var(--color-success, #28a745);margin-bottom:2rem}.notes-section label{display:flex;align-items:center;font-weight:600;color:var(--color-text-primary, #495057)}.notes-section .saving-indicator{font-size:.875rem;color:var(--color-text-secondary, #6c757d);font-weight:400;font-style:italic}.notes-section textarea{width:100%;border:1px solid var(--color-border, #ced4da);border-radius:4px;padding:.5rem;font-family:inherit;font-size:1rem;resize:vertical;min-height:80px;background-color:var(--color-bg-primary, #ffffff);color:var(--color-text-primary, #212529)}.notes-section textarea:focus{outline:none;border-color:var(--color-success, #28a745);box-shadow:0 0 0 .2rem #28a74540}@media (prefers-color-scheme: dark){.notes-section textarea:focus{box-shadow:0 0 0 .2rem #10b98140}}@media (prefers-color-scheme: dark){.room-item__measurements{background-color:#2d2d2d;border-left-color:#4a9eff}.room-type-badge{background-color:#3a3a3a;color:#ccc}}@media (max-width: 768px){.room-name{max-width:200px}.room-pricing-header{max-width:250px}.room-item__header{flex-direction:column;align-items:flex-start;gap:.75rem}.room-item__title{flex-direction:column;align-items:flex-start;gap:.5rem}.room-actions{flex-wrap:wrap;width:100%}.room-item__content{grid-template-columns:1fr;gap:1rem}.room-item__measurements{flex-wrap:wrap;gap:1rem}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:2px solid var(--color-border)}.modal-header h2{margin:0;color:var(--color-text-primary);font-size:1.5rem}.modal-close{background:none;border:none;font-size:2rem;line-height:1;cursor:pointer;color:var(--color-text-secondary);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.modal-close:hover{background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.modal-body{padding:20px;max-height:calc(90vh - 140px);overflow-y:auto}.room-item__files summary{list-style:none;display:flex;align-items:center;gap:.5rem}.room-item__files summary::-webkit-details-marker{display:none}.room-item__files summary:before{content:"▶";display:inline-block;transition:transform .2s ease;font-size:.75rem}.room-item__files[open] summary:before{transform:rotate(90deg)}.measurement-flow{max-width:800px;margin:0 auto}.measurement-flow__header{margin-bottom:2rem}.measurement-flow__title{font-size:1.75rem;font-weight:600;color:var(--color-text-primary, #1a1a1a);margin-bottom:.5rem}.measurement-flow__subtitle{color:var(--color-text-secondary, #666);font-size:1rem}.measurement-progress{margin:2rem 0;padding:1.5rem;background:var(--color-bg-secondary, #f8f9fa);border-radius:8px}.measurement-progress__steps{display:flex;justify-content:space-between;list-style:none;padding:0;margin:0;position:relative}.measurement-progress__step{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;text-align:center}.measurement-progress__connector{position:absolute;top:20px;right:50%;width:100%;height:2px;background:var(--color-border, #dee2e6);z-index:0}.measurement-progress__connector--complete{background:#28a745}.measurement-progress__step-marker{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-bg-primary, #fff);border:2px solid var(--color-border, #dee2e6);margin-bottom:.5rem;position:relative;z-index:1;transition:all .3s ease}.measurement-progress__step--active .measurement-progress__step-marker{border-color:#007bff;background:#007bff;color:#fff;box-shadow:0 0 0 4px #007bff1a}.measurement-progress__step--completed .measurement-progress__step-marker{border-color:#28a745;background:#28a745;color:#fff}.measurement-progress__step-number{font-weight:600;font-size:1rem}.measurement-progress__check-icon{width:20px;height:20px}.measurement-progress__step-label{font-size:.875rem;color:var(--color-text-secondary, #666)}.measurement-progress__step--active .measurement-progress__step-label{color:#007bff;font-weight:600}.measurement-progress__step--completed .measurement-progress__step-label{color:#28a745;font-weight:600}.measurement-progress__step-name{display:block}.measurement-step__content{margin:2rem 0}.measurement-step__title{font-size:1.5rem;font-weight:600;color:var(--color-text-primary, #1a1a1a);margin-bottom:.75rem}.measurement-step__help{color:var(--color-text-secondary, #666);margin-bottom:1.5rem;line-height:1.6}.measurement-step__examples{margin-top:1rem;padding:1rem;background:var(--color-bg-secondary, #f8f9fa);border-radius:4px}.form-group{margin-bottom:1.5rem}.radio-group{display:flex;flex-direction:column;gap:1rem;margin-top:.75rem}.radio-option{display:flex!important;flex-direction:row;align-items:flex-start;padding:1rem;border:2px solid var(--color-border, #dee2e6);border-radius:4px;cursor:pointer;transition:all .15s ease-in-out}.radio-option:hover{border-color:#007bff;background:#f8f9fa}.radio-option input[type=radio]{flex-shrink:0;margin-top:.25rem;margin-right:.75rem;width:18px;height:18px;cursor:pointer}.radio-option input[type=radio]:checked{accent-color:#007bff}.radio-option:has(input:checked){border-color:#007bff;background:#007bff0d}.radio-label{display:flex;flex-direction:column;gap:.25rem;flex:1}.radio-label strong{color:var(--color-text-primary);font-size:1rem}.radio-description{color:var(--color-text-secondary);font-size:.875rem}.form-label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--color-text-primary, #1a1a1a)}.form-label .required{color:#dc3545;margin-left:.25rem}.input-group{position:relative;display:flex;align-items:center}.form-input{width:100%;padding:.75rem 1rem;font-size:1rem;border:1px solid var(--color-border, #ced4da);border-radius:4px;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;background-color:var(--color-bg-primary, #fff);color:var(--color-text-primary, #212529)}.form-input:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.form-input--error{border-color:#dc3545}.form-input--error:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem #dc354540}.input-suffix{position:absolute;right:1rem;color:#6c757d;font-weight:500;pointer-events:none}.form-error{color:var(--color-error);font-size:.875rem;margin-top:.5rem;display:flex;align-items:center;gap:.25rem}.form-help{color:#6c757d;font-size:.875rem;margin-top:.5rem}.measurement-flow__actions{display:flex;gap:1rem;justify-content:space-between;margin-top:2rem}.btn{padding:.75rem 1.5rem;font-size:1rem;font-weight:500;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;background-color:var(--color-text-secondary);color:var(--color-bg-primary)}.btn:hover:not(:disabled){opacity:.8}.btn--primary,.btn--secondary,.btn--outline{background-color:var(--color-text-secondary);color:var(--color-bg-primary)}.measurement-flow__loading{text-align:center;padding:3rem;color:#6c757d}.spinner{display:inline-block;width:2rem;height:2rem;border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.measurement-flow__error{color:var(--color-error);background-color:color-mix(in srgb,var(--color-error) 15%,var(--color-bg-primary));padding:12px;border-radius:4px;margin-bottom:1.5rem;border-left:4px solid var(--color-error)}.walls-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-border, #dee2e6)}.walls-section__title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary, #1a1a1a);margin-bottom:1rem}.wall-form{background:var(--color-bg-secondary, #f8f9fa);padding:1.5rem;border-radius:4px;margin-bottom:2rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.wall-form__actions{display:flex;gap:.75rem;margin-top:1rem}.walls-list{margin-top:2rem}.walls-list__title{font-size:1.125rem;font-weight:600;color:var(--color-text-primary, #1a1a1a);margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between}.walls-list__total{font-size:.875rem;font-weight:500;color:#007bff}.walls-list__items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.wall-item{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:var(--color-bg-primary, #fff);border:1px solid var(--color-border, #dee2e6);border-radius:4px}.wall-item__info{display:flex;flex-direction:column;gap:.25rem}.wall-item__name{color:var(--color-text-primary, #1a1a1a);font-size:1rem}.wall-item__area{color:#6c757d;font-size:.875rem}.wall-item__actions{display:flex;gap:.5rem}.btn-edit-wall{padding:.5rem 1rem;font-size:.875rem;background-color:var(--color-text-secondary);color:var(--color-bg-primary)}.btn-delete-wall{padding:.5rem 1rem;font-size:.875rem;background-color:var(--color-error, #dc3545);color:#fff}.btn-delete-wall:hover:not(:disabled){opacity:.8}.btn-icon{padding:.5rem;background:transparent;border:none;cursor:pointer;font-size:1.25rem;border-radius:4px;transition:background .15s ease-in-out}.btn-icon:hover{background:#f8f9fa}.btn-icon--danger:hover{background:#f8d7da}.measurement-summary{display:flex;flex-direction:column;gap:2rem}.summary-section{padding:1.5rem;background:var(--color-bg-secondary, #f8f9fa);border-radius:4px}.summary-section__title{font-size:1.125rem;font-weight:600;color:var(--color-text-primary, #1a1a1a);margin-bottom:1rem}.summary-section__empty{color:#6c757d;font-style:italic}.summary-list{margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 1.5rem}.summary-item{display:flex;justify-content:space-between;align-items:baseline;padding:.5rem 0}.summary-item--total{margin-top:.5rem;padding-top:1rem;border-top:2px solid var(--color-border, #dee2e6);font-weight:600;grid-column:1 / -1}.summary-item__label{color:#495057;font-weight:500}.summary-item__value{color:var(--color-text-primary, #1a1a1a);font-weight:600}.summary-item__note{margin-left:.5rem;color:#6c757d;font-size:.875rem;font-weight:400}.text-muted{color:#6c757d}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (max-width: 768px){.measurement-flow,.measurement-progress{padding:1rem}.measurement-progress__steps{flex-direction:column;gap:1rem}.measurement-progress__step{flex-direction:row;justify-content:flex-start;align-items:center;text-align:left}.measurement-progress__connector{display:none}.measurement-progress__step-marker{margin-right:1rem;margin-bottom:0}.measurement-flow__actions{flex-direction:column}.btn{width:100%;justify-content:center}.form-row{grid-template-columns:1fr}.wall-form{padding:1rem}.walls-list__title{flex-direction:column;align-items:flex-start;gap:.5rem}.summary-list{grid-template-columns:1fr}}@media (prefers-color-scheme: dark){.radio-option:hover{background:#ffffff0d}.radio-option:has(input:checked){background:#007bff1a}.measurement-progress,.measurement-step__examples,.wall-form,.summary-section{background:#ffffff0d}.btn-icon:hover{background:#ffffff1a}.btn-icon--danger:hover{background:#dc354533}}.file-upload{width:100%;max-width:600px;margin:0 auto}.file-upload__dropzone{border:2px dashed var(--color-border, #cbd5e0);border-radius:8px;padding:48px 24px;text-align:center;cursor:pointer;transition:all .2s ease-in-out;background-color:var(--color-bg-secondary, #f7fafc)}.file-upload__dropzone:hover,.file-upload__dropzone--active{border-color:var(--color-text-secondary, #6c757d);background-color:var(--color-bg-hover, #e5e7eb)}.file-upload__content{display:flex;flex-direction:column;align-items:center;gap:16px}.file-upload__icon{font-size:48px}.file-upload__text{margin:0;font-size:16px;font-weight:500;color:var(--color-text-primary, #2d3748)}.file-upload__hint{margin:0;font-size:14px;color:var(--color-text-secondary, #718096);line-height:1.5}.file-upload__progress{padding:24px;border:1px solid var(--color-border, #e2e8f0);border-radius:8px;background-color:var(--color-bg-primary, #ffffff)}.file-upload__file-info{margin-bottom:16px}.file-upload__filename{margin:0 0 4px;font-size:16px;font-weight:500;color:var(--color-text-primary, #2d3748);word-break:break-word}.file-upload__filesize{margin:0;font-size:14px;color:var(--color-text-secondary, #718096)}.file-upload__progress-bar{height:8px;background-color:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:8px}.file-upload__progress-fill{height:100%;background-color:#4299e1;transition:width .3s ease-in-out}.file-upload__progress-text{margin:0 0 16px;font-size:14px;color:var(--color-text-secondary, #718096);text-align:center}.file-upload__cancel-button{width:100%;padding:10px 16px;border:none;border-radius:6px;background-color:var(--color-error, #dc3545);color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s}.file-upload__cancel-button:hover{opacity:.8}.file-upload__success{padding:24px;border:1px solid #48bb78;border-radius:8px;background-color:#f0fff4;text-align:center}.file-upload__success-icon{font-size:48px;color:#48bb78;margin-bottom:16px}.file-upload__success-text{margin:0 0 16px;font-size:16px;color:var(--color-text-primary, #2d3748);word-break:break-word}.file-upload__reset-button{padding:10px 16px;border:none;border-radius:6px;background-color:var(--color-text-secondary);color:var(--color-bg-primary);font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s}.file-upload__reset-button:hover{opacity:.8}.file-upload__error{padding:24px;border:1px solid #f56565;border-radius:8px;background-color:#fff5f5;text-align:center}.file-upload__error-icon{font-size:48px;color:#f56565;margin-bottom:16px}.file-upload__error-text{margin:0 0 16px;font-size:16px;color:var(--color-text-primary, #742a2a)}.file-upload__retry-button{padding:10px 16px;border:none;border-radius:6px;background-color:var(--color-text-secondary);color:var(--color-bg-primary);font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s}.file-upload__retry-button:hover{opacity:.8}@media (max-width: 640px){.file-upload__dropzone{padding:32px 16px}.file-upload__icon{font-size:36px}.file-upload__text{font-size:14px}.file-upload__hint{font-size:12px}}@media (prefers-color-scheme: dark){.file-upload__dropzone{background-color:#ffffff0d}.file-upload__dropzone:hover,.file-upload__dropzone--active{background-color:#ffffff1a}.file-upload__progress{background-color:var(--color-bg-primary, #1e1e1e)}.file-upload__success{background-color:#48bb781a;border-color:#48bb784d}.file-upload__error{background-color:#f565651a;border-color:#f565654d}}.file-list{width:100%}.file-list__header{margin-bottom:16px}.file-list__count{margin:0;font-size:14px;font-weight:500;color:var(--color-text-secondary)}.file-list__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.file-list__item{position:relative;border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-bg-secondary);overflow:hidden;transition:box-shadow .2s ease-in-out}.file-list__item:hover{box-shadow:0 4px 6px -1px color-mix(in srgb,var(--color-text-primary) 10%,transparent),0 2px 4px -1px color-mix(in srgb,var(--color-text-primary) 6%,transparent)}.file-list__preview{height:180px;display:flex;align-items:center;justify-content:center;background-color:var(--color-bg-primary);cursor:pointer;overflow:hidden}.file-list__thumbnail{width:100%;height:100%;object-fit:cover}.file-list__icon{font-size:64px;color:var(--color-text-secondary)}.file-list__icon.icon-pdf{color:#e53e3e}.file-list__icon.icon-word{color:#2b6cb0}.file-list__icon.icon-excel{color:#38a169}.file-list__icon.icon-powerpoint{color:#dd6b20}.file-list__info{padding:12px}.file-list__filename{margin:0 0 4px;font-size:14px;font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-list__meta{margin:0;font-size:12px;color:var(--color-text-secondary)}.file-list__actions{display:flex;gap:.5rem;padding:0 12px 12px;justify-content:flex-end}.file-list__confirm{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background-color:color-mix(in srgb,var(--color-bg-secondary) 98%,transparent);padding:16px}.file-list__confirm p{margin:0;font-size:14px;font-weight:500;color:var(--color-text-primary)}.file-list__confirm-actions{display:flex;gap:8px}.file-list__confirm-button{padding:8px 16px;border:1px solid var(--color-border);border-radius:6px;background-color:var(--color-bg-secondary);color:var(--color-text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease-in-out}.file-list__confirm-button:hover{background-color:var(--color-bg-primary)}.file-list__confirm-button--danger{background-color:#e53e3e;border-color:#e53e3e;color:#fff}.file-list__confirm-button--danger:hover{background-color:#c53030;border-color:#c53030}.file-list__loading{padding:48px 24px;text-align:center}.file-list__loading p{margin:0;font-size:16px;color:var(--color-text-secondary)}.file-list__error{padding:24px;border:1px solid color-mix(in srgb,#e53e3e 40%,var(--color-border));border-radius:8px;background-color:color-mix(in srgb,#e53e3e 5%,var(--color-bg-secondary));text-align:center}.file-list__error-text{margin:0 0 16px;font-size:16px;color:var(--color-text-primary)}.file-list__retry-button{padding:10px 16px;border:none;border-radius:6px;background-color:var(--color-text-secondary);color:var(--color-bg-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease-in-out}.file-list__retry-button:hover{opacity:.8}.file-list__empty{padding:48px 24px;text-align:center;border:1px dashed var(--color-border);border-radius:8px;background-color:var(--color-bg-primary)}.file-list__empty p{margin:0;font-size:16px;color:var(--color-text-secondary)}@media (max-width: 768px){.file-list__grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.file-list__preview{height:140px}.file-list__icon{font-size:48px}}@media (max-width: 480px){.file-list__grid{grid-template-columns:1fr}}.file-viewer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.file-viewer-modal{background-color:var(--color-bg-primary);border-radius:8px;max-width:1200px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary) 20%,transparent)}.file-viewer-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px;border-bottom:1px solid var(--color-border)}.file-viewer-info{flex:1;min-width:0}.file-viewer-title{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--color-text-primary);word-break:break-word}.file-viewer-meta{margin:0;font-size:14px;color:var(--color-text-secondary)}.file-viewer-close{background:none;border:none;font-size:32px;line-height:1;cursor:pointer;color:var(--color-text-secondary);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;flex-shrink:0;margin-left:16px}.file-viewer-close:hover{background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.file-viewer-content{flex:1;display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto;min-height:300px}.file-viewer-loading{font-size:16px;color:var(--color-text-secondary)}.file-viewer-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px}.file-viewer-no-preview{text-align:center;padding:40px}.file-viewer-icon{display:inline-block;padding:20px 40px;background-color:var(--color-bg-secondary);border-radius:8px;font-size:24px;font-weight:600;color:var(--color-text-secondary);margin-bottom:16px}.file-viewer-no-preview-text{margin:0;font-size:14px;color:var(--color-text-secondary);line-height:1.6}.file-viewer-footer{padding:16px 20px;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end}.file-viewer-download{padding:10px 20px;border:none;border-radius:6px;background-color:var(--color-text-secondary);color:var(--color-bg-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.file-viewer-download:hover{opacity:.8}@media (max-width: 768px){.file-viewer-overlay{padding:0}.file-viewer-modal{max-width:100%;max-height:100vh;border-radius:0}.file-viewer-header{padding:16px}.file-viewer-title{font-size:16px}.file-viewer-meta{font-size:12px}.file-viewer-content{padding:16px}}.pricing-group-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.pricing-group-modal{background-color:var(--color-bg-primary);border-radius:8px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary, #333333) 20%,transparent)}.pricing-group-modal__header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border)}.pricing-group-modal__header h3{margin:0;font-size:1.25rem;color:var(--color-text-primary)}.pricing-group-modal__content{padding:1.5rem}.pricing-group-modal__section{margin-bottom:1.5rem}.pricing-group-modal__section:last-child{margin-bottom:0}.pricing-group-modal__section h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.pricing-group-modal__field{display:flex;justify-content:space-between;align-items:flex-start;padding:.5rem 0;gap:1rem}.pricing-group-modal__label{font-size:.875rem;color:var(--color-text-secondary);flex-shrink:0}.pricing-group-modal__value{font-size:.875rem;color:var(--color-text-primary);text-align:right}.pricing-group-modal__value--matched{color:var(--color-accent)}.pricing-group-modal__value--no_matching_rule{color:var(--color-error)}.pricing-group-modal__value--no_contributions{color:var(--color-text-secondary)}.pricing-group-modal__value--cost{font-weight:600;font-size:1rem}.pricing-group-modal__code{font-family:monospace;font-size:.8rem;background-color:var(--color-bg-secondary);padding:.25rem .5rem;border-radius:4px;word-break:break-all}.pricing-group-modal__contributions{display:flex;flex-direction:column;gap:.5rem}.pricing-group-modal__contribution{display:grid;grid-template-columns:1fr auto auto auto;gap:.75rem;align-items:center;padding:.5rem .75rem;background-color:var(--color-bg-secondary);border-radius:4px;font-size:.875rem}.pricing-group-modal__contribution-room{color:var(--color-text-primary);font-weight:500}.pricing-group-modal__contribution-value{color:var(--color-text-secondary)}.pricing-group-modal__contribution-percent{color:var(--color-text-secondary);min-width:3rem;text-align:right}.pricing-group-modal__contribution-amount{color:var(--color-text-primary);font-weight:600;min-width:5rem;text-align:right}@media (max-width: 480px){.pricing-group-modal__contribution{grid-template-columns:1fr 1fr;gap:.5rem}.pricing-group-modal__contribution-room{grid-column:1 / -1}.pricing-group-modal__contribution-percent{text-align:left}}.pricing-group-status{display:inline-block;margin-left:.5rem;padding:2px 6px;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;vertical-align:middle}.pricing-group-status--no-match{background-color:color-mix(in srgb,var(--color-error) 15%,transparent);color:var(--color-error)}.pricing-group-status--no-contributions{background-color:color-mix(in srgb,var(--color-text-secondary) 15%,transparent);color:var(--color-text-secondary)}.vat-breakdown{margin-top:2rem;padding:1.5rem;background-color:var(--color-bg-secondary);border-radius:4px;border:1px solid var(--color-border)}.vat-breakdown__line{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;font-size:1rem;color:var(--color-text-primary)}.vat-breakdown__line+.vat-breakdown__line{border-top:1px solid var(--color-border)}.vat-breakdown__line--total{margin-top:.5rem;padding-top:1rem;border-top:2px solid var(--color-text-secondary)!important;font-size:1.25rem;font-weight:600}.vat-breakdown__label{color:var(--color-text-secondary)}.vat-breakdown__line--total .vat-breakdown__label{color:var(--color-text-primary);font-weight:600}.vat-breakdown__value{font-weight:600;color:var(--color-text-primary);font-family:Courier New,monospace}.vat-breakdown__line--total .vat-breakdown__value{font-size:1.5rem;color:var(--color-primary)}@media (max-width: 768px){.vat-breakdown{padding:1rem}.vat-breakdown__line{font-size:.9rem}.vat-breakdown__line--total{font-size:1.1rem}.vat-breakdown__line--total .vat-breakdown__value{font-size:1.25rem}}.confirmation-dialog-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-in-out}.confirmation-dialog{background-color:var(--color-bg-primary, #ffffff);border-radius:8px;box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary, #1a1a1a) 20%,transparent);max-width:500px;width:90%;padding:0;animation:slideUp .3s ease-out}.confirmation-dialog-header{padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--color-border, #e5e7eb)}.confirmation-dialog-title{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text-primary, #1a1a1a)}.confirmation-dialog-body{padding:1.5rem}.confirmation-dialog-message{margin:0;font-size:1rem;line-height:1.5;color:var(--color-text-secondary, #6b7280)}.confirmation-dialog-footer{padding:1rem 1.5rem 1.5rem;display:flex;justify-content:flex-end;gap:.75rem}.btn{padding:.625rem 1.25rem;border-radius:6px;font-size:.9375rem;font-weight:500;cursor:pointer;border:1px solid transparent;transition:all .2s ease-in-out;display:inline-flex;align-items:center;gap:.5rem}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background-color:var(--color-bg-secondary, #f3f4f6);color:var(--color-text-primary, #1a1a1a);border-color:var(--color-border, #d1d5db)}.btn-secondary:hover:not(:disabled){background-color:var(--color-bg-hover, #e5e7eb)}.btn-danger{background-color:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){opacity:.8}.btn-warning{background-color:#f59e0b;color:#fff}.btn-warning:hover:not(:disabled){background-color:#d97706}.btn-info{background-color:#3b82f6;color:#fff}.btn-info:hover:not(:disabled){background-color:#2563eb}.btn-loading{display:flex;align-items:center;gap:.5rem}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn:focus{outline:2px solid var(--color-focus, #3b82f6);outline-offset:2px}@media (prefers-color-scheme: dark){.confirmation-dialog{background-color:var(--color-bg-primary, #1f2937)}.confirmation-dialog-title{color:var(--color-text-primary, #f9fafb)}.confirmation-dialog-message{color:var(--color-text-secondary, #d1d5db)}.confirmation-dialog-header{border-bottom-color:var(--color-border, #374151)}.btn-secondary{background-color:var(--color-bg-secondary, #374151);color:var(--color-text-primary, #f9fafb);border-color:var(--color-border, #4b5563)}.btn-secondary:hover:not(:disabled){background-color:var(--color-bg-hover, #4b5563)}}.edit-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-in-out}.edit-modal{background:var(--color-bg-primary);border-radius:8px;max-width:1000px;max-height:90vh;width:90%;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary) 20%,transparent);animation:slideIn .2s ease-out}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.edit-modal__header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--color-border);flex-shrink:0}.edit-modal__title{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.edit-modal__body{padding:24px;overflow-y:auto;flex:1}.edit-modal__loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--color-text-secondary)}.edit-modal__error{padding:12px 16px;background-color:var(--color-error-bg, #fef2f2);border:1px solid var(--color-error, #ef4444);border-radius:4px;color:var(--color-error, #ef4444);margin-bottom:16px}@media (max-width: 768px){.edit-modal{width:100%;height:100%;max-height:100vh;border-radius:0}.edit-modal__header{padding:12px 16px}.edit-modal__body{padding:16px}}body.modal-open{overflow:hidden}.breakdown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center}.breakdown-overlay__backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#00000080;cursor:pointer}.breakdown-overlay__content{position:relative;background-color:var(--background-color, #ffffff);color:var(--text-color, #333333);border-radius:8px;box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary, #333333) 20%,transparent);width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;z-index:1001}.breakdown-overlay__header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.breakdown-overlay__title{margin:0;font-size:1.5rem;font-weight:600}.breakdown-overlay__header-actions{display:flex;align-items:center;gap:.5rem}.breakdown-overlay__header-actions button.icon-button.icon-button--success{border-color:var(--color-success, #10b981);color:var(--color-success, #10b981)}.breakdown-overlay__header-actions button.icon-button.icon-button--success:hover:not(:disabled){background-color:var(--color-success, #10b981);border-color:var(--color-success, #10b981);color:#fff}.breakdown-overlay__body{flex:1;overflow-y:auto;padding:1.5rem}.breakdown-overlay__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:1rem}.breakdown-overlay__spinner{width:48px;height:48px;border:4px solid #e0e0e0;border-top:4px solid #6c757d;border-right:4px solid #6c757d;border-radius:50%;animation:breakdown-spin .8s linear infinite;-webkit-animation:breakdown-spin .8s linear infinite}@keyframes breakdown-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@-webkit-keyframes breakdown-spin{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}}.breakdown-overlay__loading p{color:var(--text-secondary, #666666);margin:0}.breakdown-overlay__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:1rem;text-align:center}.breakdown-overlay__error p{color:var(--error-color, #dc3545);margin:0;font-weight:500}.breakdown-overlay__text{line-height:1.6;white-space:pre-wrap}.breakdown-overlay__text p{margin-bottom:1rem}.breakdown-overlay__text p:last-child{margin-bottom:0}@media (prefers-color-scheme: dark){.breakdown-overlay__content{background-color:var(--background-color, #1e1e1e);color:var(--text-color, #e0e0e0)}.breakdown-overlay__header{border-bottom-color:var(--border-color, #333333)}.breakdown-overlay__spinner{border-color:#333;border-top-color:#aaa;border-right-color:#aaa}}.full-breakdown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center}.full-breakdown-overlay__backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#00000080;cursor:pointer}.full-breakdown-overlay__content{position:relative;background-color:var(--background-color, #ffffff);color:var(--text-color, #333333);border-radius:8px;box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary, #333333) 20%,transparent);width:90%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;z-index:1001}.full-breakdown-overlay__header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.full-breakdown-overlay__title{margin:0;font-size:1.5rem;font-weight:600}.full-breakdown-overlay__header-actions{display:flex;align-items:center;gap:.5rem}.full-breakdown-overlay__header-actions button.icon-button.icon-button--success{border-color:var(--color-success, #10b981);color:var(--color-success, #10b981)}.full-breakdown-overlay__header-actions button.icon-button.icon-button--success:hover:not(:disabled){background-color:var(--color-success, #10b981);border-color:var(--color-success, #10b981);color:#fff}.full-breakdown-overlay__body{flex:1;overflow-y:auto;padding:1.5rem}.full-breakdown-overlay__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:1rem}.full-breakdown-overlay__spinner{width:48px;height:48px;border:4px solid #e0e0e0;border-top:4px solid #6c757d;border-right:4px solid #6c757d;border-radius:50%;animation:fullbreakdown-spin .8s linear infinite;-webkit-animation:fullbreakdown-spin .8s linear infinite}@keyframes fullbreakdown-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@-webkit-keyframes fullbreakdown-spin{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}}.full-breakdown-overlay__loading p{color:var(--text-secondary, #666666);margin:0}.full-breakdown-overlay__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:1rem;text-align:center}.full-breakdown-overlay__error p{color:var(--error-color, #dc3545);margin:0;font-weight:500}.full-breakdown-overlay__text{line-height:1.6}.full-breakdown-section{margin-bottom:2rem}.full-breakdown-introduction{font-size:1.05rem;font-weight:400;line-height:1.7;color:var(--color-text-primary);margin-bottom:0}.full-breakdown-room{border-left:3px solid var(--primary-color, #007bff);padding-left:1.5rem;margin-bottom:2rem}.full-breakdown-room__title{font-size:1.25rem;font-weight:600;margin:0 0 .75rem;color:var(--primary-color, #007bff)}.full-breakdown-room__content p{margin-bottom:.75rem;line-height:1.7}.full-breakdown-room__content p:last-child{margin-bottom:0}.full-breakdown-summary{background-color:var(--background-secondary, #f8f9fa);padding:1.5rem;border-radius:6px;border:1px solid var(--border-color, #e0e0e0)}.full-breakdown-summary__title{font-size:1.25rem;font-weight:600;margin:0 0 .75rem;color:var(--color-text-primary)}.full-breakdown-summary__content{margin:0;line-height:1.7;color:var(--color-text-primary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (prefers-color-scheme: dark){.full-breakdown-overlay__content{background-color:var(--background-color, #1e1e1e);color:var(--text-color, #e0e0e0)}.full-breakdown-overlay__header{border-bottom-color:var(--border-color, #333333)}.full-breakdown-overlay__spinner{border-color:#333;border-top-color:#aaa;border-right-color:#aaa}.full-breakdown-summary{background-color:var(--background-secondary, #2a2a2a);border-color:var(--border-color, #333333)}}@media (max-width: 768px){.full-breakdown-overlay__content{width:95%;max-height:95vh}.full-breakdown-overlay__header{padding:1rem}.full-breakdown-overlay__title{font-size:1.25rem}.full-breakdown-overlay__body{padding:1rem}.full-breakdown-room{padding-left:1rem}.full-breakdown-summary{padding:1rem}}.external-offer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-in-out}.external-offer-modal{background:var(--color-bg-primary);border-radius:8px;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary) 20%,transparent);animation:slideUp .3s ease-out}.external-offer-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border)}.external-offer-header h2{margin:0;font-size:1.25rem}.external-offer-header .close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-secondary);padding:.25rem .5rem;line-height:1}.external-offer-header .close-button:hover{color:var(--color-text-primary)}.external-offer-content{flex:1;overflow-y:auto;padding:1.5rem}.external-offer-content section{margin-bottom:1.5rem}.external-offer-content section:last-child{margin-bottom:0}.external-offer-content h3{margin:0 0 .75rem;font-size:1rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.error-state{padding:1.5rem;border-radius:8px;display:flex;align-items:flex-start;gap:1rem;flex-wrap:wrap}.error-state.error-general{background:var(--color-error-bg, #fee2e2);border:1px solid var(--color-error);color:var(--color-error)}.error-state.error-unavailable{background:var(--color-warning-bg, #fef3c7);border:1px solid var(--color-warning, #f59e0b);color:var(--color-warning-text, #92400e)}.error-state.error-deleted{background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary)}.error-state .error-icon{font-size:2rem;flex-shrink:0}.error-state .error-content{flex:1}.error-state .error-content strong{display:block;margin-bottom:.5rem;color:inherit;font-size:1rem}.error-state .error-content p{margin:0 0 .5rem;line-height:1.5}.error-state .error-content p:last-child{margin-bottom:0}.error-state .error-hint{font-size:.9rem;opacity:.85;font-style:italic}.error-state .retry-button,.error-state .close-error-button{padding:.5rem 1rem;font-size:.875rem;align-self:center}.order-client-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.order-client-row section{margin-bottom:0}.order-header-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.header-item{display:flex;flex-direction:column;gap:.25rem}.header-item .label{font-size:.8rem;color:var(--color-text-secondary)}.header-item .value{font-weight:500}.client-info{line-height:1.5}.client-name{font-weight:600}.client-address,.client-location,.client-country{color:var(--color-text-secondary)}.lines-table{width:100%;border-collapse:collapse;font-size:.9rem}.lines-table th,.lines-table td{padding:.5rem;text-align:left;border-bottom:1px solid var(--color-border)}.lines-table th{font-weight:600;color:var(--color-text-secondary);font-size:.8rem;text-transform:uppercase}.lines-table td.code{font-family:monospace;font-size:.85rem}.lines-table td.description{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lines-table th.number,.lines-table th.currency,.lines-table td.number,.lines-table td.currency{text-align:right}.lines-table td.currency{font-family:monospace}.totals-table{width:100%;border-collapse:collapse;font-size:.9rem}.totals-table td{padding:.5rem;border-bottom:1px solid var(--color-border)}.totals-table td:first-child{text-align:left;color:var(--color-text-secondary)}.totals-table td.currency{text-align:right;font-family:monospace}.totals-table tr.grand-total td{font-weight:600;font-size:1.1rem;border-top:2px solid var(--color-border);color:var(--color-text-primary)}@media (max-width: 768px){.order-client-row{grid-template-columns:1fr;gap:1rem}.order-header-grid{grid-template-columns:1fr}}@media (max-width: 600px){.external-offer-modal{max-height:100vh;border-radius:0}.lines-table{font-size:.75rem}.lines-table th,.lines-table td{padding:.25rem}.lines-table .col-line-number,.lines-table .col-unit{display:none}.lines-table td.code{max-width:60px;overflow:hidden;text-overflow:ellipsis}.lines-table td.description{max-width:100px}.lines-table td.currency{font-size:.7rem}.totals-table{font-size:.75rem}.totals-table td{padding:.25rem}.totals-table td.currency{font-size:.7rem}.totals-table tr.grand-total td{font-size:.85rem}}.comparison-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.comparison-modal{background:var(--color-bg-primary);border-radius:8px;max-width:1200px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary) 20%,transparent);animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.comparison-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border)}.comparison-header h2{margin:0;font-size:1.25rem}.comparison-header .close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-secondary);padding:.25rem .5rem;line-height:1}.comparison-header .close-button:hover{color:var(--color-text-primary)}.comparison-content{flex:1;overflow-y:auto;padding:1.5rem}.loading-state{text-align:center;padding:2rem;color:var(--color-text-secondary)}.comparison-content .error-state{padding:1.5rem;border-radius:8px;display:flex;align-items:flex-start;gap:1rem;flex-wrap:wrap}.comparison-content .error-state.error-general{background:var(--color-error-bg, #fee2e2);border:1px solid var(--color-error);color:var(--color-error)}.comparison-content .error-state.error-unavailable{background:var(--color-warning-bg);border:1px solid var(--color-warning);color:var(--color-warning-text)}.comparison-content .error-state.error-deleted{background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary)}.comparison-content .error-state .error-icon{font-size:2rem;flex-shrink:0}.comparison-content .error-state .error-content{flex:1}.comparison-content .error-state .error-content strong{display:block;margin-bottom:.5rem;color:inherit;font-size:1rem}.comparison-content .error-state .error-content p{margin:0;line-height:1.5}.comparison-content .error-state .retry-button,.comparison-content .error-state .close-error-button{padding:.5rem 1rem;font-size:.875rem;align-self:center}.match-status{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;border-radius:4px;margin-bottom:1.5rem;font-weight:600}.match-status.match{background:color-mix(in srgb,var(--color-success, #22c55e) 15%,var(--color-bg-primary));color:var(--color-success, #22c55e);border:1px solid var(--color-success, #22c55e)}.match-status.mismatch{background:var(--color-warning-bg);border:1px solid var(--color-warning);color:var(--color-warning-text)}.match-status .icon{font-size:1.2rem}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.version-column{min-width:0}.version-column h3{margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-border)}.version-column.local h3{border-color:var(--color-primary, #3b82f6)}.version-column.external h3{border-color:var(--color-success, #22c55e)}.version-summary{display:flex;gap:2rem;margin-bottom:1rem;padding:1rem;background:var(--color-bg-secondary);border-radius:4px}.summary-item{display:flex;flex-direction:column;gap:.25rem}.summary-item .label{font-size:.8rem;color:var(--color-text-secondary)}.summary-item .value{font-weight:600;font-family:monospace}.summary-item .value.highlight{color:var(--color-warning-text);background:var(--color-warning-bg);padding:.125rem .5rem;border-radius:4px}.items-table{width:100%;border-collapse:collapse;font-size:.8rem}.items-table th,.items-table td{padding:.375rem .5rem;text-align:left;border-bottom:1px solid var(--color-border)}.items-table th{font-weight:600;color:var(--color-text-secondary);font-size:.75rem;text-transform:uppercase}.items-table td.code{font-family:monospace;font-size:.75rem}.items-table td.desc{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.items-table th.number,.items-table th.currency,.items-table td.qty,.items-table td.total{text-align:right}.items-table td.qty,.items-table td.total{font-family:monospace}.difference-summary{margin-top:1.5rem;padding:1rem;background:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:4px}.difference-summary h4{margin:0 0 .5rem;color:var(--color-warning-text)}.difference-summary ul{margin:0;padding-left:1.25rem}.difference-summary li{margin-bottom:.25rem;color:var(--color-warning-text)}@media (max-width: 900px){.comparison-grid{grid-template-columns:1fr}.version-column{padding-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.version-column:last-child{border-bottom:none;padding-bottom:0}}@media (max-width: 600px){.comparison-modal{max-height:100vh;border-radius:0}.version-summary{flex-direction:column;gap:.5rem}.items-table td.desc{max-width:100px}}.vat-code-selector{display:flex;flex-direction:column;gap:.5rem}.vat-code-selector label{font-weight:600;color:var(--color-text-secondary);font-size:.9rem}.vat-code-selector__select{padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-size:1rem;background-color:var(--color-bg-primary);color:var(--color-text-primary);cursor:pointer;transition:border-color .2s ease}.vat-code-selector__select:hover:not(:disabled){border-color:var(--color-primary)}.vat-code-selector__select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #4299e11a}.vat-code-selector__select:disabled{background-color:var(--color-bg-secondary);cursor:not-allowed;opacity:.6}.vat-code-selector__error{color:var(--color-error);font-size:.875rem;margin-top:.25rem}@media (max-width: 768px){.vat-code-selector__select{font-size:.9rem;padding:.6rem}}.questions-list{padding:0;min-height:100vh}.pricing-group-links{padding:1rem;background-color:var(--color-bg-secondary);border-radius:4px;border:1px solid var(--color-border)}.pricing-group-links__label{display:block;font-weight:600;font-size:.9rem;color:var(--color-text-primary);margin-bottom:.75rem}.pricing-group-links.loading,.pricing-group-links.error{text-align:center;padding:2rem}.pricing-group-links.error .error-message{color:var(--color-error);margin-bottom:1rem}.pricing-group-links.error .btn-retry{padding:.5rem 1rem;background-color:var(--color-text-secondary);color:var(--color-bg-primary);border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:opacity .15s ease-in-out}.pricing-group-links.error .btn-retry:hover{opacity:.8}.linked-groups-list{list-style:none;padding:0;margin:0 0 1.5rem}.linked-group-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;margin-bottom:.5rem;background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:4px;transition:border-color .15s ease-in-out}.linked-group-item:hover{border-color:var(--color-accent)}.linked-group-item .group-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.linked-group-item .group-info strong{color:var(--color-text-primary);font-size:1rem}.linked-group-item .group-description{color:var(--color-text-secondary);font-size:.875rem}.linked-group-item .icon-button-wrapper{flex-shrink:0}.no-links{color:var(--color-text-secondary);font-style:italic;margin:1rem 0}.add-link-section{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.pricing-group-select{flex:1;min-width:0;padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-size:.95rem;background-color:var(--color-bg-primary);color:var(--color-text-primary)}.pricing-group-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 10%,transparent)}.info-message{color:var(--color-text-secondary);font-style:italic;margin:1rem 0}@media (max-width: 600px){.add-link-section{flex-direction:column;align-items:stretch}.add-link-section .icon-button-wrapper{align-self:flex-end}.linked-group-item{flex-direction:column;align-items:flex-start;gap:.75rem}.linked-group-item .icon-button-wrapper{align-self:flex-end}}@media (prefers-color-scheme: dark){.pricing-group-select option{background-color:var(--color-bg-primary);color:var(--color-text-primary)}}.inline-formula-add-wrapper{margin-left:0}.inline-formula-display{display:flex;align-items:center;gap:.5rem;padding:.75rem;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:4px;transition:background-color .15s ease-in-out}.inline-formula-display:hover{background-color:var(--color-bg-primary)}.inline-formula-code{flex:1;font-family:Monaco,Courier New,monospace;font-size:.875rem;color:var(--color-text-primary);font-weight:500}.inline-formula-code--pending{color:var(--color-accent, #0066cc);font-style:italic}.inline-formula-actions{display:flex;gap:.5rem;flex-shrink:0}.inline-formula-editor{padding:.5rem;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:4px}.inline-formula-editor-row{display:flex;align-items:center;gap:.5rem}.inline-formula-input{flex:1;padding:.5rem;border:1px solid var(--color-border);border-radius:4px;font-size:.875rem;font-family:Monaco,Courier New,monospace;background-color:var(--color-bg-primary);color:var(--color-text-primary)}.inline-formula-input--error{border-color:#c33}.inline-formula-validating{display:block;font-size:.75rem;color:var(--color-accent);font-style:italic;margin-top:.5rem}.inline-formula-error{font-size:.75rem;color:var(--color-error);background-color:color-mix(in srgb,var(--color-error) 10%,var(--color-bg-primary));border:1px solid color-mix(in srgb,var(--color-error) 30%,transparent);border-radius:4px;padding:.5rem;margin-top:.5rem}.dependency-selector{padding:1rem;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-secondary)}.dependency-selector__label{display:block;margin-bottom:.5rem;font-weight:600;font-size:.9rem;color:var(--color-text-primary)}.dependency-selector__parent{margin-bottom:0}.dependency-selector__parent select{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-size:.95rem;background-color:var(--color-bg-primary);color:var(--color-text-primary)}.dependency-selector__parent select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 10%,transparent)}.dependency-selector__select--disabled{opacity:.6;cursor:not-allowed;background-color:var(--color-bg-secondary)}.dependency-selector__help{display:block;margin-top:.5rem;font-size:.8rem;color:var(--color-text-secondary);font-style:italic}.dependency-selector__triggers{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.dependency-selector__triggers>label{display:block;margin-bottom:.75rem;font-weight:600;font-size:.9rem;color:var(--color-text-primary)}.dependency-selector__trigger-options{display:flex;flex-direction:column;gap:.5rem}.dependency-selector__trigger-option{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:4px;cursor:pointer;transition:border-color .2s ease,background-color .2s ease;color:var(--color-text-primary)}.dependency-selector__trigger-option:hover{border-color:var(--color-accent);background-color:color-mix(in srgb,var(--color-accent) 5%,transparent)}.dependency-selector__trigger-option input[type=checkbox]{margin:0;cursor:pointer}.dependency-selector__trigger-option span{flex:1;cursor:pointer;color:inherit}.dependency-selector__validation-error{color:var(--color-error);font-size:.85rem;margin-bottom:.75rem;padding:.5rem;background-color:color-mix(in srgb,var(--color-error) 10%,var(--color-bg-primary));border:1px solid color-mix(in srgb,var(--color-error) 30%,transparent);border-radius:4px}.dependency-selector__warning{padding:.75rem;background-color:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:4px;margin-top:1rem;color:var(--color-warning-text)}.dependency-selector__warning strong{color:var(--color-warning-text)}@media (max-width: 768px){.dependency-selector{padding:.75rem}}.question-edit{width:100%}.question-edit__content{max-width:800px;margin:0 auto}.question-edit__header-actions{display:flex;gap:.5rem}.icon-button--primary{background-color:var(--color-text-secondary);color:var(--color-bg-primary);border-color:var(--color-text-secondary)}.icon-button--primary:hover:not(:disabled){opacity:.8}.icon-button--danger{color:var(--color-error, #dc3545)}.icon-button--danger:hover:not(:disabled){background-color:#fee;border-color:#fcc}@media (prefers-color-scheme: dark){.icon-button--danger:hover:not(:disabled){background-color:#4a1a1a;border-color:#8a3a3a}}.question-edit__title{font-size:1.75rem;font-weight:600;color:var(--color-text-primary);margin:0}.question-edit__loading{text-align:center;padding:2rem;color:var(--color-text-secondary);font-size:1.125rem}.question-edit__error{padding:1rem;background-color:#fee;border:1px solid #fcc;border-radius:4px;color:#c00;margin-bottom:1.5rem}@media (prefers-color-scheme: dark){.question-edit__error{background-color:#4a1a1a;border-color:#8a3a3a;color:#faa}}.question-edit__form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 2rem}@media (max-width: 768px){.question-edit__form-grid{grid-template-columns:1fr;gap:1.5rem}}.question-edit__field--full{grid-column:1 / -1}.question-edit__field{margin-bottom:0}.question-edit__field:last-of-type{margin-bottom:0}.question-edit__label{display:block;font-weight:500;font-size:.875rem;color:var(--color-text-primary);margin-bottom:.5rem}.question-edit__required{color:var(--color-error, #c00)}.question-edit__textarea,.question-edit__select,.question-edit__input{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-primary);color:var(--color-text-primary);font-size:1rem;font-family:inherit;transition:border-color .2s ease-in-out}.question-edit__textarea{resize:vertical;min-height:100px}.question-edit__textarea:focus,.question-edit__select:focus,.question-edit__input:focus{outline:2px solid var(--color-accent);outline-offset:0;border-color:var(--color-accent)}.question-edit__textarea--error,.question-edit__select--error,.question-edit__input--error{border-color:var(--color-error, #c00)}.question-edit__field-error{display:block;margin-top:.25rem;font-size:.875rem;color:var(--color-error, #c00)}.question-edit__validation-error{display:block;margin-top:.5rem;font-size:.75rem;color:#c33;background-color:#fee;border:1px solid #fcc;border-radius:3px;padding:.5rem}@media (prefers-color-scheme: dark){.question-edit__validation-error{background-color:#4a1a1a;border-color:#8a3a3a;color:#faa}}.question-edit__field-help{display:block;margin-top:.25rem;font-size:.875rem;color:var(--color-text-secondary);font-style:italic}.question-edit__metadata{padding:.75rem;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:4px;font-size:.875rem;color:var(--color-text-secondary);font-style:italic}.question-edit__work-types{display:flex;flex-direction:column;gap:.75rem;padding:.75rem;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-primary);max-height:300px;overflow-y:auto}.question-edit__work-type-item{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.5rem;border-radius:4px;transition:background-color .15s ease-in-out}.question-edit__work-type-item:hover{background-color:var(--color-bg-secondary)}.question-edit__work-type-item input[type=checkbox]{width:1.25rem;height:1.25rem;cursor:pointer;flex-shrink:0}.question-edit__work-type-item span{font-size:1rem;color:var(--color-text-primary)}.question-edit__field--checkbox{display:flex;align-items:flex-end;padding-bottom:.75rem}.question-edit__checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:1rem;color:var(--color-text-primary)}.question-edit__checkbox{width:1.25rem;height:1.25rem;cursor:pointer}.question-edit__actions{display:flex;gap:1rem;justify-content:space-between;padding-top:1.5rem;border-top:1px solid var(--color-border);margin-top:1.5rem}.question-edit__actions-left,.question-edit__actions-right{display:flex;gap:1rem}.question-edit__button{padding:.75rem 1.5rem;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;border:none}.question-edit__button:disabled{opacity:.5;cursor:not-allowed}.question-edit__button--cancel{background-color:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border)}.question-edit__button--cancel:hover:not(:disabled){background-color:var(--color-bg-primary);border-color:var(--color-text-secondary)}.question-edit__button--submit{background-color:var(--color-text-secondary);color:var(--color-bg-primary)}.question-edit__button--submit:hover:not(:disabled){opacity:.8;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.question-edit__button--submit:active:not(:disabled){transform:translateY(0)}.question-edit__button--delete{background-color:#dc3545;color:#fff;border:none}.question-edit__button--delete:hover:not(:disabled){background-color:#c82333;transform:translateY(-1px);box-shadow:0 2px 4px #dc35454d}.question-edit__button--delete:active:not(:disabled){transform:translateY(0)}.question-edit__modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.question-edit__modal{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:8px;padding:2rem;max-width:500px;width:90%;box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary) 20%,transparent)}.question-edit__modal-title{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin:0 0 1rem}.question-edit__modal-message{font-size:1rem;color:var(--color-text-secondary);margin:0 0 1.5rem;line-height:1.5}.question-edit__modal-actions{display:flex;gap:1rem;justify-content:flex-end}.question-edit__options{max-height:500px;overflow-y:auto}.question-edit__options-empty{text-align:center;padding:2rem;color:var(--color-text-secondary);font-style:italic}.question-edit__option{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-secondary);margin-bottom:.75rem;transition:background-color .15s ease-in-out}.question-edit__option:last-child{margin-bottom:0}.question-edit__option:hover{background-color:var(--color-bg-primary)}.question-edit__option-field{display:flex;flex-direction:column;gap:.5rem}.question-edit__option-label{font-size:.75rem;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.question-edit__option-input{padding:.5rem;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-primary);color:var(--color-text-primary);font-size:1rem;font-family:inherit;transition:border-color .2s ease-in-out}.question-edit__option-input:focus{outline:2px solid var(--color-accent);outline-offset:0;border-color:var(--color-accent)}.question-edit__option-actions{display:flex;justify-content:center;gap:.5rem;padding-top:1rem;border-top:1px solid var(--color-border);margin-top:.5rem}.question-edit__option-button{flex:1;padding:.625rem 1rem;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-primary);color:var(--color-text-primary);cursor:pointer;font-size:.875rem;font-weight:500;display:flex;align-items:center;justify-content:center;gap:.375rem;transition:all .15s ease-in-out}.question-edit__option-button:hover:not(:disabled){background-color:var(--color-bg-secondary);border-color:var(--color-text-secondary);transform:translateY(-1px)}.question-edit__option-button:disabled{opacity:.4;cursor:not-allowed}.question-edit__option-button--delete{color:#c00}.question-edit__option-button--delete:hover:not(:disabled){background-color:#fee;border-color:#fcc}@media (prefers-color-scheme: dark){.question-edit__option-button--delete:hover:not(:disabled){background-color:#4a1a1a;border-color:#8a3a3a}}.question-edit__add-option-button{width:100%;padding:.75rem;border:2px dashed var(--color-border);border-radius:4px;background-color:transparent;color:var(--color-accent);cursor:pointer;font-size:1rem;font-weight:500;transition:all .15s ease-in-out;margin-bottom:.5rem}.question-edit__add-option-button:hover{background-color:var(--color-bg-secondary);border-color:var(--color-accent)}.question-edit__section-box{padding:1rem;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-secondary)}.question-edit__section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.question-edit__section-label{display:block;font-weight:600;font-size:.9rem;color:var(--color-text-primary);margin-bottom:.75rem}.question-edit__section-header .question-edit__section-label{margin-bottom:0}.question-edit__option-pricing{width:100%}.question-edit__option-pricing-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.question-edit__pricing-items-list{display:flex;flex-direction:column;gap:.5rem}.question-edit__pricing-items-empty{padding:.75rem;text-align:center;color:var(--color-text-secondary);font-size:.875rem;font-style:italic;background-color:var(--color-bg-secondary);border:1px dashed var(--color-border);border-radius:4px}.question-edit__pricing-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:4px;transition:background-color .15s ease-in-out}.question-edit__pricing-item:hover{background-color:var(--color-bg-primary)}.question-edit__pricing-item-content{display:flex;gap:.75rem;align-items:center;flex:1;flex-wrap:wrap}.question-edit__pricing-item-nr{font-size:.75rem;font-weight:600;color:var(--color-text-secondary);background-color:var(--color-bg-primary);padding:.25rem .5rem;border-radius:3px}.question-edit__pricing-item-desc{flex:1;font-size:.875rem;color:var(--color-text-primary)}.question-edit__pricing-item-price{font-size:.875rem;font-weight:600;color:var(--color-accent)}.question-edit__pricing-item-actions{display:flex;gap:.5rem;flex-shrink:0}.question-edit__pricing-item-missing{display:flex;align-items:center;justify-content:space-between;width:100%;color:var(--color-text-secondary);font-size:.875rem;font-style:italic}.question-edit__modal--large{max-width:900px;width:95%}.question-edit__pricing-item-wrapper{margin-bottom:8px}.question-edit__pricing-item-formula{margin-top:4px;margin-left:0}@media (max-width: 768px){.question-edit,.question-edit__option{padding:1rem}.question-edit__actions{flex-direction:column-reverse}.question-edit__button{width:100%}.question-edit__option-actions{flex-direction:column;gap:.5rem}.question-edit__option-button{width:100%}.question-edit__pricing-item-content{flex-direction:column;align-items:flex-start;gap:.5rem}}.pricing-group-rule-editor{margin-top:20px}.rule-grid{display:grid;grid-template-columns:100px 1fr 1fr;gap:10px}.pricing-item-code-field{display:flex;gap:5px}@media (max-width: 768px){.rule-grid{grid-template-columns:1fr;gap:15px}.pricing-item-code-field{flex-direction:column}.pricing-item-code-field input{width:100%}.pricing-item-code-field button{width:100%;padding:10px!important}}.pricing-group-form__error{padding:12px;background-color:color-mix(in srgb,var(--color-error) 15%,var(--color-bg-primary));color:var(--color-error);border:1px solid var(--color-error);border-radius:4px;margin-bottom:20px}.pricing-group-form__row{display:flex;flex-direction:column;gap:20px;margin-bottom:20px}.pricing-group-form__field{flex:1}.pricing-group-form__field--full{width:100%}.pricing-group-form__label{display:block;margin-bottom:5px;font-weight:700}.pricing-group-form__input,.pricing-group-form__textarea{width:100%;padding:10px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;background-color:var(--color-bg-primary);color:var(--color-text-primary)}.pricing-group-form__input--error,.pricing-group-form__textarea--error{border-color:var(--color-error)}.pricing-group-form__textarea{resize:vertical}.pricing-group-form__error-text{color:var(--color-error);font-size:13px}.pricing-group-form__hint{display:block;margin-top:5px;color:var(--color-text-secondary);font-size:12px}.pricing-group-form__section{margin-top:30px;margin-bottom:20px}.pricing-group-form__section-title{margin-bottom:15px;font-size:16px;font-weight:700;color:var(--color-text-primary)}.pricing-group-form__section-description{margin-bottom:15px;font-size:13px;color:var(--color-text-secondary)}.pricing-group-form__formulas{display:flex;flex-direction:column;gap:10px}.pricing-group-form__formula-item{padding:12px;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:4px}.pricing-group-form__formula-header{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.pricing-group-form__formula-code{font-weight:600;font-size:14px;color:var(--color-text-primary)}.pricing-group-form__formula-description{font-size:13px;color:var(--color-text-secondary)}@media (min-width: 600px){.pricing-group-form__row--two-col{flex-direction:row}}.pricing-groups__form-container{max-width:800px;margin:0 auto;background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:8px;padding:2rem}@media (max-width: 480px){.pricing-groups__form-container{padding:1rem}}.pricing-groups__modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.pricing-groups__modal{background-color:var(--color-bg-primary);border-radius:8px;padding:1.5rem;max-width:400px;width:100%;box-shadow:0 8px 32px #0003}.pricing-groups__modal-title{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.pricing-groups__modal-message{margin:0 0 1.5rem;color:var(--color-text-secondary);line-height:1.5}.pricing-groups__modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.pricing-groups__modal-button{padding:.625rem 1.25rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:opacity .2s;background-color:var(--color-text-secondary);color:var(--color-bg-primary)}.pricing-groups__modal-button:hover{opacity:.8}.pricing-groups__modal-button--danger{background-color:var(--color-error);color:#fff}.chat{display:flex;flex-direction:column;height:100%;background-color:var(--color-bg-primary)}.chat__header{display:flex;align-items:center;justify-content:flex-end;padding:.75rem 1rem}.chat__messages{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;background-color:var(--color-bg-primary);min-height:0;max-width:1200px;width:100%;margin:0 auto}.chat__message{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border-radius:8px;max-width:80%;border:1px solid var(--color-border)}.chat__message--user{align-self:flex-end;background-color:var(--color-text-secondary);color:var(--color-bg-primary);border-color:var(--color-text-secondary)}.chat__message--assistant{align-self:flex-start;background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.chat__message--streaming{border:2px dashed var(--color-accent);animation:pulse 1.5s ease-in-out infinite}.chat__message--error{align-self:stretch;max-width:100%;background-color:color-mix(in srgb,var(--color-error) 10%,var(--color-bg-primary));color:var(--color-text-primary);border:1px solid color-mix(in srgb,var(--color-error) 30%,transparent);border-left:4px solid var(--color-error);display:flex;flex-direction:row;gap:1rem;align-items:flex-start}.chat__error-icon{font-size:1.5rem;flex-shrink:0;line-height:1}.chat__error-content{flex:1;display:flex;flex-direction:column;gap:.5rem}.chat__error-title{font-weight:700;font-size:1rem;color:var(--color-error);text-transform:uppercase;letter-spacing:.05em}.chat__error-message{font-size:.95rem;line-height:1.5;color:var(--color-text-primary)}.chat__error-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.25rem}.chat__error-hint{font-size:.85rem;font-style:italic;color:var(--color-text-secondary);opacity:.8;flex:1}.chat__error-retry{padding:.4rem .9rem;background-color:transparent;color:var(--color-error);border:1px solid var(--color-error);border-radius:4px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.chat__error-retry:hover{background-color:var(--color-error);color:var(--color-bg-primary)}.chat__message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.chat__message-role{font-size:.75rem;font-weight:600;text-transform:uppercase;opacity:.8}.chat__copy-button{display:flex;align-items:center;gap:.35rem;padding:.35rem .6rem;background-color:color-mix(in srgb,var(--color-text-primary) 5%,transparent);border:1px solid color-mix(in srgb,var(--color-text-primary) 25%,transparent);border-radius:4px;color:var(--color-text-primary);font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s;opacity:0}.chat__message:hover .chat__copy-button{opacity:1}.chat__copy-button:hover{background-color:color-mix(in srgb,var(--color-text-primary) 8%,transparent);border-color:color-mix(in srgb,var(--color-text-primary) 30%,transparent);color:var(--color-text-primary)}.chat__copy-button:active{transform:scale(.95)}.chat__copy-button--copied{opacity:1!important;color:var(--color-success, #10b981);border-color:color-mix(in srgb,var(--color-success, #10b981) 30%,transparent);background-color:color-mix(in srgb,var(--color-success, #10b981) 5%,transparent)}.chat__copy-icon{font-size:.9rem;line-height:1}.chat__copy-text{line-height:1;white-space:nowrap}.chat__message-content{font-size:.95rem;line-height:1.6;word-wrap:break-word;overflow-x:auto}.chat__message-content h1,.chat__message-content h2,.chat__message-content h3,.chat__message-content h4,.chat__message-content h5,.chat__message-content h6{margin:.75em 0 .5em;font-weight:600}.chat__message-content h1{font-size:1.5em}.chat__message-content h2{font-size:1.3em}.chat__message-content h3{font-size:1.1em}.chat__message-content p{margin:.5em 0}.chat__message-content p:first-child{margin-top:0}.chat__message-content p:last-child{margin-bottom:0}.chat__message-content strong{font-weight:600}.chat__message-content em{font-style:italic}.chat__message-content code{background-color:color-mix(in srgb,var(--color-text-primary) 10%,transparent);padding:.15em .4em;border-radius:3px;font-family:Monaco,Courier New,monospace;font-size:.9em}.chat__message-content pre{background-color:color-mix(in srgb,var(--color-text-primary) 10%,transparent);padding:1em;border-radius:4px;overflow-x:auto;margin:.75em 0}.chat__message-content pre code{background-color:transparent;padding:0;border-radius:0}.chat__message-content ul,.chat__message-content ol{margin:.75em 0;padding-left:2em}.chat__message-content li{margin:.25em 0}.chat__message-content blockquote{border-left:3px solid var(--color-accent);padding-left:1em;margin:.75em 0;opacity:.9}.chat__message-content a{color:var(--color-accent);text-decoration:underline}.chat__message-content a:hover{opacity:.8}.chat__message-content hr{border:none;border-top:1px solid var(--color-border);margin:1em 0}.chat__message-content table{border-collapse:separate;border-spacing:0;width:100%;margin:.75em 0;border:1px solid var(--color-border);border-radius:6px;font-size:.9em;overflow:hidden}.chat__message-content th,.chat__message-content td{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:.6em .8em;text-align:left;vertical-align:top}.chat__message-content th:last-child,.chat__message-content td:last-child{border-right:none}.chat__message-content tr:last-child td{border-bottom:none}.chat__message-content th{background-color:color-mix(in srgb,var(--color-accent) 15%,var(--color-bg-primary));font-weight:600;border-bottom:2px solid var(--color-accent);white-space:nowrap;color:var(--color-text-primary)}.chat__message-content thead tr:first-child th:first-child{border-top-left-radius:5px}.chat__message-content thead tr:first-child th:last-child{border-top-right-radius:5px}.chat__message-content tbody tr:nth-child(2n){background-color:color-mix(in srgb,var(--color-text-primary) 3%,transparent)}.chat__message-content tbody tr:hover{background-color:color-mix(in srgb,var(--color-accent) 5%,transparent);transition:background-color .15s}.chat__message--user .chat__message-content code,.chat__message--user .chat__message-content pre{background-color:color-mix(in srgb,var(--color-bg-primary) 20%,transparent)}.chat__tool-uses{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem;padding:.75rem;background-color:color-mix(in srgb,var(--color-accent) 8%,transparent);border-left:3px solid var(--color-accent);border-radius:4px}.chat__tool-use{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--color-text-secondary)}.chat__tool-use-icon{font-size:1rem;flex-shrink:0}.chat__tool-use-name{font-weight:600;color:var(--color-accent);text-transform:capitalize}.chat__tool-use-input{font-style:italic;color:var(--color-text-primary);opacity:.9}.chat__empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--color-text-secondary);text-align:center;padding:2rem}.chat__empty-state p{margin:.5rem 0}.chat__empty-state-hint{font-size:.85rem;font-style:italic}.chat__input-form{border-top:1px solid var(--color-border);padding:1rem;background-color:var(--color-bg-secondary);max-width:1200px;width:100%;margin:0 auto}.chat__input-container{display:flex;flex-direction:row;gap:.75rem;align-items:flex-end}.chat__input{flex:1;padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-family:inherit;font-size:.95rem;resize:vertical;min-height:60px;max-height:200px;background-color:var(--color-bg-primary);color:var(--color-text-primary)}.chat__input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 10%,transparent)}.chat__input:disabled{background-color:var(--color-bg-secondary);cursor:not-allowed;opacity:.6}.chat__button{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .2s;height:60px;white-space:nowrap;flex-shrink:0}.chat__button--send{background-color:var(--color-text-secondary);color:var(--color-bg-primary)}.chat__button--send:hover:not(:disabled){opacity:.8}.chat__button--send:disabled{background-color:var(--color-text-secondary);cursor:not-allowed;opacity:.6}.chat__button--cancel{background-color:var(--color-error);color:#fff}.chat__button--cancel:hover{opacity:.9}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@media (max-width: 480px){.chat__messages{padding:1rem .5rem}.chat__message{max-width:90%;padding:.75rem}.chat__input-form{padding:.75rem .5rem}.chat__input-container{gap:.5rem}.chat__input{min-height:44px;padding:.5rem;font-size:.9rem}.chat__button{padding:.5rem 1rem;height:44px;font-size:.85rem}}@media (max-width: 360px){.chat__input-form{padding:.5rem}.chat__button{padding:.5rem .75rem}}.chat-page{position:fixed;top:65px;left:0;right:0;bottom:0;display:flex;flex-direction:column}.chat-page__content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.settings-container{max-width:800px;margin:0 auto;padding:0 2rem 2rem}.settings-title{font-size:2.5rem;font-weight:600;color:var(--color-text-primary);margin:0 0 2rem;text-align:center}.settings-loading,.settings-error{padding:2rem;text-align:center;color:var(--color-text-secondary);font-size:1.125rem}.settings-error{color:var(--color-error)}.settings-error button{margin-top:1rem}.settings-section{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.settings-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.settings-section-title{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin:0}.settings-header-actions{display:flex;gap:.5rem}.settings-notice{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:6px;margin-bottom:1.5rem;font-size:.95rem}.settings-notice--warning{background:#ffc1071a;border:1px solid rgba(255,193,7,.3);color:var(--color-text-primary)}.settings-notice-icon{font-size:1.25rem}.settings-status{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.75rem 1rem;background:var(--color-bg-primary);border-radius:6px;font-size:.95rem}.settings-status-label{color:var(--color-text-secondary);font-weight:500}.settings-status-value{font-weight:600}.settings-status--connected{color:var(--color-success, #28a745)}.settings-status--configured,.settings-status--not_configured{color:var(--color-text-secondary)}.settings-status--reauth_required{color:var(--color-warning, #ffc107)}.settings-status-detail{color:var(--color-text-secondary);font-size:.875rem}.settings-field{margin-bottom:1.25rem}.settings-label{display:block;font-size:.95rem;font-weight:500;color:var(--color-text-primary);margin-bottom:.5rem}.settings-secret-saved{color:var(--color-success, #28a745);font-weight:400;font-size:.875rem}.settings-input,.settings-select{width:100%;padding:.75rem 1rem;font-size:1rem;color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;transition:border-color .2s ease,box-shadow .2s ease}.settings-input:focus,.settings-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #007bff1a}.settings-input:disabled,.settings-select:disabled{background:var(--color-bg-tertiary, #f5f5f5);cursor:not-allowed;opacity:.6}.settings-input::placeholder{color:var(--color-text-tertiary, #999)}.settings-hint{display:block;margin-top:.375rem;font-size:.8125rem;color:var(--color-text-secondary)}.settings-bouwsoft-config{padding-top:.5rem}.settings-actions{display:flex;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.settings-btn{padding:.75rem 1.5rem;font-size:1rem;font-weight:600;border-radius:6px;cursor:pointer;transition:opacity .2s ease,transform .1s ease}.settings-btn:disabled{cursor:not-allowed;opacity:.6;background:var(--color-bg-tertiary, #e0e0e0)!important;color:var(--color-text-tertiary, #999)!important;border-color:var(--color-border)!important}.settings-btn--primary{background:var(--color-text-secondary);color:var(--color-bg-primary);border:none}.settings-btn--primary:hover:not(:disabled){opacity:.8}.settings-btn--secondary{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.settings-btn--secondary:hover:not(:disabled){background:var(--color-bg-primary);border-color:var(--color-text-secondary)}.settings-btn--danger{background:var(--color-error);color:#fff;border:none}.settings-btn--danger:hover:not(:disabled){opacity:.9}.settings-btn--auth{background:var(--color-text-secondary);color:var(--color-bg-primary);border:none}.settings-btn--auth:hover:not(:disabled){opacity:.8}.settings-message{margin-top:1rem;padding:.75rem 1rem;border-radius:6px;font-size:.95rem}.settings-message--success{background:#28a7451a;border:1px solid rgba(40,167,69,.3);color:var(--color-success, #28a745)}.settings-message--error{background:#dc35451a;border:1px solid rgba(220,53,69,.3);color:var(--color-error)}@media (max-width: 600px){.settings-container{max-width:100%;margin:0;padding:0 1rem 2rem}.settings-title{font-size:2rem}.settings-section{padding:1rem}.settings-actions{flex-direction:column}.settings-btn{width:100%}.settings-status{flex-wrap:wrap}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;color:var(--color-text-primary)}.App{padding:80px 1rem 20px;min-height:100vh}@media (max-width: 600px){.App{max-width:100%!important;margin:0!important;padding:70px .5rem 20px!important}}h1{color:var(--color-text-primary);margin-bottom:30px;font-size:2.5rem}h2{color:var(--color-text-primary);margin:20px 0 15px;font-size:1.8rem}h3{color:var(--color-text-secondary);margin:15px 0 10px;font-size:1.3rem}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--color-text-primary)}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel],.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:10px;border:1px solid var(--color-border);border-radius:4px;font-size:1rem;font-family:inherit;background-color:var(--color-bg-primary);color:var(--color-text-primary)}.form-group textarea{resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 10%,transparent)}.form-actions{display:flex;gap:10px;margin-top:30px;justify-content:space-between}button{padding:12px 24px;background-color:var(--color-text-secondary);color:var(--color-bg-primary);border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s,opacity .2s}button:hover{opacity:.8}button:disabled{background-color:var(--color-text-secondary);opacity:.6;cursor:not-allowed}.checkbox-group,.radio-group{display:flex;flex-direction:column;gap:10px}.checkbox-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;padding:8px;border-radius:4px;transition:background-color .2s}.checkbox-label:hover{background-color:var(--color-bg-secondary)}.checkbox-label input[type=checkbox],.radio-group input[type=radio]{width:auto;cursor:pointer;flex-shrink:0;margin-top:2px;margin-right:10px}.error{color:var(--color-error);background-color:color-mix(in srgb,var(--color-error) 15%,var(--color-bg-primary));padding:12px;border-radius:4px;margin-bottom:20px;border-left:4px solid var(--color-error)}.form-group .error{font-size:.875rem;margin-top:4px;padding:4px;background:none;border:none}.required{color:var(--color-error)}.client-selection{min-height:100vh;padding-top:0}.mode-selector{margin:30px 0}.mode-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:30px}.mode-tab{flex:1;padding:15px 30px;background-color:transparent;color:var(--color-text-secondary);border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.mode-tab:hover{background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.mode-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent);background-color:transparent}.existing-clients,.new-client{margin:30px 0}.existing-clients select{width:100%;padding:10px;margin-bottom:15px;border:1px solid var(--color-border);border-radius:4px;font-size:1rem;background-color:var(--color-bg-primary);color:var(--color-text-primary)}.client-list{max-width:100%}.client-list h2{margin-bottom:20px}.search-bar{margin-bottom:25px}.search-input{width:100%;padding:12px 16px;border:2px solid var(--color-border);border-radius:6px;font-size:1rem;transition:border-color .2s;background-color:var(--color-bg-primary);color:var(--color-text-primary)}.search-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 10%,transparent)}.client-list-loading,.client-list-error,.no-clients{text-align:center;padding:40px 20px;color:var(--color-text-secondary)}.client-list-error{color:var(--color-error)}.clients-list{display:flex;flex-direction:column;gap:12px;margin-bottom:25px}.client-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background-color:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s}.client-item:hover{background-color:var(--color-bg-primary);border-color:var(--color-accent);transform:translate(4px);box-shadow:0 2px 8px color-mix(in srgb,var(--color-text-primary) 10%,transparent)}.client-item:focus{outline:2px solid var(--color-accent);outline-offset:2px}.client-info{flex:1}.client-name{margin-bottom:8px;font-size:1.1rem}.client-name strong{color:var(--color-text-primary)}.client-details{display:flex;flex-wrap:wrap;gap:16px;font-size:.9rem;color:var(--color-text-secondary)}.client-email,.client-phone,.client-address{display:flex;align-items:center;gap:6px}.client-email svg,.client-phone svg,.client-address svg{flex-shrink:0}.client-arrow{font-size:1.5rem;color:var(--color-text-secondary);transition:transform .2s}.client-item:hover .client-arrow{color:var(--color-accent);transform:translate(4px)}.client-list-actions{text-align:center;margin-top:30px;padding-top:30px;border-top:2px solid var(--color-border)}.client-list__cache-status{font-size:.85rem;color:var(--color-text-secondary);font-style:italic;margin-bottom:1rem;padding:.5rem;background-color:var(--color-bg-secondary);border-radius:4px}.btn-secondary{background-color:var(--color-text-secondary);color:var(--color-bg-primary)}.btn-secondary:hover{opacity:.8}.room-questionnaire{min-height:100vh;padding-top:0}.rooms-summary{background-color:var(--color-bg-secondary);padding:20px;border-radius:4px;margin-bottom:30px}.rooms-summary ul{list-style:none;margin-top:10px}.rooms-summary li{padding:8px;background-color:var(--color-bg-primary);margin:5px 0;border-radius:4px;border-left:4px solid var(--color-accent)}.navigation-buttons{margin-top:30px;padding-top:30px;border-top:2px solid var(--color-border)}.room-list{width:100%;display:flex;flex-direction:column;gap:15px}.room-list h3{margin-bottom:15px;color:var(--color-text-primary)}.room-list-empty{color:var(--color-text-secondary);font-style:italic;padding:20px;text-align:center}.room-item{background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;padding:20px;margin-bottom:15px;display:flex;flex-direction:column;gap:15px;transition:box-shadow .2s,border-color .2s}.room-item:hover{border-color:var(--color-accent);box-shadow:0 2px 8px color-mix(in srgb,var(--color-text-primary) 10%,transparent)}.room-info{flex:1;display:flex;flex-direction:column;gap:10px}.room-header{display:flex;justify-content:space-between;align-items:center;gap:15px}.room-number{font-weight:600;color:var(--color-text-primary);font-size:1.1rem}.room-type{color:var(--color-accent);font-weight:500}.room-work-types{color:var(--color-text-secondary);font-size:.95rem;line-height:1.5}.room-work-types strong{color:var(--color-text-primary)}.room-actions{display:flex;gap:10px;margin-top:5px;justify-content:flex-end}.btn-edit,.btn-delete,.btn-edit-measurements,.btn-edit-questionnaire,.btn-generate-breakdown,.btn-manage-files{padding:8px 16px;border:none;border-radius:4px;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .2s,background-color .2s}.btn-edit,.btn-edit-measurements,.btn-edit-questionnaire,.btn-generate-breakdown,.btn-manage-files{background-color:var(--color-text-secondary);color:var(--color-bg-primary)}.btn-edit:hover:not(:disabled),.btn-edit-measurements:hover:not(:disabled),.btn-edit-questionnaire:hover:not(:disabled),.btn-generate-breakdown:hover:not(:disabled),.btn-manage-files:hover:not(:disabled){opacity:.8}.btn-delete{background-color:var(--color-error);color:#fff}.btn-delete:hover:not(:disabled){opacity:.8}.btn-edit:disabled,.btn-delete:disabled,.btn-edit-measurements:disabled,.btn-edit-questionnaire:disabled,.btn-generate-breakdown:disabled,.btn-manage-files:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.room-header{flex-direction:column;align-items:flex-start;gap:8px}.room-actions{width:100%;flex-direction:column;gap:8px}.room-actions button{width:100%;flex:none}}.offer-review{display:flex;flex-direction:column;min-height:100vh;padding-top:0}.offer-review__header{justify-content:flex-end;gap:.5rem}.offer-review__header-actions{display:flex;gap:.5rem}.offer-details{display:flex;flex-direction:column;gap:20px;margin-bottom:20px;max-width:800px;margin-left:auto;margin-right:auto}.client-info,.rooms-section{background-color:var(--color-bg-secondary);padding:1.5rem;border-radius:8px;border:1px solid var(--color-border)}.rooms-section h2{margin:0;font-size:1.8rem;color:var(--color-text-primary)}.rooms-section__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.rooms-section__header h2{margin-bottom:0}.rooms-section__actions{display:flex;gap:.5rem}.client-info p,.rooms-info p{margin:8px 0}.client-info-card{background-color:var(--color-bg-secondary);padding:1.5rem;border-radius:8px;border:1px solid var(--color-border)}.client-info-card h2{margin:0 0 1rem;font-size:1.8rem;color:var(--color-text-primary)}.client-info-card__content{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.client-info-card__field{display:flex;flex-direction:column;gap:.25rem}.client-info-card__label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.client-info-card__value{font-size:.95rem;color:var(--color-text-primary);line-height:1.4}.client-info-card__unavailable{color:var(--color-warning, #ffc107);font-style:italic;margin:0}.client-info-card__map-link{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .5rem;background:none;border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);font-size:.875rem;cursor:pointer;transition:all .2s}.client-info-card__map-link:hover{background-color:var(--color-bg-primary);border-color:var(--color-text-secondary)}.offer-status-card{background-color:var(--color-bg-secondary);padding:1.5rem;border-radius:8px;border:1px solid var(--color-border)}.offer-status-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.offer-status-card__header h2{margin:0;font-size:1.8rem;color:var(--color-text-primary)}.offer-status-card__content{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.offer-status-card__field{display:flex;flex-direction:column;gap:.25rem}.offer-status-card__field--full-width{grid-column:1 / -1}.offer-status-card__label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.offer-status-card__value{font-size:.95rem;color:var(--color-text-primary);line-height:1.4}.offer-status-card__value--success{color:var(--color-success, #22c55e);font-weight:500}@media (max-width: 768px){.offer-status-card__content{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.offer-status-card{padding:1rem}.offer-status-card__content{grid-template-columns:1fr}}.map-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100;padding:1rem;animation:mapFadeIn .2s ease-in-out}@keyframes mapFadeIn{0%{opacity:0}to{opacity:1}}.map-modal{background-color:var(--color-bg-primary);border-radius:8px;width:100%;max-width:800px;height:80vh;max-height:600px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary) 20%,transparent);animation:mapSlideUp .3s ease-out}@keyframes mapSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.map-modal__header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--color-border)}.map-modal__header h3{margin:0;font-size:1.125rem;color:var(--color-text-primary)}.map-modal__content{flex:1;min-height:0}.map-modal__content iframe{display:block}@media (prefers-color-scheme: dark){.map-modal__content iframe{filter:invert(90%) hue-rotate(180deg)}}@media (max-width: 768px){.client-info-card__content{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.client-info-card{padding:1rem}.client-info-card__content{grid-template-columns:1fr}}.empty-state{color:var(--color-text-secondary);font-style:italic;padding:20px;text-align:center}.pricing-summary{background-color:var(--color-bg-secondary);padding:1.5rem;border-radius:8px;border:1px solid var(--color-border)}.pricing-summary__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.pricing-summary__header h2{margin:0;font-size:1.8rem;color:var(--color-text-primary)}.pricing-summary__actions{display:flex;gap:.5rem}.room-pricing-section{margin-bottom:1.5rem}.room-pricing-section h4{color:var(--color-text-primary);margin-bottom:.75rem;font-size:1.1rem;font-weight:600}.pricing-summary .list-table tfoot td{font-weight:600;background-color:var(--color-bg-secondary);border-top:2px solid var(--color-border)}.grand-total{background-color:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:8px;padding:20px;margin-top:30px;text-align:right}.grand-total h3{color:var(--color-text-primary);font-size:1.5rem;margin:0}.grand-total strong{color:var(--color-text-primary);font-size:1.8rem}.html-preview-section{margin-top:30px;padding-top:30px;border-top:2px solid var(--color-border)}.html-preview-section button{background-color:var(--color-text-secondary);color:var(--color-bg-primary);padding:12px 24px;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s}.html-preview-section button:hover{opacity:.8}.html-preview{margin-top:20px;border:2px solid var(--color-border);border-radius:8px;padding:20px;background-color:var(--color-bg-secondary);box-shadow:0 4px 12px color-mix(in srgb,var(--color-text-primary) 8%,transparent)}.html-preview h3{color:var(--color-text-primary);margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid var(--color-border)}.preview-content{max-width:100%;overflow-x:auto;padding:15px;background-color:var(--color-bg-primary);border-radius:4px;border:1px solid var(--color-border)}.preview-content table{color:var(--color-text-primary)!important;background-color:var(--color-bg-primary)!important}.preview-content th{background-color:var(--color-accent)!important;color:#fff!important}.preview-content td{color:var(--color-text-primary)!important;background-color:var(--color-bg-primary)!important}.preview-content tfoot td{background-color:var(--color-bg-secondary)!important;color:var(--color-text-primary)!important;font-weight:600}.preview-content [style*=background]{background-color:var(--color-bg-primary)!important}.preview-content [style*=green],.preview-content [style*=Green],.preview-content [style*=GREEN],.preview-content [style*="#0f0"],.preview-content [style*="#00ff00"],.preview-content [style*="#0F0"],.preview-content [style*="#00FF00"],.preview-content [style*="rgb(0, 255, 0)"],.preview-content [style*="rgb(0,255,0)"],.preview-content [class*=total],.preview-content [class*=Total],.preview-content [class*=grand],.preview-content [class*=Grand],.preview-content .total,.preview-content .grand-total,.preview-content .grandTotal{background-color:var(--color-bg-secondary)!important;color:var(--color-text-primary)!important}.preview-content strong[style*=background],.preview-content b[style*=background],.preview-content strong[style*=color],.preview-content b[style*=color]{background-color:transparent!important;color:var(--color-text-primary)!important}.preview-content tfoot td[style],.preview-content tfoot th[style]{background-color:var(--color-bg-secondary)!important;color:var(--color-text-primary)!important}.preview-content *[style*=background-color]{background-color:var(--color-bg-primary)!important}.preview-content tfoot *[style*=background-color],.preview-content *[class*=total][style*=background-color],.preview-content *[class*=grand][style*=background-color]{background-color:var(--color-bg-secondary)!important}@media (max-width: 768px){.preview-content{padding:10px;overflow-x:auto}.preview-content table{font-size:.85rem;min-width:100%}.grand-total{padding:15px}.grand-total h3{font-size:1.2rem}.grand-total strong{font-size:1.4rem}}.actions{margin-top:40px;padding-top:30px;border-top:2px solid var(--color-border);display:flex;gap:10px}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:var(--color-bg-secondary);padding:20px}.error-boundary-content{max-width:800px;background-color:var(--color-bg-primary);padding:40px;border-radius:8px;box-shadow:0 2px 10px color-mix(in srgb,var(--color-text-primary) 10%,transparent);text-align:center}.error-boundary-content h1{color:var(--color-error);margin-bottom:20px}.error-boundary-content p{color:var(--color-text-secondary);margin-bottom:20px;font-size:1.1rem}.error-boundary-content details{text-align:left;background-color:var(--color-bg-secondary);padding:15px;border-radius:4px;border:1px solid var(--color-border)}.error-boundary-content summary{cursor:pointer;font-weight:600;color:var(--color-text-primary);margin-bottom:10px}.error-boundary-content summary:hover{color:var(--color-accent)}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:color-mix(in srgb,var(--color-text-primary) 50%,transparent);display:flex;align-items:center;justify-content:center;z-index:1000}.loading-overlay p{background-color:var(--color-bg-primary);padding:30px 50px;border-radius:8px;font-size:1.2rem;font-weight:600;color:var(--color-text-primary);box-shadow:0 4px 16px color-mix(in srgb,var(--color-text-primary) 20%,transparent)}.offer-item{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:15px;align-items:center;padding:15px;margin-bottom:10px;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:4px;cursor:pointer;transition:all .2s ease}.offer-item:hover{background-color:var(--color-bg-hover);border-color:var(--color-accent);transform:translateY(-2px);box-shadow:0 4px 8px color-mix(in srgb,var(--color-text-primary) 10%,transparent)}.offer-item:focus{outline:2px solid var(--color-accent);outline-offset:2px}.offer-client{font-weight:600;color:var(--color-text-primary);font-size:1.1rem}.offer-status{color:var(--color-text-secondary);text-transform:capitalize}.offer-date{color:var(--color-text-secondary)}.offer-price{color:var(--color-accent);font-weight:600;text-align:right}.deleted-client .offer-client{color:var(--color-text-secondary);font-style:italic}.deleted-client{opacity:.7}.empty-state{text-align:center;padding:60px 20px;background-color:var(--color-bg-secondary);border:1px dashed var(--color-border);border-radius:8px;margin-top:20px}.empty-state p{color:var(--color-text-secondary);font-size:1.1rem;margin:0}.offer-filters{display:flex;gap:15px;align-items:flex-end;margin-bottom:25px;padding:20px;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;flex-wrap:wrap}.offer-filters .filter-group{flex:1;min-width:200px;display:flex;flex-direction:row;align-items:center;gap:8px}.offer-filters .filter-group label{font-weight:600;font-size:.9rem;color:var(--color-text-primary)}.offer-filters .search-input,.offer-filters .status-filter{width:100%;padding:10px 12px;border:2px solid var(--color-border);border-radius:4px;font-size:1rem;background-color:var(--color-bg-primary);color:var(--color-text-primary);transition:border-color .2s}.offer-filters .search-input:focus,.offer-filters .status-filter:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 10%,transparent)}.offer-filters .clear-filters-btn{padding:10px 20px;background-color:var(--color-text-secondary);color:var(--color-bg-primary);border:none;border-radius:4px;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .2s;white-space:nowrap}.offer-filters .clear-filters-btn:hover{opacity:.8}.offer-filters .search-btn{padding:10px 20px;background-color:var(--color-text-secondary);color:var(--color-bg-primary);border:none;border-radius:4px;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .2s;white-space:nowrap;flex-shrink:0}.offer-filters .search-btn:hover{opacity:.8}@media (max-width: 768px){.offer-filters{flex-direction:column;align-items:stretch}.offer-filters .filter-group{min-width:100%;flex-direction:column;align-items:stretch}.offer-filters .search-btn,.offer-filters .clear-filters-btn{width:100%}}.pricing-item-linker{margin-top:20px;padding:20px;background-color:var(--color-bg-secondary);border-radius:8px;border:1px solid var(--color-border)}.pricing-item-linker .question-context{margin-bottom:15px;padding:12px;background-color:var(--color-bg-primary);border-left:3px solid var(--color-accent);border-radius:4px;font-size:.95rem}.pricing-item-linker .question-context strong{color:var(--color-text-primary)}.pricing-item-linker .error-message{background-color:#fef2f2;border:1px solid #fca5a5;color:#991b1b;padding:12px 16px;border-radius:4px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}.pricing-item-linker .error-message p{margin:0;font-size:.95rem}.pricing-item-linker .error-message button{background-color:#dc2626;color:#fff;padding:6px 12px;font-size:.85rem}.linked-items-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.linked-items-section h3{margin:0;color:var(--color-text-primary);font-size:1.2rem}.link-item-button{background-color:var(--color-text-secondary);color:var(--color-bg-primary);padding:10px 20px;border:none;border-radius:4px;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .2s}.link-item-button:hover{opacity:.8}.link-item-button:disabled{background-color:var(--color-text-secondary);cursor:not-allowed;opacity:.6}.linked-items-list{display:grid;gap:12px}.linked-item-card{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;padding:14px;transition:all .2s}.linked-item-card:hover{border-color:var(--color-accent);box-shadow:0 2px 8px color-mix(in srgb,var(--color-text-primary) 8%,transparent)}.linked-item-card .item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.linked-item-card .item-nr{font-weight:600;color:var(--color-accent);font-size:.9rem}.linked-item-card .unlink-button{background-color:#ef4444;color:#fff;border:none;border-radius:50%;width:28px;height:28px;font-size:1.4rem;line-height:1;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.linked-item-card .unlink-button:hover{background-color:#dc2626}.linked-item-card .item-description{margin-bottom:8px;color:var(--color-text-primary);font-size:.95rem;line-height:1.4}.linked-item-card .item-footer{display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.linked-item-card .item-category{color:var(--color-text-secondary);background-color:var(--color-bg-secondary);padding:4px 8px;border-radius:4px;font-size:.8rem}.linked-item-card .item-price{font-weight:600;color:var(--color-accent)}.linked-item-card .item-removed-notice{color:var(--color-text-secondary);font-style:italic;display:flex;justify-content:space-between;align-items:center}.linked-item-card .unlink-button-small{background-color:#ef4444;color:#fff;padding:6px 12px;font-size:.85rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background-color:var(--color-bg-primary);border-radius:8px;box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary) 20%,transparent);max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column}.pricing-item-browser{display:flex;flex-direction:column;height:90vh}.pricing-item-browser .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:none}.pricing-item-browser .list-filters{margin-top:0;margin-bottom:1rem}.pricing-item-browser .modal-header h2{margin:0;color:var(--color-text-primary);font-size:1.5rem}.pricing-item-browser .close-button{background:none;border:none;font-size:2rem;color:var(--color-text-secondary);cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.pricing-item-browser .close-button:hover{background-color:var(--color-bg-secondary);color:var(--color-text-primary)}.pricing-item-browser .browser-filters{display:flex;gap:12px;padding:20px;border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center}.pricing-item-browser .search-input{flex:2;min-width:200px;padding:10px 14px;border:2px solid var(--color-border);border-radius:4px;font-size:1rem;background-color:var(--color-bg-secondary);color:var(--color-text-primary);transition:border-color .2s}.pricing-item-browser .search-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 10%,transparent)}.pricing-item-browser .category-filter{flex:1;min-width:150px;padding:10px 14px;border:2px solid var(--color-border);border-radius:4px;font-size:1rem;background-color:var(--color-bg-secondary);color:var(--color-text-primary);cursor:pointer}.pricing-item-browser .filter-group{display:flex;gap:8px;flex:2;min-width:200px}.pricing-item-browser .filter-group .search-input{flex:1;min-width:0}.pricing-item-browser .search-btn{background-color:var(--color-text-secondary);color:var(--color-bg-primary);padding:10px 16px;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s;white-space:nowrap}.pricing-item-browser .search-btn:hover{opacity:.8}.pricing-item-browser .clear-filters-btn{background-color:transparent;color:var(--color-text-secondary);padding:10px 14px;border:2px solid var(--color-border);border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.pricing-item-browser .clear-filters-btn:hover{border-color:var(--color-text-secondary);background-color:var(--color-bg-secondary)}.pricing-item-browser .results-info{padding:12px 20px;color:var(--color-text-secondary);font-size:.9rem;text-align:right}.pricing-item-browser .cache-status{padding:8px 20px;font-size:.85rem;text-align:center;border-bottom:1px solid var(--color-border)}.pricing-item-browser .cache-status.complete{background-color:color-mix(in srgb,var(--color-success) 10%,transparent);color:var(--color-success)}.pricing-item-browser .cache-status.partial{background-color:color-mix(in srgb,var(--color-warning) 10%,transparent);color:var(--color-warning)}.pricing-item-browser .cache-complete,.pricing-item-browser .cache-partial{display:inline-flex;align-items:center;gap:6px}.cache-status-indicator{display:block;margin-top:8px;font-size:.85rem}.cache-status-indicator .cache-complete{color:var(--color-success)}.cache-status-indicator .cache-building{color:var(--color-warning)}.pricing-item-browser .loading,.pricing-item-browser .empty-state{flex:1;display:flex;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--color-text-secondary)}.pricing-item-browser .items-list{flex:1;overflow-y:auto;padding:1rem;display:grid;gap:12px;background-color:var(--color-bg-secondary);border-radius:8px;border:1px solid var(--color-border)}.pricing-item-card{position:relative;background-color:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:6px;padding:16px;cursor:pointer;transition:all .2s}.pricing-item-card:hover{border-color:var(--color-accent);background-color:var(--color-bg-hover);transform:translateY(-2px);box-shadow:0 4px 12px color-mix(in srgb,var(--color-text-primary) 10%,transparent)}.pricing-item-card .item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.pricing-item-card .item-nr{font-weight:600;color:var(--color-accent);font-size:.9rem}.pricing-item-card .no-price-badge{background-color:#fef3c7;color:#92400e;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:600}.pricing-item-card .item-description{margin-bottom:10px;color:var(--color-text-primary);font-size:.95rem;line-height:1.4}.pricing-item-card .item-footer{display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.pricing-item-card .item-category{position:absolute;top:8px;right:8px;color:var(--color-text-secondary);background-color:var(--color-bg-primary);padding:4px 8px;border-radius:4px;font-size:.8rem}.pricing-item-card .item-price{font-weight:600;color:var(--color-accent);margin-left:auto}.pricing-item-browser .modal-footer{padding:16px 20px;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end}.pricing-item-browser .cancel-button{background-color:var(--color-text-secondary);color:var(--color-bg-primary);padding:10px 24px;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s}.pricing-item-browser .cancel-button:hover{opacity:.8}@media (max-width: 768px){.modal-content{max-width:100%;max-height:100vh;border-radius:0}.pricing-item-browser .browser-filters{flex-direction:column;align-items:stretch}.pricing-item-browser .search-input,.pricing-item-browser .category-filter{width:100%}.linked-items-section .section-header{flex-direction:column;align-items:stretch;gap:10px}.link-item-button{width:100%}}.page-header{text-align:center;margin-bottom:2rem}.page-header h1{margin-bottom:.5rem}.page-header .subtitle{color:var(--color-text-secondary);font-size:1rem;margin:0}@media (max-width: 600px){h1{font-size:1.8rem}h2{font-size:1.4rem}h3{font-size:1.1rem}.form-group{margin-bottom:15px}.room-item,.client-item,.offer-filters,.pricing-summary,.client-info,.offer-status-card,.rooms-section{padding:12px}.actions{flex-direction:column}.actions button{width:100%}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;--color-bg-primary: #ffffff;--color-bg-secondary: #f8f9fa;--color-text-primary: #2c3e50;--color-text-secondary: #5a6c7d;--color-border: #ddd;--color-accent: #2874a6;--color-error: #c0392b;--color-success: #27ae60;--color-warning: #d97706;--color-warning-bg: #fef3c7;--color-warning-text: #92400e;color:var(--color-text-primary);background-color:var(--color-bg-primary);color-scheme:light dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme: dark){:root{--color-bg-primary: #1a1a1a;--color-bg-secondary: #2d2d2d;--color-text-primary: #e5e7eb;--color-text-secondary: #9ca3af;--color-border: #374151;--color-accent: #60a5fa;--color-error: #ef4444;--color-success: #10b981;--color-warning: #f59e0b;--color-warning-bg: #451a03;--color-warning-text: #fcd34d;color:var(--color-text-primary);background-color:var(--color-bg-primary)}}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--color-bg-primary)}#root{width:100%;min-height:100vh}
