.catalog-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:13px;line-height:1.45}.catalog-table thead th{background:#f8fafc;border-bottom:1px solid #e2e8f0;vertical-align:bottom}.catalog-table .catalog-th-label{padding:10px 10px 6px;text-align:left}.catalog-table .catalog-th-filter{padding:0 8px 10px;background:#f1f5f9;border-bottom:2px solid #cbd5e1}.catalog-table .catalog-sort-btn{background:none;border:none;padding:0;font:inherit;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#475569;cursor:pointer}.catalog-table .catalog-sort-btn.is-active{color:#1d4ed8}.catalog-table .catalog-filter-input{width:100%;box-sizing:border-box;padding:6px 8px;font-size:12px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#334155}.catalog-table .catalog-filter-input:focus{outline:2px solid #bfdbfe;border-color:#93c5fd}.catalog-table .catalog-filter-banner th{padding:8px 12px;font-size:12px;font-weight:500;color:#475569;background:#eff6ff;border-bottom:1px solid #dbeafe}.catalog-table .catalog-filter-clear{background:none;border:none;color:#1d4ed8;cursor:pointer;padding:0;text-decoration:underline;font-size:inherit}.catalog-table tbody tr{transition:background .12s ease}.catalog-table tbody tr:nth-child(2n){background:#f8fafc}.catalog-table tbody tr:hover{background:#eff6ff}.catalog-table td{padding:10px;border-bottom:1px solid #e2e8f0;vertical-align:top}.catalog-table .catalog-item-num{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:600;color:#0f172a}.catalog-table .catalog-product-name{font-weight:600;color:#0f172a;line-height:1.35}.catalog-table .catalog-muted{color:#64748b}.catalog-table .catalog-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;background:#e2e8f0;color:#334155}.catalog-table .catalog-color{color:#334155;font-weight:500}.catalog-table .catalog-price{font-variant-numeric:tabular-nums;font-weight:600;color:#0f172a}.catalog-dimensions{display:flex;flex-wrap:wrap;gap:5px}.catalog-dimension-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-size:11px;line-height:1.2;background:#eef2ff;color:#312e81;border:1px solid #c7d2fe;white-space:nowrap}.catalog-dimension-label{font-weight:700;font-size:10px;letter-spacing:.03em;text-transform:uppercase;color:#4338ca}.catalog-dimension-value{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;color:#1e1b4b}.catalog-related{display:flex;flex-direction:column;gap:6px}.catalog-related-tags{display:flex;flex-wrap:wrap;gap:4px;max-height:72px;overflow-y:auto;padding-right:2px}.catalog-related-tag{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:3px 8px;border-radius:999px;font-size:11px;line-height:1.3;background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.catalog-related-tag span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-related-tag button{background:none;border:none;cursor:pointer;color:#15803d;padding:0;font-size:14px;line-height:1}.catalog-link-btn{align-self:flex-start;padding:4px 10px;font-size:11px;font-weight:600;color:#1d4ed8;background:#fff;border:1px solid #bfdbfe;border-radius:6px;cursor:pointer}.catalog-link-btn:hover{background:#eff6ff}.catalog-table-shell{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 1px 3px #0f172a0f}.catalog-empty{padding:32px;text-align:center;color:#64748b}.catalog-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 14px;border:1px solid #e2e8f0;border-top:none;border-radius:0 0 10px 10px;background:#f8fafc;font-size:12px;color:#475569}.catalog-pagination-spacer{height:52px;pointer-events:none}.catalog-pagination-fixed{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:1280px;padding-left:24px;padding-right:24px;box-sizing:border-box;z-index:25;border:none;border-top:1px solid #e2e8f0;border-radius:0;box-shadow:0 -6px 16px #0f172a1a}.catalog-pagination-controls{display:inline-flex;align-items:center;gap:8px}.catalog-table-shell.choice-table-shell{--choice-header-label-height: 36px;max-height:360px;overflow-x:auto;overflow-y:auto}.choice-table-shell .catalog-table thead tr:first-child th{position:sticky;top:0;z-index:3;background:#f8fafc;box-shadow:0 1px #e2e8f0}.choice-table-shell .catalog-table thead tr:nth-child(2) th{position:sticky;top:var(--choice-header-label-height);z-index:2;background:#f1f5f9;box-shadow:0 2px #cbd5e1}.choice-item-summary{display:block;margin-top:2px;font-size:11px;line-height:1.35;color:#64748b;font-weight:400}.choice-row-active td{background:#f8fbff}.choice-inline-add-row td{background:#f0f8ff;border-bottom:1px solid #dbeafe;padding:10px 12px;text-align:right}.choice-inline-add{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;max-width:100%}.choice-inline-add-label{font-size:12px;font-weight:600;color:#334155}.choice-inline-add-input{flex:0 0 auto;width:112px;min-width:0;max-width:140px;padding:5px 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:12px}.choice-inline-add-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.choice-inline-add-confirm,.choice-inline-add-cancel{padding:5px 10px;border-radius:6px;font-size:12px;cursor:pointer}.choice-inline-add-confirm{border:1px solid #1d4ed8;background:#1d4ed8;color:#fff}.choice-inline-add-confirm:hover:not(:disabled){background:#1e40af}.choice-inline-add-confirm:disabled{opacity:.6;cursor:wait}.choice-inline-add-cancel{border:1px solid #cbd5e1;background:#fff;color:#475569}.choice-inline-add-cancel:hover:not(:disabled){background:#f8fafc}.choice-inline-add-error{flex-basis:100%;font-size:12px;color:#b91c1c;text-align:right}.catalog-table col.catalog-actions-col{width:80px}.catalog-table .catalog-th-actions,.catalog-table .catalog-td-actions{width:80px;min-width:80px;max-width:80px;padding-left:8px;padding-right:10px;text-align:center;white-space:nowrap}.catalog-table .catalog-td-actions .catalog-link-btn{min-width:52px}.dimension-chips{display:flex;flex-wrap:wrap;gap:5px}.dimension-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-size:11px;line-height:1.2;background:#eef2ff;color:#312e81;border:1px solid #c7d2fe;white-space:nowrap}.dimension-chip-label{font-weight:700;font-size:10px;letter-spacing:.03em;text-transform:uppercase;color:#4338ca}.dimension-chip-value{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;color:#1e1b4b}.app-popover-trigger{position:relative;flex:0 0 auto}.app-popover{position:fixed;min-width:0;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 12px 32px #0f172a2e;opacity:0;pointer-events:none}.app-popover.is-ready{opacity:1;pointer-events:auto}.app-popover__caret{position:absolute;width:12px;height:12px;background:#fff;border:1px solid #e2e8f0;transform:rotate(45deg);z-index:0;box-sizing:border-box}.app-popover--bottom .app-popover__caret{top:-6.5px;border-right:none;border-bottom:none}.app-popover--top .app-popover__caret{bottom:-6.5px;border-left:none;border-top:none}.app-popover__body{position:relative;z-index:1;background:#fff;border-radius:inherit;overflow:hidden}.quote-line-actions-trigger{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#475569;cursor:pointer;font-size:18px;line-height:1}.quote-line-actions-trigger:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.quote-line-actions-trigger:disabled{opacity:.5;cursor:not-allowed}.quote-line-actions-item{display:block;width:100%;padding:8px 10px;border:none;border-radius:6px;background:transparent;color:#0f172a;text-align:left;font-size:13px;cursor:pointer}.quote-line-actions-item:hover{background:#f1f5f9}.quote-line-item-cell{display:flex;align-items:center;justify-content:space-between;gap:8px}.quote-line-item-content{flex:1;min-width:0;display:flex;flex-direction:column;align-items:stretch}.quote-line-item-dimensions{margin-top:6px;width:100%;min-width:0}.quote-line-item-title-row{width:100%;min-width:0}.quote-line-item-title-button{display:flex;align-items:flex-start;gap:6px;width:100%;min-width:0;padding:0;border:none;background:none;text-align:left;font:inherit;color:inherit;cursor:default}.quote-line-item-title-button:not(:disabled){cursor:pointer}.quote-line-item-title-button:not(:disabled):hover .quote-line-item-title-more,.quote-line-item-title-button:not(:disabled):focus-visible .quote-line-item-title-more{text-decoration:underline}.quote-line-item-title-button:focus-visible{outline:2px solid #94a3b8;outline-offset:2px;border-radius:2px}.quote-line-item-title-row:not(.is-expanded) .quote-line-item-title-button{align-items:center}.quote-line-item-title{min-width:0;flex:1}.quote-line-item-title.is-collapsed{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.quote-line-item-title.is-expanded{white-space:normal;overflow-wrap:anywhere}.quote-line-item-title-more{flex-shrink:0;font-size:12px;line-height:1.4;color:#64748b}.quote-detail{display:flex;flex-direction:column;gap:16px}.quote-detail--chat,.quote-detail--search,.quote-detail--lines,.quote-detail--settings{height:calc(100vh - var(--app-sticky-nav-height) - 40px);max-height:calc(100vh - var(--app-sticky-nav-height) - 40px);overflow:hidden}.quote-detail-header{display:flex;flex-shrink:0;justify-content:space-between;align-items:flex-start;background:#f1f5f9}.quote-detail-tabs{display:flex;flex-shrink:0;gap:8px;border-bottom:1px solid #e2e8f0;padding-bottom:12px;background:#f1f5f9}.quote-detail-tab{border:1px solid #d1d5db;border-radius:999px;background:#fff;color:#334155;font-weight:600;padding:7px 14px;cursor:pointer;font:inherit;font-size:14px}.quote-detail-tab.is-active{background:#0f172a;color:#fff;font-weight:700}.quote-detail-tab-panel{display:flex;flex:1;flex-direction:column;gap:24px;min-height:0}.quote-detail-tab-panel--lines{flex:1;min-height:0;overflow:hidden}.quote-detail-tab-panel--chat,.quote-detail-tab-panel--search,.quote-detail-tab-panel--settings{overflow:hidden}.quote-catalog-search-section{display:flex;flex-direction:column;flex:1;min-height:0;border:1px solid #e2e8f0;border-radius:8px;padding:16px;background:#fff}.quote-detail-tab-panel--search .quote-catalog-search-section{height:100%}.quote-catalog-search-title{margin:0 0 4px;font-size:18px}.quote-catalog-search-hint{margin:0 0 12px;font-size:13px;color:#64748b}.quote-catalog-search-form{display:flex;gap:8px;margin-bottom:12px;flex-shrink:0}.quote-catalog-search-form input{flex:1;min-width:0;padding:8px 10px;border:1px solid #cbd5e1;border-radius:6px;font:inherit;font-size:14px}.quote-catalog-search-form button{padding:8px 16px;border-radius:6px;border:1px solid #1d4ed8;background:#1d4ed8;color:#fff;font:inherit;font-size:14px;cursor:pointer}.quote-catalog-search-form button:disabled{opacity:.6;cursor:wait}.quote-catalog-search-summary{margin:0 0 8px;font-size:13px;color:#475569;flex-shrink:0}.quote-catalog-search-error,.quote-catalog-search-empty{margin:0 0 12px;font-size:13px;color:#64748b}.quote-catalog-search-error{color:#b91c1c}.quote-catalog-search-section .choice-table-shell{flex:1;min-height:0;max-height:none}.quote-chat-section{display:flex;flex-direction:column;flex:1;min-height:0;border:1px solid #e2e8f0;border-radius:8px;padding:16px;background:#fff}.quote-detail-tab-panel--chat .quote-chat-section{height:100%}.quote-chat-title{margin:0 0 12px;font-size:18px}.quote-settings-section{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;box-sizing:border-box;padding:16px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.quote-detail-tab-panel--settings .quote-settings-section{height:100%}.quote-settings-title{margin:0 0 20px;font-size:18px}.quote-settings-field{margin-bottom:20px;max-width:480px}.quote-settings-label{display:flex;justify-content:space-between;margin-bottom:8px;font-weight:500}.quote-settings-value{font-weight:600}.quote-settings-range{width:100%;box-sizing:border-box}.quote-settings-hint{font-size:12px;color:#666;margin:4px 0 0}.quote-settings-hint--indented{margin-left:24px}.quote-settings-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500}.quote-settings-error{margin:0;font-size:13px;color:#b91c1c}.quote-settings-tax-input-row{display:flex;align-items:center;gap:8px;max-width:160px}.quote-settings-tax-input{width:100%;box-sizing:border-box;padding:6px 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px}.quote-settings-tax-suffix{font-weight:600;color:#475569}.quote-lines-total-row td{border-top:2px solid #333}.quote-lines-tax-row td{padding:6px 8px;color:#334155;background:#fafafa}.quote-lines-grand-total-row td{border-top:1px solid #94a3b8;background:#f1f5f9}.quote-chat-messages{flex:1;min-height:0;overflow-y:auto;margin-bottom:12px}.quote-lines-section{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}.quote-lines-table-scroll{flex:1;min-width:0;min-height:0;overflow:auto}.quote-lines-table{width:100%;min-width:720px;border-collapse:collapse;table-layout:fixed;--quote-lines-thead-height: 36px}.quote-lines-table thead th{position:sticky;top:0;z-index:3;vertical-align:bottom;background-color:#fff;border-bottom:2px solid #333;box-shadow:0 1px #fff}.quote-lines-table thead th:first-child{width:34%}.quote-lines-section-header td{position:sticky;top:var(--quote-lines-thead-height);z-index:2;padding:6px 8px;background:#f8fafc;border-bottom:1px solid #e2e8f0;box-shadow:0 1px #e2e8f0}.quote-lines-section-header-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;box-sizing:border-box}.quote-lines-section-count{flex:0 0 auto;margin-left:auto;padding-left:12px;font-size:12px;font-weight:400;letter-spacing:normal;text-transform:none;color:#64748b;white-space:nowrap}.quote-lines-section-toggle{display:inline-flex;align-items:center;gap:6px;flex:0 1 auto;min-width:0;padding:4px 0;border:none;background:none;font:inherit;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#64748b;cursor:pointer;border-radius:4px}.quote-lines-section-toggle:hover{color:#475569}.quote-lines-section-toggle:focus-visible{outline:2px solid #94a3b8;outline-offset:2px}.quote-lines-section-chevron{display:inline-block;width:12px;font-size:10px;line-height:1;color:#94a3b8}.quote-lines-subtotal td{border-top:2px solid #333;padding:10px 8px;font-weight:600;background:#fafafa}.quote-lines-subtotal-spacer td{padding:0;height:12px;border-bottom:2px solid #e2e8f0;background:transparent}.quote-line-title-row td{padding:8px 8px 4px;border-bottom:none;background-color:#fff}.quote-line-title-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.quote-line-title-bar .quote-line-item-title-row{flex:1;min-width:0}.quote-line-title-leading{display:flex;align-items:flex-start;gap:6px;flex:1;min-width:0}.quote-line-special-order-icon{flex:0 0 auto;margin-top:2px;color:#b45309}.quote-line-actions-cell{flex:0 0 44px;width:44px;display:flex;justify-content:flex-end;align-items:center}.quote-line-actions-cell-td{padding:8px;text-align:right;vertical-align:top}.quote-line-remove-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#b91c1c;cursor:pointer}.quote-line-remove-button:disabled{cursor:wait;opacity:.5}.quote-line-data-row td{border-bottom:1px solid #ddd;background-color:#fff;vertical-align:top}.quote-line-value-cell{padding:8px;text-align:right;line-height:1.4}.quote-line-value{display:inline-block;min-width:72px;padding:0 8px;line-height:1.4;text-align:right;box-sizing:border-box}.quote-line-retail-button{display:inline-block;min-width:72px;padding:0 8px;line-height:1.4;border:none;border-radius:4px;background:#fff;box-shadow:inset 0 0 0 1px #cbd5e1;font:inherit;color:inherit;text-align:right;cursor:pointer;box-sizing:border-box;vertical-align:top}.quote-line-retail-button:disabled{cursor:wait}.quote-line-retail-input{width:88px;padding:0 6px;line-height:1.4;height:calc(1.4em + 2px);border:1px solid #cbd5e1;border-radius:4px;text-align:right;box-sizing:border-box;vertical-align:top}.quote-line-data-row td:first-child{padding-top:4px}.quote-line-has-children .quote-line-data-row td{border-bottom-color:#e2e8f0}.quote-line-is-child .quote-line-title-cell,.quote-line-is-child.quote-line-data-row td{background:#f8fbff}.quote-line-is-child .quote-line-title-cell,.quote-line-is-child.quote-line-data-row td:first-child{border-left:3px solid #93c5fd;padding-left:20px}.quote-line-accessory-group-header td{padding:4px 8px 4px 20px;background:#f1f5f9;border-bottom:1px solid #e2e8f0;border-left:3px solid #93c5fd}.quote-line-accessory-group-header-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;box-sizing:border-box}.quote-line-accessory-group-toggle{display:inline-flex;align-items:center;gap:6px;flex:0 1 auto;min-width:0;padding:2px 0;border:none;background:none;font:inherit;font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:#64748b;cursor:pointer;border-radius:4px}.quote-line-accessory-group-toggle:hover{color:#475569}.quote-line-accessory-group-toggle:focus-visible{outline:2px solid #94a3b8;outline-offset:2px}.quote-line-accessory-group-chevron{display:inline-block;width:12px;font-size:10px;line-height:1;color:#94a3b8}.quote-line-accessory-group-count{flex:0 0 auto;margin-left:auto;padding-left:12px;font-size:11px;font-weight:400;color:#94a3b8;white-space:nowrap}.quote-line-is-child+.quote-line-is-child .quote-line-title-cell,.quote-line-is-child+.quote-line-is-child.quote-line-data-row td{box-shadow:inset 0 1px #e2e8f0}.quote-line-accessory-group-header+.quote-line-is-child .quote-line-title-cell{box-shadow:none}.quote-line-quantity{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.quote-line-quantity-badges{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px}.quote-line-quantity-primary{font-size:14px;font-weight:600;line-height:1.4}.quote-line-quantity-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;font-size:11px;line-height:1.2;background:#eef2ff;color:#312e81;border:1px solid #c7d2fe;white-space:nowrap}.quote-line-quantity-button{display:inline-flex;align-items:center;justify-content:flex-end;min-width:72px;min-height:calc(1.4em + 2px);padding:0 8px;line-height:1.4;border:none;border-radius:4px;background:#fff;box-shadow:inset 0 0 0 1px #cbd5e1;font:inherit;color:inherit;text-align:right;cursor:pointer;box-sizing:border-box;vertical-align:top}.quote-line-quantity-button:hover:not(:disabled){box-shadow:inset 0 0 0 1px #94a3b8}.quote-line-quantity-button:focus-visible{outline:2px solid #94a3b8;outline-offset:2px}.quote-line-quantity-button:disabled{cursor:wait}.quote-line-quantity-button--plain{font-size:14px;line-height:1.4}.quote-line-quantity-input:disabled{cursor:wait;opacity:.7}.quote-line-quantity-input{width:88px;padding:0 6px;line-height:1.4;min-height:calc(1.4em + 2px);height:calc(1.4em + 2px);border:1px solid #cbd5e1;border-radius:4px;text-align:right;box-sizing:border-box;font:inherit;vertical-align:top}.catalog-page-header{position:sticky;top:var(--app-sticky-nav-height, 56px);z-index:20;background:linear-gradient(180deg,#fff,#f8fafc);padding:16px 0 0;margin:0 0 12px;border-bottom:1px solid #e2e8f0;box-shadow:0 4px 12px #0f172a0d}.catalog-back-link{display:inline-block;margin-bottom:12px;color:#64748b;text-decoration:none;font-size:13px;font-weight:500}.catalog-back-link:hover{color:#1d4ed8}.catalog-title{margin:0 0 8px;font-size:28px;font-weight:700;letter-spacing:-.02em;color:#0f172a}.catalog-meta{margin:0 0 10px;color:#64748b;font-size:14px}.catalog-meta button,.catalog-meta a{color:#1d4ed8;text-decoration:none;background:none;border:none;padding:0;font-size:inherit;cursor:pointer}.catalog-meta button:hover,.catalog-meta a:hover{text-decoration:underline}.catalog-summary{margin:0 0 14px;padding:10px 12px;border-radius:8px;background:#eff6ff;border:1px solid #dbeafe;color:#334155;font-size:13px;line-height:1.5}.catalog-summary strong{color:#1e3a8a}.catalog-body{padding-top:4px;padding-bottom:8px}.app-header{position:sticky;top:0;z-index:30;margin:0 0 16px;padding:10px 0 0;background:#ffffffeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #e2e8f0}.app-header__inner{display:flex;align-items:center;gap:20px;min-height:52px;padding-bottom:0}.app-header__brand{display:flex;align-items:center;gap:10px;flex-shrink:0;text-decoration:none;color:inherit;margin-left:8px}.app-header__brand img{display:block;height:28px;width:auto}.app-header__brand-text{display:flex;flex-direction:column;gap:1px;line-height:1.1}.app-header__brand-name{font-size:13px;font-weight:700;letter-spacing:-.01em;color:#0f172a}.app-header__brand-sub{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}.app-header__menu-btn{display:none;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;margin-left:auto;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#0f172a;cursor:pointer;transition:background .15s ease,border-color .15s ease}.app-header__menu-btn:hover{background:#fff;border-color:#cbd5e1}.app-header__nav{display:flex;align-items:stretch;gap:2px;flex:1 1 auto;min-width:0;overflow-x:auto;scrollbar-width:none}.app-header__nav::-webkit-scrollbar{display:none}.app-header__link{position:relative;display:inline-flex;align-items:center;padding:14px 12px 12px;border:none;background:transparent;color:#64748b;font:inherit;font-size:13px;font-weight:550;letter-spacing:-.01em;text-decoration:none;white-space:nowrap;transition:color .15s ease}.app-header__link:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;border-radius:2px 2px 0 0;background:transparent;transition:background .15s ease}.app-header__link:hover{color:#0f172a}.app-header__link.is-active{color:#0f172a;font-weight:700}.app-header__link.is-active:after{background:#0f172a}.app-header__user{display:flex;align-items:center;gap:10px;flex-shrink:0;margin-left:auto;margin-right:8px;padding:4px 4px 4px 10px;border:1px solid #e2e8f0;border-radius:999px;background:#f8fafc}.app-header__avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#0f172a;color:#fff;font-size:11px;font-weight:700;letter-spacing:.02em}.app-header__user-meta{display:flex;flex-direction:column;gap:0;min-width:0;padding-right:2px}.app-header__user-name{font-size:12px;font-weight:650;color:#0f172a;line-height:1.2;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-header__logout{border:none;background:transparent;color:#64748b;font:inherit;font-size:11px;font-weight:600;padding:6px 10px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease}.app-header__logout:hover{background:#fff;color:#0f172a}@media (max-width: 1100px){.app-header__brand-text,.app-header__user-meta{display:none}.app-header__menu-btn{display:inline-flex}.app-header__user{margin-left:0}.app-header__nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:8px 12px 12px;background:#fffffffa;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #e2e8f0;box-shadow:0 12px 24px #0f172a14;overflow:visible;z-index:40}.app-header__nav.is-open{display:flex}.app-header__link{padding:12px 14px;border-radius:8px}.app-header__link:after{display:none}.app-header__link.is-active{background:#f1f5f9}}:root{--app-sticky-nav-height: 56px}*{box-sizing:border-box}body{margin:0;font-family:"Source Sans 3",system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f1f5f9;color:#0f172a;-webkit-font-smoothing:antialiased}#root{min-height:100vh}
