@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--color-bg-primary:#0f172a;--color-bg-secondary:#16233d;--color-bg-tertiary:#1e293bb3;--color-bg-card:#0f172af2;--color-surface:#060e20;--color-on-surface:#dee5ff;--color-on-surface-variant:#a3aac4;--color-surface-container-highest:#192540;--color-surface-container-high:#141f38;--color-surface-container:#0f1930;--color-surface-container-low:#091328;--color-surface-container-lowest:#000;--color-surface-bright:#1f2b49;--color-primary:#75b0ff;--color-on-primary:#002f5a;--color-primary-dim:#4fa0ff;--color-primary-fixed-dim:#3d95f7;--color-secondary:#bc83ff;--color-on-secondary:#31005e;--color-tertiary:#ffbc6f;--color-outline:#6d758c;--color-outline-variant:#40485d;--color-text-primary:#f8fafc;--color-text-secondary:#cbd5e1;--color-text-muted:#94a3b8;--color-text:var(--color-text-primary);--color-accent:#3b82f6;--color-accent-hover:#2563eb;--color-border:#334155;--color-border-light:#ffffff1a;--color-success:#10b981;--color-danger:#ef4444;--color-warning:#f59e0b;--color-success-bg:#10b9811a;--color-success-border:#10b9814d;--color-warning-bg:#f59e0b1a;--color-warning-border:#f59e0b4d;--color-danger-bg:#ef44441a;--color-danger-border:#ef44444d;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-glow:0 0 15px #3b82f680;--glass-bg:#1e293ba6;--glass-border:1px solid #ffffff20;--glass-blur:blur(12px);--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior-y:none;background-image:radial-gradient(at 0 0,#3b82f626 0,#0000 50%),radial-gradient(at 100% 100%,#10b9811a 0,#0000 50%);background-attachment:fixed;height:100dvh;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;overflow:hidden}#root{overscroll-behavior-y:none;height:100dvh;overflow:hidden}.glass-panel{background-color:var(--color-surface-container-low);border-radius:var(--radius-xl);border:1px solid #40485d1a;overflow:hidden;box-shadow:0 4px 24px -4px #00000026}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);margin-bottom:.5rem;font-weight:600;line-height:1.25}p{color:var(--color-text-secondary)}.input-group{flex-direction:column;gap:.375rem;margin-bottom:1rem;display:flex}label{color:var(--color-text-secondary);font-size:.875rem;font-weight:500}input,textarea,select{color:var(--color-on-surface);border-radius:var(--radius-md);transition:all var(--transition-fast);background:linear-gradient(145deg,#141f38f2,#0f1930eb);border:1px solid #75b0ff3d;width:100%;padding:.625rem .875rem;font-family:inherit;font-size:.875rem}input:focus,textarea:focus,select:focus{border-color:#bc83ffb8;outline:none;box-shadow:0 0 0 2px #75b0ff40}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}select option{color:var(--color-on-surface);background-color:#0f1930}.btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:500;display:inline-flex}.btn:focus{outline:none;box-shadow:0 0 0 2px #3b82f666}.btn-primary{background-color:var(--color-accent);color:var(--color-on-primary);box-shadow:var(--shadow-sm)}.btn-primary:hover{background-color:var(--color-accent-hover);color:var(--color-on-primary);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{color:var(--color-on-surface);background:linear-gradient(145deg,#75b0ff1f,#141f38eb);border-color:#75b0ff59;box-shadow:inset 0 1px #ffffff14}.btn-secondary:hover{color:#f4f7ff;background:linear-gradient(145deg,#75b0ff38,#192540f5);border-color:#bc83ff8c}.btn-danger{color:var(--color-danger);background-color:#ef44441a;border-color:#ef44444d}.btn-danger:hover{background-color:var(--color-danger);color:#fff}.btn-xs{padding:.36rem .58rem;font-size:.73rem}.btn-sm{padding:.45rem .7rem;font-size:.78rem}.btn-fill{flex:1}.btn-block{width:100%}.text-action-btn{color:var(--color-accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;padding:0;font-size:.75rem;font-weight:600;display:inline-flex}.text-action-btn:disabled{opacity:.55;cursor:not-allowed}.text-action-btn-danger{color:var(--color-danger)}.icon-ghost-btn{color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast), background-color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;display:inline-flex}.icon-ghost-btn:hover{color:var(--color-text-primary);background-color:#ffffff0f}.icon-ghost-btn:disabled{opacity:.55;cursor:not-allowed}.icon-chip-btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;padding:.45rem;display:inline-flex}.icon-chip-btn-accent{color:var(--color-accent);background:#3b82f61a;border:1px solid #3b82f64d}.icon-chip-btn-accent:hover{background:#3b82f633;border-color:#3b82f680}.icon-chip-btn-danger{color:var(--color-danger);background:#ef44441a;border:1px solid #ef44444d}.icon-chip-btn-danger:hover{background:#ef444433;border-color:#ef444480}.icon-chip-btn-muted{background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary)}.icon-chip-btn-muted:hover{color:var(--color-accent);border-color:var(--color-accent)}.modal-close-btn{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:1.5rem;right:1.5rem}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background-color:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-shell{width:100%;max-width:min(560px,100vw - 2rem);max-height:min(90vh,100dvh - 1rem);overflow-y:auto}.modal-actions{gap:.75rem;display:flex}.modal-actions-split{justify-content:space-between;gap:.75rem;display:flex}.section-title{align-items:center;gap:.5rem;margin:0;font-size:.95rem;display:flex}.eyebrow-label{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary);font-size:.72rem;font-weight:700}.muted-note{color:var(--color-text-muted);margin:0;font-size:.9rem}.stack-sm{gap:.5rem;display:grid}.stack-md{gap:.75rem;display:grid}.toolbar-row{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.counter-caption{color:var(--color-text-muted);white-space:nowrap;font-size:.8rem}.projects-header,.projects-summary-grid{margin-bottom:1.5rem}.projects-view-toggle{margin-bottom:1rem}.projects-status-chips{-webkit-overflow-scrolling:touch;scrollbar-width:thin;gap:.5rem;max-width:100%;margin-bottom:1rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.projects-toolbar-row{margin-bottom:1rem}.projects-search-wrap{flex:260px;min-width:0;position:relative}.projects-search-input{padding-left:2.25rem;padding-right:2.25rem}.projects-clear-search{position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.projects-sort-wrap{align-items:center;gap:.5rem;display:flex}.projects-sort-select{background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;outline:none;padding:.625rem .75rem;font-size:.875rem}.projects-counter-caption{margin-left:auto}.projects-cards-grid{gap:.75rem;max-width:100%;display:grid}.projects-card{border:1px solid #0000;max-width:100%}.projects-card:hover{border-color:var(--color-border);transform:translateY(-1px)}.projects-card-main{flex:1;min-width:0}.projects-card-title{word-break:break-word;min-width:0}.projects-card-meta-row{width:100%}.projects-card-meta{overflow-wrap:anywhere;min-width:0}.projects-card-meta-id{word-break:break-all}.projects-card-side{flex-wrap:nowrap;min-width:0}.projects-restore-btn{background:#10b9811a;border-color:#10b9814d;width:44px;min-width:44px;height:44px;min-height:44px;padding:0}.projects-restore-btn:hover{background:#10b98133;border-color:#10b98173}.panel-empty{text-align:center;padding:2.5rem}.panel-empty-lg{text-align:center;padding:3rem}.icon-btn{border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;display:flex}.icon-btn:hover{color:var(--color-text-primary);background-color:#ffffff1a}.icon-btn.danger:hover{color:var(--color-danger);background-color:#ef44441a}.route-loading-fallback{justify-content:center;padding:2rem;display:flex}.route-loading-fallback-text{color:var(--color-text-muted)}.auth-page-shell{overscroll-behavior:none;justify-content:center;align-items:center;height:100dvh;padding:1.5rem;display:flex;overflow:auto}.auth-card{width:100%;max-width:400px}.auth-card-complete{text-align:center}.auth-card-email-confirm{max-width:420px}.auth-header{text-align:center;margin-bottom:2rem}.auth-logo{width:64px;height:64px;margin:0 auto 1rem;display:block}.auth-title{margin:0 0 .5rem;font-size:1.5rem}.auth-subtitle{margin:0}.auth-error-alert{color:var(--color-danger);border-radius:var(--radius-md);background-color:#ef44441a;border:1px solid #ef44444d;margin-bottom:1.5rem;padding:.75rem}.auth-error-alert-sm{margin-bottom:1rem}.auth-social-btn{color:#333;background-color:#fff;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-bottom:1.5rem;display:flex}.auth-social-icon{width:18px}.auth-divider{align-items:center;margin:1.5rem 0;display:flex}.auth-divider-line{background-color:var(--color-border);flex:1;height:1px}.auth-divider-label{color:var(--color-text-muted);padding:0 1rem;font-size:.875rem}.auth-toggle-wrap{border-radius:var(--radius-md);border:1px solid var(--color-border);margin-bottom:1.25rem;display:flex;overflow:hidden}.auth-toggle-btn{cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-muted);background-color:#0000;border:none;border-bottom:2px solid #0000;flex:1;padding:.5rem;font-size:.8125rem;font-weight:500}.auth-toggle-btn.active{color:var(--color-accent);border-bottom-color:var(--color-accent);background-color:#3b82f626}.auth-toggle-icon{vertical-align:middle;margin-right:.25rem}.auth-link-sent{text-align:center;border-radius:var(--radius-md);background-color:#22c55e14;border:1px solid #22c55e40;padding:1.5rem}.auth-link-sent-emoji{margin-bottom:.75rem;font-size:2rem}.auth-link-sent-title{color:#22c55e;margin:0 0 .5rem;font-size:1rem}.auth-link-sent-copy{color:var(--color-text-muted);margin:0 0 1rem;font-size:.875rem}.auth-strong-text{color:var(--color-text-primary)}.auth-form{flex-direction:column;gap:1rem;display:flex}.auth-form-tight{gap:.75rem;display:grid}.input-group-compact{margin-bottom:0}.auth-inline-note{color:var(--color-text-muted);margin:0;font-size:.8125rem}.auth-btn-full{width:100%}.auth-btn-with-top-gap{margin-top:.5rem}.auth-btn-compact{padding:.5rem 1rem;font-size:.8125rem}.auth-footer{text-align:center;margin-top:1.5rem;font-size:.875rem}.auth-accent-link{color:var(--color-accent);text-decoration:none}.auth-complete-emoji{margin-bottom:1rem;font-size:2rem}.auth-complete-title{margin:0 0 .5rem;font-size:1.25rem}.auth-complete-title-left{text-align:left}.auth-complete-copy{color:var(--color-text-muted);margin:0}.auth-complete-copy-left{text-align:left}.auth-complete-copy-margin{margin-bottom:1rem}.auth-back-link{color:var(--color-text-muted);text-align:center;font-size:.85rem;text-decoration:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--transition-normal) forwards}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.container{max-width:1400px;margin:0 auto;padding:1.5rem}.grid-2{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (width>=1024px){.grid-2{grid-template-columns:1fr 1fr}}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-column{flex-direction:column;display:flex}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.mt-4{margin-top:1rem}.mb-4{margin-bottom:1rem}.p-6{padding:1.5rem}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.view-toggle-group{border-radius:var(--radius-md);border:1px solid var(--color-border);margin:0;display:flex;overflow:hidden}.view-toggle-group button{cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-muted);background-color:#0000;border:none;flex:1;justify-content:center;align-items:center;gap:.375rem;padding:.625rem;font-size:.875rem;font-weight:500;display:flex}.view-toggle-group button.active{color:var(--color-accent);border-bottom:2px solid var(--color-accent);background-color:#3b82f626}.toggle-switch{cursor:pointer;width:44px;height:24px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{background-color:var(--color-border);transition:all var(--transition-fast);border-radius:24px;position:absolute;inset:0}.toggle-slider:before{content:"";background-color:var(--color-text-primary);width:18px;height:18px;transition:all var(--transition-fast);border-radius:50%;position:absolute;bottom:3px;left:3px}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.quill-dark-wrapper .ql-toolbar.ql-snow{border-color:var(--color-border);border-radius:var(--radius-md) var(--radius-md) 0 0;background-color:#0f172a99}.quill-dark-wrapper .ql-container.ql-snow{border-color:var(--color-border);border-radius:0 0 var(--radius-md) var(--radius-md);min-height:180px;color:var(--color-text-primary);background-color:#0f172a66;font-family:Inter,sans-serif;font-size:.875rem}.quill-dark-wrapper .ql-editor.ql-blank:before{color:var(--color-text-muted);font-style:italic}.quill-dark-wrapper .ql-snow .ql-stroke{stroke:var(--color-text-secondary)}.quill-dark-wrapper .ql-snow .ql-fill,.quill-dark-wrapper .ql-snow .ql-stroke.ql-fill{fill:var(--color-text-secondary)}.quill-dark-wrapper .ql-snow .ql-picker-label{color:var(--color-text-secondary)}.quill-dark-wrapper .ql-snow .ql-picker-options{background-color:var(--color-bg-secondary);border-color:var(--color-border)}.quill-dark-wrapper .ql-snow .ql-picker-item{color:var(--color-text-secondary)}.quill-dark-wrapper .ql-snow .ql-picker-item:hover{color:var(--color-text-primary)}.quill-dark-wrapper .ql-snow button:hover .ql-stroke,.quill-dark-wrapper .ql-snow button.ql-active .ql-stroke{stroke:var(--color-accent)}.quill-dark-wrapper .ql-snow button:hover .ql-fill,.quill-dark-wrapper .ql-snow button.ql-active .ql-fill{fill:var(--color-accent)}.terms-content-render{overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap}.terms-content-render h1{color:#0f172a;margin:1rem 0 .5rem;font-size:1.25rem;font-weight:700}.terms-content-render h2{color:#0f172a;margin:1rem 0 .5rem;font-size:1.1rem;font-weight:600}.terms-content-render h3{color:#1e293b;margin:.75rem 0 .375rem;font-size:1rem;font-weight:600}.terms-content-render p{color:#334155;margin:.5rem 0}.terms-content-render ul,.terms-content-render ol{color:#334155;margin:.5rem 0;padding-left:1.5rem}.terms-content-render li{margin-bottom:.25rem}.terms-content-render strong{color:#0f172a;font-weight:600}.terms-content-render em{font-style:italic}@media (width<=768px){.p-6{padding:1rem}.container{padding:.875rem}.btn{min-height:44px;font-size:.8125rem}.glass-panel{border-radius:var(--radius-lg)}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:99;opacity:0;pointer-events:none;transition:opacity var(--transition-normal);background-color:#00000080;position:fixed;inset:0}.sidebar-overlay.open{opacity:1;pointer-events:auto}.mobile-sidebar{width:280px;transition:transform var(--transition-normal);z-index:100;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.mobile-sidebar.open{transform:translate(0)}.mobile-top-bar{border-bottom:1px solid var(--color-border);z-index:50;background-color:#0f172af2;justify-content:space-between;align-items:center;padding:.5rem 1rem;display:flex}.hamburger-btn{border:1px solid var(--color-border);border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.hamburger-btn:hover{border-color:var(--color-accent);background-color:#ffffff0d}.line-item-row-mobile{grid-template-columns:unset!important;flex-direction:column!important;gap:.75rem!important;display:flex!important}.line-item-row-mobile .line-item-fields{grid-template-columns:1fr 1fr auto;align-items:end;gap:.75rem;display:grid}.proposal-card-mobile{flex-direction:column!important;align-items:flex-start!important;gap:1rem!important}.proposal-card-mobile .proposal-card-actions{justify-content:space-between;align-items:center;width:100%;display:flex}.page-mobile-padding{padding:.75rem!important}.mobile-stack-header{flex-direction:column!important;align-items:flex-start!important;gap:.75rem!important}.mobile-stack-header .btn{width:100%}.mobile-single-col{grid-template-columns:1fr!important}.modal-backdrop,.modal-overlay{padding:.75rem}.modal-shell,.modal-content{width:100%!important;max-width:100%!important;max-height:min(92vh,100dvh - .75rem)!important;padding:1rem!important}.modal-close-btn{top:.8rem;right:.8rem}.modal-actions{flex-wrap:wrap}.modal-actions>.btn{flex:100%}.icon-chip-btn,.icon-ghost-btn,.btn-icon{min-width:44px;min-height:44px}.btn-sm,.btn-xs{min-height:44px}.projects-page{padding:.75rem!important}.dashboard-page-shell{padding:.75rem}.proposal-response-page{padding:1rem .75rem}.proposal-response-header{padding:1rem}.proposal-response-card,.proposal-response-card-summary{padding:.9rem 1rem}.projects-header{gap:.75rem!important}.projects-summary-grid{gap:.5rem!important}.projects-status-chips{margin-left:0;margin-right:0;padding-left:0;padding-right:0}.projects-toolbar-row{grid-template-columns:1fr;align-items:stretch;gap:.6rem;display:grid}.projects-search-wrap,.projects-sort-wrap,.projects-sort-select{width:100%}.projects-sort-wrap{gap:.5rem}.projects-counter-caption{white-space:normal;margin-left:0;line-height:1.35}.projects-card{align-items:stretch!important;gap:.75rem!important}.projects-card-side{flex-wrap:wrap;justify-content:space-between;align-items:center;width:100%;min-width:0}.projects-card-financials{min-width:0;text-align:left!important}}.sidebar-shell{flex-direction:column;height:100%;display:flex}.sidebar-switcher-trigger{-webkit-backdrop-filter:blur(8px)}.sidebar-nav-item{position:relative}.sidebar-nav-item:before{content:"";background:var(--color-accent);opacity:0;width:3px;height:0;transition:all var(--transition-fast);border-radius:999px;position:absolute;top:50%;left:.42rem;transform:translateY(-50%)}.sidebar-nav-item.is-active:before{opacity:1;height:60%}.sidebar--executive .sidebar-nav-item{background-clip:padding-box;border:1px solid #ffffff08!important}.sidebar--executive .sidebar-nav-item:hover{border-color:#94a3b838!important}.sidebar--executive .sidebar-nav-item.is-active{color:#dbeafe!important;background:linear-gradient(90deg,#3b82f62e 0%,#3b82f60f 100%)!important;border-color:#3b82f673!important}.sidebar--executive .sidebar-switcher-trigger{background:linear-gradient(#ffffff0f 0%,#ffffff05 100%)!important;border-color:#94a3b847!important}@media (width>=769px){.mobile-only{display:none!important}}@media (width<=768px){.desktop-only{display:none!important}}@supports (padding-bottom:env(safe-area-inset-bottom)){.safe-area-bottom{padding-bottom:calc(1rem + env(safe-area-inset-bottom))}}.page-container{max-width:1400px;margin:0 auto;padding:1.5rem}.dashboard-page-shell{width:100%;max-width:1200px;margin:0 auto;padding:2rem}.dashboard-page-shell--narrow{max-width:800px}.dashboard-page-shell--medium{max-width:900px}.dashboard-page-header{margin-bottom:1.5rem}.dashboard-page-header h2{margin:0;font-size:1.5rem}.dashboard-page-header p{color:var(--color-text-muted);margin:0}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#0009;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:min(720px,100vw - 2rem);max-height:min(90vh,100dvh - 1rem);padding:1.75rem;overflow-y:auto}.btn-sm{min-height:unset;padding:.375rem .75rem;font-size:.8rem}.btn-icon{border-radius:var(--radius-md);border:1px solid var(--color-border);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover{color:var(--color-text-primary);border-color:var(--color-text-muted);background:#ffffff0f}.btn-icon--active{color:var(--color-accent);background:#3b82f626;border-color:#3b82f666}.form-group{flex-direction:column;gap:.35rem;display:flex}.form-label{color:var(--color-text-secondary);align-items:center;font-size:.8rem;font-weight:500;display:flex}.form-input{border:1px solid var(--color-border);color:var(--color-text-primary);border-radius:var(--radius-md);transition:all var(--transition-fast);background-color:#0f172a99;width:100%;padding:.5rem .75rem;font-family:inherit;font-size:.85rem}.form-input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 2px #3b82f640}.proposal-response-page{background:linear-gradient(#0a1224fa,#060c18);height:100dvh;padding:2rem 1rem;overflow:hidden auto}.proposal-response-shell{gap:1rem;width:min(860px,100%);margin:0 auto;display:grid}.proposal-response-header{padding:1.25rem 1.5rem}.proposal-response-title{margin:0;font-size:1.5rem}.proposal-response-subtitle{color:var(--color-text-muted);margin:.4rem 0 0}.proposal-response-loading{justify-content:center;align-items:center;gap:.5rem;padding:2rem;display:flex}.proposal-response-card{padding:1rem 1.2rem}.proposal-response-card-summary{gap:.7rem;padding:1.2rem 1.4rem;display:grid}.proposal-response-summary-head{flex-wrap:wrap;justify-content:space-between;gap:.75rem;display:flex}.proposal-response-eyebrow{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.8rem}.proposal-response-proposal-id{margin:.2rem 0 0;font-size:1.1rem}.proposal-response-total-wrap{text-align:right}.proposal-response-total-value{font-size:1.35rem;font-weight:800}.proposal-response-customer-meta,.proposal-response-muted{color:var(--color-text-muted);font-size:.9rem}.proposal-response-section-title{margin:0;font-size:1rem}.proposal-response-section-title-no-margin{margin:0}.proposal-response-list{gap:.55rem;display:grid}.proposal-response-line-item-row{grid-template-columns:1fr auto auto;align-items:baseline;gap:.6rem;display:grid}.proposal-response-line-item-description{overflow-wrap:anywhere;min-width:0}.proposal-response-photos-card{gap:.75rem;display:grid}.proposal-response-photos-description{color:var(--color-text-muted);margin:0;font-size:.88rem}.proposal-response-photos-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.65rem;display:grid}.proposal-response-photo-card{border-radius:var(--radius-md);background-color:#0f172a59;overflow:hidden}.proposal-response-photo-thumb{object-fit:cover;cursor:pointer;width:100%;height:140px;display:block}.proposal-response-photo-caption{color:var(--color-text-muted);margin:0;padding:.45rem .55rem;font-size:.78rem}.proposal-response-alert{align-items:center;gap:.55rem;padding:1.2rem;display:flex}.proposal-response-alert-danger{border:1px solid var(--color-danger-border);color:var(--color-danger)}.proposal-response-alert-success{border:1px solid var(--color-success-border);color:var(--color-success)}.proposal-response-actions-card{gap:.8rem;display:grid}.proposal-response-input-group{gap:.45rem;display:grid}.proposal-response-label{color:var(--color-text-secondary);font-size:.85rem}.proposal-response-input{border:1px solid var(--color-border);background-color:var(--color-bg-secondary);width:100%;color:var(--color-text-primary);border-radius:var(--radius-md);padding:.65rem .75rem}.proposal-response-textarea{resize:vertical}.proposal-response-actions-row{flex-wrap:wrap;gap:.6rem;display:flex}.proposal-response-help-text{color:var(--color-text-muted);margin:0;font-size:.82rem}.proposal-response-error{color:var(--color-danger);margin:0;font-size:.86rem}.proposal-response-confirm-modal{width:100%;max-width:560px;padding:1.25rem}.proposal-response-modal-title{margin:0 0 .45rem}.proposal-response-modal-copy{color:var(--color-text-secondary);margin:0}.proposal-response-quote-box{border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);white-space:pre-wrap;overflow-wrap:anywhere;background:#0f172a6b;margin:.9rem 0;padding:.75rem}.proposal-response-lightbox{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:200;background-color:#020617db;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.proposal-response-lightbox-close,.proposal-response-lightbox-nav{color:#fff;cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;display:flex;position:absolute}.proposal-response-lightbox-close{background-color:#00000080;width:2rem;height:2rem;top:1rem;right:1rem}.proposal-response-lightbox-nav{background-color:#00000073;width:2.4rem;height:2.4rem;top:50%;transform:translateY(-50%)}.proposal-response-lightbox-nav-prev{left:1rem}.proposal-response-lightbox-nav-next{right:1rem}.proposal-response-lightbox-content{max-width:min(92vw,980px);max-height:88vh}.proposal-response-lightbox-image{object-fit:contain;border-radius:var(--radius-lg);max-width:100%;max-height:82vh;display:block}.proposal-response-lightbox-caption{color:#cbd5e1;text-align:center;margin:.55rem 0 0;font-size:.9rem}.proposal-response-lightbox-counter{color:#94a3b8;text-align:center;margin:.35rem 0 0;font-size:.78rem}.schedule-toolbar{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:var(--glass-border);border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.schedule-calendar-wrapper{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.5rem;overflow:hidden}.schedule-calendar-wrapper .rbc-calendar{color:var(--color-text-primary);font-family:Inter,sans-serif}.schedule-calendar-wrapper .rbc-header{color:var(--color-text-secondary);background:#1e293b99;border-color:#ffffff14;padding:.5rem .25rem;font-size:.78rem;font-weight:500}.schedule-calendar-wrapper .rbc-header+.rbc-header{border-left-color:#ffffff1a}.schedule-calendar-wrapper .rbc-time-gutter .rbc-timeslot-group{border-color:#ffffff0f}.schedule-calendar-wrapper .rbc-label{color:var(--color-text-muted);font-size:.72rem}.schedule-calendar-wrapper .rbc-day-bg,.schedule-calendar-wrapper .rbc-time-content,.schedule-calendar-wrapper .rbc-timeslot-group{border-color:#ffffff0f}.font-headline{font-family:Manrope,sans-serif}.font-body{font-family:Inter,sans-serif}.dashboard-layout{background-color:var(--color-surface);height:100dvh;color:var(--color-on-surface);font-family:Inter,system-ui,-apple-system,sans-serif;display:flex;overflow:hidden}.dashboard-sidebar{z-index:50;-webkit-backdrop-filter:blur(24px);width:16rem;height:100vh;transition:transform var(--transition-normal);background-color:#060e20cc;flex-direction:column;padding:2rem 1rem;display:flex;position:fixed;top:0;left:0;box-shadow:20px 0 40px #0000004d}.dashboard-main{flex-direction:column;flex:1;width:calc(100% - 16rem);min-width:0;min-height:100vh;margin-left:16rem;display:flex;position:relative}.dashboard-content-area{width:100%;max-width:80rem;margin:0 auto;padding:2rem 2rem 5rem;overflow-x:hidden}.sidebar-logo-text{letter-spacing:-.05em;color:var(--color-primary);font-family:Manrope,sans-serif;font-size:1.5rem;font-weight:900}.sidebar-logo-sub{text-transform:uppercase;letter-spacing:.2em;color:var(--color-on-surface-variant);opacity:.6;margin-top:.25rem;font-family:Inter,sans-serif;font-size:.625rem}.sidebar-nav-group{flex-direction:column;gap:.25rem;margin-bottom:1.5rem;display:flex}.sidebar-nav-link{border-radius:var(--radius-md);color:var(--color-on-surface);opacity:.6;transition:all var(--transition-fast);cursor:pointer;text-align:left;background:0 0;border:none;border-right:2px solid #0000;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;font-family:Manrope,sans-serif;font-size:.875rem;font-weight:600;text-decoration:none;display:flex}.sidebar-nav-link:hover{opacity:1;background-color:#0b1733}.sidebar-nav-link.active{color:var(--color-primary);opacity:1;border-right-color:var(--color-primary);background:linear-gradient(90deg,#75b0ff1a 0%,#0000 100%)}.sidebar-nav-heading{text-transform:uppercase;letter-spacing:.1em;color:var(--color-on-surface-variant);margin-bottom:.75rem;padding:0 1rem;font-family:Inter,sans-serif;font-size:.6875rem}.btn-new-project{background:linear-gradient(90deg, var(--color-primary), var(--color-primary-fixed-dim));width:100%;color:var(--color-on-primary);border-radius:var(--radius-md);cursor:pointer;transition:transform var(--transition-fast);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-size:.875rem;font-weight:700;display:flex;box-shadow:0 4px 14px #75b0ff33}.btn-new-project:active{transform:scale(.95)}.sidebar-profile-chip{background-color:var(--color-surface-container-high);color:var(--color-on-surface);border-radius:var(--radius-md);cursor:pointer;text-align:left;border:1px solid #40485d33;align-items:center;gap:.75rem;width:100%;margin-bottom:1rem;padding:.45rem .65rem;display:flex}.sidebar-profile-chip:hover{background-color:#ffffff0f}.sidebar-profile-avatar{background-color:var(--color-primary);width:2rem;height:2rem;color:var(--color-on-primary);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.sidebar-profile-name{color:var(--color-on-surface);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.8rem;font-weight:600;overflow:hidden}.sidebar-profile-meta{color:var(--color-text-muted);margin-top:.1rem;font-size:.68rem}.mobile-menu-trigger{border:1px solid var(--color-outline-variant);color:var(--color-on-surface);border-radius:var(--radius-md);background:#ffffff0f;align-items:center;gap:.45rem;margin-bottom:.75rem;padding:.5rem .7rem;font-size:.78rem;font-weight:600;display:inline-flex}@media (width<=768px){.dashboard-sidebar{transform:translate(-100%)}.dashboard-sidebar.open{transform:translate(0)}.dashboard-main{width:100%;max-width:100%;margin-left:0}.dashboard-content-area{padding-top:1rem;padding-left:.75rem;padding-right:.75rem}}@media (width<=400px){.sidebar-profile-meta{display:none}}.schedule-calendar-wrapper .rbc-timeslot-group .rbc-time-slot{border-top-color:#ffffff08}.schedule-calendar-wrapper .rbc-day-bg+.rbc-day-bg{border-left-color:#ffffff1a}.schedule-calendar-wrapper .rbc-today{background-color:#3b82f60f}.schedule-calendar-wrapper .rbc-off-range-bg{background-color:#0f172a66}.schedule-calendar-wrapper .rbc-off-range{color:var(--color-text-muted);opacity:.5}.schedule-calendar-wrapper .rbc-slot-selection{border-radius:var(--radius-sm);background:#3b82f633}.schedule-calendar-wrapper .rbc-date-cell{color:var(--color-text-secondary);padding:.25rem .5rem;font-size:.8rem}.schedule-calendar-wrapper .rbc-date-cell.rbc-now{color:var(--color-accent);font-weight:600}.schedule-calendar-wrapper .rbc-show-more{color:var(--color-accent);font-size:.72rem;font-weight:500}.schedule-calendar-wrapper .rbc-agenda-view table{border-color:var(--color-border);border-collapse:separate;border-spacing:0}.schedule-calendar-wrapper .rbc-agenda-view table thead th{color:var(--color-text-secondary);border-color:var(--color-border);text-transform:uppercase;letter-spacing:.04em;background:#1e293b99;padding:.6rem .75rem;font-size:.75rem;font-weight:600}.schedule-calendar-wrapper .rbc-agenda-view table tbody>tr{background:0 0!important;border:none!important}.schedule-calendar-wrapper .rbc-agenda-view table tbody>tr:hover{background:#ffffff08!important}.schedule-calendar-wrapper .rbc-agenda-view table tbody td{border-color:var(--color-border);color:var(--color-text-primary);vertical-align:middle;padding:.55rem .75rem;font-size:.82rem;background:0 0!important}.schedule-calendar-wrapper .rbc-agenda-view table tbody td.rbc-agenda-date-cell{color:var(--color-text-secondary);white-space:nowrap;border-right:1px solid var(--color-border);font-size:.8rem;font-weight:600}.schedule-calendar-wrapper .rbc-agenda-view table tbody td.rbc-agenda-time-cell{color:var(--color-text-muted);white-space:nowrap;border-right:1px solid var(--color-border);font-size:.78rem}.schedule-calendar-wrapper .rbc-agenda-view table tbody td.rbc-agenda-event-cell{padding-left:.75rem}.schedule-calendar-wrapper .rbc-agenda-view .rbc-agenda-event-cell .rbc-event{border-radius:0;padding:0;font-weight:500;color:var(--color-text-primary)!important;background:0 0!important;border:none!important}.schedule-calendar-wrapper .rbc-agenda-view table tbody>tr+tr{border-top:1px solid #ffffff0a}.schedule-calendar-wrapper .rbc-agenda-view .rbc-agenda-empty{color:var(--color-text-muted);text-align:center;padding:2rem;font-size:.85rem}.schedule-calendar-wrapper .rbc-row-resource{border-color:var(--color-border)}.schedule-calendar-wrapper .rbc-current-time-indicator{background-color:var(--color-accent);height:2px}.schedule-calendar-wrapper .rbc-event{border:none;border-radius:6px}.schedule-calendar-wrapper .rbc-event:focus{outline:2px solid var(--color-accent);outline-offset:1px}.schedule-calendar-wrapper .rbc-event-label{opacity:.8;font-size:.7rem}.schedule-calendar-wrapper .rbc-month-view,.schedule-calendar-wrapper .rbc-time-view{border-color:#ffffff14}.schedule-calendar-wrapper .rbc-month-row+.rbc-month-row{border-top-color:#ffffff0f}.schedule-calendar-wrapper .rbc-time-header-content{border-left-color:#ffffff1a}@media (width<=768px){.schedule-toolbar{flex-direction:column;align-items:stretch}.schedule-toolbar>div{justify-content:center}.schedule-calendar-wrapper .rbc-header{padding:.35rem .15rem;font-size:.7rem}.schedule-calendar-wrapper .rbc-event{padding:4px 6px;font-size:.75rem}.schedule-calendar-wrapper .rbc-event-label{display:none}.schedule-page-container{padding:1rem .75rem}.schedule-modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0!important;width:100%!important;max-width:100%!important;max-height:95vh!important}}.schedule-page-container{width:100%;max-width:100%}@media print{*{color:#111!important;box-shadow:none!important;text-shadow:none!important;background:#fff!important;border-color:#0000!important;outline:none!important}aside,.sidebar-shell,.mobile-header,.mobile-sidebar,.sidebar-overlay,.schedule-toolbar,.mobile-top-bar,.modal-overlay,nav,button,.btn,.btn-icon{flex:0 0 0!important;width:0!important;min-width:0!important;max-width:0!important;height:0!important;margin:0!important;padding:0!important;display:none!important;overflow:hidden!important}.schedule-page-container>div:first-child{display:none!important}body,html,#root{margin:0!important;padding:0!important}.app-container{margin:0!important;padding:0!important;display:block!important}.main-content,.page-container,.schedule-page-container{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}.rbc-calendar,.rbc-agenda-view,.rbc-agenda-view table,.rbc-agenda-view table thead,.rbc-agenda-view table tbody,.rbc-agenda-view table tr,.rbc-agenda-view table th,.rbc-agenda-view table td{border:none!important;outline:none!important}.rbc-agenda-view table{border-collapse:collapse!important;width:100%!important}.rbc-agenda-view table thead th{text-align:left!important;border-bottom:2px solid #333!important;padding:8px 12px!important;font-size:11pt!important;font-weight:700!important}.rbc-agenda-view table tbody tr{border-bottom:1px solid #ccc!important}.rbc-agenda-view table tbody td{vertical-align:top!important;padding:8px 12px!important;font-size:10pt!important}.rbc-agenda-date-cell{font-weight:600!important}.rbc-agenda-time-cell{color:#444!important}.rbc-event{padding:0!important}.schedule-page-container:before{content:"Schedule — Printed Agenda";color:#111!important;border-bottom:2px solid #111!important;margin-bottom:16px!important;padding:0 0 8px!important;font-size:16pt!important;font-weight:700!important;display:block!important}@page{margin:.75in;size:auto}}
