:root{color-scheme:light;--color-brand:#0061a4;--color-brand-hover:#004c82;--color-brand-light:#d1e4ff;--color-brand-bg:#e8f1ff;--color-on-brand:#fff;--color-success:#3b6a1f;--color-success-bg:#c8efb0;--color-success-bg-alt:#dceccf;--color-success-flash-bg:#dceccf;--color-success-flash-text:#0f2800;--color-error:#ba1a1a;--color-error-bg:#ffdad6;--color-error-bg-alt:#f6e4e2;--color-error-flash-text:#410002;--color-error-border:#ffb4ab;--color-warning:#7c5800;--color-warning-bg:#ffdea6;--color-warning-flash-bg:#ffe8c0;--color-warning-flash-text:#271900;--color-info:#0061a4;--color-info-bg:#d1e4ff;--color-info-flash-text:#001d36;--color-price-min-bg:#e2efd6;--color-price-min-text:#214d16;--color-price-max-bg:#f6e4e2;--color-price-max-text:#5c1a1a;--color-price-changed-bg:#ffefd0;--color-price-changed-dot:#8b6914;--color-text-primary:#191c20;--color-text-secondary:#43474e;--color-text-tertiary:#5c5f66;--color-text-muted:#73777f;--color-text-faint:#8d9199;--color-bg-page:#f8f9ff;--color-bg-surface:#f2f3fa;--color-bg-subtle:#eceef4;--color-bg-muted:#e6e8ee;--color-bg-elevated:#fff;--color-border:#c3c6cf;--color-border-strong:#73777f;--color-border-focus:#0061a4;--color-border-muted:#d4d6dd;--font-family:Inter,system-ui,sans-serif;--font-size-xs:0.72rem;--font-size-sm:0.82rem;--font-size-base:0.92rem;--font-size-md:1rem;--font-size-lg:1.15rem;--font-size-xl:1.3rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:999px;--shadow-sm:0 1px 2px rgba(25,28,32,.08),0 1px 3px rgba(25,28,32,.06);--shadow-md:0 1px 3px rgba(25,28,32,.1),0 2px 6px rgba(25,28,32,.08);--shadow-lg:0 2px 6px rgba(25,28,32,.1),0 4px 12px rgba(25,28,32,.1);--shadow-xl:0 4px 8px rgba(25,28,32,.1),0 8px 24px rgba(25,28,32,.12);--shadow-focus:0 0 0 3px rgba(0,97,164,.28);--transition-fast:0.15s ease;--transition-normal:0.2s ease;--transition-slow:0.3s ease;--btn-bg:#0061a4;--btn-bg-hover:#004c82;--btn-text:#fff;--btn-border:#0061a4;--btn-radius:var(--radius-md);--btn-padding:0.45rem 0.85rem;--btn-min-height:2.25rem;--input-bg:#e6e8ee;--input-border:#c3c6cf;--input-border-hover:#73777f;--input-focus-shadow:var(--shadow-focus);--input-radius:var(--radius-md);--table-header-bg:#e6e8ee;--table-header-fg:#191c20;--table-border:#c3c6cf;--table-text:#43474e;--btn-soft-bg:#f2f3fa;--btn-soft-bg-hover:#d1e4ff;--btn-soft-border:#c3c6cf;--btn-soft-text:#43474e;--z-sticky:10;--z-pinned:15;--z-dropdown:50;--z-modal-backdrop:80;--z-modal:90;--z-toast:100;--z-tooltip:110}[data-theme=dark]{color-scheme:dark;--color-brand:#a0cafd;--color-brand-hover:#c2e7ff;--color-brand-light:#004a77;--color-brand-bg:#035;--color-on-brand:#003258;--color-success:#a8d08d;--color-success-bg:#214d16;--color-success-bg-alt:#1a3a12;--color-success-flash-bg:#214d16;--color-success-flash-text:#c8efb0;--color-error:#ffb4ab;--color-error-bg:#93000a;--color-error-bg-alt:#5c1a1a;--color-error-flash-text:#ffdad6;--color-error-border:#ff897d;--color-warning:#ffb951;--color-warning-bg:#5c4200;--color-warning-flash-bg:#473200;--color-warning-flash-text:#ffdea6;--color-info:#a0cafd;--color-info-bg:#004a77;--color-info-flash-text:#d1e4ff;--color-price-min-bg:#1e3320;--color-price-min-text:#c8efb0;--color-price-max-bg:#3a2224;--color-price-max-text:#ffdad6;--color-price-changed-bg:#3e2e08;--color-price-changed-dot:#ffb951;--color-text-primary:#e2e2e9;--color-text-secondary:#c3c6cf;--color-text-tertiary:#a9acb4;--color-text-muted:#8d9199;--color-text-faint:#73777f;--color-bg-page:#111418;--color-bg-surface:#191c20;--color-bg-subtle:#1d2024;--color-bg-muted:#282a2f;--color-bg-elevated:#33353a;--color-border:#43474e;--color-border-strong:#8d9199;--color-border-focus:#a0cafd;--color-border-muted:#35383e;--shadow-sm:0 1px 2px rgba(0,0,0,.4),0 1px 3px rgba(0,0,0,.3);--shadow-md:0 2px 6px rgba(0,0,0,.45);--shadow-lg:0 4px 12px rgba(0,0,0,.5);--shadow-xl:0 8px 24px rgba(0,0,0,.55);--shadow-focus:0 0 0 3px rgba(160,202,253,.35);--btn-bg:#a0cafd;--btn-bg-hover:#c2e7ff;--btn-text:#003258;--btn-border:#a0cafd;--input-bg:#282a2f;--input-border:#8d9199;--input-border-hover:#c3c6cf;--input-focus-shadow:var(--shadow-focus);--table-header-bg:#282a2f;--table-header-fg:#e2e2e9;--table-border:#43474e;--table-text:#e2e2e9;--btn-soft-bg:#282a2f;--btn-soft-bg-hover:#004a77;--btn-soft-border:#8d9199;--btn-soft-text:#e2e2e9}[data-theme=light]{color-scheme:light;--color-brand:#0061a4;--color-brand-hover:#004c82;--color-brand-light:#d1e4ff;--color-brand-bg:#e8f1ff;--color-on-brand:#fff;--color-success:#3b6a1f;--color-success-bg:#c8efb0;--color-success-bg-alt:#dceccf;--color-success-flash-bg:#dceccf;--color-success-flash-text:#0f2800;--color-error:#ba1a1a;--color-error-bg:#ffdad6;--color-error-bg-alt:#f6e4e2;--color-error-flash-text:#410002;--color-error-border:#ffb4ab;--color-warning:#7c5800;--color-warning-bg:#ffdea6;--color-warning-flash-bg:#ffe8c0;--color-warning-flash-text:#271900;--color-info:#0061a4;--color-info-bg:#d1e4ff;--color-info-flash-text:#001d36;--color-price-min-bg:#e2efd6;--color-price-min-text:#214d16;--color-price-max-bg:#f6e4e2;--color-price-max-text:#5c1a1a;--color-price-changed-bg:#ffefd0;--color-price-changed-dot:#8b6914;--color-text-primary:#191c20;--color-text-secondary:#43474e;--color-text-tertiary:#5c5f66;--color-text-muted:#73777f;--color-text-faint:#8d9199;--color-bg-page:#f8f9ff;--color-bg-surface:#f2f3fa;--color-bg-subtle:#eceef4;--color-bg-muted:#e6e8ee;--color-bg-elevated:#fff;--color-border:#c3c6cf;--color-border-strong:#73777f;--color-border-focus:#0061a4;--color-border-muted:#d4d6dd;--shadow-sm:0 1px 2px rgba(25,28,32,.08),0 1px 3px rgba(25,28,32,.06);--shadow-md:0 1px 3px rgba(25,28,32,.1),0 2px 6px rgba(25,28,32,.08);--shadow-lg:0 2px 6px rgba(25,28,32,.1),0 4px 12px rgba(25,28,32,.1);--shadow-xl:0 4px 8px rgba(25,28,32,.1),0 8px 24px rgba(25,28,32,.12);--shadow-focus:0 0 0 3px rgba(0,97,164,.28);--btn-bg:#0061a4;--btn-bg-hover:#004c82;--btn-text:#fff;--btn-border:#0061a4;--input-bg:#e6e8ee;--input-border:#c3c6cf;--input-border-hover:#73777f;--input-focus-shadow:var(--shadow-focus);--table-header-bg:#e6e8ee;--table-header-fg:#191c20;--table-border:#c3c6cf;--table-text:#43474e;--btn-soft-bg:#f2f3fa;--btn-soft-bg-hover:#d1e4ff;--btn-soft-border:#c3c6cf;--btn-soft-text:#43474e}body.app-shell,body.login-page,html{background:var(--color-bg-page)}body.app-shell,body.login-page{color:var(--color-text-primary)}body{margin-top:12px}h1{margin-bottom:.35rem}.flash{border-radius:var(--radius-md);margin-bottom:.5rem;padding:.75rem}.flash-success{background:var(--color-success-flash-bg);color:var(--color-success-flash-text)}.flash-warning{background:var(--color-warning-flash-bg);color:var(--color-warning-flash-text)}.flash-error{background:var(--color-error-bg-alt);color:var(--color-error-flash-text)}.flash-info{background:var(--color-info-bg);color:var(--color-info-flash-text)}.flash-action-link{color:inherit;font-weight:var(--font-weight-semibold);margin-left:.5rem;text-decoration:underline}.toolbar{align-items:center;gap:var(--space-4);margin:var(--space-4) 0}.actions,.toolbar{display:flex;flex-wrap:wrap}.actions{gap:var(--space-1);margin:0}.parse-progress-wrap{margin:.25rem 0 var(--space-4);max-width:36rem}.parse-progress-label{color:var(--color-text-secondary);font-size:var(--font-size-base);margin-bottom:.35rem}.parse-progress-track{background:var(--color-bg-subtle);border-radius:var(--radius-full);height:.42rem;overflow:hidden;position:relative}.parse-progress-bar{animation:parse-progress-slide 1s ease-in-out infinite;background:linear-gradient(90deg,var(--color-brand) 0,var(--color-brand-hover) 100%);border-radius:var(--radius-full);inset:0 auto 0 0;position:absolute;width:40%}@keyframes parse-progress-slide{0%{transform:translateX(-120%)}50%{transform:translateX(80%)}to{transform:translateX(220%)}}.equipment-row th{color:var(--color-text-tertiary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.price-min{background:var(--color-price-min-bg);color:var(--color-price-min-text)}.price-max,.price-min{font-weight:var(--font-weight-semibold)}.price-max{background:var(--color-price-max-bg);color:var(--color-price-max-text)}.price-changed{position:relative}.price-changed:after{background:var(--color-price-changed-dot);border-radius:50%;content:"";height:6px;opacity:.85;position:absolute;right:3px;top:3px;width:6px}.separator-row td{background:var(--color-text-primary);color:var(--color-bg-page)}.section-row td,.separator-row td{font-weight:var(--font-weight-bold)}.section-row td{background:var(--color-bg-muted);color:var(--color-text-secondary)}.dash-table-wrap table tbody tr.service-row td:first-child,body.app-shell>table tbody tr.service-row td:first-child{padding-left:1.75rem}button{background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--btn-radius);color:var(--btn-text);cursor:pointer;font-family:inherit;padding:var(--btn-padding)}button:hover{filter:brightness(.95)}input:not([type=checkbox]):not([type=radio]),select,textarea{border-radius:var(--radius-md)}.hint{color:var(--color-text-muted);line-height:1.45;margin:0 0 var(--space-4);max-width:52rem}.btn-primary,.hint{font-size:var(--font-size-base)}.btn-primary{background:var(--btn-bg);border:none;border-radius:var(--btn-radius);color:var(--btn-text);cursor:pointer;font-family:inherit;font-weight:var(--font-weight-semibold);padding:var(--space-2) var(--space-4);white-space:nowrap}.btn-primary:hover{filter:brightness(1.05)}.btn-soft{background:var(--btn-soft-bg,var(--color-bg-subtle));border:1px solid var(--btn-soft-border,var(--color-border));border-radius:var(--btn-radius);color:var(--btn-soft-text,var(--color-text-secondary));cursor:pointer;font-family:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--space-1) .75rem}.btn-soft:hover{background:var(--btn-soft-bg-hover,var(--color-brand-light));border-color:var(--color-border-strong);color:var(--color-text-primary)}.btn-danger-soft{background:var(--color-bg-elevated);border:1px solid var(--color-error-border);border-radius:var(--btn-radius);color:var(--color-error);cursor:pointer;font-family:inherit;font-size:var(--font-size-sm);padding:var(--space-1) .75rem}.btn-danger-soft:hover{background:var(--color-error-bg)}.btn-icon{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:var(--btn-radius);color:var(--color-text-muted);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:var(--font-size-lg);height:2rem;justify-content:center;line-height:1;padding:0;width:2rem}.btn-icon:hover{background:var(--color-bg-subtle);border-color:var(--color-text-faint);color:var(--color-error)}.btn-add-line{align-items:center;display:inline-flex;gap:.35rem;margin-top:.35rem}.field-label{color:var(--color-text-secondary);display:block;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin-bottom:.35rem}.field-hint{color:var(--color-text-faint);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.inp{background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--input-radius);box-sizing:border-box;color:var(--color-text-primary);font:inherit;font-size:var(--font-size-base);max-width:100%;min-height:2.5rem;padding:var(--space-2) .75rem;width:100%}.inp:hover{border-color:var(--input-border-hover)}.inp:focus{background:var(--color-bg-elevated);border-color:var(--color-border-focus);box-shadow:var(--input-focus-shadow);outline:none}.inp::-moz-placeholder{color:var(--color-text-faint)}.inp::placeholder{color:var(--color-text-faint)}th{background:var(--table-header-bg);color:var(--table-header-fg,var(--color-text-primary));font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.pagination{align-items:center;display:flex;flex-wrap:wrap;gap:.65rem;margin-top:var(--space-5)}.pagination a{color:var(--color-brand);font-weight:var(--font-weight-medium);text-decoration:none}.pagination a:hover{text-decoration:underline}.confirm-dialog{align-items:center;background:rgba(0,0,0,.5);display:flex;inset:0;justify-content:center;padding:var(--space-4);position:fixed;z-index:var(--z-modal-backdrop)}.confirm-dialog[hidden]{display:none!important}.confirm-dialog__panel{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:1.15rem 1.2rem;width:min(100%,28rem)}.confirm-dialog__panel h3{color:var(--color-text-primary);font-size:var(--font-size-md);margin:0 0 .55rem}.confirm-dialog__text{color:var(--color-text-tertiary);line-height:1.45;margin:0 0 var(--space-4)}.confirm-dialog__actions{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.modal{align-items:center;background:rgba(0,0,0,.45);display:none;inset:0;justify-content:center;position:fixed;z-index:var(--z-modal)}.modal.open{display:flex}.modal-card{background:var(--color-bg-elevated);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);font-size:var(--font-size-md);line-height:var(--line-height-normal);max-height:85vh;overflow:auto;padding:1.35rem 1.4rem 1.1rem;width:min(720px,94vw)}.modal-title{color:var(--color-text-primary);font-size:1.08rem;font-weight:var(--font-weight-bold);margin:0 0 var(--space-4)}.modal-actions{border-top:1px solid var(--color-border);display:flex;gap:var(--space-1);justify-content:flex-end;margin-top:var(--space-2);padding-top:var(--space-4)}.row{align-items:start;display:flex;flex-wrap:wrap;gap:var(--space-4)}.panel{flex:1;min-width:320px}.small{font-size:var(--font-size-base)}.lead,.small{color:var(--color-text-muted)}.lead{font-size:.95rem;line-height:1.45}.lead,fieldset{margin-bottom:var(--space-5)}fieldset{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) 1.1rem}legend{color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);padding:0 .35rem}.save-bar{margin:var(--space-5) 0 var(--space-8)}.section-gap{border-top:1px dashed var(--color-border);margin-top:1.1rem;padding-top:var(--space-4)}.export-actions{gap:var(--space-1)}.export-actions,a.btn-export-icon{align-items:center;display:inline-flex}a.btn-export-icon{background:var(--color-brand);border:1px solid var(--color-brand);border-radius:var(--radius-lg);color:var(--btn-text)!important;font-size:var(--font-size-md);height:2.25rem;justify-content:center;padding:0;text-decoration:none;width:2.25rem}a.btn-export-icon:hover{filter:brightness(1.05)}a.btn-export-icon--csv{background:var(--color-text-muted);border-color:var(--color-text-muted)}a.btn-export-icon--csv:hover{background:var(--color-text-tertiary);border-color:var(--color-text-tertiary)}a.btn-export-icon--excel{background:var(--color-success);border-color:var(--color-success)}.import-dropdown{position:relative}.import-dropdown>summary{cursor:pointer;list-style:none}.import-dropdown>summary::-webkit-details-marker{display:none}.import-dropdown>summary::marker{content:"";display:none}.import-dropdown[open]>.import-dropdown__panel{display:block}.import-dropdown__panel{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:none;min-width:280px;padding:var(--space-4);position:absolute;right:0;top:calc(100% + 6px);z-index:var(--z-dropdown,50)}.import-csv-form{display:flex;flex-direction:column;gap:var(--space-2)}.import-csv-form__label{color:var(--color-text-secondary);display:flex;flex-direction:column;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:2px}.import-csv-form__select{min-height:2rem}.import-csv-form__file,.import-csv-form__select{font-size:var(--font-size-sm)}.import-csv-form__submit{align-self:flex-start;margin-top:var(--space-1)}.import-csv-form__hint{color:var(--color-text-faint);font-size:var(--font-size-xs,.75rem);line-height:1.35;margin:0}.app-shell{font-family:Inter,system-ui,sans-serif}.app-toolbar{align-items:center;border-bottom:1px solid var(--color-border);display:flex;flex-wrap:nowrap;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.app-toolbar .toolbar-left{align-items:center;display:inline-flex;flex:1;flex-wrap:nowrap;gap:1.75rem;min-width:12rem}.app-toolbar .toolbar-brand{align-items:center;display:inline-flex;flex:0 0 auto;justify-content:flex-start;line-height:0;text-decoration:none}.app-toolbar .toolbar-brand img{display:block;flex:0 0 auto;height:64px!important;max-height:64px!important;max-width:none;-o-object-fit:contain;object-fit:contain;width:auto!important}.app-toolbar .toolbar-brand img.toolbar-brand-favicon{border-radius:6px;height:40px!important;max-height:40px!important;max-width:40px!important;width:40px!important}.toolbar-context-switcher{display:inline-flex;flex:0 0 auto;position:relative}.toolbar-context-switcher__trigger{align-items:center;background:var(--color-bg-subtle);border:1px solid var(--color-border-muted);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:.35rem;list-style:none;padding:.35rem .65rem;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.toolbar-context-switcher__trigger::-webkit-details-marker{display:none}.toolbar-context-switcher__trigger:hover{background:var(--color-brand-light);border-color:var(--color-border-focus)}.toolbar-context-switcher[open]>.toolbar-context-switcher__trigger{background:var(--color-brand-light);border-color:var(--color-brand)}.toolbar-context-switcher__menu{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:1px;left:0;min-width:10rem;padding:var(--space-1);position:absolute;top:calc(100% + 4px);z-index:var(--z-dropdown)}.toolbar-context-switcher__item{align-items:center;border-radius:var(--radius-md);color:var(--color-text-secondary);display:flex;font-size:var(--font-size-sm);gap:.5rem;padding:var(--space-2) var(--space-3);text-decoration:none;transition:background var(--transition-fast);white-space:nowrap}.toolbar-context-switcher__item.is-active,.toolbar-context-switcher__item:hover{background:var(--color-brand-light);color:var(--color-brand)}.toolbar-context-switcher__item.is-active{cursor:default;font-weight:var(--font-weight-semibold)}.app-toolbar .toolbar-right{align-items:center;display:flex;flex-wrap:nowrap;gap:.65rem 1rem;justify-content:flex-end;margin-left:auto}.app-toolbar .toolbar-user{align-items:flex-end;display:inline-flex;flex-direction:column;line-height:1.15;margin-right:.2rem}.app-toolbar .toolbar-user-main{color:var(--color-text-secondary);font-size:.9rem;white-space:nowrap}.app-toolbar .toolbar-user-sub{color:var(--color-text-muted);font-size:.75rem;margin-top:.1rem}.app-toolbar .toolbar-contact-admin{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:8px;color:var(--color-text-primary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.88rem;font-weight:600;gap:.4rem;height:2.25rem;justify-content:center;margin-left:-.9rem;padding:0 .8rem;white-space:nowrap}.app-toolbar .toolbar-contact-admin i{font-size:.95rem;line-height:1}.app-toolbar .toolbar-contact-admin:hover{background:var(--color-bg-subtle)}.app-toolbar .toolbar-contact-admin-icon{display:none!important}.app-toolbar .toolbar-compact-toggle{gap:0;margin-left:0;padding:0;width:2.25rem}.app-toolbar .toolbar-compact-toggle.is-active{background:var(--color-brand-light,#e7eff8);border-color:var(--color-brand,#6180a1);color:var(--color-brand,#1f3f63)}.app-toolbar .toolbar-compact-toggle:hover{background:var(--color-brand-light,#f1f5f9);border-color:var(--color-border-focus,#94a3b8)}.app-toolbar .toolbar-phone-link{border-bottom:1px dotted var(--color-text-muted);color:inherit;text-decoration:none}.app-toolbar .toolbar-phone-link:hover{border-bottom-color:var(--color-brand);color:var(--color-brand)}.app-toolbar .toolbar-icons{align-items:center;display:inline-flex;gap:.45rem}.app-toolbar .icon-link{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:8px;box-sizing:border-box;color:var(--color-text-tertiary);display:inline-flex;font-size:1.05rem;height:2.1rem;justify-content:center;line-height:1;padding:0;text-decoration:none;width:2.1rem}.app-toolbar .icon-link:hover{background:var(--color-bg-subtle);border-color:var(--color-text-faint);color:var(--color-brand-hover)}.app-toolbar .icon-link.is-active{background:var(--color-brand-light);border-color:var(--color-brand);box-shadow:inset 0 0 0 1px var(--color-border-muted);color:var(--color-text-primary)}.app-toolbar .logout-icon{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:8px;box-sizing:border-box;color:var(--color-text-tertiary);display:inline-flex;font-size:1.15rem;height:2.1rem;justify-content:center;line-height:1;padding:0;text-decoration:none;width:2.1rem}.app-toolbar .logout-icon:hover{background:var(--color-bg-subtle);border-color:var(--color-text-faint);color:var(--color-error)}.app-toolbar .icon-link>i,.app-toolbar .logout-icon>i,.app-toolbar .toolbar-contact-admin-icon>i{align-items:center;display:flex;font-size:inherit;height:100%;justify-content:center;line-height:1;margin:0;vertical-align:0;width:100%}.app-toolbar .logout-wrap{align-items:center;display:inline-flex;position:relative}.app-toolbar .logout-pop{background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:8px;box-shadow:var(--shadow-xl);min-width:210px;padding:.55rem;position:absolute;right:0;top:calc(100% + .45rem);z-index:40}.app-toolbar .logout-pop[hidden]{display:none}.app-toolbar .logout-pop-text{color:var(--color-text-secondary);font-size:.85rem;margin-bottom:.45rem}.app-toolbar .logout-pop-actions{display:flex;gap:.4rem;justify-content:flex-end}.app-toolbar .logout-pop-btn{background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:6px;color:var(--color-text-secondary);cursor:pointer;font-size:.82rem;padding:.25rem .5rem;text-decoration:none}.app-toolbar .logout-pop-btn:hover{background:var(--color-bg-surface)}.app-toolbar .logout-pop-btn.danger{background:var(--color-error);border-color:var(--color-error);color:#fff}.app-toolbar .logout-pop-btn.danger:hover{filter:brightness(.95)}.app-toolbar .icon-link.icon-link--bell{position:relative}.app-toolbar .toolbar-badge{background:var(--color-error);border-radius:999px;box-shadow:0 0 0 2px var(--color-bg-elevated);color:#fff;font-size:.65rem;font-weight:700;height:1.05rem;line-height:1.05rem;min-width:1.05rem;padding:0 .28rem;pointer-events:none;position:absolute;right:-.35rem;text-align:center;top:-.35rem}.city-switch-wrap{align-items:center;display:inline-flex;flex-wrap:wrap;gap:.35rem}.city-switch-wrap .city-switch-label{font-weight:600}.city-select-click{border:1px solid var(--color-border-muted);border-radius:6px;font:inherit;padding:.35rem .5rem}.city-select-click:hover{background:var(--color-bg-surface);border-color:var(--color-border-focus)}.city-select-click:focus{outline:2px solid var(--color-border-focus);outline-offset:1px}.city-plain{color:var(--color-text-secondary);font-weight:600}body.login-page label{display:block;font-weight:600;margin-top:1rem}body.login-page input{box-sizing:border-box;margin-top:.25rem;padding:.5rem;width:100%}body.login-page button{background:var(--color-brand);border:none;border-radius:6px;color:var(--btn-text);cursor:pointer;font-family:inherit;margin-top:1rem;padding:.6rem 1rem}body.login-page p.hint{color:var(--color-text-tertiary);font-size:.9rem}body.login-page .login-social-wrap{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:.75rem}body.login-page .login-social-wrap__title{color:var(--color-text-muted);font-size:.92rem;margin:0 0 .5rem}body.login-page .login-social-list{display:flex;flex-wrap:wrap;gap:.45rem}body.login-page .login-social-item{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:999px;display:inline-flex;height:2.25rem;justify-content:center;width:2.25rem}body.login-page .login-social-item img{display:block;height:1.35rem;width:1.35rem}body.login-page .login-social-item.is-disabled{cursor:not-allowed;filter:grayscale(1);opacity:.55;pointer-events:none}body.login-page .login-social-item.is-disabled img{filter:grayscale(1)}body.login-page .login-social-item.is-active{opacity:1;text-decoration:none}body.login-page .login-social-item.is-active:hover{background:var(--color-brand-light);border-color:var(--color-brand)}body.login-page .login-register-row{color:var(--color-text-tertiary);margin-top:.9rem}body.login-page .login-register-row a{font-weight:600}body.login-page .password-rules{color:var(--color-text-muted);font-size:.8rem;line-height:1.4;margin:.5rem 0 .35rem 1.1rem;padding:0}body.login-page .password-rules li{margin:.08rem 0}body.login-page .register-intro{text-align:justify;text-justify:inter-word}body.login-page form.register-form button[type=submit]{display:block;width:100%}body.login-page .login-max-bot-callout{background:var(--color-brand-light);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-secondary);font-size:.92rem;line-height:1.45;margin:.75rem 0 1.1rem;max-width:32rem;padding:.85rem 1rem}body.login-page .login-max-bot-callout p{margin:.35rem 0 .5rem}body.login-page .login-max-bot-callout p:first-child{margin-top:0}body.login-page .login-max-bot-callout__title{color:var(--color-brand);font-weight:700;margin:0 0 .4rem}body.login-page .login-max-bot-callout__nick{color:var(--color-brand)}body.login-page .login-max-bot-callout__link{color:var(--color-brand);display:inline-block;font-weight:600;margin-top:.15rem;text-decoration:underline;text-underline-offset:2px}body.login-page .login-max-bot-callout__link:hover{color:var(--color-brand-hover)}body.login-page .login-max-bot-callout code{background:var(--color-bg-subtle);border-radius:4px;font-size:.88em;padding:.1rem .35rem}body.login-page .login-max-bot-callout__hint{color:var(--color-text-muted);font-size:.86rem;line-height:1.4;margin:.35rem 0 0}table.competitors-table{border-collapse:collapse;margin-top:1rem;table-layout:fixed;width:100%}table.competitors-table td,table.competitors-table th{border:1px solid var(--table-border);overflow-wrap:anywhere;padding:.65rem .75rem;text-align:left;vertical-align:top;word-break:break-word}.competitor-extra-type-urls{background:var(--color-bg-surface);border:1px dashed #cbd5e1;border-radius:8px;margin-top:.65rem;padding:.45rem .55rem}.competitor-extra-type-urls__label{color:var(--color-text-muted);font-size:.78rem;font-weight:700;letter-spacing:.02em;margin-bottom:.35rem;text-transform:uppercase}.competitor-extra-type-urls__list{font-size:.82rem;line-height:1.35;margin:0;padding-left:1.1rem;word-break:break-all}.competitor-extra-type-urls__link{color:var(--color-brand);text-decoration:none}.competitor-extra-type-urls__link:hover{text-decoration:underline}.competitor-extra-type-urls__hint{display:block;font-size:.75rem;margin-top:.35rem}.competitors-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:1rem 1.25rem;justify-content:space-between;margin:1rem 0}.competitors-toolbar__left{flex-shrink:0;position:relative}.create-competitor-wrap{position:relative}.btn-add-competitor-toggle{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:6px;color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.9rem;font-weight:600;gap:.4rem;justify-content:center;min-height:2.5rem;padding:0 .85rem}.btn-add-competitor-toggle:hover{background:var(--color-bg-subtle);border-color:var(--color-text-faint);color:var(--color-text-primary)}.btn-add-competitor-toggle .plus{color:var(--color-brand);font-size:1.25rem;font-weight:700;line-height:1}.create-competitor-pop{background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:10px;box-shadow:var(--shadow-xl);left:0;max-height:min(80vh,620px);overflow:auto;padding:1rem 1.1rem 1.15rem;position:absolute;top:calc(100% + .4rem);width:min(440px,calc(100vw - 2.5rem));z-index:200}.create-competitor-pop[hidden]{display:none!important}.create-competitor-pop__title{border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-size:1.02rem;font-weight:700;margin:0 0 .85rem;padding-bottom:.55rem}.create-grid{align-items:end;display:grid;gap:1rem 1.25rem;grid-template-columns:1fr 1fr}@media (max-width:640px){.create-grid{grid-template-columns:1fr}}.create-field{min-width:0}.price-url-list{margin-top:.25rem}.price-url-row{align-items:center;display:flex;gap:.45rem;margin-bottom:.45rem}.price-url-row .inp-url{flex:1;min-width:0}.price-url-row .link-open{color:var(--color-brand);flex-shrink:0;font-size:.82rem;white-space:nowrap}.create-actions{margin-top:1.1rem}.search-inline{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:.45rem;margin-left:auto}.search-inline .search-inp{flex:1 1 auto;min-width:8rem;width:min(320px,42vw)}.search-inline .btn-primary,.search-inline .btn-soft{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center;min-height:2.5rem}table.competitors-table .actions-cell form{display:block;margin:0 0 .4rem}table.competitors-table .actions-cell form:last-child{margin-bottom:0}body.app-shell table.competitors-table .user-settings-wrap{margin-top:.25rem;position:relative}body.app-shell table.competitors-table .btn-gear{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:8px;color:var(--color-text-tertiary);cursor:pointer;display:inline-flex;font-size:1.05rem;height:2.1rem;justify-content:center;line-height:1;padding:0;width:2.1rem}body.app-shell table.competitors-table .btn-gear:hover{background:var(--color-bg-subtle);border-color:var(--color-text-faint);color:var(--color-text-primary)}body.app-shell table.competitors-table .user-settings-pop{background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:10px;box-shadow:var(--shadow-xl);left:0;max-height:min(72vh,480px);max-width:min(400px,calc(100vw - 2rem));min-width:min(340px,calc(100vw - 2rem));overflow-x:hidden;overflow-y:auto;padding:.75rem .85rem .9rem;position:absolute;top:calc(100% + .35rem);z-index:1100}body.app-shell table.competitors-table .user-settings-pop[hidden]{display:none!important}body.app-shell table.competitors-table .user-settings-pop__title{border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-size:.88rem;font-weight:700;margin:0 0 .55rem;padding-bottom:.4rem}body.app-shell table.competitors-table .user-settings-pop .field-label{margin-top:.5rem}body.app-shell table.competitors-table .user-settings-pop .field-label:first-of-type{margin-top:0}body.app-shell table.competitors-table .user-settings-pop label.field-checkbox{align-items:flex-start;color:var(--color-text-secondary);display:flex;font-size:.86rem;font-weight:500;gap:.45rem;margin-bottom:0;margin-top:.35rem}body.app-shell table.competitors-table .user-settings-pop label.field-checkbox input[type=checkbox]{accent-color:var(--color-brand);flex-shrink:0;margin-top:.15rem}body.app-shell table.competitors-table .user-settings-pop .competitor-settings-services-label{margin-bottom:.25rem;margin-top:.55rem}body.app-shell table.competitors-table .user-settings-pop input:not([type=checkbox]),body.app-shell table.competitors-table .user-settings-pop select,body.app-shell table.competitors-table .user-settings-pop textarea{max-width:100%}body.app-shell table.competitors-table .competitor-service-acc{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:8px;margin-top:.35rem;overflow:hidden}body.app-shell table.competitors-table .competitor-service-acc:first-of-type{margin-top:.15rem}body.app-shell table.competitors-table .competitor-service-acc__summary{align-items:center;background:var(--color-bg-subtle);border-bottom:1px solid transparent;color:var(--color-text-secondary);cursor:pointer;display:flex;flex-wrap:wrap;font-size:.86rem;font-weight:600;gap:.35rem;list-style:none;margin:0;padding:.4rem .5rem .4rem .4rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}body.app-shell table.competitors-table .competitor-service-acc__summary::-webkit-details-marker{display:none}body.app-shell table.competitors-table .competitor-service-acc[open]>.competitor-service-acc__summary{background:var(--color-bg-muted);border-bottom-color:var(--color-border)}body.app-shell table.competitors-table .competitor-service-acc__chev{align-items:center;color:var(--color-text-muted);display:inline-flex;flex-shrink:0;font-size:.65rem;justify-content:center;line-height:1;transition:transform .15s ease;width:1.15rem}body.app-shell table.competitors-table .competitor-service-acc__chev:before{border-color:transparent transparent transparent var(--color-text-muted);border-style:solid;border-width:.28rem 0 .28rem .42rem;content:"";display:block;height:0;width:0}body.app-shell table.competitors-table .competitor-service-acc[open]>.competitor-service-acc__summary .competitor-service-acc__chev{transform:rotate(90deg)}body.app-shell table.competitors-table .competitor-service-acc__name{flex:1 1 auto;min-width:0}body.app-shell table.competitors-table .competitor-service-acc__hint{font-size:.75rem;font-weight:400;margin-left:auto}body.app-shell table.competitors-table .competitor-service-acc__body{background:var(--color-bg-elevated);padding:.45rem .55rem .55rem}body.app-shell table.competitors-table .competitor-service-acc__check{align-items:flex-start;display:flex;gap:.4rem}body.app-shell table.competitors-table .competitor-service-acc__check input{flex-shrink:0;margin-top:.2rem}body.app-shell table.competitors-table .competitor-service-acc__urls{margin-top:.45rem}.company-content{max-width:960px}.company-content h1{color:var(--color-text-primary);font-size:1.35rem;margin-top:0}.service-type-picker{margin-bottom:.85rem;max-width:36rem;position:relative}.service-type-picker__hint,.service-type-picker__legacy-note{color:var(--color-text-muted);margin:0 0 .55rem}.service-type-picker__selected{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.55rem;min-height:2rem}.service-type-picker__empty{color:var(--color-text-faint);font-size:.88rem}.service-type-chip{align-items:center;background:var(--color-brand-light);border:1px solid var(--color-border-muted);border-radius:999px;color:var(--color-brand);display:inline-flex;font-size:.86rem;gap:.25rem;line-height:1.3;padding:.2rem .45rem .2rem .65rem}.service-type-chip__remove{background:transparent;border:0;color:var(--color-text-muted);cursor:pointer;font-size:1.05rem;line-height:1;padding:0 .15rem}.service-type-chip__remove:hover{color:var(--color-error)}.service-type-picker__popover{background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:10px;box-shadow:var(--shadow-lg);left:0;margin-top:.35rem;padding:.55rem;position:absolute;top:calc(100% - .15rem);width:min(100%,22rem);z-index:30}.service-type-picker__search{margin-bottom:.45rem}.service-type-picker__options{list-style:none;margin:0;max-height:14rem;overflow-y:auto;padding:0}.service-type-picker__option{background:transparent;border:0;border-radius:6px;color:var(--color-text-primary);cursor:pointer;display:block;font:inherit;padding:.45rem .55rem;text-align:left;width:100%}.service-type-picker__option:hover:not(.is-selected){background:var(--color-bg-subtle)}.service-type-picker__option.is-selected{color:var(--color-text-faint);cursor:default}.service-type-picker__no-results{color:var(--color-text-faint);margin:.35rem 0 0}.company-service-panel[hidden]{display:none!important}.row-parse{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}.btn-parse,button{background:var(--btn-bg);border:none;border-radius:6px;color:var(--btn-text);cursor:pointer;font-family:inherit;font-size:.88rem;padding:.4rem .75rem}.btn-parse:hover,button:hover{filter:brightness(.96)}.btn-parse.secondary{background:var(--color-text-muted)}.dash-table-wrap--compact td,.dash-table-wrap--compact th{font-size:.82rem;line-height:1.2;padding:.2rem .4rem}.dash-table-wrap--compact .manual-price-cell__edit{gap:.15rem}.dash-table-wrap--compact .manual-price-trigger{font-size:.78rem;padding:.1rem .2rem}.dash-table-wrap--compact .section-row__title{font-size:.75rem;padding-bottom:.15rem;padding-top:.25rem}.dash-table-wrap{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:8px;box-sizing:border-box;margin-top:1rem;max-width:100%;min-width:0;width:100%;--dash-sticky-row1-height:4.5rem;overflow-x:auto;overflow-y:clip;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;position:relative}.dash-table-wrap:after{background:linear-gradient(90deg,transparent,var(--color-bg-page));bottom:0;content:"";flex-shrink:0;opacity:0;pointer-events:none;position:sticky;right:0;top:0;transition:opacity .2s;width:2.5rem;z-index:20}.dash-table-wrap.is-scrollable:after{opacity:1}.dash-table-wrap.is-scrolled-end:after{opacity:0}.dash-scroll-hint{align-items:center;animation:dash-scroll-hint-pulse 2s ease-in-out 3;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-muted);display:flex;font-size:.84rem;gap:.4rem;margin:.5rem 0 0;padding:.45rem .75rem}.dash-scroll-hint i{color:var(--color-text-faint);font-size:1rem}@keyframes dash-scroll-hint-pulse{0%,to{opacity:1}50%{opacity:.6}}.dash-table-scroll{max-width:100%;min-width:0}.dash-table-wrap table{border-collapse:collapse;min-width:100%;table-layout:auto;width:-moz-max-content;width:max-content}.dash-table-wrap col.dash-col-service{width:25vw}.dash-table-wrap .sticky-1 th{background:var(--table-header-bg);font-size:14px;position:sticky;top:0;z-index:8}.dash-table-wrap .equipment-row th,.dash-table-wrap .sticky-2 th{background:var(--color-bg-surface);color:var(--color-text-tertiary);font-size:12px;font-weight:400;position:sticky;top:var(--dash-sticky-row1-height);z-index:7}.dash-table-wrap.is-table-scrolled .sticky-1 th{box-shadow:var(--shadow-md)}.dash-table-wrap.is-table-scrolled .equipment-row th,.dash-table-wrap.is-table-scrolled .sticky-2 th{box-shadow:var(--shadow-sm)}.dash-table-wrap .equipment-row th:first-child,.dash-table-wrap .sticky-1 th:first-child,.dash-table-wrap .sticky-2 th:first-child,.dash-table-wrap tbody tr.section-row td.section-row__title,.dash-table-wrap tbody tr.service-row td:first-child{box-shadow:3px 0 6px -3px var(--color-border-muted);box-sizing:border-box;left:0;max-width:25vw;min-width:25vw;overflow-wrap:anywhere;position:sticky;width:25vw}.dash-table-wrap .sticky-1 th:first-child{top:0;z-index:16}.dash-table-wrap .equipment-row th:first-child,.dash-table-wrap .sticky-2 th:first-child{background:var(--color-bg-surface);color:var(--color-text-tertiary);font-size:12px;font-weight:400;top:var(--dash-sticky-row1-height);z-index:15}.dash-table-wrap table tbody td.dash-cell-pinned-col,.dash-table-wrap table thead th.dash-cell-pinned-col{box-shadow:3px 0 6px -3px var(--color-border-muted);left:0;position:sticky}.dash-table-wrap .sticky-1 th.dash-cell-pinned-col{background:var(--table-header-bg);top:0;z-index:14}.dash-table-wrap .equipment-row th.dash-cell-pinned-col,.dash-table-wrap .sticky-2 th.dash-cell-pinned-col{background:var(--color-bg-surface);top:var(--dash-sticky-row1-height);z-index:13}.dash-table-wrap tbody tr.service-row td.dash-cell-pinned-col{background:var(--color-bg-elevated);z-index:9}.dash-table-wrap tbody tr.service-row td.dash-cell-pinned-col.price-min{background:var(--color-price-min-bg)}.dash-table-wrap tbody tr.service-row td.dash-cell-pinned-col.price-max{background:var(--color-price-max-bg)}.dash-table-wrap tbody tr.section-row td.dash-cell-pinned-col{background:var(--color-bg-muted);z-index:5}.dash-table-wrap tbody tr.service-row td:first-child{background:var(--color-bg-elevated);z-index:4}.dash-table-wrap tbody tr.section-row td.section-row__title{background:var(--color-bg-muted);z-index:3}.dash-table-wrap thead th{background:var(--table-header-bg)}.dash-table-wrap table td,.dash-table-wrap table th{border:1px solid var(--table-border);padding:.6rem .7rem;text-align:left;vertical-align:middle}.dash-table-wrap table th{color:var(--table-header-fg,var(--color-text-primary));font-weight:600}.dash-table-wrap tbody tr.service-row:hover td{background:var(--color-bg-surface)}.dash-table-wrap tbody tr.service-row:hover td.dash-cell-pinned-col,.dash-table-wrap tbody tr.service-row:hover td:first-child{background:var(--color-brand-light)}.dash-table-wrap tbody tr.service-row--locked:hover td{background:var(--color-warning-bg)}.dash-table-wrap .sticky-1 th:not(:first-child),.dash-table-wrap .sticky-1 th:not(:first-child) a{color:var(--table-header-fg,var(--color-text-primary))}.dash-table-wrap .sticky-1 th:not(:first-child) a{text-decoration:none}.dash-table-wrap .sticky-1 th:not(:first-child) a:hover{color:var(--color-brand);text-decoration:underline}@media (min-width:769px){body.app-shell--price-dashboard,html:has(body.app-shell--price-dashboard){max-width:100%;overflow-x:clip}body.app-shell--price-dashboard .dash-table-wrap{overflow-x:auto;overflow-y:clip;overscroll-behavior-x:contain}}@media (max-width:768px){.dash-table-wrap{background:transparent;border:none;border-radius:0;box-shadow:none;overflow:visible}.dash-table-wrap .dash-table-scroll{overflow:visible}.dash-table-wrap colgroup,.dash-table-wrap thead{display:none}.dash-table-wrap table,.dash-table-wrap tbody{display:block;width:100%}.dash-table-wrap tbody tr.section-row{background:transparent;border:none;box-shadow:none;display:block;margin:.85rem 0 .4rem;width:100%}.dash-table-wrap tbody tr.section-row td.section-row__title{background:transparent;border:none;color:var(--color-text-primary);display:block;font-size:.92rem;font-weight:700;max-width:none;min-width:0;padding:.35rem .15rem;width:100%}.dash-table-wrap tbody tr.section-row td.section-row__cell{display:none}.dash-table-wrap tbody tr.service-row{background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:var(--radius-md,8px);box-shadow:var(--shadow-sm);display:block;margin:0 0 .65rem;padding:.7rem .75rem .55rem;width:100%}.dash-table-wrap tbody tr.service-row--locked{border-color:var(--color-brand);box-shadow:var(--shadow-sm),inset 3px 0 0 var(--color-brand)}.dash-table-wrap tbody tr.service-row td:first-child{color:var(--color-text-primary);display:block;font-size:.95rem;font-weight:600;line-height:1.35;margin:0 0 .35rem;padding:0 0 .55rem}.dash-table-wrap tbody tr.service-row td:first-child,.dash-table-wrap tbody tr.service-row td:not(:first-child){background:transparent;border:none;border-bottom:1px solid var(--color-border-muted);max-width:none;min-width:0;width:100%}.dash-table-wrap tbody tr.service-row td:not(:first-child){align-items:center;display:flex;font-size:.88rem;gap:.65rem;justify-content:space-between;padding:.4rem 0}.dash-table-wrap tbody tr.service-row td:not(:first-child):last-child{border-bottom:none;padding-bottom:.15rem}.dash-table-wrap tbody tr.service-row td:not(:first-child):before{color:var(--color-text-secondary);content:attr(data-competitor-name);flex:1 1 auto;font-size:.82rem;font-weight:500;line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-table-wrap tbody tr.service-row td:not(:first-child).price-min{background:var(--color-price-min-bg);border-radius:var(--radius-sm,6px);margin:.1rem 0;padding-left:.4rem;padding-right:.4rem}.dash-table-wrap tbody tr.service-row td:not(:first-child).price-max{background:var(--color-price-max-bg);border-radius:var(--radius-sm,6px);margin:.1rem 0;padding-left:.4rem;padding-right:.4rem}.dash-table-wrap tbody tr.service-row td:not(:first-child).price-changed{box-shadow:inset 0 0 0 1px var(--color-price-changed-dot)}.dash-table-wrap .manual-price-cell{flex:0 0 auto;margin-left:auto}.manual-price-cell__edit{min-height:2.25rem}.manual-price-trigger{font-size:.9rem;font-weight:600;min-height:2.25rem;min-width:4.5rem}.manual-price-inline-input{font-size:.95rem;max-width:7rem;min-height:2.25rem}.dash-skeleton{height:1.8rem}.dash-pin-col-btn,.dash-scroll-hint{display:none}}@media (max-width:480px){.dash-table-wrap tbody tr.service-row{margin-bottom:.55rem;padding:.6rem .65rem .45rem}.dash-table-wrap tbody tr.service-row td:first-child{font-size:.9rem;padding-bottom:.45rem}.dash-table-wrap tbody tr.service-row td:not(:first-child):before{font-size:.78rem}.manual-price-trigger{font-size:.85rem;min-width:4rem}}.toolbar-match-parse-group{align-items:center;display:inline-flex;flex-wrap:nowrap;gap:.5rem}.btn-match-icon{align-items:center;border-radius:6px;display:inline-flex;flex-shrink:0;font-size:.9rem;gap:.45rem;justify-content:center;padding:.4rem .75rem;text-decoration:none;white-space:nowrap}body.app-shell.page-narrow{max-width:920px}.note{background:#fafbfc;border:1px solid var(--color-border);border-radius:10px;margin:.85rem 0;padding:1rem 1.1rem}.note--unread{background:var(--color-brand-light);border-color:var(--color-brand)}.note-meta{color:var(--color-text-muted);font-size:.85rem;margin-bottom:.5rem}.note-body{line-height:1.45;white-space:pre-wrap}.top-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.65rem;margin:1rem 0 1.25rem}.synonym-page{--synonym-border:#dbe4ef;--synonym-muted:#64748b;--synonym-accent:#1f3f63}.synonym-tabs{margin:.75rem 0 1rem}.synonym-hero{margin-bottom:.75rem}.synonym-page-actions{gap:.65rem;margin:.5rem 0 1rem}.synonym-create-panel{background:linear-gradient(135deg,#f8fafc,#f4f8ff);border:1px solid var(--synonym-border,#dbe4ef);border-radius:14px;margin:0 0 1.1rem;padding:1rem 1.05rem}.synonym-create-panel h3{color:var(--synonym-accent,#1f3f63);font-size:1.02rem;margin:0 0 .75rem}.synonym-create-form{align-items:end;display:grid;gap:.75rem .85rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}.synonym-create-form label>span{color:var(--synonym-muted,#64748b);display:block;font-size:.84rem;margin-bottom:.3rem}.synonym-create-form .btn-primary{justify-self:start;min-height:2.5rem}.synonym-workspace{display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-top:.25rem}.synonym-workspace__column{background:#fff;border:1px solid var(--synonym-border,#dbe4ef);border-radius:14px;min-width:0;padding:.95rem 1rem}.synonym-workspace__column h3{color:var(--synonym-accent,#1f3f63);font-size:1rem;margin:0 0 .65rem}.synonym-filter{margin-bottom:.65rem}.synonym-target-filter{color:var(--synonym-muted,#64748b);display:flex;flex-direction:column;font-size:.84rem;gap:.3rem;margin-bottom:.55rem}.synonym-dnd-list{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;max-height:min(62vh,720px);min-height:280px;overflow-y:auto;padding:.65rem}.synonym-dnd-empty{padding:.5rem .25rem}.synonym-page table{border-collapse:collapse;margin-top:1rem;width:100%}.synonym-page table td,.synonym-page table th{border:1px solid #ddd;padding:.7rem;text-align:left;vertical-align:top}.synonym-page table th{background:#f3f3f3}.create-form{align-items:end;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}.create-form input,.create-form select{min-width:250px;padding:.35rem}.syn-combobox{display:flex;flex-direction:column;gap:.25rem;min-width:250px;position:relative}.syn-combobox__input{border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box;min-width:250px;padding:.42rem .56rem;width:100%}.syn-combobox__list{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 10px 28px rgba(15,23,42,.12);left:0;list-style:none;margin:0;max-height:260px;overflow-y:auto;padding:.25rem;position:absolute;right:0;top:calc(100% + 2px);z-index:30}.syn-combobox__option{background:transparent;border:0;border-radius:6px;color:#1e293b;cursor:pointer;display:block;font:inherit;padding:.45rem .56rem;text-align:left;width:100%}.syn-combobox__option.is-active,.syn-combobox__option:focus-visible,.syn-combobox__option:hover{background:#eef4ff;outline:none}.syn-combobox__option[hidden]{display:none}.syn-combobox__empty{color:#64748b;font-size:.88rem;padding:.45rem .56rem}.dnd-wrap{display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-top:1rem}.dnd-list{background:#fff;border:1px solid #ddd;border-radius:8px;min-height:220px;padding:.7rem}.dnd-item{background:#fff;border:1px solid #dfe7f2;border-radius:8px;cursor:grab;margin-bottom:.45rem;padding:.62rem .7rem;transition:border-color .15s ease,background .15s ease}.dnd-item:hover{background:#f8fafc;border-color:#94a3b8}.dnd-item__name{color:#1e293b;display:block;font-weight:550;line-height:1.35}.dnd-item__meta{color:#64748b;display:block;font-size:.82rem;margin-top:.2rem}.drop-target{background:#fff;border:1px dashed #b9c7dc;border-radius:8px;cursor:pointer;line-height:1.35;margin-bottom:.4rem;padding:.55rem .65rem;transition:border-color .15s ease,background .15s ease}.dnd-item.is-selected,.drop-target.is-selected,.drop-target.over{background:#eef4ff;border-color:#2f6fd5}.syn-filter{border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box;margin:.15rem 0 .55rem;padding:.42rem .56rem;width:100%}.service-match-page{--service-match-border:#dbe4ef;--service-match-muted:#64748b;--service-match-panel:#f8fafc;--service-match-accent:#1f3f63;min-width:0}.service-match-tabs{margin:.75rem 0 1rem}.service-match-tabs .btn-soft[aria-current=page]{background:#e8eef5;border-color:#94a3b8;color:#1f3f63}.service-match-hero{align-items:center;background:linear-gradient(135deg,#f8fafc,#eef4ff);border:1px solid var(--service-match-border);border-radius:14px;display:flex;gap:1rem;justify-content:space-between;margin:.75rem 0 1rem;padding:1.05rem 1.15rem}.service-match-hero h2{color:var(--service-match-accent);font-size:1.08rem;margin:0 0 .35rem}.service-match-hero p{color:var(--service-match-muted);line-height:1.45;margin:0;max-width:58rem}.service-match-hero__stats{background:hsla(0,0%,100%,.72);border:1px solid rgba(148,163,184,.45);border-radius:12px;min-width:6.25rem;padding:.7rem .85rem;text-align:center}.service-match-hero__stats span{color:var(--service-match-accent);display:block;font-size:1.45rem;font-weight:800;line-height:1}.service-match-hero__stats small{color:var(--service-match-muted);font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.service-match-actions{gap:.65rem;margin:.5rem 0 .9rem}.service-match-actions a{text-decoration:none}.service-match-filter{align-items:end;background:var(--service-match-panel);border:1px solid var(--service-match-border);border-radius:12px;box-sizing:border-box;display:grid;gap:.75rem;grid-template-columns:minmax(0,1fr) minmax(5.5rem,9rem) auto auto;margin:.75rem 0 1rem;min-width:0;padding:.85rem}.service-match-filter label{color:#334155;display:flex;flex-direction:column;font-weight:600;gap:.3rem;margin:0;min-width:0}.service-match-filter label input,.service-match-filter label select{box-sizing:border-box;min-width:0;width:100%}.service-match-filter label span{font-size:.84rem}.service-match-filter .btn-soft{align-items:center;display:inline-flex;justify-content:center;min-height:2.5rem;text-decoration:none}.service-match-table-wrap{background:#fff;border:1px solid var(--service-match-border);border-radius:14px;box-shadow:0 8px 24px rgba(15,23,42,.06);margin-top:1rem;overflow-x:auto;width:100%}.service-match-table{border-collapse:separate;border-spacing:0;min-width:780px;table-layout:fixed;width:100%}.service-match-table td,.service-match-table th{border:0;border-bottom:1px solid #e2e8f0;padding:.85rem .9rem;text-align:left;vertical-align:middle}.service-match-table th{background:#f8fafc;color:#475569;font-size:.78rem;font-weight:800;letter-spacing:.04em;position:sticky;text-transform:uppercase;top:0;z-index:1}.service-match-table tbody tr:hover{background:#f8fafc}.service-match-table tbody tr:last-child td{border-bottom:0}.service-match-table__source{width:36%}.service-match-table__target{width:34%}.service-match-table__score{width:7.5rem}.service-match-table__actions{width:15.5rem}.service-match-table__actions-cell,.service-match-table__actions-head{padding-right:1rem;text-align:right}.service-match-name{color:#1e293b;line-height:1.35;overflow-wrap:anywhere}.service-match-name--target{color:var(--service-match-accent);font-weight:650}.service-match-score{align-items:center;background:#eef4ff;border-radius:999px;color:#1f3f63;display:inline-flex;font-size:.82rem;font-weight:800;justify-content:center;min-height:1.85rem;padding:.25rem .55rem}.service-match-row-actions{align-items:center;display:inline-flex;flex-wrap:nowrap;gap:.45rem;justify-content:flex-end}.service-match-row-actions form{flex:0 0 auto;margin:0}.service-match-row-actions button{min-height:2.15rem;min-width:5.5rem;white-space:nowrap}.synonym-mappings-page .synonym-mappings-tabs{margin:.75rem 0 1rem}.synonym-mappings-page .synonym-mappings-actions{gap:.65rem;margin:.5rem 0 .9rem}.synonym-mappings-table__source,.synonym-mappings-table__target{width:28%}.synonym-mappings-table__competitor{width:16%}.synonym-mappings-table__affected{width:8rem}.synonym-mappings-table__actions{width:9rem}.admin-users-page table.users-table{border-collapse:collapse;margin-top:1rem;min-width:1120px;table-layout:auto;width:100%}.admin-users-page .users-table-wrap{overflow-x:auto;width:100%;-webkit-overflow-scrolling:touch}.admin-users-page table.users-table td,.admin-users-page table.users-table th{border:1px solid var(--table-border);font-size:.9rem;overflow-wrap:normal;padding:.55rem .65rem;text-align:left;vertical-align:top;word-break:normal}.admin-users-page table.users-table th:nth-child(5){line-height:1.25;max-width:12rem;white-space:normal}.admin-users-page table.users-table td:nth-child(5){max-width:min(32rem,52vw);white-space:normal}.admin-users-page table.users-table td:nth-child(3),.admin-users-page table.users-table th:nth-child(3){min-width:9rem}.admin-users-page table.users-table td:first-child,.admin-users-page table.users-table td:nth-child(2),.admin-users-page table.users-table td:nth-child(4),.admin-users-page table.users-table td:nth-child(6),.admin-users-page table.users-table td:nth-child(7),.admin-users-page table.users-table th:first-child,.admin-users-page table.users-table th:nth-child(2),.admin-users-page table.users-table th:nth-child(3),.admin-users-page table.users-table th:nth-child(4),.admin-users-page table.users-table th:nth-child(6),.admin-users-page table.users-table th:nth-child(7){overflow-wrap:normal;white-space:nowrap;word-break:normal}.admin-users-page table.users-table td:first-child,.admin-users-page table.users-table th:first-child{width:9.5rem}.admin-users-page table.users-table td:nth-child(6),.admin-users-page table.users-table th:nth-child(6){min-width:13rem}.admin-users-page table.users-table td:nth-child(7),.admin-users-page table.users-table th:nth-child(7){width:5.75rem}.admin-users-page table.users-table th{background:var(--table-header-bg)}.admin-users-page .btn,.admin-users-page button{background:var(--btn-bg);border:none;border-radius:4px;color:var(--btn-text);cursor:pointer;display:inline-block;font-family:inherit;font-size:.85rem;padding:.35rem .6rem;text-decoration:none}.admin-users-page .btn-soft{background:var(--color-bg-subtle);border:1px solid var(--color-border-muted);color:var(--color-text-secondary)}.admin-users-page .btn-soft:hover{background:var(--color-brand-light)}.admin-users-page fieldset{border:1px solid var(--color-border);margin:1rem 0;max-width:760px;padding:1rem}.admin-users-page legend{font-weight:700}.admin-users-page label{display:block;margin-top:.5rem}.admin-users-page input:not([type=checkbox]):not([type=radio]),.admin-users-page select,.admin-users-page textarea{box-sizing:border-box;max-width:430px;padding:.35rem;width:100%}.admin-users-page .small{color:var(--color-text-tertiary);font-size:.85rem}.admin-users-page .city-summary{color:var(--color-text-secondary);font-size:.85rem;line-height:1.35;margin-top:.35rem}.admin-users-page .role-badge{background:var(--color-bg-subtle);border-radius:999px;color:var(--color-text-secondary);display:inline-block;font-size:.78rem;margin-bottom:.2rem;margin-right:.25rem;padding:.15rem .45rem;white-space:nowrap;word-break:normal}.admin-users-page .edit-form{align-items:flex-start;display:flex;flex-direction:column;gap:.35rem;max-width:100%;min-width:0}.admin-users-page .edit-form .city-summary{margin-top:0}.admin-users-page .edit-form-submit{align-self:flex-start;margin-top:.35rem}.admin-users-page .user-settings-wrap{margin-top:.25rem;position:relative}.admin-users-page .btn-gear{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:8px;color:var(--color-text-tertiary);cursor:pointer;display:inline-flex;font-size:1.05rem;height:2.1rem;justify-content:center;line-height:1;padding:0;width:2.1rem}.admin-users-page .btn-gear:hover{background:var(--color-bg-subtle);border-color:var(--color-text-faint);color:var(--color-text-primary)}.admin-users-page .user-settings-pop{background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:10px;box-shadow:var(--shadow-xl);left:0;max-width:400px;min-width:min(340px,calc(100vw - 2rem));padding:.85rem 1rem 1rem;position:absolute;top:calc(100% + .35rem);z-index:1100}.admin-users-page .user-settings-pop[hidden]{display:none!important}.admin-users-page .user-settings-pop__title{border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-size:.9rem;font-weight:700;margin:0 0 .65rem;padding-bottom:.45rem}.admin-users-page .user-settings-pop label{margin-top:.5rem}.admin-users-page .user-settings-pop label:first-of-type{margin-top:0}.admin-users-page .user-settings-pop input:not([type=checkbox]),.admin-users-page .user-settings-pop select,.admin-users-page .user-settings-pop textarea{max-width:100%}.admin-users-page .sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.admin-users-page .users-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:1rem 1.25rem;justify-content:space-between;margin:1rem 0}.admin-users-page .users-toolbar__left{align-items:flex-start;display:flex;flex-shrink:0;flex-wrap:wrap;gap:.5rem .65rem;position:relative}.admin-users-page .new-user-wrap{position:relative}.admin-users-page .btn-add-user-toggle{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:6px;color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.9rem;font-weight:600;gap:.4rem;justify-content:center;min-height:2.5rem;padding:0 .85rem}.admin-users-page .btn-add-user-toggle:hover{background:var(--color-bg-subtle);border-color:var(--color-text-faint);color:var(--color-text-primary)}.admin-users-page .btn-add-user-toggle .plus{color:var(--color-brand);font-size:1.25rem;font-weight:700;line-height:1}.admin-users-page .new-user-pop{background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:10px;box-shadow:var(--shadow-xl);left:0;max-height:min(85vh,720px);overflow:auto;padding:1rem 1.1rem 1.15rem;position:absolute;top:calc(100% + .4rem);width:min(440px,calc(100vw - 2.5rem));z-index:200}.admin-users-page .new-user-pop[hidden]{display:none!important}.admin-users-page .new-user-pop__title{border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-size:1.02rem;font-weight:700;margin:0 0 .85rem;padding-bottom:.55rem}.admin-users-page .new-user-pop__submit-wrap{display:flex;justify-content:flex-start;margin-top:1.15rem}.admin-users-page .search-inline{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:.45rem;margin-left:auto}.admin-users-page .search-inline .search-inp{border:1px solid var(--color-border-muted);border-radius:6px;box-sizing:border-box;flex:1 1 auto;font:inherit;font-size:.92rem;min-height:2.5rem;min-width:8rem;padding:.5rem .65rem;width:min(320px,42vw)}.admin-users-page .search-inline .search-inp:focus{border-color:var(--color-brand);box-shadow:var(--shadow-focus);outline:none}.admin-users-page .search-inline .btn-primary,.admin-users-page .search-inline .btn-soft{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center;min-height:2.5rem}.admin-users-page .btn-primary{background:var(--btn-bg);border:none;border-radius:6px;color:var(--btn-text);cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:600;padding:.5rem 1rem;white-space:nowrap}.admin-users-page .btn-primary:hover{filter:brightness(1.05)}.admin-users-page input[type=checkbox]{accent-color:var(--color-brand);box-sizing:border-box;cursor:pointer;flex-shrink:0;height:1.25rem;margin:0;min-height:1.25rem;min-width:1.25rem;padding:0;vertical-align:middle;width:1.25rem}.admin-users-page .field-checkbox{align-items:center;color:var(--color-text-secondary);display:flex;font-weight:600;gap:.55rem;justify-content:flex-start;margin-bottom:.15rem;margin-top:.65rem}.admin-users-page .field-checkbox:first-of-type{margin-top:0}.admin-users-page .city-modal-groups{display:flex;flex-direction:column;gap:1.15rem;margin:.25rem 0;max-height:min(56vh,480px);overflow-y:auto;padding:.35rem .5rem .5rem 0}.admin-users-page .city-modal-group{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:10px;box-shadow:var(--shadow-sm);overflow:visible}.admin-users-page .city-modal-letter{align-items:center;background:var(--color-bg-subtle);border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);display:flex;font-size:.95rem;font-weight:700;letter-spacing:.06em;line-height:1.25;min-height:2.4rem;padding:.5rem 1rem}.admin-users-page .city-modal-rows{display:flex;flex-direction:column;gap:.45rem;padding:.75rem 1rem 1rem}.admin-users-page .city-modal-groups .city-row,.admin-users-page .city-modal-groups label.city-row{margin-top:0!important}.admin-users-page .city-modal-groups input[type=checkbox]{align-self:center;flex:0 0 1.25rem;height:1.25rem!important;margin:0!important;max-width:1.25rem!important;min-height:1.25rem!important;min-width:1.25rem!important;padding:0!important;width:1.25rem!important}.admin-users-page .city-row{align-items:center;border-radius:8px;box-sizing:border-box;color:var(--color-text-primary);cursor:pointer;display:flex!important;flex-direction:row;font-size:.95rem;font-weight:500;gap:.75rem;line-height:normal;margin:0!important;min-height:2.75rem;min-width:0;padding:.55rem .65rem;text-align:left;width:100%}.admin-users-page .city-row:hover{background:var(--color-bg-subtle)}.admin-users-page .city-row-name{color:inherit;flex:1 1 auto;font-size:.95rem;line-height:1.45;min-width:0;overflow-wrap:anywhere;padding:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.admin-users-page .new-user-pop__form>label:not(.field-checkbox){margin-top:.85rem}.admin-users-page .new-user-pop__form>.field-checkbox{margin-bottom:.2rem;margin-top:0}.admin-users-page .new-user-pop__form>.field-checkbox+label{margin-top:.5rem}.admin-users-page .btn-contact-admin{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-text-faint);border-radius:6px;color:var(--color-text-primary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.9rem;font-weight:600;justify-content:center;margin-left:.65rem;min-height:2.5rem;padding:0 .85rem}.admin-users-page .btn-contact-admin:hover{background:var(--color-bg-subtle)}.admin-users-page textarea.contact-admin-body{max-width:100%;min-height:7rem}.contact-admin-form{width:100%}.contact-admin-form label{display:block;margin-top:.6rem}.contact-admin-form label:first-of-type{margin-top:0}textarea.contact-admin-body{box-sizing:border-box;width:100%}.contact-admin-attachment{display:block;margin-top:.25rem;max-width:100%;width:100%}body.app-shell{margin:12px 2rem 2rem}body.app-shell,body.login-page{background:var(--color-bg-page);color:var(--color-text-primary);font-family:Inter,system-ui,sans-serif}body.login-page{margin:3rem auto;max-width:420px;padding:0 1rem}.city-select-click{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:var(--color-bg-elevated);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath fill='none' stroke='%236180a1' stroke-linecap='round' stroke-width='2' d='m1 1 5 5 5-5'/%3E%3C/svg%3E");background-position:right .65rem center;background-repeat:no-repeat;background-size:.7rem;border:1.5px solid var(--color-border-strong);border-radius:8px;box-shadow:var(--shadow-sm);color:var(--color-brand);cursor:pointer;font-family:Inter,system-ui,sans-serif;font-size:.92rem;font-weight:600;max-width:min(22rem,92vw);min-width:14rem;padding:.45rem 2rem .45rem .7rem;transition:border-color .15s ease,box-shadow .15s ease}.city-select-click:hover{background-color:var(--color-bg-surface);border-color:var(--color-border-strong);box-shadow:var(--shadow-md)}.city-select-click:focus{border-color:var(--color-brand);box-shadow:var(--shadow-focus);outline:none}.city-select-click optgroup{background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:.85rem;font-weight:700}.city-select-click option{background:var(--color-bg-elevated);color:var(--color-text-primary);font-size:.9rem;font-weight:500;padding:.35rem .5rem}.city-select-click option:checked,.city-select-click option:hover{background:var(--color-brand-light);color:var(--color-text-primary)}.city-switch-mobile{display:none}@media (max-width:1024px){body.app-shell{margin:12px 1rem 2rem}.app-toolbar{flex-wrap:wrap;gap:.75rem}.app-toolbar .toolbar-brand img{height:48px!important;max-height:48px!important}.company-content{max-width:100%}.admin-users-page table.users-table,.dash-table-wrap table,.synonym-page table,table.competitors-table{font-size:.88rem}}@media (max-width:768px){body.app-shell{margin:8px .75rem 1.5rem}h1{font-size:1.2rem;margin-bottom:.25rem}.hint{font-size:.85rem;margin-bottom:.75rem;max-width:100%}.app-toolbar{align-items:stretch;flex-direction:column;gap:.95rem;padding-bottom:.6rem}.app-toolbar .toolbar-left{align-items:center;flex-direction:row;flex-wrap:wrap;gap:.75rem;min-width:0}.toolbar-context-switcher__label{display:none}.toolbar-context-switcher__menu{border-radius:var(--radius-xl) var(--radius-xl) 0 0;bottom:0;box-shadow:0 -8px 24px rgba(15,23,42,.15);left:0;padding:var(--space-3);position:fixed;right:0;top:auto}.app-toolbar .toolbar-brand img{height:96px!important;max-height:96px!important}.app-toolbar .toolbar-right{flex-wrap:wrap;gap:.5rem .75rem;justify-content:flex-start;margin-left:0;width:100%}.app-toolbar .logout-wrap{margin-left:auto}.app-toolbar .toolbar-left{justify-content:space-between;margin-bottom:.2rem}.city-switch-wrap{margin-left:auto}.app-toolbar .toolbar-contact-admin{display:none}.app-toolbar .toolbar-compact-toggle,.app-toolbar .toolbar-theme-toggle{display:inline-flex!important;gap:0;height:2.5rem;margin-left:0;padding:0;width:2.5rem}.app-toolbar .toolbar-theme-toggle #toolbar-theme-label{display:none}.app-toolbar .toolbar-contact-admin-icon{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:8px;box-sizing:border-box;color:var(--color-text-tertiary);cursor:pointer;display:inline-flex;font-size:1.2rem;height:2.5rem;justify-content:center;line-height:1;padding:0;text-decoration:none;width:2.5rem}.app-toolbar .toolbar-contact-admin-icon:hover{background:var(--color-bg-subtle);border-color:var(--color-text-faint);color:var(--color-text-primary)}.app-toolbar .toolbar-user{display:none}.city-select-click{max-width:100%;min-width:0;width:100%}.app-toolbar .logout-pop{border-radius:7px;left:auto;max-width:min(13.5rem,calc(100vw - 1rem));min-width:min(12.5rem,calc(100vw - 1rem));padding:.45rem;right:0;width:min(12.5rem,calc(100vw - 1rem))}.app-toolbar .logout-pop-text{font-size:.8rem;margin-bottom:.35rem;white-space:nowrap}.app-toolbar .logout-pop-actions{display:grid;gap:.35rem;grid-template-columns:1fr 1fr}.app-toolbar .logout-pop-btn{align-items:center;display:inline-flex;font-size:.8rem;justify-content:center;min-height:1.55rem;padding:.01rem;width:100%}.admin-users-page table.users-table,.dash-table-wrap table,.synonym-page table,table.competitors-table{font-size:.82rem}.admin-users-page table.users-table td,.admin-users-page table.users-table th,.dash-table-wrap table td,.dash-table-wrap table th,.synonym-page table td,.synonym-page table th,table.competitors-table td,table.competitors-table th{padding:.45rem .5rem}.competitors-toolbar{align-items:stretch;flex-direction:column;gap:.75rem}.competitors-toolbar__left{width:100%}.btn-add-competitor-toggle{justify-content:center;min-height:2.75rem;width:100%}.admin-users-page .users-toolbar{align-items:stretch;flex-direction:column;gap:.75rem}.admin-users-page .users-toolbar__left{width:100%}.admin-users-page .btn-add-user-toggle{justify-content:center;min-height:2.75rem;width:100%}.admin-users-page .btn-contact-admin{justify-content:center;margin-left:0;width:100%}.search-inline{flex-wrap:wrap;margin-left:0;width:100%}.search-inline .search-inp{flex:1 1 100%;max-width:100%;min-width:0;width:100%}.admin-users-page .search-inline{margin-left:0;width:100%}.admin-users-page .search-inline .search-inp{max-width:100%;width:100%}.inp,select,textarea{font-size:1rem;min-height:2.75rem}.btn-danger-soft,.btn-parse,.btn-primary,.btn-soft,button{font-size:.92rem;min-height:2.75rem;padding:.5rem .85rem}.btn-icon{font-size:1.25rem;height:2.5rem;width:2.5rem}.admin-users-page .new-user-pop,.create-competitor-pop{left:50%;max-height:80vh;max-width:440px;position:fixed;top:50%;transform:translate(-50%,-50%);width:calc(100vw - 1.5rem)}.admin-users-page .new-user-pop{max-height:85vh}.admin-users-page .user-settings-pop,body.app-shell table.competitors-table .user-settings-pop{left:50%;max-height:75vh;max-width:calc(100vw - 1.5rem);min-width:calc(100vw - 1.5rem);position:fixed;top:50%;transform:translate(-50%,-50%)}.admin-users-page .modal-card,.modal-card{max-height:85vh;padding:1rem 1rem .85rem;width:calc(100vw - 1.5rem)}body.login-page{margin:1.5rem auto;padding:0 1rem}fieldset{padding:.75rem .85rem}legend{font-size:.95rem}.row-parse{align-items:stretch;flex-direction:column}.dnd-wrap,.synonym-workspace{grid-template-columns:1fr}.service-match-filter{align-items:stretch;display:flex;flex-direction:column;gap:.65rem}.service-match-filter__limit{max-width:10rem}.service-match-filter>.btn-soft{align-self:flex-start;min-width:6.5rem;width:auto}.panel{min-width:0}.create-form{align-items:stretch;flex-direction:column}.create-form input,.create-form select{min-width:0;width:100%}.admin-users-page .city-modal-groups{max-height:50vh;padding:.25rem .25rem .25rem 0}.admin-users-page .city-modal-rows{padding:.5rem .75rem .75rem}.admin-users-page .city-row{font-size:.9rem;min-height:2.5rem;padding:.45rem .55rem}.admin-users-page .city-modal-letter{font-size:.88rem;padding:.4rem .85rem}.app-toolbar .icon-link,.app-toolbar .logout-icon{box-sizing:border-box;font-size:1.2rem;height:2.5rem;line-height:1;padding:0;width:2.5rem}.app-toolbar .toolbar-icons{gap:.35rem}.pagination{font-size:.88rem;gap:.45rem}.flash{border-radius:6px;font-size:.88rem;padding:.55rem .65rem}.city-switch-wrap{align-items:center;position:relative}.city-switch-wrap .city-switch-label{display:none}.city-switch-desktop{display:none!important}.city-switch-mobile{display:inline-block}.city-switch-mobile>summary{list-style:none}.city-switch-mobile>summary::-webkit-details-marker{display:none}.city-switch-current{color:var(--color-brand);cursor:pointer;font-family:Inter,system-ui,sans-serif;font-size:.95rem;font-weight:600;-webkit-text-decoration:underline dotted var(--color-brand);text-decoration:underline dotted var(--color-brand);text-decoration-thickness:1px;text-underline-offset:1px}.city-switch-mobile-menu{background:var(--color-bg-elevated);border:1px solid var(--color-border-muted);border-radius:10px;box-shadow:var(--shadow-xl);max-height:min(62vh,26rem);overflow-y:auto;padding:.35rem;position:absolute;right:0;top:calc(100% + .4rem);width:min(18rem,calc(100vw - 1.5rem));z-index:80}.city-switch-mobile-letter{color:var(--color-text-muted);font-size:.72rem;font-weight:700;padding:.45rem .55rem .3rem;text-transform:uppercase}.city-switch-mobile-form{margin:0}.city-switch-mobile-item{background:transparent;border:1px solid transparent;border-radius:8px;color:var(--color-text-primary);font-size:.9rem;font-weight:500;min-height:0;padding:.45rem .6rem;text-align:left;width:100%}.city-switch-mobile-item:hover{background:var(--color-bg-subtle);border-color:var(--color-border-muted)}.city-switch-mobile-item.is-current{background:var(--color-brand-light);border-color:var(--color-brand);font-weight:600}.btn-match-icon__text{display:none}.toolbar-match-parse-group{display:inline-flex;gap:.45rem;justify-content:flex-start;width:auto}.toolbar-match-parse-group form{order:1;width:auto}.btn-match-icon{gap:0;min-height:2.75rem;min-width:2.75rem;order:2;width:2.75rem}.btn-match-icon,.toolbar a.btn-soft.btn-match-icon{font-size:1.42rem;padding:.45rem .6rem}.toolbar-match-parse-group form button[type=submit]{align-items:center;display:inline-flex;justify-content:center;min-height:2.75rem}.toolbar-service-types{align-items:center;flex-direction:row;flex-wrap:nowrap;gap:.45rem;overflow-x:auto}.toolbar-service-types .btn-service-type{flex:0 0 auto;white-space:nowrap;width:auto}.toolbar-service-types .btn-service-type.is-active{background:var(--color-brand-light)!important;border-color:var(--color-text-faint)!important;color:var(--color-text-primary)!important;font-weight:700}.toolbar a.btn-soft{font-size:.82rem;min-height:auto;padding:.3rem .6rem}.toolbar form button[type=submit],.toolbar>a.btn-soft{font-size:.84rem;min-height:auto;padding:.35rem .65rem}.actions.actions--parse-competitors{display:flex;flex-wrap:nowrap;gap:.4rem;overflow-x:auto;padding-bottom:.3rem;-webkit-overflow-scrolling:touch}.actions.actions--parse-competitors form{flex:0 0 auto}.parse-competitor-btn{border-radius:6px;font-size:.8rem;min-height:2.5rem;padding:.35rem .65rem;white-space:nowrap}.parse-competitor-btn__badge{font-size:.7rem;padding:.1rem .3rem}.parse-dropdown__trigger{font-size:.84rem;min-height:2.5rem}.parse-toolbar-hint{font-size:.78rem}.btn-export-icon{font-size:.9rem;height:2rem;width:2rem}.toolbar{align-items:stretch;flex-direction:column}.toolbar .export-actions{align-self:stretch}.toolbar-match-parse-group{justify-content:space-between;width:100%}.btn-match-icon{font-size:.82rem;gap:.3rem;padding:.35rem .6rem}}@media (max-width:480px){body.app-shell{margin:6px .5rem 1.25rem}h1{font-size:1.1rem}.app-toolbar .toolbar-brand img{height:58px!important;max-height:58px!important}.app-toolbar .toolbar-right{gap:.4rem .5rem}.app-toolbar .toolbar-user-main{font-size:.82rem}.app-toolbar .toolbar-user-sub{font-size:.7rem}.admin-users-page table.users-table,.dash-table-wrap table,.synonym-page table,table.competitors-table{font-size:.78rem}.dash-table-wrap table td,.dash-table-wrap table th,table.competitors-table td,table.competitors-table th{padding:.35rem .4rem}.admin-users-page .new-user-pop,.create-competitor-pop{max-height:85vh;width:calc(100vw - 1rem)}.admin-users-page .user-settings-pop,body.app-shell table.competitors-table .user-settings-pop{max-width:calc(100vw - 1rem);min-width:calc(100vw - 1rem)}.admin-users-page .modal-card,.modal-card{padding:.85rem;width:calc(100vw - 1rem)}.price-url-row{flex-wrap:wrap}.price-url-row .link-open{margin-left:auto}}