:root{--sidebar-width:60px;--bg-app:#141d2b;--bg-sidebar:#0d1520;--bg-panel:#1c2a3a;--bg-panel-hover:#243447;--bg-input:#1a2636;--border:#253344;--border-light:#2d4057;--text-primary:#e2e8f0;--text-secondary:#7a8fa6;--text-muted:#4a6278;--bg-section-header:#0d1520;--bg-hover:rgba(255,255,255,0.05);--accent:#3b82f6;--accent-hover:#2563eb;--status-green:#22c55e;--status-amber:#f59e0b;--status-red:#ef4444;--status-blue:#3b82f6;--status-purple:#8b5cf6;--status-grey:#64748b}[data-theme=light]{--bg-app:#f3f2f1;--bg-panel:#ffffff;--bg-panel-hover:#edebe9;--bg-input:#ffffff;--border:#e1dfdd;--border-light:#edebe9;--text-primary:#323130;--text-secondary:#605e5c;--text-muted:#a19f9d;--accent:#0078d4;--accent-hover:#106ebe;--bg-hover:rgba(0,0,0,0.04);--bg-section-header:#edebe9;--text-muted:#797775;--border:#c8c6c4;--border-light:#e1dfdd}[data-theme=light] .project-list-panel{box-shadow:4px 0 12px rgba(0,0,0,.1)}[data-theme=light] .project-accordion{box-shadow:0 2px 4px -1px rgba(0,0,0,.08)}[data-theme=light] .project-card{background-color:#ffffff}[data-theme=light] .project-accordion-header{color:var(--text-primary)}[data-theme=light] .project-accordion-icon{color:var(--text-secondary)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-app);color:var(--text-primary);line-height:1.5;font-size:14px;-webkit-font-smoothing:antialiased}.app-shell{display:flex;height:100vh;overflow:hidden}.app-content{flex:1 1;overflow-y:auto;min-width:0}.app-content,.sidebar{display:flex;flex-direction:column}.sidebar{width:var(--sidebar-width);background-color:var(--bg-sidebar);border-right:1px solid var(--border);padding:12px 0;z-index:100}.sidebar,.sidebar-logo{align-items:center;flex-shrink:0}.sidebar-logo{width:36px;height:36px;display:flex;justify-content:center;margin-bottom:20px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sidebar-nav{flex-direction:column;gap:4px;flex:1 1;width:100%;padding:0 10px}.sidebar-nav,.sidebar-nav-item{display:flex;align-items:center}.sidebar-nav-item{justify-content:center;width:40px;height:40px;border-radius:8px;color:#7a9bb8;text-decoration:none;transition:background-color .15s,color .15s;cursor:pointer;border:none;background:none}.sidebar-nav-item:hover{background-color:rgba(255,255,255,.08);color:#e2e8f0}.sidebar-nav-item.active{background-color:var(--accent);color:#fff}.icon-dark-only{display:block}.icon-light-only,[data-theme=light] .icon-dark-only{display:none}[data-theme=light] .icon-light-only{display:block}.sidebar-bottom{display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 10px}.sidebar-version{font-size:.6rem;color:var(--text-secondary);opacity:.45;letter-spacing:.03em;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.sidebar-avatar-wrap{position:relative}.sidebar-avatar{width:32px;height:32px;border-radius:50%;background-color:var(--bg-panel);border:1px solid var(--border-light);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--text-primary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:0;transition:border-color .15s}.sidebar-avatar:hover{border-color:var(--accent)}.sidebar-avatar-photo{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.sidebar-profile-popover{position:absolute;bottom:0;left:calc(100% + 10px);transform:none;width:220px;background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;padding:1rem;box-shadow:0 8px 24px rgba(0,0,0,.25);display:flex;flex-direction:column;align-items:center;gap:.6rem;z-index:200}.sidebar-profile-avatar{width:52px;height:52px;border-radius:50%;background-color:var(--bg-secondary);border:1px solid var(--border-light);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:var(--text-primary);overflow:hidden;flex-shrink:0}.sidebar-profile-info{display:flex;flex-direction:column;align-items:center;gap:.2rem;text-align:center}.sidebar-profile-name{font-size:.85rem;font-weight:600;color:var(--text-primary)}.sidebar-profile-email{font-size:.72rem;color:var(--text-muted);word-break:break-all}.sidebar-signout-btn{margin-top:.25rem;width:100%;padding:.4rem 0;font-size:.8rem;font-weight:500;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.sidebar-signout-btn:hover{background:color-mix(in srgb,var(--status-red) 12%,transparent);border-color:var(--status-red);color:var(--status-red)}.home-page{display:flex;flex-direction:column;align-items:center;flex:1 1;padding:2rem;gap:1.5rem;overflow-y:auto}.home-logo-card{width:100%;max-width:660px}.access-gate{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg-app);z-index:200}.access-gate-box{background:var(--bg-panel);border:1px solid var(--border);border-radius:12px;padding:2.5rem 3rem;max-width:420px;text-align:center;box-shadow:0 8px 32px rgba(0,0,0,.3);display:flex;flex-direction:column;gap:.75rem}.access-gate-title{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0}.access-gate-msg{font-size:.875rem;color:var(--text-secondary);margin:0;line-height:1.5}.home-signin-overlay{position:fixed;inset:0;left:56px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;z-index:100}.home-signin-box{background:var(--bg-panel);border:1px solid var(--border);border-radius:12px;padding:2rem 2.5rem;display:flex;flex-direction:column;align-items:center;gap:1.25rem;box-shadow:0 8px 32px rgba(0,0,0,.3)}.home-signin-prompt{font-size:.95rem;color:var(--text-secondary);margin:0}.home-signin-btn{padding:.55rem 1.5rem;font-size:.875rem;font-weight:600;background:var(--accent);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:opacity .15s}.home-signin-btn:hover{opacity:.88}.mat-page{display:flex;flex-direction:column;flex:1 1;min-height:0;overflow:hidden}.mat-toolbar{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-panel);border-bottom:1px solid var(--border);flex-shrink:0;flex-wrap:wrap}.mat-filter-dropdown-wrap{position:relative}.mat-filter-dropdown-btn{display:flex;align-items:center;gap:.5rem;padding:.35rem .65rem;font-size:.8rem;background:var(--bg-input);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);cursor:pointer;white-space:nowrap}.mat-filter-dropdown-btn:hover{border-color:var(--accent)}.mat-filter-dropdown-arrow{font-size:.6rem;color:var(--text-muted)}.mat-filter-dropdown-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:100;background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.3);padding:.5rem .75rem;display:flex;flex-direction:column;gap:.4rem;min-width:220px}.mat-filter-select-all{font-size:.75rem;color:var(--accent);background:none;border:none;padding:0 0 .3rem;cursor:pointer;text-align:left;border-bottom:1px solid var(--border);margin-bottom:.1rem}.mat-filter-select-all:hover{text-decoration:underline}.mat-filter-checkbox{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-secondary);cursor:pointer;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mat-filter-checkbox input[type=checkbox]{accent-color:var(--accent);cursor:pointer;width:13px;height:13px}.mat-search{flex:1 1;max-width:280px;padding:.35rem .65rem;font-size:.8rem;background:var(--bg-input);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);color-scheme:dark}[data-theme=light] .mat-search{color-scheme:light}.mat-filter-select{padding:.35rem .65rem;font-size:.8rem;background:var(--bg-input);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);color-scheme:dark}[data-theme=light] .mat-filter-select{color-scheme:light}.mat-count{font-size:.75rem;color:var(--text-muted);margin-left:auto}.mat-table-wrap{flex:1 1;overflow:auto}.mat-table{width:100%;border-collapse:collapse;font-size:.8rem;table-layout:fixed}.mat-th{position:-webkit-sticky;position:sticky;top:0;background:var(--bg-panel);border-bottom:2px solid var(--border);padding:.6rem .75rem;text-align:left;font-size:.8rem;font-weight:600;color:var(--text-secondary);white-space:nowrap;z-index:1}.mat-th--link{width:52px}.mat-th--site{width:160px}.mat-th--order{width:120px}.mat-th--status{width:190px;text-align:center}.mat-th--desc{width:200px}.mat-th--shipdate{width:160px;text-align:center}.mat-th--majpct,.mat-th--minpct{width:120px;text-align:center}.mat-th--notes{width:400px}.mat-pending-badge{display:inline-block;margin-left:.35rem;padding:.1rem .35rem;font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;background:color-mix(in srgb,var(--status-amber) 15%,transparent);color:var(--status-amber);border-radius:3px;vertical-align:middle}.mat-cell{padding:.45rem .75rem;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text-primary);overflow:hidden}.mat-table tbody tr:hover .mat-cell{background:color-mix(in srgb,var(--accent) 4%,transparent)}.mat-row--saving .mat-cell{opacity:.6}.mat-row--error .mat-cell{background:color-mix(in srgb,var(--status-red) 6%,transparent)}.mat-cell--link{width:52px;text-align:center;padding:0}.mat-cell--link-wrap{display:flex;align-items:center;justify-content:center;gap:2px}.mat-cell--site{font-weight:600;white-space:nowrap;text-overflow:ellipsis}.mat-cell--order{font-size:.75rem}.mat-cell--desc,.mat-cell--order{white-space:nowrap;text-overflow:ellipsis;color:var(--text-secondary)}.mat-cell--placeholder,.mat-cell--status{text-align:center}.mat-cell--notes-wrap{position:relative;cursor:pointer;overflow:visible}.mat-notes-popover{position:absolute;top:0;left:0;width:100%;z-index:200;background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.3);padding:6px}.mat-notes-popover-textarea{width:100%;height:150px;resize:none;background:var(--bg-input);border:1px solid var(--border);border-radius:5px;color:var(--text-primary);font-size:.8rem;font-family:inherit;padding:.4rem .5rem;outline:none;line-height:1.5}.mat-notes-popover-textarea:focus{border-color:var(--accent)}.mat-placeholder{color:color-mix(in srgb,var(--text-muted) 50%,transparent);font-size:.75rem}.mat-status-select{width:100%;min-width:160px;padding:.3rem .5rem;font-size:.78rem;font-weight:500;border-radius:5px;border:1px solid transparent;background:transparent;cursor:pointer;color-scheme:dark}[data-theme=light] .mat-status-select{color-scheme:light}.mat-status-select--green{color:var(--status-green);background:color-mix(in srgb,var(--status-green) 12%,transparent);border-color:color-mix(in srgb,var(--status-green) 30%,transparent)}.mat-status-select--amber{color:var(--status-amber);background:color-mix(in srgb,var(--status-amber) 12%,transparent);border-color:color-mix(in srgb,var(--status-amber) 30%,transparent)}.mat-status-select--red{color:var(--status-red);background:color-mix(in srgb,var(--status-red) 12%,transparent);border-color:color-mix(in srgb,var(--status-red) 30%,transparent)}.mat-status-select--blue{color:var(--status-blue);background:color-mix(in srgb,var(--status-blue) 12%,transparent);border-color:color-mix(in srgb,var(--status-blue) 30%,transparent)}.mat-status-select--purple{color:var(--status-purple);background:color-mix(in srgb,var(--status-purple) 12%,transparent);border-color:color-mix(in srgb,var(--status-purple) 30%,transparent)}.mat-status-select--grey{color:var(--text-muted);background:color-mix(in srgb,var(--status-grey) 12%,transparent);border-color:color-mix(in srgb,var(--status-grey) 30%,transparent)}.mat-notes-input{width:100%;padding:.3rem .5rem;font-size:.78rem;background:transparent;border:1px solid transparent;border-radius:5px;color:var(--text-primary);transition:border-color .15s,background .15s;color-scheme:dark}[data-theme=light] .mat-notes-input{color-scheme:light}input[type=date].mat-notes-input{text-align:center;min-width:unset;width:100%;color-scheme:dark;font-weight:600;color:var(--text-primary)}[data-theme=light] input[type=date].mat-notes-input{color-scheme:light}input[type=date].mat-date-input[value=""]:not(:focus){color:transparent}input[type=date].mat-date-input[value=""]:not(:focus)::-webkit-datetime-edit{color:transparent}.mat-notes-input:focus,.mat-notes-input:hover{background:var(--bg-input);border-color:var(--border);outline:none}.mat-pct-wrap{display:flex;align-items:center;justify-content:center;gap:1px;border-radius:5px;border:1px solid transparent;padding:.2rem .35rem;font-weight:500;font-size:.78rem;width:-moz-fit-content;width:fit-content;margin:0 auto}.mat-pct-input{width:3ch;min-width:unset;text-align:center;font-weight:inherit;font-size:inherit;color:inherit;background:transparent;border:none;outline:none;padding:0;cursor:text;-moz-appearance:textfield}.mat-pct-input::-webkit-inner-spin-button,.mat-pct-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.mat-pct-symbol{font-weight:inherit;font-size:inherit;color:inherit;line-height:1}.mat-message{padding:2rem;text-align:center;color:var(--text-muted);font-size:.85rem}.mat-message--error{color:var(--status-red)}.mat-project-link{display:flex;align-items:center;justify-content:center;color:var(--text-muted);padding:.25rem;border-radius:4px;transition:color .15s}.mat-project-link:hover{color:var(--accent)}.mat-att-btn{background:none;border:none;cursor:pointer;padding:0}.mat-att-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:300;display:flex;align-items:center;justify-content:center}.mat-att-modal{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;width:540px;max-height:70vh;display:flex;flex-direction:column;box-shadow:0 8px 32px rgba(0,0,0,.4)}.mat-att-header{justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border);flex-shrink:0}.mat-att-header,.mat-att-title{display:flex;align-items:center}.mat-att-title{gap:.5rem;font-size:.85rem;font-weight:600;color:var(--text-primary)}.mat-att-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:4px;transition:color .15s}.mat-att-close:hover{color:var(--text-primary)}.mat-att-header-actions{display:flex;align-items:center;gap:.5rem}.mat-att-upload-btn{display:flex;align-items:center;gap:.4rem;padding:.3rem .7rem;font-size:.78rem;font-weight:600;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:opacity .15s}.mat-att-upload-btn:hover:not(:disabled){opacity:.85}.mat-att-upload-btn:disabled{opacity:.5;cursor:default}.mat-att-body{flex:1 1;overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:2px}.mat-att-status{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-muted);padding:.5rem}.mat-att-status--error{color:var(--status-red)}.mat-att-file-row{display:flex;align-items:center;gap:.65rem;padding:.5rem .65rem;background:none;border:1px solid transparent;border-radius:7px;cursor:pointer;text-align:left;width:100%;transition:background .15s,border-color .15s}.mat-att-file-row:hover{background:var(--bg-panel-hover);border-color:var(--border)}.mat-att-file-row:disabled{opacity:.6;cursor:default}.mat-att-file-icon{flex-shrink:0}.mat-att-file-info{flex:1 1;display:flex;flex-direction:column;min-width:0}.mat-att-file-name{font-size:.82rem;color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-att-file-size{font-size:.72rem;color:var(--text-muted)}.mat-att-row-spinner{color:var(--text-muted);flex-shrink:0}.mat-att-file-row-wrap{display:flex;align-items:center;gap:.5rem}.mat-att-file-row{flex:1 1}.mat-att-calc-row{display:flex;align-items:center;flex-shrink:0}.mat-att-calc-btn{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.25rem;font-size:.72rem;line-height:1.3;text-align:center;color:var(--accent);background:none;border:1px solid var(--accent);border-radius:5px;padding:.3rem .55rem;cursor:pointer;transition:background .15s;white-space:normal}.mat-att-calc-btn:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.mat-att-calc-status{display:flex;align-items:center;gap:.4rem;font-size:.75rem;color:var(--text-muted)}.mat-att-calc-result{color:var(--text-secondary);flex-wrap:wrap}.mat-att-calc-pcts{display:flex;gap:.75rem;font-size:.8rem}.mat-pct-sentinel{font-size:.75rem;color:var(--text-muted);font-style:italic;padding:0 .25rem}.mat-att-calc-saved{color:var(--status-green)}.mat-att-calc-error{color:var(--status-red);max-width:340px;flex-wrap:wrap}.mat-att-calc-error-msg{font-size:.75rem;line-height:1.4;word-break:break-word}.mat-att-save-btn{display:flex;align-items:center;gap:.25rem;font-size:.72rem;color:var(--status-green);background:color-mix(in srgb,var(--status-green) 10%,transparent);border:1px solid color-mix(in srgb,var(--status-green) 30%,transparent);border-radius:4px;padding:.15rem .45rem;cursor:pointer;transition:background .15s}.mat-att-save-btn:hover{background:color-mix(in srgb,var(--status-green) 20%,transparent)}.mat-att-calc-reset{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0;display:flex;align-items:center}.mat-att-calc-reset:hover{color:var(--text-primary)}.mat-preview-overlay{position:fixed;inset:0;z-index:400;background:var(--bg-app);display:flex;flex-direction:column}.mat-preview-bar{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:var(--bg-panel);border-bottom:1px solid var(--border);flex-shrink:0}.mat-preview-name{font-size:.85rem;font-weight:600;color:var(--text-primary);flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-preview-edit-btn{display:flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:500;color:var(--accent);text-decoration:none;padding:.25rem .6rem;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:5px;white-space:nowrap;transition:background .15s}.mat-preview-edit-btn:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.mat-preview-loading{flex:1 1;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.mat-preview-frame{flex:1 1;width:100%;border:none}.mat-calcall-btn{display:flex;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.8rem;color:var(--accent);background:none;border:1px solid var(--accent);border-radius:6px;cursor:pointer;white-space:nowrap;transition:background .15s}.mat-calcall-btn:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.mat-info-wrap{position:relative}.mat-info-popover{position:absolute;top:calc(100% + 8px);right:0;width:425px;background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;padding:1rem 1.1rem;box-shadow:0 8px 24px rgba(0,0,0,.25);z-index:100}.mat-info-title{font-size:.85rem;font-weight:700;color:var(--text-primary);margin:0 0 .6rem}.mat-info-text{margin:.5rem 0;line-height:1.5}.mat-info-list,.mat-info-text{font-size:.78rem;color:var(--text-secondary)}.mat-info-list{margin:.4rem 0 .4rem 1.1rem;line-height:1.8}.mat-info-formula{font-size:.8rem;font-family:monospace;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);border-radius:5px;padding:.3rem .6rem;margin:.4rem 0}.mat-info-codes{display:flex;flex-direction:column;gap:.3rem;margin-top:.6rem;padding-top:.6rem;border-top:1px solid var(--border)}.mat-info-code{font-size:.75rem;color:var(--text-muted);line-height:1.4}.mat-reload-btn{display:flex;align-items:center;justify-content:center;padding:.35rem .5rem;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s}.mat-reload-btn:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover)}.mat-reload-btn:disabled{opacity:.4;cursor:default}@keyframes mat-spin{to{transform:rotate(1turn)}}.mat-reload-spinning{animation:mat-spin .8s linear infinite}.mat-calcall-modal{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;width:560px;max-height:75vh;display:flex;flex-direction:column;box-shadow:0 8px 32px rgba(0,0,0,.4)}.mat-calcall-progress-wrap{height:4px;background:var(--bg-input);flex-shrink:0}.mat-calcall-progress-bar{height:100%;background:var(--accent);transition:width .3s ease}.mat-calcall-stats{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;font-size:.78rem;color:var(--text-secondary);border-bottom:1px solid var(--border);flex-shrink:0}.mat-calcall-stat-saved{color:var(--status-green);display:flex;align-items:center;gap:.25rem}.mat-calcall-stat-skip{color:var(--text-muted);display:flex;align-items:center;gap:.25rem}.mat-calcall-stat-err{color:var(--status-red);display:flex;align-items:center;gap:.25rem}.mat-calcall-list{flex:1 1;overflow-y:auto;padding:.35rem .5rem}.mat-calcall-row{display:flex;align-items:center;gap:.75rem;padding:.3rem .5rem;border-radius:5px;font-size:.78rem}.mat-calcall-row--processing{background:color-mix(in srgb,var(--accent) 6%,transparent)}.mat-calcall-row--done{color:var(--text-secondary)}.mat-calcall-row--skipped{color:var(--text-muted)}.mat-calcall-row--error{color:var(--status-red)}.mat-calcall-site{font-weight:600;width:160px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-calcall-order{color:var(--text-muted);font-size:.72rem;flex:1 1}.mat-calcall-status{display:flex;align-items:center;gap:.3rem;flex-shrink:0;width:90px;justify-content:flex-end}.mat-calcall-pending{color:var(--text-muted)}.mat-calcall-footer{display:flex;justify-content:flex-end;padding:.65rem 1rem;border-top:1px solid var(--border);flex-shrink:0}.mat-calcall-cancel-btn{padding:.35rem .9rem;font-size:.8rem;background:none;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer}.mat-calcall-cancel-btn:hover{border-color:var(--status-red);color:var(--status-red)}.home-map-wrapper{width:100%;max-width:1200px;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:#1d2c4d}.home-map-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding:.75rem 1rem;background:#1d2c4d;border-bottom:1px solid rgba(255,255,255,.08)}.home-map-title{font-size:.85rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#8ec3b9}.home-map-legend{display:flex;flex-wrap:wrap;gap:.75rem}.home-map-legend-item{display:flex;align-items:center;gap:.35rem;font-size:.72rem;color:#8ec3b9}.home-map-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.home-map-container{width:100%;height:650px}.home-map-loading{width:100%;height:480px;display:flex;align-items:center;justify-content:center;background:#1d2c4d;color:#8ec3b9;font-size:.85rem;border-radius:12px;border:1px solid var(--border)}.home-map-infowindow{font-family:inherit;min-width:160px;padding:4px 2px}.home-map-info-site{font-size:.85rem;font-weight:700;color:#1d2c4d;margin-bottom:2px}.home-map-info-order{font-size:.75rem;color:#555;margin-bottom:4px}.home-map-info-status{font-size:.75rem;font-weight:600;margin-bottom:6px}.home-map-info-btn{display:block;width:100%;margin-top:6px;padding:4px 8px;font-size:.75rem;font-weight:600;background:#1d2c4d;color:#8ec3b9;border:none;border-radius:4px;cursor:pointer}.home-map-info-btn:hover{background:#2c3e6b}.auth-card{background-color:var(--bg-panel);border:1px solid var(--border);border-radius:12px;padding:2.5rem;width:100%;max-width:660px}.auth-card-logo{margin-bottom:.75rem}.auth-card-sub{font-size:.8rem;color:var(--text-muted);margin-bottom:2rem}.auth-card-user{margin-bottom:1.5rem}.auth-card-user p{font-size:.875rem;color:var(--text-secondary);margin-bottom:.35rem}.auth-card-user strong{color:var(--text-primary);font-weight:500}button{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1.25rem;font-size:.875rem;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .15s;background-color:var(--accent);color:#fff}button:hover{background-color:var(--accent-hover)}button.btn-ghost{background-color:transparent;color:var(--text-secondary);border:1px solid var(--border-light)}button.btn-ghost:hover{background-color:var(--bg-panel-hover);color:var(--text-primary)}.projects-layout{display:flex;flex:1 1;min-height:0;overflow:hidden;height:100%}.project-list-panel{width:260px;flex-shrink:0;border-right:1px solid var(--border);box-shadow:4px 0 12px rgba(0,0,0,.25);display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:10}.project-list-header{padding:10px;border-bottom:1px solid var(--border);flex-shrink:0}.project-search-row{display:flex;gap:6px;align-items:center}.project-search{flex:1 1;background-color:var(--bg-input);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:.8rem;padding:.4rem .75rem;outline:none}.project-search::placeholder{color:var(--text-muted)}.project-search:focus{border-color:var(--accent)}.project-cog-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:none;border:1px solid transparent;border-radius:6px;color:var(--text-muted);cursor:pointer;transition:color .15s,background-color .15s;flex-shrink:0}.project-cog-btn:hover{background-color:var(--bg-panel-hover);color:var(--text-primary)}.project-cog-btn.active{color:var(--accent);border-color:var(--accent)}.project-filter-panel{margin-top:8px;display:flex;flex-direction:column;gap:8px}.project-filter-toggle{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:var(--text-secondary);cursor:pointer}.toggle-track{width:32px;height:18px}.toggle-track input{opacity:0;width:0;height:0;position:absolute}.toggle-thumb{inset:0;background-color:var(--border-light);border-radius:18px;transition:background-color .2s;cursor:pointer}.toggle-thumb:before{content:"";position:absolute;width:12px;height:12px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .2s}.toggle-track input:checked+.toggle-thumb{background-color:var(--accent)}.toggle-track input:checked+.toggle-thumb:before{transform:translateX(14px)}.project-filter-selects{display:flex;gap:6px}.project-filter-select{flex:1 1;background-color:var(--bg-input);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:.72rem;padding:.3rem .5rem;outline:none;cursor:pointer}.project-filter-select:focus{border-color:var(--accent)}.project-list-body{flex:1 1;overflow-y:auto;display:flex;flex-direction:column;scrollbar-width:none}.project-list-body::-webkit-scrollbar{display:none}.project-accordion{border-bottom:1px solid var(--border);box-shadow:0 6px 12px -2px rgba(0,0,0,.6);position:relative;z-index:1}.project-accordion-header{width:100%;display:flex;align-items:center;gap:6px;padding:8px 10px;background-color:var(--bg-section-header);border:none;border-radius:0;color:var(--text-secondary);font-size:.75rem;font-weight:500;cursor:pointer;text-align:left;transition:background-color .1s,color .1s}.project-accordion-header:hover{background-color:var(--bg-panel-hover);color:var(--text-primary)}.project-accordion-icon{flex-shrink:0;color:var(--text-muted)}.project-accordion-icon--star{color:#f59e0b}.project-accordion-label{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-accordion-count{margin-left:auto;font-size:.7rem;color:var(--text-muted);background-color:var(--bg-panel);padding:1px 6px;border-radius:10px}.project-accordion-body{display:flex;flex-direction:column}.project-accordion-body--scrollable{max-height:248px;overflow-y:auto;scrollbar-width:none}.project-accordion-body--scrollable::-webkit-scrollbar{display:none}.project-accordion-body--scrollable-lg{max-height:496px;overflow-y:auto;scrollbar-width:none}.project-accordion-body--scrollable-lg::-webkit-scrollbar{display:none}.project-accordion-body--scrollable-sm{max-height:248px;overflow-y:auto;scrollbar-width:none}.project-accordion-body--scrollable-sm::-webkit-scrollbar{display:none}.project-list-message{padding:1rem 12px;font-size:.75rem;color:var(--text-muted);text-align:center}.project-list-error{color:var(--status-red)}.project-card{width:100%;background:none;border:none;border-bottom:1px solid var(--border);border-radius:0;padding:8px 12px;text-align:left;cursor:pointer;transition:background-color .1s;display:flex;flex-direction:column;gap:3px;color:var(--text-primary);overflow:hidden;min-width:0;flex-shrink:0}.project-card:hover{background-color:var(--bg-panel-hover)}.project-card.selected{background-color:var(--bg-panel);border-left:3px solid var(--accent);padding-left:9px}.project-card-site-row{font-size:.82rem;font-weight:700;color:var(--text-primary);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.project-card-meta-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:3px}.project-card-order{font-weight:500}.project-card-desc,.project-card-order{font-size:.72rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card-desc{width:100%;margin-top:2px;text-align:center}.project-section-link{width:100%;background:none;border:none;border-radius:0;padding:6px 12px 6px 28px;text-align:left;font-size:.75rem;color:var(--text-secondary);cursor:pointer;transition:background-color .1s,color .1s}.project-section-link:hover{background-color:var(--bg-panel-hover);color:var(--text-primary)}.project-section-link.active{color:var(--accent);background-color:color-mix(in srgb,var(--accent) 10%,transparent)}.project-detail-panel{flex:1 1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.project-detail-empty{align-items:center;justify-content:center}.project-detail-header{gap:10px;padding:12px 20px;border-bottom:1px solid var(--border)}.project-detail-header,.project-star-btn{display:flex;align-items:center;flex-shrink:0}.project-star-btn{justify-content:center;width:30px;height:30px;padding:0;background:none;border:none;border-radius:6px;color:var(--text-muted);cursor:pointer;transition:color .15s}.project-star-btn.favorited,.project-star-btn:hover{color:#f59e0b}.project-detail-title{font-size:1rem;font-weight:700;color:var(--text-primary);flex:1 1}.project-status-bar{display:flex;gap:6px;padding:6px 20px;border-bottom:1px solid var(--border);flex-shrink:0;max-width:1100px}.project-status-item{display:flex;flex-direction:column;gap:3px;align-items:stretch;flex:1 1;min-width:110px}.project-status-label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;text-align:center}.project-detail-content{flex:1 1;overflow-y:auto;padding:20px;max-width:1100px;display:flex;flex-direction:column}.project-status-card{flex:1 1;min-width:110px;display:flex;flex-direction:column;gap:2px;padding:5px 10px;border-radius:8px;border:1px solid transparent}.project-status-card-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-status-card-body{flex:1 1;display:flex;align-items:center;justify-content:center;min-height:1.375rem}.project-status-card-value{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-status-card-select,.project-status-card-value{font-size:.7rem;font-weight:600;line-height:1.3;text-align:center}.project-status-card-select{width:100%;background:transparent;border:none;outline:none;color:inherit;cursor:pointer;padding:0;color-scheme:dark;-moz-appearance:none;appearance:none;-webkit-appearance:none;white-space:normal;word-break:break-word}[data-theme=light] .project-status-card-select{color-scheme:light}.project-status-card--saving{opacity:.6;pointer-events:none}.project-status-card--green{background:color-mix(in srgb,var(--status-green) 18%,var(--bg-panel));border-color:color-mix(in srgb,var(--status-green) 40%,transparent);color:var(--status-green)}.project-status-card--amber{background:color-mix(in srgb,var(--status-amber) 18%,var(--bg-panel));border-color:color-mix(in srgb,var(--status-amber) 40%,transparent);color:var(--status-amber)}.project-status-card--red{background:color-mix(in srgb,var(--status-red) 18%,var(--bg-panel));border-color:color-mix(in srgb,var(--status-red) 40%,transparent);color:var(--status-red)}.project-status-card--blue{background:color-mix(in srgb,var(--status-blue) 18%,var(--bg-panel));border-color:color-mix(in srgb,var(--status-blue) 40%,transparent);color:var(--status-blue)}.project-status-card--purple{background:color-mix(in srgb,var(--status-purple) 18%,var(--bg-panel));border-color:color-mix(in srgb,var(--status-purple) 40%,transparent);color:var(--status-purple)}.project-status-card--grey{background:color-mix(in srgb,var(--status-grey) 18%,var(--bg-panel));border-color:color-mix(in srgb,var(--status-grey) 40%,transparent);color:var(--status-grey)}.project-status-card--active{border-width:2px;border-color:currentColor;box-shadow:0 0 8px color-mix(in srgb,currentColor 50%,transparent)}.status-badge{display:flex;align-items:center;justify-content:center;padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:500;white-space:normal;word-break:break-word;width:100%;text-align:center}.status-badge--green{background-color:color-mix(in srgb,var(--status-green) 20%,transparent);color:var(--status-green)}.status-badge--amber{background-color:color-mix(in srgb,var(--status-amber) 20%,transparent);color:var(--status-amber)}.status-badge--red{background-color:color-mix(in srgb,var(--status-red) 20%,transparent);color:var(--status-red)}.status-badge--blue{background-color:color-mix(in srgb,var(--status-blue) 20%,transparent);color:var(--status-blue)}.status-badge--purple{background-color:color-mix(in srgb,var(--status-purple) 20%,transparent);color:var(--status-purple)}.status-badge--grey{background-color:color-mix(in srgb,var(--status-grey) 20%,transparent);color:var(--status-grey)}.status-badge--sm{display:inline-flex;width:auto;padding:1px 6px;font-size:.68rem;border-radius:3px;white-space:nowrap;flex-shrink:0}.projects-page{display:flex;align-items:center;justify-content:center;flex:1 1;height:100%}.projects-placeholder{color:var(--text-muted);font-size:.875rem}.section-content{gap:16px}.detail-col,.section-content{display:flex;flex-direction:column}.detail-col{gap:8px}.detail-group-title{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;padding-bottom:4px;border-bottom:1px solid var(--border);margin-bottom:2px}.detail-grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.detail-grid-4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;grid-gap:8px;gap:8px}.detail-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:8px;gap:8px}.detail-box{background-color:var(--bg-panel);border:1px solid var(--border);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:7px}.detail-box-title{font-size:.72rem;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.06em;padding-bottom:5px;border-bottom:1px solid var(--border);text-align:center}.section-general-layout{display:grid;grid-template-columns:1fr 1fr 1.5fr;grid-template-rows:auto 1fr;grid-gap:12px;gap:12px;flex:1 1}.section-general-layout>.detail-box:first-child{grid-column:1;grid-row:1}.section-general-layout>.detail-col:nth-child(2){grid-column:2;grid-row:1;gap:12px;align-self:stretch}.section-general-layout>.detail-col:nth-child(2)>.detail-box:nth-child(2){flex:1 1}.section-general-layout>.detail-col:nth-child(3){grid-column:3;grid-row:1;min-width:0;overflow:hidden}.section-date-grid-wrapper{grid-column:1/3;grid-row:2;min-height:200px}.section-customer-note-wrapper{grid-column:3;grid-row:2;display:flex;flex-direction:column}.section-customer-note-wrapper .detail-field{flex:1 1;display:flex;flex-direction:column;min-height:0}.section-customer-note-wrapper .detail-field-value{flex:1 1;overflow-y:auto;padding:6px 8px}.section-audit-layout{display:flex;flex-direction:column;gap:12px;flex:1 1;min-height:780px}.section-audit-layout>.detail-box:first-child{flex:0 0 280px;overflow-y:auto;display:flex;flex-direction:column}.section-audit-layout>.detail-box:last-child{flex:1 1;overflow-y:auto;display:flex;flex-direction:column}.section-audit-layout .detail-field-value--multiline{height:125px}.audit-side-row{display:flex;flex-direction:row;gap:12px;margin-top:8px}.audit-side-row>*{flex:1 1}.audit-side-row .attachments-panel{margin-top:0;padding-top:0;border-top:none}.audit-side-row .detail-field-label{height:28px;display:flex;align-items:center}.audit-side-row .attachments-header{height:28px;margin-bottom:3px}.audit-side-row .attach-file-list{height:125px;max-height:125px}.audit-fill-row{display:flex;flex-direction:row;min-height:150px;gap:12px;margin-top:8px}.audit-fill-row,.audit-fill-row>*{flex:1 1;min-height:0}.audit-fill-row .detail-field{display:flex;flex-direction:column;min-height:0}.audit-fill-row .detail-field-value--multiline{flex:1 1;height:auto}.audit-fill-row .attachments-panel{display:flex;flex-direction:column;min-height:0;margin-top:0;padding-top:0;border-top:none}.audit-fill-row .detail-field-label{height:28px;display:flex;align-items:center}.audit-fill-row .attachments-header{height:28px;margin-bottom:3px}.audit-fill-row .attach-file-list{flex:1 1;min-height:0;max-height:none;overflow-y:auto}.closeout-note-row{display:flex;flex-direction:row;gap:12px;margin-top:8px}.closeout-note-row>*{flex:1 1}.section-changeorder-layout{min-height:776px}.section-changeorder-layout>.detail-box{overflow-y:visible}.co-mini-note{height:60px}.co-bottom-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-top:4px}.co-bottom-row .detail-field-label{height:28px;display:flex;align-items:center}.co-bottom-row .attachments-header{height:28px;margin-bottom:3px}.co-bottom-row .detail-field-value--multiline{height:125px}.co-bottom-row .attachments-panel{display:flex;flex-direction:column;margin-top:0;border-top:none;padding-top:0}.co-bottom-row .attach-file-list{height:125px;overflow-y:auto}.co-billing-box{margin-top:12px}.co-billing-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.co-billing-table-wrap{overflow-x:auto}.co-billing-table{width:100%;border-collapse:collapse;font-size:.78rem}.co-billing-table th{text-align:left;color:var(--text-secondary);font-weight:600;white-space:nowrap}.co-billing-table td,.co-billing-table th{padding:5px 8px;border-bottom:1px solid var(--border)}.co-billing-table td{color:var(--text-primary);vertical-align:top}.co-cell-top{padding-top:9px}.co-billing-table tbody tr:last-child td{border-bottom:none}.co-billing-table tbody tr:hover{background:var(--bg-hover)}.co-row--editing{background:color-mix(in srgb,var(--accent) 5%,var(--bg-card))}.co-row--confirm{background:color-mix(in srgb,var(--status-red) 6%,var(--bg-card))}.co-confirm-msg{font-size:.78rem;color:var(--text-primary);padding-top:9px!important}.co-table-empty{text-align:center;color:var(--text-secondary);padding:16px!important}.co-cell-title{white-space:nowrap;font-weight:500}.co-cell-desc{max-width:300px}.co-cell-actions{white-space:nowrap;text-align:right;width:1%}.co-status{display:inline-block;padding:2px 8px;border-radius:10px;font-size:.72rem;font-weight:600}.co-status--none{background:var(--bg-hover);color:var(--text-secondary)}.co-status--needed{background:color-mix(in srgb,var(--status-amber) 20%,transparent);color:var(--status-amber)}.co-status--billed{background:color-mix(in srgb,var(--status-green) 20%,transparent);color:var(--status-green)}.co-date-input,.co-desc-input,.co-select{background:var(--bg-input);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:.78rem;padding:3px 6px;width:100%}.co-desc-input{resize:none;height:62px;font-family:inherit}.co-desc-body{background:var(--bg-input);border:1px solid var(--border);border-radius:4px;font-size:.78rem;padding:4px 6px;height:62px;overflow-y:auto;white-space:pre-wrap;color:var(--text-primary)}.co-desc-body--empty{color:var(--text-secondary)}.co-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:4px;border:1px solid;cursor:pointer;margin-left:4px;flex-shrink:0;overflow:visible}.co-btn--edit{background:color-mix(in srgb,var(--accent) 12%,var(--bg-input));color:var(--accent);border-color:var(--accent)}.co-btn--delete{background:color-mix(in srgb,var(--status-red) 12%,var(--bg-input));color:var(--status-red);border-color:var(--status-red)}.co-btn--save{background:color-mix(in srgb,var(--status-green) 12%,var(--bg-input));color:var(--status-green);border-color:var(--status-green)}.co-btn--cancel{background:color-mix(in srgb,var(--text-secondary) 12%,var(--bg-input));color:var(--text-secondary);border-color:var(--border)}.co-btn--edit:hover{background:var(--accent);color:#fff}.co-btn--delete:hover{background:var(--status-red);color:#fff}.co-btn--save:hover{background:var(--status-green);color:#fff}.co-btn--cancel:hover{background:var(--text-secondary);color:#fff}.co-btn:disabled{opacity:.4;cursor:default}.co-btn span{font-size:15px;line-height:1}.new-project-btn{display:flex;align-items:center;gap:5px;width:100%;padding:6px 10px;margin-bottom:8px;background:var(--accent);color:#fff;border:none;border-radius:5px;font-size:12px;font-weight:600;cursor:pointer;transition:opacity .15s}.new-project-btn:hover{opacity:.85}.new-project-btn.active{background:var(--status-amber)}.project-form-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.project-form-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.form-error{font-size:11px}.form-error,.form-required{color:var(--status-red)}.form-btn{padding:4px 14px;border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;transition:opacity .15s}.form-btn:disabled{opacity:.4;cursor:default}.form-btn--save{background:var(--status-green);color:#fff}.form-btn--cancel{background:var(--text-secondary);color:#fff}.form-btn--cancel:not(:disabled):hover,.form-btn--save:not(:disabled):hover{opacity:.85}.form-input{width:100%;padding:3px 6px;border:1px solid var(--border);border-radius:4px;background:var(--bg-panel);color:var(--text-primary);font-size:12px;font-family:inherit;box-sizing:border-box;color-scheme:dark}[data-theme=light] .form-input{color-scheme:light}.form-input:focus{outline:none;border-color:var(--accent)}.form-textarea{width:100%;padding:4px 6px;border:1px solid var(--border);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-size:12px;font-family:inherit;resize:vertical;box-sizing:border-box}.form-textarea:focus{outline:none;border-color:var(--accent)}.form-info-icon{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:50%;background:var(--text-secondary);color:#fff;font-size:10px;font-weight:700;cursor:help;margin-left:5px;position:relative;flex-shrink:0;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.form-info-tooltip{display:none;position:absolute;left:20px;top:50%;transform:translateY(-50%);width:300px;background:var(--bg-panel);border:1px solid var(--border);border-radius:6px;padding:9px 11px;font-size:11px;color:var(--text-primary);line-height:1.65;z-index:200;white-space:normal;box-shadow:0 4px 16px rgba(0,0,0,.35);pointer-events:none}.form-info-icon:hover .form-info-tooltip{display:block}.form-tooltip-intro{margin-bottom:8px;line-height:1.4}.form-tooltip-intro,.form-tooltip-table{font-size:11px;color:var(--text-primary)}.form-tooltip-table{display:grid;grid-template-columns:1fr 1fr;grid-gap:3px 12px;gap:3px 12px}.form-tooltip-col-header{font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);padding-bottom:4px;border-bottom:1px solid var(--border);margin-bottom:2px}.form-info-icon--below .form-info-tooltip{left:0;top:calc(100% + 6px);transform:none}.form-info-icon--below:hover .form-info-tooltip{display:block}.dialog-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;display:flex;align-items:center;justify-content:center}.dialog-box{background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;padding:20px 24px;width:480px;max-width:95vw;box-shadow:0 8px 32px rgba(0,0,0,.4)}.dialog-title{font-size:14px;font-weight:700;color:var(--text-primary);margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--border)}.dialog-row{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:16px;gap:16px;align-items:start;margin-bottom:16px}.dialog-field{display:flex;flex-direction:column;gap:4px}.dialog-field,.dialog-field--id{text-align:center}.dialog-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;line-height:1.3;min-height:32px;display:flex;align-items:flex-start;justify-content:center}.dialog-id-value{padding:4px 0}.dialog-id-value,.form-input--dialog{font-size:22px;font-weight:700;color:var(--accent);text-align:center;letter-spacing:.02em}.form-input--dialog{text-transform:uppercase;padding:2px 6px;background:var(--bg-app);border-color:var(--border-light)}.dialog-preview{display:flex;align-items:center;justify-content:space-between;background:var(--bg-app);border:1px solid var(--border);border-radius:6px;padding:8px 12px;margin-bottom:16px}.dialog-preview-label{font-size:11px;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.dialog-preview-value{font-size:15px;font-weight:700;color:var(--text-primary);letter-spacing:.04em}.dialog-actions{display:flex;justify-content:flex-end;gap:8px}.form-orderno-row{display:flex;align-items:center;gap:6px}.form-orderno-display{flex:1 1;padding:3px 6px;border:1px solid var(--border);border-radius:4px;background:var(--bg-app);font-size:12px;color:var(--text-primary);font-weight:600;min-height:24px;display:flex;align-items:center}.form-orderno-placeholder{color:var(--text-muted);font-weight:400;font-style:italic}.form-btn--orderno{background:var(--accent);color:#fff;white-space:nowrap}.form-btn--orderno:hover{opacity:.85}.closeout-archive-card .form-status-card-label{font-size:.75rem;font-weight:500;text-transform:none;letter-spacing:0;color:var(--text-secondary)}.closeout-saving{color:var(--text-muted)}.closeout-save-error,.closeout-saving{font-size:9px;font-weight:400;text-transform:none;margin-left:4px}.closeout-save-error{color:var(--status-red)}.form-status-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.form-status-grid-span{grid-column:span 2}.form-status-card{border-radius:5px;padding:5px 7px;display:flex;flex-direction:column;gap:3px}.form-status-card--green{background:color-mix(in srgb,var(--status-green) 15%,transparent)}.form-status-card--amber{background:color-mix(in srgb,var(--status-amber) 15%,transparent)}.form-status-card--red{background:color-mix(in srgb,var(--status-red) 15%,transparent)}.form-status-card--blue{background:color-mix(in srgb,var(--status-blue) 15%,transparent)}.form-status-card--purple{background:color-mix(in srgb,var(--status-purple) 15%,transparent)}.form-status-card--grey{background:color-mix(in srgb,var(--status-grey) 10%,transparent)}.form-status-card-label{font-size:.75rem;font-weight:500;color:var(--text-secondary);display:flex;align-items:center;gap:4px}.form-status-select{width:100%;border:none;background:transparent;font-size:.875rem;font-weight:600;color:var(--text-primary);cursor:pointer;padding:0;font-family:inherit;color-scheme:dark}[data-theme=light] .form-status-select{color-scheme:light}.form-status-select:focus{outline:none}.form-status-card--green .form-status-select{color:var(--status-green)}.form-status-card--amber .form-status-select{color:var(--status-amber)}.form-status-card--red .form-status-select{color:var(--status-red)}.form-status-card--blue .form-status-select{color:var(--status-blue)}.form-status-card--purple .form-status-select{color:var(--status-purple)}.form-status-card--grey .form-status-select{color:var(--text-secondary)}.form-map-placeholder{display:flex;flex-direction:column;justify-content:center;min-height:120px}.form-map-note{text-align:center;padding:12px 0}.form-map-note,.form-media-note{font-size:11px;color:var(--text-secondary)}.form-media-note{margin-top:8px}.section-billing-layout{min-height:776px}.section-billing-layout>.detail-box{overflow-y:visible}.billing-notes-span{grid-column:span 2}.section-billing-layout .detail-field-value--multiline{height:125px}.section-survey-layout{min-height:776px}.section-survey-layout>.detail-box{display:flex;flex-direction:column;height:100%;overflow-y:visible}.section-survey-layout .detail-grid-4{align-items:start}.survey-notes-span{grid-column:span 2}.section-survey-layout .detail-field-value--multiline{height:125px}.survey-media-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.section-survey-layout .attachments-panel,.section-survey-layout .pictures-panel{display:flex;flex-direction:column}.section-survey-layout .attach-file-list,.section-survey-layout .pictures-grid-container{height:125px;overflow-y:auto}.section-engineering-layout{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;flex:1 1;min-height:776px}.section-engineering-layout>.detail-box{overflow-y:visible}.section-engineering-layout>.detail-box:first-child{display:flex;flex-direction:column}.section-engineering-layout>.detail-box:first-child .attachments-panel{flex:1 1;min-height:0;display:flex;flex-direction:column}.section-engineering-layout>.detail-box:first-child .attach-file-list{flex:1 1;min-height:0;max-height:none;overflow-y:auto}.section-engineering-layout .detail-field-value--multiline{height:150px}.installation-hours-row{display:grid;grid-template-columns:1fr 1fr 2fr;grid-gap:8px;gap:8px}.installation-hours-pair{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.section-installation-layout{display:flex;flex-direction:column;gap:12px;flex:1 1;min-height:780px}.section-installation-layout .detail-field-value--multiline{height:150px}.installation-pictures-wrapper{width:50%}.installation-pictures-wrapper .pictures-panel{margin-top:0;border-top:none;padding-top:0;min-height:200px}.toggle-field{display:flex;align-items:center;gap:8px;padding:5px 8px;background:var(--bg-input);border:1px solid var(--border);border-radius:6px;min-height:28px}.toggle-track{width:36px;height:20px;border-radius:99px;background:var(--text-muted);position:relative;flex-shrink:0;transition:background .2s}.toggle-track--on{background:var(--status-green)}.toggle-thumb{position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .2s}.toggle-track--on .toggle-thumb{transform:translateX(16px)}.toggle-label{font-size:.875rem;color:var(--text-primary)}.hours-bar-wrapper{display:flex;flex-direction:column;gap:4px}.hours-bar-track{height:10px;background:var(--bg-input);border:1px solid var(--border);border-radius:99px;overflow:hidden}.hours-bar-fill{height:100%;border-radius:99px;transition:width .3s ease}.hours-bar-label{font-size:.75rem;font-weight:500}.section-material-layout{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;flex:1 1;min-height:776px}.section-material-layout>.detail-box{overflow-y:auto}.note-label-row{display:flex;align-items:center;gap:5px}.note-stamp-btn{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;flex-shrink:0;padding:0;transition:color .15s}.note-stamp-btn:hover{color:var(--accent)}.section-date-grid{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:8px;gap:8px}.detail-field{display:flex;flex-direction:column;gap:3px}.detail-field-label{font-size:.75rem;color:var(--text-secondary);font-weight:500}.detail-field-value{background-color:var(--bg-input);border:1px solid var(--border);border-radius:6px;padding:5px 8px;font-size:.875rem;color:var(--text-primary);min-height:28px;display:flex;align-items:center}.detail-field-value--empty{color:var(--text-muted);font-style:italic}.detail-field-value--multiline{display:block;white-space:pre-wrap;overflow-y:auto}.section-material-layout .detail-field-value--multiline{height:150px}.section-material-layout .attach-file-list{min-height:150px}.attach-placeholder{min-height:60px}.detail-db-id{font-size:.65rem;color:var(--text-muted);margin-top:auto;padding-top:8px}.map-panel{display:flex;flex-direction:column;gap:8px;flex:1 1;min-width:0}.map-img{width:100%;flex:1 1;min-height:0;object-fit:cover;object-position:center;border-radius:8px;display:block}.map-img,.map-placeholder{border:1px solid var(--border)}.map-placeholder{background-color:var(--bg-input);border-radius:8px;padding:20px;color:var(--text-muted);text-align:center;min-height:160px;display:flex}.map-directions-btn,.map-placeholder{font-size:.75rem;align-items:center;justify-content:center}.map-directions-btn{display:inline-flex;padding:6px 14px;background-color:var(--status-green);color:#fff;font-weight:600;border-radius:6px;text-decoration:none;transition:opacity .15s}.map-directions-btn:hover{opacity:.85}p{margin-bottom:0}.attachments-panel{margin-top:16px;border-top:1px solid var(--border);padding-top:12px}.attach-file-list{background-color:var(--bg-input);border:1px solid var(--border);border-radius:6px;padding:4px 2px;max-height:400px;overflow-y:auto}.attachments-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.attachments-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-primary)}.attach-upload-btn{display:flex;align-items:center;gap:5px;height:26px;padding:0 10px;white-space:nowrap;border-radius:4px;border:1px solid var(--border);background:var(--bg-input);color:var(--text-secondary);font-size:.75rem;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.attach-upload-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.attach-upload-btn--busy{opacity:.7;cursor:default}.attach-status{font-size:.8rem;color:var(--text-muted);padding:4px 0}.attach-status--error{color:var(--status-red)}.attach-row{display:flex;align-items:center;gap:8px;padding:5px 4px;border-radius:6px;transition:background .1s}.attach-row:hover{background:var(--bg-hover)}.attach-file-icon{flex-shrink:0;display:flex;align-items:center}.attach-file-info{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.attach-file-name{font-size:.8rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attach-file-size{font-size:.68rem;color:var(--text-muted)}.attach-actions{gap:2px;flex-shrink:0}.attach-actions,.attach-btn{display:flex;align-items:center}.attach-btn{justify-content:center;width:24px;height:24px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:4px;padding:0;transition:background .1s,color .1s;text-decoration:none}.attach-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.attach-btn:disabled{opacity:.4;cursor:default}.attach-btn--delete:hover{color:var(--status-red)}.attach-btn--confirm:hover{color:var(--status-green)}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.pictures-panel{margin-top:16px;border-top:1px solid var(--border);padding-top:12px;flex:1 1;min-height:0;display:flex;flex-direction:column}.pictures-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.pictures-header-actions{display:flex;align-items:center;gap:6px}.attach-upload-btn--danger{background:color-mix(in srgb,var(--status-red) 15%,var(--bg-input));border-color:color-mix(in srgb,var(--status-red) 40%,transparent);color:var(--status-red)}.attach-upload-btn--danger:hover{background:var(--status-red);color:#fff;border-color:var(--status-red)}.pictures-grid-container{min-height:80px;flex:1 1;min-height:0;max-height:none}.pictures-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));grid-gap:8px;gap:8px;padding:8px}.picture-thumb{position:relative;display:flex;flex-direction:column;gap:4px;border-radius:6px;padding:4px;transition:background .1s}.picture-thumb:hover{background:var(--bg-hover)}.picture-thumb--selected{background:color-mix(in srgb,var(--accent) 15%,transparent);outline:2px solid var(--accent);outline-offset:-2px;border-radius:6px}.picture-thumb-check{position:absolute;top:8px;left:8px;z-index:1;width:16px;height:16px;cursor:pointer;opacity:0;transition:opacity .1s;accent-color:var(--accent)}.picture-thumb--selected .picture-thumb-check,.picture-thumb:hover .picture-thumb-check{opacity:1}.picture-thumb-img-wrap{width:100%;aspect-ratio:1;border-radius:4px;overflow:hidden;background:var(--bg-hover);display:flex;align-items:center;justify-content:center;cursor:pointer}.picture-thumb-img{width:100%;height:100%;object-fit:cover;transition:opacity .15s}.picture-thumb-img:hover{opacity:.85}.picture-thumb-placeholder{color:var(--text-muted);display:flex;align-items:center;justify-content:center;width:100%;height:100%}.picture-thumb-name{font-size:.65rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.pictures-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:1000}.lightbox-close,.pictures-lightbox{display:flex;align-items:center;justify-content:center}.lightbox-close{position:absolute;top:16px;right:16px;background:rgba(255,255,255,.15);border:2px solid rgba(255,255,255,.4);color:#fff;width:64px;height:64px;border-radius:50%;cursor:pointer;transition:background .15s;z-index:1}.lightbox-close:hover{background:rgba(255,255,255,.3)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.12);border:2px solid rgba(255,255,255,.3);color:#fff;width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s;z-index:1}.lightbox-nav:hover:not(:disabled){background:rgba(255,255,255,.25)}.lightbox-nav:disabled{opacity:.25;cursor:default}.lightbox-nav--prev{left:16px}.lightbox-nav--next{right:16px}.lightbox-img-wrap{display:flex;flex-direction:column;align-items:center;gap:10px;max-width:90vw}.lightbox-img{max-width:90vw;max-height:82vh;object-fit:contain;border-radius:4px}.lightbox-filename{color:rgba(255,255,255,.85);font-size:.875rem;text-align:center;margin:0}.lightbox-counter{color:rgba(255,255,255,.45);font-size:.75rem;text-align:center;margin:0}.pictures-dialog-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:1001;display:flex;align-items:center;justify-content:center}.pictures-dialog{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;padding:28px 32px;min-width:300px;display:flex;flex-direction:column;gap:20px;box-shadow:0 8px 32px rgba(0,0,0,.4)}.pictures-dialog-msg{font-size:.95rem;color:var(--text-primary);text-align:center;line-height:1.6}.pictures-dialog-actions{display:flex;gap:10px;justify-content:center}.settings-page{max-width:640px}.admin-page,.settings-page{padding:2rem 2.5rem;display:flex;flex-direction:column;gap:2rem}.admin-page{max-width:860px}.settings-title{font-size:1.4rem;font-weight:600;color:var(--text-primary);margin:0}.settings-section{display:flex;flex-direction:column;gap:1rem}.settings-section-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.settings-account-card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:1rem 1.25rem}.settings-account-info{display:flex;flex-direction:column;gap:.25rem}.settings-account-name{font-size:1rem;font-weight:600;color:var(--text-primary)}.settings-account-email{font-size:.8rem;color:var(--text-muted)}.settings-account-badges{display:flex;flex-direction:column;gap:.4rem;margin-top:.4rem}.settings-badge{font-size:.7rem;font-weight:600;padding:.15rem .55rem;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.settings-badge--role{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.settings-badge--status--active{background:rgba(34,197,94,.15);color:#22c55e}.settings-badge--status--inactive{background:rgba(239,68,68,.15);color:#ef4444}.settings-badge-row{display:flex;align-items:center;gap:.5rem}.settings-badge-label{font-size:.75rem;color:var(--text-muted);min-width:44px}.settings-row{display:flex;align-items:center;gap:1.5rem;padding:.75rem 0;border-bottom:1px solid var(--border)}.settings-row:last-child{border-bottom:none}.settings-row-label{font-size:.85rem;color:var(--text-primary);min-width:110px}.settings-theme-toggle{display:flex;gap:.5rem}.settings-theme-btn{display:flex;align-items:center;gap:.4rem;padding:.35rem .85rem;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-size:.8rem;cursor:pointer;transition:all .15s}.settings-theme-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.settings-theme-btn:not(.active):hover{border-color:var(--accent);color:var(--accent)}.settings-accent-swatches{display:flex;gap:.5rem;flex-wrap:wrap}.settings-accent-swatch{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .15s,border-color .15s}.settings-accent-swatch:hover{transform:scale(1.15)}.settings-accent-swatch.active{border-color:var(--text-primary);transform:scale(1.15)}.admin-search-row{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.admin-refresh-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.8rem;border-radius:6px;border:1px solid var(--border);background:var(--bg-panel);color:var(--text-secondary);cursor:pointer;white-space:nowrap}.admin-refresh-btn:hover:not(:disabled){color:var(--text-primary);border-color:var(--accent)}.admin-refresh-btn:disabled{opacity:.5;cursor:default}.admin-add-user-btn{border-color:var(--accent)!important;color:var(--accent)!important}.admin-add-user-btn:hover:not(:disabled){background:var(--accent)!important;color:#fff!important}.admin-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200}.admin-modal{background:var(--bg-panel);border:1px solid var(--border);border-radius:12px;width:100%;max-width:480px;box-shadow:0 8px 32px rgba(0,0,0,.3);display:flex;flex-direction:column}.admin-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.admin-modal-title{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;color:var(--text-primary)}.admin-modal-body{padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.admin-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid var(--border)}.mat-att-close-btn{padding:.4rem 1rem;font-size:.85rem;border-radius:6px;border:1px solid var(--border);background:none;color:var(--text-secondary);cursor:pointer}.mat-att-close-btn:hover{color:var(--text-primary)}.admin-add-search-wrap{position:relative;display:flex;align-items:center;width:100%}.admin-add-search-icon{position:absolute;left:.6rem;color:var(--text-secondary);pointer-events:none}.admin-add-search{width:100%;padding:.4rem 2rem;background:var(--bg-input,var(--bg-row));border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:.85rem}.admin-add-search:focus{outline:none;border-color:var(--accent)}.admin-add-search-spinner{position:absolute;right:.6rem;color:var(--text-secondary)}.admin-add-results{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-panel);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 16px rgba(0,0,0,.25);z-index:50;overflow:hidden}.admin-add-result-row{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;width:100%;padding:.5rem .75rem;background:none;border:none;border-bottom:1px solid var(--border);cursor:pointer;text-align:left}.admin-add-result-row:last-child{border-bottom:none}.admin-add-result-row:hover{background:var(--bg-row)}.admin-add-result-name{font-size:.85rem;color:var(--text-primary);font-weight:500}.admin-add-result-email{font-size:.75rem;color:var(--text-secondary)}.admin-add-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem 1rem;font-size:.85rem;border-radius:6px;border:none;background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap}.admin-add-btn:hover:not(:disabled){background:var(--accent-hover)}.admin-add-btn:disabled{opacity:.5;cursor:default}.admin-add-selected{font-size:.8rem;color:var(--text-secondary);margin:0}.admin-add-selected strong{color:var(--text-primary)}.admin-add-error{font-size:.8rem;color:var(--color-red,#ef4444);margin:0}.admin-info-text{font-size:.825rem;color:var(--text-secondary);margin:0 0 .5rem;line-height:1.5}.admin-side-by-side{display:flex;gap:1.5rem;align-items:flex-start;flex-wrap:wrap}.admin-side-by-side .settings-section{flex:1 1;min-width:280px}.admin-perm-table-wrap{overflow-x:auto;border-radius:8px;border:1px solid var(--border);min-width:0}.admin-perm-table{width:100%;border-collapse:collapse;font-size:.82rem}.admin-perm-table tbody tr,.admin-perm-table thead{display:table;width:100%;table-layout:fixed}.admin-perm-table tbody{display:block;overflow-y:auto;max-height:210px}.admin-perm-th--group{padding:.6rem 1rem .3rem}.admin-perm-th,.admin-perm-th--group{text-align:center;color:var(--text-muted);font-weight:600;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;background:var(--bg-panel);border-bottom:1px solid var(--border)}.admin-perm-th{padding:.6rem 1rem;white-space:nowrap}.admin-perm-th--page{text-align:left;min-width:100px}.admin-perm-td{padding:.55rem 1rem;text-align:center;color:var(--text-primary);border-bottom:1px solid var(--border);vertical-align:middle;white-space:nowrap}.admin-perm-row:last-child td{border-bottom:none}.admin-perm-td--page{text-align:left;color:var(--text-primary);font-weight:500}.admin-perm-check{color:#22c55e;font-weight:700;font-size:1rem}.admin-perm-cross{color:var(--text-secondary);opacity:.4}.admin-lists{display:flex;flex-direction:column;gap:.5rem}.admin-list-row{display:flex;align-items:baseline;gap:.75rem;padding:.5rem .75rem;border-radius:6px;background:var(--bg-row);border:1px solid var(--border)}.admin-list-name{font-size:.85rem;font-weight:600;color:var(--text-primary);min-width:120px}.admin-list-desc{font-size:.8rem;color:var(--text-secondary)}.admin-table-wrap{overflow-x:auto;border-radius:8px;border:1px solid var(--border);min-width:0}.admin-table{width:100%;border-collapse:collapse;font-size:.82rem}.admin-table tbody tr,.admin-table thead{display:table;width:100%;table-layout:fixed}.admin-table tbody{display:block;overflow-y:auto;max-height:210px}.admin-th{padding:.6rem 1rem;text-align:left;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--bg-panel)}.admin-td,.admin-th{border-bottom:1px solid var(--border);white-space:nowrap}.admin-td{padding:.55rem 1rem;color:var(--text-primary);vertical-align:middle;overflow:hidden;text-overflow:ellipsis}.admin-td--email{color:var(--text-muted);font-size:.78rem}.admin-td--actions{text-align:center;padding:.55rem .25rem}.admin-delete-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:3px 5px;border-radius:4px;opacity:.4;transition:opacity .15s,color .15s}.admin-delete-btn:hover{opacity:1;color:#ef4444}.admin-delete-confirm-btn{padding:.4rem 1rem;border-radius:6px;border:1px solid rgba(239,68,68,.5);background:rgba(239,68,68,.15);color:#ef4444;font-size:.82rem;font-weight:600;cursor:pointer}.admin-delete-confirm-btn:hover{background:rgba(239,68,68,.25)}.admin-table tbody td:first-child,.admin-table thead th:first-child{width:18%}.admin-table tbody td:nth-child(2),.admin-table thead th:nth-child(2){width:33%}.admin-table tbody td:nth-child(3),.admin-table tbody td:nth-child(4),.admin-table thead th:nth-child(3),.admin-table thead th:nth-child(4){width:20%}.admin-table tbody td:nth-child(5),.admin-table thead th:nth-child(5){width:9%}.admin-select{background:var(--bg-input);border:1px solid var(--border);border-radius:5px;color:var(--text-primary);font-size:.78rem;padding:.25rem .5rem;cursor:pointer;width:100%;min-width:0}.admin-select--active{color:#22c55e;border-color:rgba(34,197,94,.4)}.admin-select--inactive{color:#ef4444;border-color:rgba(239,68,68,.4)}.admin-select--role-admin{color:#a78bfa;border-color:rgba(167,139,250,.4)}.admin-select--role-manager{color:#38bdf8;border-color:rgba(56,189,248,.4)}.admin-select--role-installer{color:#fb923c;border-color:rgba(251,146,60,.4)}.admin-select--role-basic{color:#4ade80;border-color:rgba(74,222,128,.4)}.sidebar-nav-item--admin{color:#f59e0b}.sidebar-nav-item--admin:hover{color:#fbbf24;background:rgba(245,158,11,.1)}.sidebar-nav-item--admin.active{color:#fbbf24;background:rgba(245,158,11,.15)}.sidebar-profile-role{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-top:.15rem}