:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0}#root{text-align:left;box-sizing:border-box;border:none;width:100%;max-width:none;min-height:100svh;margin:0}:root{color:#0f172a;--primary:#2563eb;--primary-dark:#1d4ed8;--sidebar:#1a1a1a;--sidebar-border:#ffffff12;--sidebar-text:#fff;--sidebar-muted:#9e9e9e;--sidebar-hover-row:#ffffff14;--sidebar-hover:#ffffff0f;--sidebar-active:#1565c0;--sidebar-active-hover:#1976d2;--sidebar-accordion-duration:.32s;--sidebar-accordion-ease:cubic-bezier(.4, 0, .2, 1);--card:#fff;--border:#e8e8e8;--danger:#b91c1c;--workspace:#f0f2f5;--badge-mat:#7c3aed;--badge-work:#059669;--mobile-nav-breakpoint:900px;background:#f0f2f5;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.45}*{box-sizing:border-box}body{min-height:100svh;margin:0}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.app-shell{width:100%;max-width:100vw;min-height:100vh;display:flex}.sidebar{background:var(--sidebar);width:260px;min-width:0;color:var(--sidebar-text);border-right:1px solid var(--sidebar-border);flex-direction:column;flex-shrink:0;padding:0;display:flex}.app-shell--sidebar-collapsed .sidebar{width:64px}.sidebar-top-row{border-bottom:1px solid var(--sidebar-border);justify-content:space-between;align-items:center;padding:.85rem .65rem .65rem .85rem;display:flex}.sidebar-logo{align-items:center;gap:.5rem;min-width:0;display:flex}.sidebar-logo-mark{opacity:.9;font-size:1.1rem;line-height:1}.sidebar-logo-text{letter-spacing:.02em;font-size:1.05rem;font-weight:700}.sidebar-icon-btn{width:2rem;height:2rem;color:var(--sidebar-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.sidebar-icon-btn:hover{color:#fff;background:var(--sidebar-hover)}.sidebar-profile{border-bottom:1px solid var(--sidebar-border);padding:.85rem 1rem}.sidebar-profile--collapsed{justify-content:center;padding:.65rem .5rem;display:flex}.sidebar-profile-title{color:#fff;margin-bottom:.2rem;font-size:.88rem;font-weight:600}.sidebar-profile-email{color:var(--sidebar-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.sidebar-avatar{background:var(--sidebar-active);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.85rem;font-weight:700;display:flex}.sidebar-scroll{flex:1;padding:.5rem 0 1rem;overflow-y:auto}.sidebar-group{margin-bottom:.15rem}.sidebar-accordion-shell{transition:grid-template-rows var(--sidebar-accordion-duration) var(--sidebar-accordion-ease);grid-template-rows:0fr;display:grid}.sidebar-accordion-shell--open{grid-template-rows:1fr}.sidebar-accordion-shell--nested{transition-duration:.28s}.sidebar-accordion-inner{min-height:0;overflow:hidden}.sidebar-group-header{width:100%;color:var(--sidebar-muted);letter-spacing:.1em;text-transform:uppercase;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.35rem;margin:0 .2rem;padding:.6rem .75rem .6rem .6rem;font-size:.65rem;font-weight:600;transition:background-color .22s,color .22s;display:flex}.sidebar-group-header:hover{background:var(--sidebar-hover-row);color:#d0d0d0}.sidebar-caret{opacity:.85;flex-shrink:0}.sidebar-group-title{flex:1;min-width:0}.sidebar-group-tools{align-items:center;gap:.15rem;margin-left:auto;display:flex}.sidebar-tool{width:1.65rem;height:1.65rem;color:var(--sidebar-muted);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;text-decoration:none;display:flex}.sidebar-tool:hover{color:#e8e8e8;background:var(--sidebar-hover-row)}.sidebar-tool--muted{opacity:.5;cursor:default}.sidebar-tool--accent{color:#64b5f6}.sidebar-tool--accent:hover{color:#90caf9;background:#64b5f61f}.sidebar-group-body{padding:.15rem .5rem .5rem 1.5rem}.sidebar-group-body--nested{padding-left:.65rem;padding-right:.35rem}.sidebar-ref-block{margin-bottom:.2rem}.sidebar-ref-row{align-items:stretch;gap:.2rem;min-height:2.5rem;display:flex}.sidebar-ref-header-hit{color:#e4e4e4;min-width:0;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;align-items:center;gap:.35rem;padding:.5rem .45rem .5rem .4rem;font-size:.9rem;font-weight:500;transition:background-color .22s,color .22s;display:flex}.sidebar-ref-header-hit:hover{background:var(--sidebar-hover-row);color:#fff}.sidebar-ref-header-hit:focus-visible{outline-offset:1px;outline:2px solid #64b5f680}.sidebar-ref-header-hit--parent:not(:hover){color:#ececec}.sidebar-ref-header-label{flex:1;min-width:0}.sidebar-ref-children{flex-direction:column;gap:.05rem;padding:.1rem 0 .35rem 1.75rem;display:flex}.sidebar-link--leaf{color:#c8c8c8;font-size:.84rem}.sidebar-ref-empty{padding:.15rem .65rem;font-size:.78rem}.sidebar-sub-label{color:var(--sidebar-muted);text-transform:uppercase;letter-spacing:.06em;padding:.35rem .65rem .2rem;font-size:.72rem}.sidebar-link{color:#e4e4e4;border-radius:8px;padding:.5rem .65rem;font-size:.9rem;text-decoration:none;transition:background-color .22s,color .22s;display:block}.sidebar-link:hover:not(.sidebar-link--active){background:var(--sidebar-hover-row);color:#fff;text-decoration:none}.sidebar-link--sub{color:#cfcfcf;font-size:.88rem}.sidebar-link--active{background:var(--sidebar-active);color:#fff;font-weight:500}.sidebar-link--active:hover{background:var(--sidebar-active-hover);color:#fff}.sidebar-add-link{color:var(--primary);margin-top:.35rem;padding:.45rem .65rem;font-size:.85rem;font-weight:500;text-decoration:none;display:block}.sidebar-add-link:hover{color:#93c5fd;text-decoration:none}.sidebar-sub-accordion-header{color:#e8e8e8;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.35rem;width:100%;margin-top:.15rem;padding:.45rem .65rem .45rem .5rem;font-size:.88rem;font-weight:500;display:flex}.sidebar-sub-accordion-header:hover{background:var(--sidebar-hover)}.sidebar-sub-accordion-header .sidebar-caret{color:var(--sidebar-muted)}.sidebar-sub-body{flex-direction:column;gap:.1rem;padding:.15rem 0 .35rem 1.35rem;display:flex}.sidebar-compact{flex-direction:column;flex:1;align-items:center;gap:.35rem;padding:.75rem .35rem;display:flex}.sidebar-compact-link{width:2.5rem;height:2.5rem;color:var(--sidebar-muted);border-radius:10px;justify-content:center;align-items:center;font-size:.95rem;font-weight:600;text-decoration:none;transition:background-color .22s,color .22s;display:flex}.sidebar-compact-link:hover:not(.sidebar-compact-link--active){color:#fff;background:var(--sidebar-hover-row);text-decoration:none}.sidebar-compact-link--active{background:var(--sidebar-active);color:#fff}.sidebar-compact-link--active:hover{background:var(--sidebar-active-hover);color:#fff}.app-main{background:var(--workspace);color:#0f172a;flex-direction:column;flex:1;width:100%;min-width:0;max-width:none;display:flex}.app-topbar{min-height:52px;padding:max(0px, env(safe-area-inset-top)) max(1.25rem, env(safe-area-inset-right)) 0 max(1rem, env(safe-area-inset-left));border-bottom:1px solid var(--border);z-index:20;background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:sticky;top:0}.app-topbar-menu-btn{color:#475569;cursor:pointer;touch-action:manipulation;background:0 0;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;min-width:2.75rem;min-height:2.75rem;margin:0 .25rem 0 -.25rem;padding:0;display:none}.app-topbar-menu-btn:hover{color:#0f172a;background:#f1f5f9}.app-topbar--mobile .app-topbar-menu-btn{display:inline-flex}.app-topbar--mobile .app-user-email{display:none}.app-topbar-nav{flex-wrap:wrap;align-items:center;gap:.15rem;min-width:0;display:flex}.app-topbar-link{color:#64748b;white-space:nowrap;border-radius:8px;padding:.45rem .7rem;font-size:.9rem;text-decoration:none}.app-topbar-link:hover{color:#0f172a;background:#f1f5f9;text-decoration:none}.app-topbar-link--active{color:var(--primary);background:#2563eb1a;font-weight:600}.app-topbar-spacer{flex:1}.app-topbar-right{align-items:center;gap:.75rem;min-width:0;display:flex}.app-user-email{color:#64748b;text-overflow:ellipsis;white-space:nowrap;max-width:min(280px,42vw);font-size:.85rem;overflow:hidden}.btn-topbar-ghost{color:#475569;border:1px solid var(--border);background:0 0}.btn-topbar-ghost:hover{color:#0f172a;background:#f8fafc}.app-main-body{flex:1;min-width:0;padding:1rem 1.25rem 2rem}.page h1,.page h2,.page-header h1,.card h1,.card h2,.stat-card .stat-label{color:#0f172a}.page-header h1{margin:0 0 .25rem;font-size:1.6rem;font-weight:700}.card h2{margin:0 0 .5rem;font-size:1.15rem;font-weight:600}.page{max-width:min(960px,100%);margin:0 auto}.page--wide{max-width:min(1280px,100%)}.handbook-tabs-bar{border-bottom:1px solid var(--border);margin-bottom:1.25rem;padding-bottom:.25rem}.handbook-tabs{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.handbook-tab{border:1px solid var(--border);color:#334155;cursor:pointer;background:#fff;border-radius:8px;padding:.4rem .85rem;font-size:.875rem;font-weight:500;line-height:1.25;transition:background .15s,border-color .15s,color .15s}.handbook-tab:hover{color:#0f172a;background:#f8fafc;border-color:#cbd5e1}.handbook-tab--active{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.handbook-tab--add{color:#2563eb;background:#f8fafc;border-style:dashed;border-color:#93c5fd;min-width:2.25rem;padding-left:.5rem;padding-right:.5rem;font-size:1.1rem;font-weight:600}.handbook-tab--add:hover{color:#1d4ed8;background:#eff6ff;border-color:#3b82f6}.rates-inline-switch{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.rates-page__head{margin-bottom:1rem}.rates-page__title-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.rates-page__h1{letter-spacing:-.02em;color:#0f172a;margin:0;font-size:1.35rem;font-weight:600}.rates-page__edit-name{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.2rem;font-size:1rem;line-height:1}.rates-page__edit-name:hover{color:#2563eb;background:#f1f5f9}.rates-page__sub{margin:.35rem 0 0;font-size:.88rem}.rates-page__title-form{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.rates-page__title-input{border:1px solid #cbd5e1;border-radius:8px;min-width:12rem;padding:.25rem .5rem;font-size:1.35rem;font-weight:600}.rates-page__toolbar{margin-bottom:.5rem}.rates-table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow-x:auto}.rates-table{min-width:1100px;font-size:.8125rem}.rates-table thead th{color:#64748b;white-space:nowrap;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:.5rem .45rem;font-size:.75rem;font-weight:600}.rates-table__data-row td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:.25rem .35rem}.rates-table__section-row td{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:.35rem .45rem}.rates-section-head{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.rates-table__section-meta{text-transform:lowercase;font-size:.72rem;font-weight:500}.rates-table__section-toggle{cursor:pointer;color:#64748b;background:0 0;border:none;padding:0 .15rem;font-size:.75rem}.rates-cell-input{width:100%;min-width:0;font-size:inherit;color:#0f172a;background:0 0;border:1px solid #0000;border-radius:6px;padding:.28rem .4rem}.rates-cell-input:hover{background:#fff;border-color:#e2e8f0}.rates-cell-input:focus{background:#fff;border-color:#93c5fd;outline:none;box-shadow:0 0 0 2px #3b82f61f}.rates-cell-input--narrow{max-width:5rem}.rates-cell-input--num{text-align:right;font-variant-numeric:tabular-nums;max-width:6.5rem}.rates-cell-input--section-title{flex:1;min-width:140px;max-width:420px;font-weight:600}.rates-cell-select{color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:6px;max-width:8rem;padding:.2rem .35rem;font-size:.78rem}.rates-col-drag{color:#cbd5e1;text-align:center;-webkit-user-select:none;user-select:none;vertical-align:middle;width:2rem}.rates-drag-handle{width:100%;min-height:2.25rem;color:inherit;cursor:grab;touch-action:none;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:background-color .15s,color .15s;display:inline-flex}.rates-drag-handle:hover{color:#64748b;background:#f1f5f9}.rates-drag-handle:active{cursor:grabbing}.rates-drag-icon{letter-spacing:-.12em;pointer-events:none;font-size:.9rem}.rates-table__data-row--dragging{background:#f8fafc;box-shadow:0 6px 20px #0f172a14}.rates-table__data-row--dragging td{border-bottom-color:#e2e8f0}.rates-customer-input-wrap{justify-content:flex-end;align-items:center;gap:.15rem;width:100%;max-width:9rem;display:inline-flex}.rates-cell-input--customer{flex:1;min-width:0;max-width:7.5rem}.rates-customer-suffix{color:#64748b;flex-shrink:0;font-size:.75rem}.rates-col-expand{width:.75rem}.rates-col-menu{text-align:center;width:2rem;position:relative}.rates-row-menu-wrap{position:relative}.rates-row-menu{border:1px solid var(--border);z-index:25;background:#fff;border-radius:8px;min-width:9rem;margin:.15rem 0 0;padding:.25rem 0;list-style:none;position:absolute;top:100%;right:0;box-shadow:0 8px 24px #0f172a1f}.rates-row-menu button{text-align:left;width:100%;font:inherit;cursor:pointer;color:#0f172a;background:0 0;border:none;padding:.35rem .75rem}.rates-row-menu button:hover{background:#f1f5f9}.rates-row-menu-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.15rem .35rem;line-height:1}.rates-row-menu-btn:hover{color:#334155;background:#f1f5f9}.rates-table__customer{font-variant-numeric:tabular-nums;color:#334155}.catalog-page--bulk{padding-bottom:5rem}.catalog-bulk-bar{z-index:40;color:#e2e8f0;background:#0f172a;border-top:1px solid #1e293b;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 1.25rem;display:flex;position:fixed;bottom:0;left:260px;right:0;box-shadow:0 -4px 24px #0003}.app-shell--sidebar-collapsed .catalog-bulk-bar{left:64px}.catalog-bulk-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.catalog-bulk-meta{color:#94a3b8;align-items:center;gap:.75rem;font-size:.88rem;display:flex}.catalog-bulk-close{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.35rem;line-height:1}.catalog-bulk-close:hover{color:#fff}.table--rates .col-check{text-align:center;width:2.5rem}.table--rates .col-type{width:3.25rem}.table--rates .col-actions{text-align:right;width:6rem}.rate-type-cell{position:relative;overflow:visible}.catalog-badge--rate{cursor:pointer;font:inherit;text-align:center;border:none;min-width:1.75rem;padding:.15rem .35rem}.rate-type-menu{border:1px solid var(--border);z-index:30;background:#fff;border-radius:8px;min-width:11rem;margin:.2rem 0 0;padding:.35rem 0;list-style:none;position:absolute;top:100%;left:0;box-shadow:0 8px 24px #0f172a1f}.rate-type-menu li{margin:0}.rate-type-menu button{width:100%;font:inherit;text-align:left;cursor:pointer;color:#0f172a;background:0 0;border:none;align-items:center;gap:.5rem;padding:.4rem .75rem;display:flex}.rate-type-menu button:hover{background:#f1f5f9}.rate-type-menu--portal{z-index:10050;border:1px solid var(--border);background:#fff;border-radius:8px;min-width:11rem;margin:0;padding:.35rem 0;list-style:none;position:fixed;box-shadow:0 8px 24px #0f172a1f}.rate-type-menu--portal button{width:100%;font:inherit;text-align:left;cursor:pointer;color:#0f172a;background:0 0;border:none;align-items:center;gap:.5rem;padding:.4rem .75rem;display:flex}.rate-type-menu--portal button:hover{background:#f1f5f9}.rates-row-menu--portal{z-index:10050;border:1px solid var(--border);background:#fff;border-radius:8px;min-width:9rem;margin:0;padding:.25rem 0;list-style:none;position:fixed;box-shadow:0 8px 24px #0f172a1f}.rates-row-menu--portal button{text-align:left;width:100%;font:inherit;cursor:pointer;color:#0f172a;background:0 0;border:none;padding:.35rem .75rem}.rates-row-menu--portal button:hover{background:#f1f5f9}.catalog-add-type select{min-width:9rem}.btn-danger{color:#fff;background:#b91c1c;border:1px solid #b91c1c}.btn-danger:hover:not(:disabled){background:#991b1b;border-color:#991b1b}.catalog-page{margin:0 auto}.catalog-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.25rem 1.5rem 1.5rem;box-shadow:0 1px 3px #0f172a14}.catalog-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.catalog-head h1{color:#0f172a;align-items:center;gap:.5rem;margin:0;font-size:1.5rem;font-weight:700;display:flex}.catalog-head-icon{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1rem;line-height:1;display:inline-flex}.catalog-head-icon:hover{color:#0f172a;background:#e2e8f0}.catalog-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.catalog-toolbar-left{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.catalog-toolbar-right{flex:1;justify-content:flex-end;min-width:min(100%,280px);display:flex}.catalog-search{width:100%;max-width:420px;position:relative}.catalog-search input{border:1px solid var(--border);border-radius:8px;width:100%;padding:.5rem .75rem .5rem 2.25rem;font-size:.92rem}.catalog-search-icon{color:#94a3b8;pointer-events:none;font-size:.95rem;position:absolute;top:50%;left:.65rem;transform:translateY(-50%)}.btn-toolbar{align-items:center;gap:.35rem;font-size:.9rem;display:inline-flex}.btn-toolbar:disabled{opacity:.55;cursor:not-allowed}.catalog-add-block{background:#fafafa;border:1px dashed #d4d4d8;border-radius:10px;margin-bottom:1.5rem;padding:1rem 1.25rem}.catalog-add-block h2{color:#334155;margin:0 0 .85rem;font-size:1rem;font-weight:600}.catalog-empty{text-align:center;color:#64748b;padding:2.5rem 1rem;font-size:.95rem}.h2-plain{color:#334155;margin:0 0 1rem;font-size:1.1rem;font-weight:600}.op-lines{flex-direction:column;gap:.75rem;margin:.35rem 0 .75rem;display:flex}.op-lines-label{color:#64748b;font-size:.88rem}.op-line-row{border:1px solid var(--border);background:#fff;border-radius:8px;flex-wrap:wrap;align-items:flex-end;gap:.5rem;padding:.5rem .65rem;display:flex}.op-line-row select{flex:1;min-width:160px}.op-line-qty{flex-direction:column;gap:.25rem;min-width:5rem;font-size:.82rem;display:flex}.op-line-qty input{max-width:7rem}.est-op-hint{margin:0 0 .75rem;font-size:.92rem;line-height:1.45}.table--catalog thead th{color:#334155;text-transform:none;letter-spacing:0;border-bottom:1px solid var(--border);background:#f5f6f8;font-size:.78rem}.table--catalog tbody td{vertical-align:middle}.catalog-cell-pos{align-items:center;gap:.5rem;min-width:0;display:flex}.catalog-badge{color:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;font-size:.75rem;font-weight:700;display:flex}.catalog-badge--mat{background:var(--badge-mat)}.catalog-badge--work{background:var(--badge-work)}.col-num{text-align:right;white-space:nowrap}@media (width<=640px){.app-main-body{padding:.85rem max(.75rem, env(safe-area-inset-left)) max(2rem, env(safe-area-inset-bottom)) max(.75rem, env(safe-area-inset-right))}}@media (width<=900px){.app-shell--mobile{flex-direction:row;min-height:100dvh}.app-shell--mobile .sidebar{z-index:200;border-right:1px solid var(--sidebar-border);width:min(300px,88vw);max-height:none;box-shadow:none;padding-bottom:env(safe-area-inset-bottom);border-bottom:none;flex-shrink:0;transition:transform .22s;position:fixed;top:0;bottom:0;left:0;transform:translate(-105%)}.app-shell--mobile.app-shell--nav-open .sidebar{transform:translate(0,0);box-shadow:8px 0 32px #00000059}.app-shell--mobile .sidebar-scroll{flex:1;min-height:0;max-height:none}.app-shell__nav-backdrop{z-index:199;background:#0f172a7a;animation:.2s app-backdrop-in;position:fixed;inset:0}@keyframes app-backdrop-in{0%{opacity:0}to{opacity:1}}.app-shell--mobile .app-main{width:100%;min-width:0;min-height:100dvh}.app-topbar{min-height:48px;padding-left:max(.5rem, env(safe-area-inset-left));padding-right:max(.75rem, env(safe-area-inset-right));gap:.35rem}.app-topbar-nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;flex:1;min-width:0;padding-bottom:2px;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 12px calc(100% - 12px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 12px calc(100% - 12px),#0000 100%)}.app-topbar-nav::-webkit-scrollbar{display:none}.app-topbar-link,.app-topbar-right{flex-shrink:0}.catalog-toolbar{flex-direction:column;align-items:stretch}.catalog-toolbar-right{justify-content:stretch}.catalog-search{max-width:none}.handbook-tabs-bar{-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-left:max(-.75rem, calc(-1 * env(safe-area-inset-left)));margin-right:max(-.75rem, calc(-1 * env(safe-area-inset-right)));padding-left:max(.75rem, env(safe-area-inset-left));padding-right:max(.75rem, env(safe-area-inset-right));overflow:auto hidden}.handbook-tabs-bar::-webkit-scrollbar{display:none}.handbook-tabs{flex-wrap:nowrap;min-width:min-content}.table-wrap,.rates-table-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;margin-left:max(-.75rem, calc(-1 * env(safe-area-inset-left)));margin-right:max(-.75rem, calc(-1 * env(safe-area-inset-right)));padding-left:max(.75rem, env(safe-area-inset-left));padding-right:max(.75rem, env(safe-area-inset-right));scroll-padding-inline:.75rem}.page-header h1{font-size:clamp(1.2rem,5vw,1.6rem)}.card{padding:1rem 1.1rem}.app-main-body input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=button]):not([type=submit]):not([type=reset]),.app-main-body select,.app-main-body textarea{font-size:max(16px,1rem)}.catalog-bulk-bar{padding-bottom:max(.65rem, env(safe-area-inset-bottom));padding-left:max(1rem, env(safe-area-inset-left));padding-right:max(1rem, env(safe-area-inset-right));left:0;right:0}}@media (width<=900px) and (prefers-reduced-motion:reduce){.app-shell--mobile .sidebar{transition:none}.app-shell__nav-backdrop{animation:none}}@media (width<=768px){.app-topbar-nav{gap:.05rem}.app-topbar-link{padding:.4rem .55rem;font-size:.85rem}}.page-header.row-between{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.muted{color:#64748b;font-size:.95rem}.breadcrumb{margin-bottom:.75rem;font-size:.9rem}.total-pill{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;padding:.6rem 1rem;font-size:1rem}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #0f172a0f}.mb-lg{margin-bottom:1.5rem}.mt-lg{margin-top:1.5rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;display:grid}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:1rem;display:grid}.stat-card{background:var(--card);border:1px solid var(--border);color:inherit;border-radius:12px;flex-direction:column;gap:.35rem;padding:1.25rem;text-decoration:none;transition:box-shadow .15s,border-color .15s;display:flex}.stat-card:hover{border-color:#cbd5e1;text-decoration:none;box-shadow:0 4px 12px #0f172a14}.stat-card-static{cursor:default}.stat-card-static:hover{box-shadow:none}.stat-value{color:var(--primary);font-size:1.75rem;font-weight:700}.stat-label{color:#64748b;font-size:.85rem}.steps{color:#475569;margin:.5rem 0 0;padding-left:1.25rem}.steps li{margin-bottom:.5rem}.form-stack{flex-direction:column;gap:.85rem;display:flex}.form-stack label,.form-row label{color:#334155;flex-direction:column;gap:.35rem;font-size:.88rem;font-weight:500;display:flex}.form-row{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.form-row label{flex:1;min-width:140px}input,select,textarea{font:inherit;border:1px solid var(--border);color:#0f172a;-webkit-text-fill-color:#0f172a;background:#fff;border-radius:8px;padding:.5rem .65rem}input::selection{color:#0f172a;background:#bfdbfe}textarea::selection{color:#0f172a;background:#bfdbfe}input:-webkit-autofill{-webkit-text-fill-color:#0f172a;transition:background-color 99999s ease-out;box-shadow:inset 0 0 0 1000px #fff}input:-webkit-autofill:hover{-webkit-text-fill-color:#0f172a;transition:background-color 99999s ease-out;box-shadow:inset 0 0 0 1000px #fff}input:-webkit-autofill:focus{-webkit-text-fill-color:#0f172a;transition:background-color 99999s ease-out;box-shadow:inset 0 0 0 1000px #fff}textarea:-webkit-autofill{-webkit-text-fill-color:#0f172a;transition:background-color 99999s ease-out;box-shadow:inset 0 0 0 1000px #fff}textarea:-webkit-autofill:hover{-webkit-text-fill-color:#0f172a;transition:background-color 99999s ease-out;box-shadow:inset 0 0 0 1000px #fff}textarea:-webkit-autofill:focus{-webkit-text-fill-color:#0f172a;transition:background-color 99999s ease-out;box-shadow:inset 0 0 0 1000px #fff}select option{color:#0f172a;background:#fff}.input-inline{width:6rem;padding:.35rem .5rem}.btn{font:inherit;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.55rem 1rem;display:inline-flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-secondary{color:#0f172a;background:#e2e8f0}.btn-secondary:hover{background:#cbd5e1}.btn-ghost{color:inherit;background:0 0}.btn-sm{padding:.25rem .5rem;font-size:.85rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.text-danger{color:var(--danger)}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.92rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);padding:.5rem .65rem}.table th{color:#475569;text-transform:uppercase;letter-spacing:.02em;font-size:.8rem;font-weight:600}.table--estimate{font-size:.875rem}.table--estimate th,.table--estimate td{vertical-align:middle;padding:.45rem .5rem}.table--estimate tbody tr:nth-child(2n){background:#f9fafb}.table--estimate .col-num{text-align:right;white-space:nowrap}.table--estimate .col-num .input-inline{text-align:right;width:5.5rem}.item-type-badge{letter-spacing:.02em;color:#fff;border-radius:6px;justify-content:center;align-items:center;min-width:1.65rem;height:1.65rem;padding:0 .25rem;font-size:.68rem;font-weight:800;display:inline-flex}.item-type-badge--mat{background:var(--badge-mat)}.item-type-badge--work{background:var(--badge-work)}.est-block{margin-bottom:1rem}.est-details>summary{cursor:pointer;color:#0f172a;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;padding:0 0 .75rem;font-size:1.05rem;font-weight:600;list-style:none;display:flex}.est-details>summary::-webkit-details-marker{display:none}.est-details>summary:before{content:"";border-bottom:2px solid #94a3b8;border-right:2px solid #94a3b8;width:.4rem;height:.4rem;transition:transform .15s;display:inline-block;transform:rotate(-45deg)}.est-details[open]>summary:before{margin-top:.12rem;transform:rotate(45deg)}.est-details-body{padding-top:.25rem}.est-details-body--tight{padding-top:0}.est-new-section{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.est-new-section-input{min-width:200px;font:inherit;border:1px solid var(--border);color:#0f172a;background:#fff;border-radius:8px;flex:1;padding:.5rem .65rem}.est-sections-stack{flex-direction:column;gap:.75rem;display:flex}.est-section-card{border:1px solid var(--border);background:#fff;border-radius:10px;overflow:hidden}.est-section-card>summary.est-section-summary{cursor:pointer;border-bottom:1px solid var(--border);color:#0f172a;background:#f8fafc;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:.65rem .85rem;font-weight:600;list-style:none;display:flex}.est-section-card>summary.est-section-summary::-webkit-details-marker{display:none}.est-section-title{flex:auto;min-width:0}.est-section-meta{color:#64748b;font-size:.85rem;font-weight:500}.est-section-actions{flex-wrap:wrap;gap:.25rem;margin-left:auto;display:flex}.est-section-card .table-wrap{margin:0}.select-inline{font:inherit;border:1px solid var(--border);color:#0f172a;background:#fff;border-radius:6px;max-width:11rem;padding:.3rem .4rem;font-size:.82rem}.link-list{margin:0;padding:0;list-style:none}.link-list li{border-bottom:1px solid #f1f5f9;padding:.4rem 0}.alert{border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.alert-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.auth-page{color:#0f172a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:linear-gradient(160deg,#e0e7ff 0%,#f1f5f9 45%,#fff 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.auth-card{border:1px solid var(--border);background:#fff;border-radius:16px;width:100%;max-width:400px;padding:2rem;box-shadow:0 10px 40px #0f172a14}.auth-card-wide{max-width:460px}.auth-card h1{color:#0f172a;margin:0 0 .25rem;font-size:1.5rem}.auth-footer{color:#64748b;text-align:center;margin-top:1.25rem;font-size:.9rem}.landing{background:#f8fafc;flex-direction:column;min-height:100vh;display:flex}.landing-header{border-bottom:1px solid var(--border);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 2rem;display:flex}@media (width<=480px){.landing-header{padding:.75rem 1rem}.landing-main{padding:2rem 1rem}}.landing-header .logo{color:#0f172a;font-size:1.2rem;font-weight:700}.landing-actions{gap:.5rem;display:flex}.landing-main{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:3rem 1.5rem;display:flex}.landing-main h1{color:#0f172a;max-width:560px;margin:0 0 1rem;font-size:clamp(1.75rem,4vw,2.25rem)}.landing-main .lead{color:#64748b;max-width:520px;margin:0 0 2rem;font-size:1.1rem}.landing-cta{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.loading-screen{color:#64748b;justify-content:center;align-items:center;min-height:40vh;display:flex}.projects-page{margin:0 auto}.projects-toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.projects-toolbar-title{color:#0f172a;margin:0;font-size:1.35rem;font-weight:700}.projects-toolbar-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.projects-board{flex-direction:column;gap:1.25rem;display:flex}.projects-cat-block{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1rem 1.25rem;box-shadow:0 1px 3px #0f172a0f}.projects-cat-block--muted{background:#fafafa}.projects-cat-head{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;margin-bottom:.65rem;padding-bottom:.5rem;display:flex}.projects-cat-title{color:#0f172a;margin:0;font-size:1.05rem;font-weight:600}.projects-cat-order{flex-direction:column;gap:.1rem;display:flex}.projects-order-btn{min-width:1.75rem;padding:.1rem .35rem;line-height:1.2}.projects-object-list{margin:0;padding:0;list-style:none}.projects-object-row{border-bottom:1px solid #f1f5f9;align-items:baseline;gap:.5rem;padding:.35rem 0;display:flex}.projects-object-row:last-child{border-bottom:none}.projects-object-link{color:var(--primary);font-weight:500;text-decoration:none}.projects-object-link:hover{text-decoration:underline}.projects-object-empty{padding:.25rem 0;font-size:.92rem}.modal-overlay{z-index:1000;background:#0f172a73;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-card{border:1px solid var(--border);background:#fff;border-radius:12px;width:min(440px,100%);box-shadow:0 12px 40px #0f172a2e}.modal-card--sm{width:min(380px,100%)}.modal-card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.modal-card-head h2{color:#0f172a;margin:0;font-size:1.2rem;font-weight:700}.modal-close{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.15rem .35rem;font-size:1.5rem;line-height:1}.modal-close:hover{color:#0f172a;background:#f1f5f9}.modal-card-body{padding:1.25rem}.modal-card-body label{color:#475569;font-size:.88rem}.handbook-picker-overlay{z-index:1100;background:#0f172a80;justify-content:center;align-items:center;padding:1rem;animation:.2s handbook-picker-fade;display:flex;position:fixed;inset:0}@keyframes handbook-picker-fade{0%{opacity:0}to{opacity:1}}.handbook-picker{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;width:min(960px,100%);max-height:min(88vh,900px);display:flex;position:relative;overflow:hidden;box-shadow:0 24px 64px #0f172a38}.handbook-picker-close{z-index:2;color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:50%;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;font-size:1.35rem;line-height:1;transition:background .15s,transform .15s;display:flex;position:absolute;top:-.35rem;left:-.35rem;box-shadow:0 4px 14px #2563eb73}.handbook-picker-close:hover{background:#1d4ed8;transform:scale(1.04)}.handbook-picker-tabs{background:#1e293b;border-bottom:1px solid #0f172a;flex-wrap:wrap;gap:0;padding:.35rem .35rem 0 3rem;display:flex}.handbook-picker-tab{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px 6px 0 0;padding:.5rem .65rem;font-size:.78rem;font-weight:600;transition:color .15s,background .15s}.handbook-picker-tab:hover{color:#e2e8f0;background:#ffffff0f}.handbook-picker-tab--active{color:#0f172a;background:#fff}.handbook-picker-body{flex-direction:column;flex:1;min-height:0;padding:1rem 1.15rem 1.1rem;display:flex;overflow:auto}.handbook-picker-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.handbook-picker-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;margin-bottom:.65rem;display:flex}.handbook-picker-toolbar--simple{justify-content:flex-end}.handbook-picker-select{color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex:1;min-width:180px;max-width:100%;padding:.45rem .65rem;font-size:.88rem}.handbook-picker-edit-link{color:#2563eb;white-space:nowrap;font-size:.82rem;font-weight:600;text-decoration:none}.handbook-picker-edit-link:hover{text-decoration:underline}.handbook-picker-search{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:.4rem;margin-bottom:.75rem;padding:.45rem .65rem;display:flex}.handbook-picker-search-icon{color:#94a3b8;font-size:1rem;line-height:1}.handbook-picker-search-input{background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:.88rem}.handbook-picker-table-wrap{border:1px solid #e8e8e8;border-radius:8px;max-height:min(42vh,360px);overflow:auto}.handbook-picker-table{border-collapse:collapse;width:100%;font-size:.78rem}.handbook-picker-table thead{z-index:1;background:#f1f5f9;position:sticky;top:0}.handbook-picker-table th,.handbook-picker-table td{text-align:left;vertical-align:top;border-bottom:1px solid #eef0f2;padding:.4rem .45rem}.handbook-picker-table th{color:#475569;font-size:.72rem;font-weight:600}.handbook-picker-col-type{width:2rem}.handbook-picker-name{color:#0f172a;max-width:220px;font-weight:500}.handbook-picker-rounding{max-width:140px;font-size:.7rem}.handbook-picker-note{word-break:break-word;max-width:120px;font-size:.72rem}.handbook-picker-hint{color:#64748b;cursor:help;background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:.95rem;height:.95rem;font-size:.62rem;display:inline-flex}.handbook-picker-badge{color:#fff;border-radius:4px;justify-content:center;align-items:center;min-width:1.35rem;height:1.35rem;font-size:.65rem;font-weight:700;display:inline-flex}.handbook-picker-badge--m{background:#7c3aed}.handbook-picker-badge--w{background:#059669}.handbook-picker-empty{text-align:center;color:#94a3b8;font-size:.85rem;padding:1.25rem .75rem!important}.handbook-picker-footnote{margin:.65rem 0 0;font-size:.78rem;line-height:1.4}.handbook-picker-placeholder{text-align:left;padding:.5rem 0 .25rem}.handbook-picker-placeholder-title{color:#0f172a;margin:0 0 .35rem;font-size:1rem;font-weight:700}.handbook-picker-cta{margin-top:.85rem}.handbook-picker-op-list{border:1px solid #e8e8e8;border-radius:8px;max-height:min(40vh,320px);margin:0;padding:0;list-style:none;overflow:auto}.handbook-picker-op-item{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.84rem;display:flex}.handbook-picker-op-item:last-child{border-bottom:none}.handbook-picker-op-name{color:#334155;font-weight:500}.handbook-picker-op-meta{font-size:.75rem}.handbook-picker-external .handbook-picker-env-hint code{word-break:break-all;font-size:.76rem}.handbook-picker-alert{margin:.5rem 0;font-size:.82rem}.handbook-picker-external-list{color:#334155;margin:.75rem 0 0;padding-left:1.1rem;font-size:.84rem}.handbook-picker-external-row{margin-bottom:.35rem}.app-topbar-nav{flex-wrap:wrap;gap:.15rem .5rem}.app-topbar-link--soon{opacity:.42;cursor:default;-webkit-user-select:none;user-select:none;font-size:.82rem}.sidebar-group-body--objects{flex-direction:column;gap:.35rem;display:flex}.sidebar-tree-muted{color:#94a3b8;padding:.25rem 0 .25rem .5rem;font-size:.8rem}.sidebar-obj-tree{flex-direction:column;gap:.15rem;margin-top:.25rem;display:flex}.sidebar-obj-block{flex-direction:column;display:flex}.sidebar-obj-row{color:#e2e8f0;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:.35rem;width:100%;padding:.35rem .25rem;font-size:.88rem;display:flex}.sidebar-obj-row:hover{background:#ffffff0f}.sidebar-obj-row--cat{color:#f1f5f9;font-weight:600}.sidebar-obj-row--muted .sidebar-obj-label{opacity:.85}.sidebar-obj-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sidebar-obj-badge{text-align:center;color:#e0f2fe;background:#3b82f659;border-radius:999px;flex-shrink:0;min-width:1.25rem;height:1.25rem;padding:0 .35rem;font-size:.68rem;font-weight:700;line-height:1.25rem}.sidebar-obj-badge--sm{min-width:1.1rem;height:1.1rem;font-size:.62rem;line-height:1.1rem}.sidebar-obj-nested{border-left:1px solid #ffffff14;margin-left:.45rem;padding-left:.85rem}.sidebar-obj-nested--est{flex-direction:column;align-items:stretch;gap:.1rem;padding-top:.2rem;padding-bottom:.35rem;display:flex}.sidebar-obj-indent{padding-left:.5rem}.sidebar-obj-row-wrap{align-items:center;gap:.15rem;width:100%;display:flex}.sidebar-obj-caret-btn{cursor:pointer;color:#94a3b8;background:0 0;border:none;border-radius:4px;align-items:center;padding:.2rem;display:flex}.sidebar-obj-caret-btn:hover{color:#e2e8f0;background:#ffffff0f}.sidebar-obj-link{text-overflow:ellipsis;white-space:nowrap;color:#cbd5e1;border-radius:4px;flex:1;min-width:0;padding:.25rem .15rem;font-size:.86rem;text-decoration:none;overflow:hidden}.sidebar-obj-link:hover{color:#f8fafc}.sidebar-obj-link--proj{font-weight:500}.sidebar-obj-link--est{box-sizing:border-box;color:#94a3b8;flex:none;width:100%;padding-left:.5rem;font-size:.82rem;display:block}.sidebar-obj-link--est.sidebar-link--active{color:#93c5fd}.sidebar-obj-add-est{color:#60a5fa;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;margin-top:.15rem;padding:.25rem .5rem;font-size:.8rem}.sidebar-obj-add-est:hover{background:#3b82f61f;text-decoration:underline}.sidebar-obj-add-cat{color:#94a3b8;cursor:pointer;text-align:center;background:0 0;border:1px dashed #94a3b873;border-radius:8px;margin-top:.5rem;padding:.45rem .5rem;font-size:.82rem}.sidebar-obj-add-cat:hover{color:#bfdbfe;border-color:#60a5fa}.modal-overlay--light{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a8c}.modal-card--create-obj{border-radius:10px;width:min(480px,100%);box-shadow:0 20px 50px #0f172a40}.modal-card--team{border-radius:10px;width:min(920px,100%);max-height:min(90vh,900px);overflow:auto}.form-label-floating{flex-direction:column;gap:.35rem;display:flex}.form-label-muted{color:#64748b;font-size:.78rem;font-weight:500}.input-refined{border:1px solid #e2e8f0;border-radius:8px;padding:.6rem .75rem;font-size:.95rem}.input-refined:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f633}.btn-refined{border-radius:8px;align-self:flex-start;margin-top:.5rem;padding:.55rem 1.25rem;font-weight:600}.team-modal-hint{color:#475569;background:#f1f5f9;border-radius:8px;margin:0 0 1rem;padding:.75rem 1rem;font-size:.88rem;line-height:1.45}.team-role-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.team-role-title{color:#0f172a;margin-bottom:.5rem;font-size:.82rem;font-weight:700}.team-role-cards{flex-direction:column;gap:.5rem;display:flex}.team-member-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:.5rem;padding:.5rem .6rem;display:flex;position:relative}.team-member-avatar{color:#fff;background:linear-gradient(135deg,#f472b6,#c084fc);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;font-size:.95rem;font-weight:700;display:flex}.team-member-text{flex:1;min-width:0}.team-member-name{color:#0f172a;font-size:.88rem;font-weight:600}.team-member-email{font-size:.75rem}.team-member-remove{color:#94a3b8;cursor:pointer;background:0 0;border:none;font-size:1.1rem;line-height:1;position:absolute;top:.25rem;right:.35rem}.team-add-card{color:#2563eb;cursor:pointer;background:#fafafa;border:1px dashed #cbd5e1;border-radius:10px;justify-content:center;align-items:center;gap:.35rem;padding:.75rem;font-size:.88rem;display:flex}.team-add-card:hover{background:#eff6ff;border-color:#60a5fa}.team-add-plus{font-size:1.1rem;font-weight:700}.team-pick{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.modal-card-actions{border-top:1px solid var(--border);margin-top:1.25rem;padding-top:.75rem}.card--refined{border-radius:12px;box-shadow:0 1px 3px #0f172a0f}.card-title-refined{color:#0f172a;margin:0 0 .75rem;font-size:1.05rem;font-weight:700}.page--estimate-ref{max-width:min(1280px,100%)}.estimate-page-1v1{background:#f5f6f8;min-height:calc(100vh - 4rem);margin:-.75rem -1rem -2rem;padding:.75rem 1rem 3rem;position:relative}.estimate-ref-breadcrumb--sr{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.estimate-ref-breadcrumb--sr:focus-within{clip:auto;width:auto;height:auto;margin:0 0 .75rem;position:static;overflow:visible}.estimate-editor-shell{flex-direction:column;gap:0;margin-top:.25rem;display:flex}.estimate-editor-tabs{background:#2a2a2c;border:1px solid #1a1a1c;border-radius:8px 8px 0 0;flex-wrap:wrap;align-items:flex-end;gap:.15rem;margin:0;padding:.3rem .35rem 0;display:flex;box-shadow:inset 0 1px #ffffff0d}.estimate-editor-tab{color:#b4b4b8;cursor:pointer;background:0 0;border:none;border-radius:6px 6px 0 0;flex:0 auto;margin-bottom:0;padding:.45rem .65rem .55rem;font-size:.75rem;font-weight:500;transition:color .12s,background .12s}.estimate-editor-tab:hover{color:#ececee;background:#ffffff0f}.estimate-editor-tab--active{color:#111827;background:#fff;font-weight:600;box-shadow:0 1px #fff}.estimate-editor-placeholder{border-top:none;border-radius:0 0 10px 10px;margin:0;padding:1.25rem 1.5rem}.estimate-editor-topcard{background:#fff;border:1px solid #e5e7eb;border-top:none;border-radius:0 0 8px 8px;grid-template-rows:auto;grid-template-columns:minmax(0,1fr) minmax(140px,176px) minmax(220px,1fr);align-items:start;gap:.65rem .85rem;margin-bottom:1rem;padding:.85rem 1rem 1rem;display:grid;box-shadow:0 1px 3px #0f172a0f}.estimate-editor-topcol--left{flex-direction:column;gap:.75rem;min-width:0;display:flex}.estimate-editor-hero{margin:0;padding:0}.estimate-editor-title-row{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}.estimate-editor-title{letter-spacing:-.02em;color:#0f172a;margin:0;font-size:clamp(1.05rem,1.6vw,1.3rem);font-weight:700;line-height:1.25}.estimate-editor-title-sum{color:#0f172a;font-weight:700}.estimate-editor-title-sep{color:#94a3b8;font-weight:500}.estimate-editor-title-input{font:inherit;border:1px solid #cbd5e1;border-radius:6px;width:100%;max-width:24rem;padding:.3rem .45rem;font-size:clamp(1.05rem,1.6vw,1.3rem);font-weight:700}.estimate-editor-title-edit{border:1px solid var(--border);color:#64748b;cursor:pointer;background:#f8fafc;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;font-size:.95rem;line-height:1;transition:background .15s,border-color .15s;display:inline-flex}.estimate-editor-title-edit:hover{color:#2563eb;background:#eff6ff;border-color:#93c5fd}.estimate-editor-actions{flex-direction:column;align-items:stretch;gap:.3rem;min-width:0;display:flex}.estimate-summary-panel{-webkit-overflow-scrolling:touch;background:#fafafa;border:1px solid #e8e8e8;border-radius:8px;align-self:start;width:100%;min-width:0;max-width:100%;padding:.4rem .45rem .5rem;overflow-x:auto;box-shadow:inset 0 1px #ffffffe6}.estimate-summary-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:360px;font-size:.75rem}.estimate-summary-table thead th{color:#64748b;text-transform:none;letter-spacing:0;word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none;border-bottom:1px solid #e2e8f0;padding:.3rem .35rem;font-size:.68rem;font-weight:600}.estimate-summary-table td{font-variant-numeric:tabular-nums;border-bottom:1px solid #f1f5f9;padding:.32rem .35rem}.estimate-summary-table .col-num{font-size:.72rem}.estimate-summary-table th:first-child,.estimate-summary-table td:first-child{width:40%;min-width:8.75rem}.estimate-summary-table th:nth-child(n+2),.estimate-summary-table td:nth-child(n+2){width:20%}.estimate-summary-table tbody th[scope=row]{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:.32rem .35rem}.estimate-summary-table tbody tr:last-child td,.estimate-summary-table tbody tr:last-child th{border-bottom:none}.estimate-summary-row th[scope=row]{color:#334155;text-align:left;-webkit-hyphens:none;hyphens:none;word-break:normal;white-space:nowrap;align-items:center;gap:.45rem;font-weight:500;display:flex}.estimate-summary-row--total th[scope=row]{vertical-align:middle;white-space:nowrap;display:table-cell}.estimate-summary-legend{border-radius:3px;flex-shrink:0;width:.55rem;height:.55rem}.estimate-summary-legend--works{background:#059669}.estimate-summary-legend--mat{background:#7c3aed}.estimate-summary-legend--mech{background:#38bdf8}.estimate-summary-legend--del{background:#f97316}.estimate-meta-label--sentence{text-transform:none;letter-spacing:.02em;color:#94a3b8;font-weight:500}.estimate-summary-row--total th{text-transform:uppercase;letter-spacing:.05em;color:#0f172a;border-top:2px solid #e2e8f0;padding-top:.5rem;font-size:.76rem;font-weight:700}.estimate-summary-row--total td{border-top:2px solid #e2e8f0;padding-top:.5rem;font-weight:600}.estimate-summary-total-profit{white-space:nowrap}.estimate-summary-profit-val{margin-right:.35rem}.estimate-summary-pct-badge{color:#fff;vertical-align:middle;background:#2563eb;border-radius:6px;justify-content:center;align-items:center;min-width:2.25rem;padding:.15rem .45rem;font-size:.72rem;font-weight:700;display:inline-flex}.estimate-summary-pct-badge--sm{min-width:2rem;margin-left:.35rem;font-size:.68rem}.estimate-editor-meta-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));align-items:start;gap:.45rem .85rem;display:grid}.estimate-meta-cell{flex-direction:column;gap:.25rem;min-width:0;display:flex}.estimate-meta-label{text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;font-size:.65rem;font-weight:600}.estimate-meta-link{color:var(--primary);font-weight:600}.estimate-meta-select{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;width:fit-content;max-width:100%;padding:.28rem 1.75rem .28rem .55rem;font-size:.8rem;font-weight:500}.estimate-meta-managers{color:#0f172a;align-items:center;gap:.35rem;font-size:.82rem;font-weight:500;display:inline-flex}.estimate-meta-avatar{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:999px;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.68rem;font-weight:700;display:inline-flex}.estimate-meta-cell--toggle{grid-column:span 2}@media (width<=640px){.estimate-meta-cell--toggle{grid-column:span 1}}.estimate-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;display:inline-flex}.estimate-toggle input{opacity:0;width:0;height:0;position:absolute}.estimate-toggle-ui{background:#e2e8f0;border-radius:999px;width:2.25rem;height:1.25rem;transition:background .2s;position:relative}.estimate-toggle-ui:after{content:"";background:#fff;border-radius:50%;width:calc(1.25rem - 4px);height:calc(1.25rem - 4px);transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000026}.estimate-toggle input:checked+.estimate-toggle-ui{background:#3b82f6}.estimate-toggle input:checked+.estimate-toggle-ui:after{transform:translate(1rem)}.btn-generate-estimate{cursor:pointer;background:#0d6efd;border:none;border-radius:6px;justify-content:center;align-items:center;gap:.4rem;padding:.42rem .65rem;font-size:.8rem;font-weight:600;transition:filter .15s,box-shadow .15s;display:inline-flex;box-shadow:0 1px 2px #0d6efd66;color:#fff!important}.btn-generate-estimate:hover{filter:brightness(1.05);box-shadow:0 2px 8px #0d6efd73}.btn-generate-estimate__icon{opacity:.95;flex-shrink:0;display:inline-flex}.estimate-editor-actions-secondary{border-radius:6px;font-weight:500;color:#334155!important;background:#fff!important;border:1px solid #d1d5db!important;padding:.4rem .6rem!important;font-size:.78rem!important}.estimate-editor-actions-secondary:hover:not(:disabled){background:#f9fafb!important;border-color:#9ca3af!important}.estimate-stages{margin-bottom:1rem}.estimate-stages-empty{margin:0 0 .75rem;font-size:.82rem}.estimate-stages-stack{flex-direction:column;gap:.75rem;display:flex}.estimate-stage-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;box-shadow:0 1px 2px #0f172a0a}.estimate-stage-card>summary.estimate-stage-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(#fafbfc 0%,#f3f4f6 100%);border-bottom:1px solid #e5e7eb;padding:0;list-style:none;display:block}.estimate-stage-card>summary.estimate-stage-header::-webkit-details-marker{display:none}.estimate-stage-header-row{justify-content:space-between;align-items:flex-start;gap:.65rem;padding:.55rem .75rem;display:flex}.estimate-stage-header-left{flex:1;align-items:center;gap:.3rem;min-width:0;display:flex}.estimate-stage-nudge{color:#94a3b8;flex-shrink:0;justify-content:center;align-items:center;width:1.35rem;height:1.35rem;font-size:.75rem;font-weight:700;display:inline-flex}.estimate-stage-nudge--disabled{opacity:.45;cursor:not-allowed}.estimate-stage-chevron{color:#64748b;flex-shrink:0;font-size:.7rem;line-height:1;transition:transform .2s;display:inline-flex}.estimate-stage-card[open]>summary .estimate-stage-chevron{transform:rotate(90deg)}.estimate-stage-title{color:#0f172a;letter-spacing:-.01em;min-width:0;margin:0;font-size:.92rem;font-weight:700}.estimate-stage-meta{font-size:.75rem}.estimate-stage-header-stats{flex-shrink:0;align-items:center;gap:.65rem;display:flex}.estimate-stage-mini{border-collapse:collapse;color:#64748b;font-size:.65rem}.estimate-stage-mini th,.estimate-stage-mini td{vertical-align:middle;padding:.1rem .4rem}.estimate-stage-mini tbody td:first-child{color:#475569;white-space:nowrap;padding-right:.5rem;font-weight:500}.estimate-stage-mini-h{color:#475569;text-transform:none;letter-spacing:0;font-size:.6rem;font-weight:600}.estimate-stage-mini-h-label{width:0;padding:0!important}.estimate-stage-total-hero{color:#0f172a;white-space:nowrap;letter-spacing:-.03em;font-size:1.2rem;font-weight:800;line-height:1.1}.estimate-stage-gear-wrap,.estimate-stage-menu-wrap{flex-shrink:0;margin-left:.1rem;position:relative}.estimate-stage-gear,.estimate-stage-menu-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;transition:background .15s,color .15s;display:inline-flex}.estimate-stage-gear:hover,.estimate-stage-gear-wrap:hover .estimate-stage-gear,.estimate-stage-menu-btn:hover,.estimate-stage-menu-wrap:hover .estimate-stage-menu-btn{color:#334155;background:#e2e8f0}.estimate-stage-flyout{z-index:20;opacity:0;visibility:hidden;pointer-events:none;background:#fff;border:1px solid #e2e8f0;border-radius:8px;min-width:11rem;margin-top:.25rem;padding:.35rem 0;transition:opacity .15s,visibility .15s,transform .15s;position:absolute;top:100%;right:0;transform:translateY(-4px);box-shadow:0 8px 24px #0f172a1f}.estimate-stage-flyout--menu{left:0;right:auto}.estimate-stage-gear-wrap:hover .estimate-stage-flyout,.estimate-stage-gear-wrap:focus-within .estimate-stage-flyout,.estimate-stage-menu-wrap:hover .estimate-stage-flyout,.estimate-stage-menu-wrap:focus-within .estimate-stage-flyout{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.estimate-stage-toolbar--ref{gap:.4rem}.estimate-stage-toolbar--ref .btn-sm{align-items:center;gap:.35rem;display:inline-flex}.estimate-toolbar-import svg,.estimate-toolbar-book svg,.estimate-toolbar-db svg{opacity:.92;flex-shrink:0}.estimate-row-note{color:#cbd5e1;cursor:not-allowed;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:.1rem;display:inline-flex}.estimate-row-kebab{justify-content:flex-end;display:inline-flex;position:relative}.estimate-row-kebab-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:1.85rem;height:1.75rem;padding:0;transition:background .15s,color .15s;display:inline-flex}.estimate-row-kebab-btn:hover,.estimate-row-kebab:focus-within .estimate-row-kebab-btn{color:#475569;background:#f1f5f9}.estimate-row-kebab-menu{z-index:15;opacity:0;visibility:hidden;pointer-events:none;background:#fff;border:1px solid #e2e8f0;border-radius:8px;min-width:10rem;margin-top:.15rem;padding:.3rem 0;transition:opacity .15s,visibility .15s;position:absolute;top:100%;right:0;transform:translateY(-3px);box-shadow:0 8px 20px #0f172a1a}.estimate-row-kebab:hover .estimate-row-kebab-menu,.estimate-row-kebab:focus-within .estimate-row-kebab-menu{opacity:1;visibility:visible;pointer-events:auto}.estimate-row-kebab-item{text-align:left;color:#334155;cursor:pointer;background:0 0;border:none;width:100%;padding:.4rem .75rem;font-size:.82rem;display:block}.estimate-row-kebab-item:hover{background:#f8fafc}.estimate-row-kebab-item--danger{color:#b91c1c}.estimate-stage-empty-cell{text-align:center;color:#94a3b8;font-size:.82rem;padding:1rem .5rem!important}.estimate-stage-flyout-item{width:100%;font:inherit;text-align:left;color:#334155;cursor:pointer;background:0 0;border:none;padding:.45rem .85rem;font-size:.875rem;display:block}.estimate-stage-flyout-item:hover{background:#f1f5f9}.estimate-stage-flyout-item--danger{color:#b91c1c}.estimate-stage-flyout-item--danger:hover{background:#fef2f2}.estimate-stage-body{padding:.55rem .75rem .75rem}.estimate-stage-toolbar{flex-wrap:wrap;align-items:center;gap:.35rem;margin-bottom:.5rem;display:flex}.estimate-stage-toolbar .btn-sm{padding:.28rem .5rem!important;font-size:.75rem!important}.estimate-toolbar-btn--active{box-shadow:inset 0 0 0 2px #2563eb66}.estimate-stage-inline{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:0 0 .65rem;padding:.65rem .75rem}.estimate-stage-inline--op{background:#f0fdf4;border-color:#bbf7d0}.estimate-stage-inline-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.45rem;display:flex}.estimate-stage-inline-title{color:#0f172a;font-size:.8rem;font-weight:600}.estimate-stage-inline-hint{margin:0 0 .5rem;font-size:.75rem}.estimate-stage-add-form.form-stack{gap:.55rem}.estimate-stage-add-form .form-row{margin:0}.estimate-stage-inline-actions{flex-wrap:wrap;gap:.35rem;margin-top:.15rem;display:flex}.estimate-page-extras{background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin-top:1rem;margin-bottom:.5rem;overflow:hidden}.estimate-page-extras-summary{cursor:pointer;color:#64748b;padding:.65rem .85rem;font-size:.85rem;font-weight:600;list-style:none}.estimate-page-extras-summary::-webkit-details-marker{display:none}.estimate-page-extras[open] .estimate-page-extras-summary{border-bottom:1px solid #e2e8f0}.estimate-page-extras-inner{box-shadow:none!important;border:none!important;border-radius:0!important;margin:0!important;padding:.85rem 1rem 1rem!important}.estimate-meta-currency-note{margin-top:.2rem;font-size:.68rem;line-height:1.3;display:block}.estimate-toolbar-muted{color:#1e40af!important;background:#eff6ff!important;border:1px solid #bfdbfe!important}.btn-stage-rates{font-weight:600;color:#c2410c!important;background:#fff7ed!important;border:1px solid #fed7aa!important}.btn-stage-rates:hover{background:#ffedd5!important}.table-wrap--estimate-wide{margin:0 -.25rem;padding:0 .25rem}.table--estimate-ref thead{background:#f3f4f6}.table--estimate-ref th{text-transform:none;letter-spacing:0;color:#475569;border-bottom:1px solid #e5e7eb;padding:.38rem .35rem;font-size:.7rem;font-weight:600}.table--estimate-ref td{vertical-align:middle;border-bottom:1px solid #eef0f2;padding:.35rem;font-size:.78rem}.table--estimate-ref .estimate-row-tr td{vertical-align:middle}.estimate-col-type{text-align:center;width:2.25rem;vertical-align:middle!important}.estimate-col-id{font-variant-numeric:tabular-nums;vertical-align:middle!important}.estimate-col-name-stack{align-items:center;gap:.35rem;width:100%;min-width:0;display:flex}.table--estimate-ref .input-inline--estimate-name{width:100%;min-width:0;max-width:100%;font-size:inherit;color:#1e293b;background:#fff;border:1px solid #e2e8f0;border-radius:6px;flex:1;padding:.32rem .45rem;font-weight:500;line-height:1.35}.table--estimate-ref .input-inline--unit{width:100%;min-width:3.25rem;max-width:6rem;font-size:inherit;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.32rem .4rem;line-height:1.35}.table--estimate-ref .input-inline--num,.table--estimate-ref .input-inline--markup{width:100%;max-width:6.5rem;font-size:inherit;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #e2e8f0;border-radius:6px;margin-left:auto;padding:.32rem .4rem;line-height:1.35;display:block}.table--estimate-ref .input-inline--markup{max-width:4.25rem}.table--estimate-ref .estimate-col-readonly{font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:.45rem!important;padding-bottom:.45rem!important}.table--estimate-ref .estimate-col-unit{vertical-align:middle!important}.table--estimate-ref tbody tr:nth-child(2n):not(.estimate-stage-subtotal){background:#fafafa}.estimate-col-drag{vertical-align:middle;width:1.75rem;padding-left:.35rem!important;padding-right:.15rem!important}.estimate-drag-grip{color:#cbd5e1;letter-spacing:-.12em;cursor:grab;font-size:.65rem;line-height:1;display:inline-block}.estimate-col-check{text-align:center;vertical-align:middle;width:2rem;padding-left:.15rem!important;padding-right:.15rem!important}.estimate-row-check{accent-color:#2563eb;cursor:not-allowed;opacity:.7;width:1rem;height:1rem}.estimate-col-name{min-width:10rem;max-width:18rem;vertical-align:middle!important}.estimate-row-del{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;padding:0;transition:background .12s,color .12s;display:inline-flex}.estimate-row-del:hover{color:#b91c1c;background:#fef2f2}.estimate-stage-subtotal td{border-bottom:none;font-weight:600;background:#f1f5f9!important}.estimate-stage-subtotal--grand td{background:#e2e8f0!important}.estimate-subtotal-label{text-align:right;color:#334155;font-size:.85rem;padding-right:1rem!important}.estimate-subtotal-num{font-variant-numeric:tabular-nums}.estimate-add-stage{flex-wrap:wrap;align-items:center;gap:.5rem;margin:1rem 0 1.25rem;display:flex}.estimate-add-stage--1v1{flex-direction:column;align-items:stretch}.estimate-add-stage-input{background:#fff;border:1px solid #e5e7eb;border-radius:6px;flex:1;min-width:12rem;padding:.45rem .6rem;font-size:.85rem}.estimate-add-stage--1v1 .estimate-add-stage-input{width:100%}.estimate-add-stage-btn{width:100%;padding:.55rem .85rem;color:#475569!important;background:#fff!important;border:2px dashed #c5cad1!important;border-radius:6px!important;font-size:.82rem!important;font-weight:600!important}.estimate-add-stage-btn:hover{background:#f9fafb!important;border-color:#94a3b8!important}.estimate-grand-total{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1rem;padding:.75rem .9rem;box-shadow:0 1px 2px #0f172a0a}.estimate-grand-total-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.estimate-grand-total-title{color:#0f172a;margin:0;font-size:.9rem;font-weight:700}.btn-tax-pill{cursor:not-allowed;opacity:.85;color:#fff!important;background:#2563eb!important;border:none!important;border-radius:999px!important;padding:.28rem .65rem!important;font-size:.72rem!important;font-weight:600!important}.estimate-grand-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:.75rem}.estimate-grand-table thead th{text-align:left;color:#64748b;border-bottom:1px solid #e2e8f0;padding:.28rem .35rem;font-size:.65rem;font-weight:600}.estimate-grand-table tbody th[scope=row]{text-align:left;color:#334155;font-weight:600}.estimate-grand-table td{border-bottom:1px solid #f1f5f9;padding:.35rem;font-size:.75rem}.estimate-grand-profit{white-space:nowrap}.estimate-grand-strong th,.estimate-grand-strong td{color:#0f172a;border-bottom:none;padding-top:.45rem;font-size:.82rem;font-weight:700}.estimate-fab{z-index:30;color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:999px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;padding:0;transition:transform .15s,box-shadow .15s;display:flex;position:fixed;bottom:1.25rem;right:1.25rem;box-shadow:0 4px 14px #2563eb73}.estimate-fab:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2563eb80}.estimate-fab svg{width:17px;height:17px}@media (width<=900px){.estimate-fab{right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px))}}@media (width<=1100px){.estimate-editor-topcard{grid-template-rows:auto auto;grid-template-columns:1fr 1fr}.estimate-editor-topcol--left{grid-column:1/-1}.estimate-editor-actions{grid-column:1}.estimate-summary-panel{grid-column:2}}@media (width<=720px){.estimate-editor-topcard{grid-template-columns:1fr}.estimate-summary-panel,.estimate-editor-actions{grid-column:1}}.estimate-share-card{margin-bottom:1.25rem}.estimate-share-lead{margin:0 0 .75rem;font-size:.9rem}.estimate-share-list{margin:0 0 1rem;padding:0;list-style:none}.estimate-share-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:.45rem 0;font-size:.9rem;display:flex}.estimate-share-tabs{gap:.35rem;margin-bottom:.5rem;display:flex}.estimate-share-tab{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.35rem .75rem;font-size:.85rem}.estimate-share-tab--active{color:#1d4ed8;background:#eff6ff;border-color:#3b82f6;font-weight:600}.project-detail-page .project-detail-title{letter-spacing:-.02em;font-size:1.75rem;font-weight:700}.project-detail-grid{align-items:start}.project-detail-cta-text{margin:0 0 1rem;font-size:.92rem;line-height:1.45}.modal-card--estimate-create{border-radius:10px;width:min(440px,100%)}.modal-card-body--estimate-create{padding-bottom:1.5rem}.modal-estimate-actions{justify-content:flex-end;margin-top:.5rem;display:flex}.estimate-currency-line{margin:.25rem 0 0;font-size:.9rem}
