@import"https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&family=Roboto+Mono:wght@400;500&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#111;--bg2:#1a1a1a;--bg3:#242424;--border:#2e2e2e;--border2:#3a3a3a;--text:#f0efea;--text2:#999;--text3:#555;--gold:#b8963e;--gold-dim:#8f7230;--green:#3a7d44;--green-light:#4caf5f;--red:#b53a3a;--red-light:#e05555;--radius:10px;--radius-sm:6px;--font:"Roboto", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"Roboto Mono", monospace;--shadow:0 1px 3px #0006;--fs-h1:30px;--lh-h1:36px;--fs-h2:24px;--lh-h2:30px;--fs-h3:20px;--lh-h3:26px;--fs-label:14px;--lh-label:18px;--ls-label:.01em;--fs-micro:13px;--lh-micro:16px;--ls-micro:.02em;--fw-regular:400;--fw-medium:500;--fw-bold:700}html,body,#root{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:18px;line-height:1.5}body:has(.app-shell){overflow:hidden}.loading{color:var(--text2);text-align:center;padding:2rem}.loading.full{justify-content:center;align-items:center;height:100vh;display:flex}.login-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.login-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:380px;padding:2.5rem 2rem}.login-logo{align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.login-logo-img{width:180px;height:auto;margin:0 auto .5rem;display:block}.header-logo-img{width:auto;height:32px}.login-logo{border-radius:var(--radius-sm);text-align:center;background:#fff;margin-bottom:2rem;padding:.75rem 1rem}.logo-mark{background:var(--gold);color:#111;width:48px;height:48px;font-family:var(--font-mono);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;font-size:24px;font-weight:600;display:flex}.logo-sm{background:var(--gold);color:#111;width:32px;height:32px;font-family:var(--font-mono);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;font-weight:600;display:flex}.login-brand{flex-direction:column;display:flex}.brand-name{letter-spacing:-.01em;font-size:21px;font-weight:600}.brand-sub{color:var(--text2);letter-spacing:.02em;font-size:14px}.login-form{flex-direction:column;gap:1.1rem;display:flex}.field{flex-direction:column;gap:.4rem;display:flex}label{color:var(--text2);letter-spacing:.04em;text-transform:uppercase;font-size:15px;font-weight:500}input,select,textarea{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font);-webkit-appearance:none;outline:none;width:100%;padding:.65rem .9rem;font-size:17px;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--gold)}input::placeholder{color:var(--text3)}select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:2rem}.btn-primary{background:var(--gold);color:#111;border-radius:var(--radius-sm);font-family:var(--font);cursor:pointer;white-space:nowrap;border:none;padding:.7rem 1.2rem;font-size:16px;font-weight:600;transition:opacity .15s,transform .1s}.btn-primary:hover{opacity:.9}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{border:1px solid var(--border2);color:var(--text2);border-radius:var(--radius-sm);font-family:var(--font);cursor:pointer;white-space:nowrap;background:0 0;padding:.5rem .9rem;font-size:16px;transition:border-color .15s,color .15s}.btn-ghost:hover{border-color:var(--text2);color:var(--text)}.btn-danger{background:var(--red);color:#fff;border-radius:var(--radius-sm);font-family:var(--font);cursor:pointer;border:none;padding:.5rem .9rem;font-size:16px;font-weight:500;transition:opacity .15s}.btn-danger:hover{opacity:.85}.btn-sm{padding:.35rem .7rem;font-size:15px}.btn-back{color:var(--gold);font-family:var(--font);cursor:pointer;background:0 0;border:none;padding:0;font-size:16px}.btn-add{background:var(--bg3);border:1px dashed var(--border2);width:100%;color:var(--gold);font-family:var(--font);border-radius:var(--radius);cursor:pointer;text-align:center;padding:.85rem;font-size:16px;font-weight:500;transition:border-color .15s,background .15s;display:block}.btn-add:hover{border-color:var(--gold-dim);background:var(--bg2)}.btn-signout{font-size:15px}.form-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.page{flex-direction:column;max-width:680px;min-height:100vh;margin:0 auto;display:flex}.page-header{background:var(--bg);border-bottom:1px solid var(--border);z-index:10;padding:1rem 1.2rem .8rem;position:sticky;top:0}.header-top{justify-content:space-between;align-items:center;gap:1rem;display:flex}.header-brand{align-items:center;gap:.6rem;display:flex}.header-title{font-size:var(--fs-h1);line-height:var(--lh-h1);font-weight:var(--fw-bold)}.header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.user-greeting{color:var(--text2);margin-top:.4rem;font-size:15px}.page-main{flex-direction:column;flex:1;gap:0;padding:1rem 1.2rem 5rem;display:flex}.job-list{flex-direction:column;gap:0;margin-bottom:1.2rem;list-style:none;display:flex}.job-item{border-bottom:1px solid var(--border);cursor:pointer;border-radius:0;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;transition:background .1s;display:flex}.job-item:first-child{border-top:1px solid var(--border)}.job-item:hover{background:var(--bg2);margin:0 -1.2rem;padding-left:1.2rem;padding-right:1.2rem}.job-closed{opacity:.55}.job-info{align-items:center;gap:.6rem;min-width:0;display:flex}.job-name{white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:500;overflow:hidden}.job-meta{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.chevron{color:var(--text3);font-size:23px;line-height:1}.badge-pending{background:var(--gold);color:#111;white-space:nowrap;border-radius:99px;padding:.2rem .55rem;font-size:14px;font-weight:600}.status-tag{text-transform:uppercase;letter-spacing:.04em;border-radius:99px;padding:.2rem .55rem;font-size:14px;font-weight:500}.status-tag.closed{background:var(--bg3);color:var(--text3);border:1px solid var(--border)}.role-badge{color:var(--gold);text-transform:uppercase;letter-spacing:.06em;font-size:14px;font-weight:500}.job-title-row{flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:.5rem;display:flex}.job-title{letter-spacing:-.01em;font-size:var(--fs-h1);line-height:var(--lh-h1);font-weight:var(--fw-bold)}.job-title.editable{cursor:pointer}.edit-hint{color:var(--text3);font-size:16px}.inline-edit{flex-wrap:wrap;flex:1;align-items:center;gap:.5rem;display:flex}.inline-edit input{flex:1;min-width:200px}.item-list{flex-direction:column;margin-bottom:1.2rem;list-style:none;display:flex}.item{border-bottom:1px solid var(--border);transition:opacity .2s}.item:first-child{border-top:1px solid var(--border)}.item-purchased{opacity:.4}.item-row{align-items:flex-start;gap:.75rem;padding:.85rem 0;display:flex}.check-btn{border:1.5px solid var(--border2);width:26px;height:26px;color:var(--green-light);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:15px;transition:border-color .15s,background .15s;display:flex}.check-btn.checked{background:var(--green);border-color:var(--green)}.check-btn:hover{border-color:var(--green-light)}.item-body{cursor:pointer;flex:1;min-width:0}.item-name{margin-bottom:.2rem;font-size:17px;font-weight:500}.item-details{color:var(--text2);flex-wrap:wrap;align-items:center;gap:.3rem;font-size:14px;display:flex}.dot{color:var(--text3)}.item-notes{color:var(--gold-dim);font-style:italic}.item-edit-form{flex-direction:column;gap:.5rem;padding:.85rem 0;display:flex}.qty-input{width:120px}.item-requester{color:var(--text2);font-size:15px}.add-section{margin-top:.5rem}.new-job-form,.new-item-form{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.6rem;padding:1rem;display:flex}.empty-state{text-align:center;color:var(--text2);padding:2.5rem 1rem;font-size:16px}.settings-section{margin-bottom:2.5rem}.settings-section h3{text-transform:uppercase;letter-spacing:.08em;color:var(--text2);margin-bottom:1rem;font-size:14px;font-weight:600}.section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.section-header h3{margin-bottom:0}.card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1rem;padding:1rem}.user-list{flex-direction:column;gap:0;list-style:none;display:flex}.user-item{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;display:flex}.user-item:first-child{border-top:1px solid var(--border)}.user-inactive{opacity:.45}.user-info{flex-direction:column;gap:.15rem;min-width:0;display:flex}.user-name{font-size:17px;font-weight:500}.user-email{color:var(--text2);font-size:14px}.user-controls{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.role-select{width:auto;padding:.3rem 1.8rem .3rem .6rem;font-size:15px}.invite-form{margin-bottom:1rem}.info-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.75rem 0;font-size:16px;display:flex}.info-row:first-of-type{border-top:1px solid var(--border)}.info-label{color:var(--text2)}.error-msg{border:1px solid var(--red);color:var(--red-light);border-radius:var(--radius-sm);background:#b53a3a26;padding:.6rem .9rem;font-size:16px}.success-msg{border:1px solid var(--green);color:var(--green-light);border-radius:var(--radius-sm);background:#3a7d4426;margin-bottom:1rem;padding:.6rem .9rem;font-size:16px}@media (width<=480px){.page-header{padding:.9rem 1rem .7rem}.page-main{padding:.75rem 1rem 5rem}.header-actions{gap:.35rem}.btn-ghost{padding:.45rem .65rem;font-size:15px}}.todo-filters{flex-wrap:wrap;gap:.5rem;margin-top:.6rem;display:flex}.filter-select{width:auto;padding:.35rem 1.8rem .35rem .7rem;font-size:15px}.phase-group{margin-bottom:.5rem}.phase-header{text-transform:uppercase;letter-spacing:.08em;color:var(--gold);border-top:1px solid var(--border);padding:.9rem 0 .4rem;font-size:14px;font-weight:600}.phase-group:first-child .phase-header{border-top:none;padding-top:.2rem}.todo-list{list-style:none}.todo-item{border-bottom:1px solid var(--border);transition:opacity .2s}.todo-complete{opacity:.4}.todo-row{align-items:flex-start;gap:.75rem;padding:.75rem 0;display:flex}.todo-body{cursor:pointer;flex:1;min-width:0}.todo-title-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.2rem;display:flex}.todo-title{font-size:17px;font-weight:500}.todo-meta{color:var(--text2);flex-wrap:wrap;align-items:center;gap:.3rem;font-size:14px;display:flex}.tag-client{text-transform:uppercase;letter-spacing:.05em;color:var(--gold);white-space:nowrap;background:#c9a84c26;border:1px solid #c9a84c4d;border-radius:99px;padding:.15rem .45rem;font-size:13px;font-weight:600}.badge-urgent{background:var(--red);color:#fff;white-space:nowrap;border-radius:99px;padding:.2rem .55rem;font-size:14px;font-weight:600}.date-overdue{color:var(--red-light)}.date-soon{color:#e8a020}.todo-edit-form{flex-direction:column;gap:.6rem;padding:.75rem 0;display:flex}.assignee-grid{flex-wrap:wrap;gap:.4rem;display:flex}.assignee-btn{background:var(--bg3);border:1px solid var(--border2);color:var(--text2);font-family:var(--font);cursor:pointer;border-radius:99px;padding:.3rem .75rem;font-size:15px;transition:all .15s}.assignee-btn.selected{border-color:var(--gold);color:var(--gold);background:#b9963e26}.form-row-2{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.template-layout{grid-template-columns:220px 1fr;align-items:start;gap:1.5rem;display:grid}@media (width<=600px){.template-layout{grid-template-columns:1fr}}.template-sidebar{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem}.template-list{margin-top:.5rem;list-style:none}.template-item{border-radius:var(--radius-sm);cursor:pointer;justify-content:space-between;align-items:center;padding:.6rem .5rem;font-size:16px;transition:background .1s;display:flex}.template-item:hover{background:var(--bg3)}.template-item.selected{color:var(--gold);background:#b9963e1f}.template-detail{min-width:0}.template-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0;display:flex}.section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text2);font-size:14px;font-weight:600}.filter-pill{background:var(--bg3);border:1px solid var(--border2);color:var(--text2);font-family:var(--font);cursor:pointer;border-radius:99px;padding:.3rem .85rem;font-size:15px;transition:all .15s}.filter-pill.active{border-color:var(--gold);color:var(--gold);background:#b9963e26}.scorecard-actions{margin-bottom:1.2rem}.scorecard-list{list-style:none}.scorecard-item{border-bottom:1px solid var(--border);cursor:pointer;align-items:center;gap:1rem;padding:1rem 0;display:flex}.scorecard-item:first-child{border-top:1px solid var(--border)}.scorecard-employee{flex-direction:column;flex:1;gap:.2rem;display:flex}.scorecard-stats{flex-direction:column;align-items:flex-end;gap:.15rem;display:flex}.score-pct{font-size:20px;font-weight:600}.score-big{font-size:34px;font-weight:700;line-height:1}.score-detail{color:var(--text2);font-size:14px}.score-green{color:#4caf5f}.score-yellow{color:#e8a020}.score-red{color:var(--red-light)}.score-summary-bar{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:1rem;margin-bottom:1.2rem;padding:1rem;display:flex}.score-summary-detail{color:var(--text2);align-items:center;gap:.4rem;font-size:16px;display:flex}.score-pill{background:var(--bg3);border-radius:99px;padding:.25rem .6rem;font-size:15px;font-weight:600}.score-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.score-dot-green{background:#4caf5f}.score-dot-yellow{background:#e8a020}.score-dot-red{background:var(--red-light)}.score-legend{color:var(--text2);align-items:center;gap:.4rem;margin-bottom:.75rem;font-size:15px;display:flex}.scorecard-week-list{list-style:none}.scorecard-week{border-bottom:1px solid var(--border)}.scorecard-week:first-child{border-top:1px solid var(--border)}.scorecard-week-header{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;display:flex}.scorecard-week-info{flex-direction:column;gap:.15rem;display:flex}.scorecard-week-date{font-size:17px;font-weight:500}.scorecard-week-right{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.scorecard-week-detail{padding-bottom:1rem}.category-list{margin-bottom:.75rem;list-style:none}.category-row{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.category-row:last-child{border-bottom:none}.category-info{flex-direction:column;flex:1;gap:.1rem;display:flex}.category-name{font-size:16px;font-weight:500}.category-label{color:var(--text2);font-size:14px}.category-desc{color:var(--text2);font-size:14px;display:block}.category-score{color:var(--text2);flex-shrink:0;font-size:15px}.comment-block{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-sm);margin-top:.75rem;padding:.75rem}.comment-employee{background:#b9963e0d;border-color:#b9963e4d}.comment-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text2);margin-bottom:.35rem;font-size:14px;font-weight:600}.comment-text{font-size:16px;line-height:1.5}.comment-input-block{margin-top:.75rem}.comment-input-block textarea{resize:vertical;width:100%;min-height:70px;margin-bottom:.5rem}.scorecard-form{flex-direction:column;gap:1.2rem;display:flex}.category-score-list{flex-direction:column;gap:0;list-style:none;display:flex}.category-score-item{border-bottom:1px solid var(--border);padding:.85rem 0}.category-score-item:first-child{border-top:1px solid var(--border)}.category-score-header{margin-bottom:.6rem}.score-buttons{flex-wrap:wrap;gap:.4rem;display:flex}.score-btn{border-radius:var(--radius-sm);min-width:80px;font-family:var(--font);cursor:pointer;text-align:center;opacity:.5;border:1.5px solid #0000;flex:1;padding:.45rem .5rem;font-size:14px;font-weight:500;transition:all .15s}.score-btn-red{color:var(--red-light);border-color:var(--red);background:#b53a3a26}.score-btn-yellow{color:#e8a020;background:#e8a02026;border-color:#e8a020}.score-btn-green{color:#4caf5f;background:#4caf5f26;border-color:#4caf5f}.score-btn.selected{opacity:1}.score-btn-red.selected{background:#b53a3a4d}.score-btn-yellow.selected{background:#e8a0204d}.score-btn-green.selected{background:#4caf5f4d}.score-running-total{color:var(--gold);padding:.5rem 0;font-size:17px;font-weight:600}textarea{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font);resize:vertical;outline:none;width:100%;padding:.65rem .9rem;font-size:17px;transition:border-color .15s}textarea:focus{border-color:var(--gold)}.log-list{list-style:none}.log-item{border-bottom:1px solid var(--border)}.log-item:first-child{border-top:1px solid var(--border)}.log-header{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;display:flex}.log-header-info{flex-direction:column;flex-shrink:0;gap:.15rem;min-width:140px;display:flex}.log-date{font-size:16px;font-weight:600}.log-meta{color:var(--text2);font-size:14px}.photo-count{color:var(--text2)}.log-header-right{flex:1;justify-content:flex-end;align-items:center;gap:.75rem;min-width:0;display:flex}.log-preview{color:var(--text2);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:15px;overflow:hidden}.log-detail{flex-direction:column;gap:1rem;padding-bottom:1.2rem;display:flex}.log-section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--gold);margin-bottom:.4rem;font-size:14px;font-weight:600}.log-section-text{white-space:pre-wrap;font-size:17px;line-height:1.6}.log-form{margin-bottom:1.2rem}.photo-preview-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:.75rem;display:grid}.photo-preview-item{flex-direction:column;gap:.3rem;display:flex;position:relative}.photo-thumb{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border);width:100%}.photo-caption-input{padding:.3rem .5rem;font-size:14px}.photo-remove-btn{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:13px;display:flex;position:absolute;top:4px;right:4px}.upload-progress{background:var(--bg3);border-radius:var(--radius-sm);color:var(--text2);padding:.5rem .75rem;font-size:15px;position:relative;overflow:hidden}.upload-bar{background:#b9963e33;height:100%;transition:width .3s;position:absolute;top:0;left:0}.log-photo-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;display:grid}.log-photo-item{flex-direction:column;gap:.3rem;display:flex}.log-photo{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border);width:100%;transition:opacity .15s}.log-photo:hover{opacity:.85}.log-photo-loading{aspect-ratio:1;background:var(--bg3);border-radius:var(--radius-sm);width:100%;color:var(--text3);justify-content:center;align-items:center;font-size:14px;display:flex}.log-photo-caption{color:var(--text2);font-size:14px}.app-with-nav{padding-bottom:70px}.bottom-nav{background:var(--bg2);border-top:1px solid var(--border);z-index:100;height:60px;padding:0 .5rem;padding-bottom:env(safe-area-inset-bottom);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{color:var(--text3);font-family:var(--font);letter-spacing:.02em;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;min-width:60px;padding:.4rem 1rem;font-size:12px;font-weight:500;transition:color .15s;display:flex}.bottom-nav-item:hover{color:var(--text2)}.bottom-nav-item.active{color:var(--gold)}.bottom-nav-item svg{flex-shrink:0}@media (width>=600px){.bottom-nav{height:56px}.bottom-nav-item{padding:.4rem 1.5rem;font-size:14px}}.checklist-section{border-top:1px solid var(--border);margin-top:.5rem;padding-top:.75rem;padding-left:2rem}.checklist-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.checklist-item{margin-bottom:.4rem}.checklist-row{display:flex;align-items:center;gap:.5rem}.checklist-title{flex:1;font-size:16px}.checklist-title.checklist-complete{text-decoration:line-through;opacity:.5}.checklist-notes-btn{background:none;border:none;color:var(--text3);font-size:14px;cursor:pointer;white-space:nowrap;padding:.2rem .4rem;border-radius:var(--radius-sm);transition:color .15s}.checklist-notes-btn:hover{color:var(--gold)}.checklist-notes-row{padding-left:2rem;margin-top:.3rem}.checklist-add-row{display:flex;gap:.5rem;align-items:center;margin-top:.5rem}.checklist-add-row input{flex:1;padding:.4rem .7rem;font-size:16px}.checklist-expand-btn{background:none;border:none;color:var(--text3);cursor:pointer;font-size:18px;padding:.25rem .4rem;flex-shrink:0;transition:color .15s}.checklist-expand-btn:hover{color:var(--gold)}.drag-handle{cursor:grab;color:var(--text3);font-size:20px;padding:0 .3rem;flex-shrink:0;-webkit-user-select:none;user-select:none;touch-action:none;line-height:1}.drag-handle:active{cursor:grabbing}.pipeline-summary{display:flex;gap:1rem;margin:.75rem 0}.pipeline-stat{display:flex;flex-direction:column;gap:.15rem}.pipeline-value{font-size:20px;font-weight:700;color:var(--gold)}.pipeline-label{font-size:13px;color:var(--text3);text-transform:uppercase;letter-spacing:.05em}.lead-list{list-style:none}.lead-item{border-bottom:1px solid var(--border);cursor:pointer}.lead-item:active{background:var(--bg2)}.lead-row{display:flex;justify-content:space-between;align-items:center;padding:.85rem 0}.lead-info{flex:1}.lead-name{font-weight:500;font-size:17px;margin-bottom:.2rem}.lead-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.status-pill{font-size:13px;font-weight:600;padding:.2rem .5rem;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.status-new{background:#64748b33;color:#94a3b8}.status-contacted{background:#3b82f626;color:#60a5fa}.status-meeting{background:#a855f726;color:#c084fc}.status-proposal{background:#eab30826;color:var(--gold)}.status-sold{background:#22c55e26;color:#4ade80}.status-lost{background:#ef444426;color:#f87171}.info-grid{display:flex;flex-direction:column;gap:.5rem}.info-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;font-size:16px}.info-label{color:var(--text3);font-size:14px;flex-shrink:0}.mb-1{margin-bottom:1rem}.proposal-totals-bar{display:flex;gap:1.5rem;margin:.5rem 0}.proposal-total-stat{display:flex;flex-direction:column;gap:.1rem}.proposal-add-bar{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.proposal-line-items{display:flex;flex-direction:column;gap:.5rem}.proposal-line-item{background:var(--bg2);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}.proposal-line-item.dragging{box-shadow:0 8px 24px #0006}.pli-row{display:flex;align-items:center;gap:.5rem;padding:.75rem;cursor:pointer}.pli-main{flex:1;min-width:0}.pli-title-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.2rem}.pli-title{font-weight:500;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pli-meta{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.pli-expanded{padding:.75rem;padding-top:0;border-top:1px solid var(--border)}.pli-totals{display:flex;gap:1rem;align-items:center;font-size:16px;margin:.5rem 0}.catalog-search{position:relative}.catalog-search input{width:100%;padding:.6rem .85rem}.catalog-results{position:absolute;top:100%;left:0;right:0;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);z-index:50;max-height:300px;overflow-y:auto;box-shadow:0 8px 24px #0000004d}.catalog-result-item{padding:.6rem .85rem;cursor:pointer;border-bottom:1px solid var(--border)}.catalog-result-item:last-child{border-bottom:none}.catalog-result-item:hover{background:var(--bg3)}.catalog-title{font-weight:500;font-size:16px}.catalog-code{font-size:14px;color:var(--text2)}.proposal-preview{max-width:680px}.catalog-mode-toggle{display:flex;gap:0;margin-bottom:.75rem;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.catalog-mode-btn{flex:1;padding:.45rem 0;font-size:15px;font-weight:500;background:none;border:none;color:var(--text2);cursor:pointer;font-family:var(--font);transition:background .15s,color .15s}.catalog-mode-btn.active{background:var(--gold);color:#111}.catalog-browse{max-height:320px;overflow-y:auto}.catalog-category{border-bottom:1px solid var(--border)}.catalog-category:last-child{border-bottom:none}.catalog-category-header{display:flex;justify-content:space-between;align-items:center;padding:.6rem .25rem;cursor:pointer;font-size:16px;font-weight:500}.catalog-category-header:hover{color:var(--gold)}.catalog-category-items{list-style:none;padding-bottom:.25rem}.catalog-browse-item{display:flex;justify-content:space-between;align-items:center;padding:.45rem .5rem;cursor:pointer;border-radius:var(--radius-sm);font-size:15px}.catalog-browse-item:hover{background:var(--bg3)}.catalog-add-btn{font-size:14px;color:var(--gold);font-weight:600;flex-shrink:0;padding-left:.5rem}.app-shell{display:flex;flex-direction:column;height:100vh;overflow:hidden}.app-body{display:flex;flex:1;overflow:hidden}.app-main{flex:1;overflow-y:auto;min-width:0}.app-main .page{max-width:100%;min-height:auto}.top-nav{display:flex;align-items:center;gap:.25rem;background:var(--bg2);border-bottom:1px solid var(--border);padding:0 1rem;height:52px;flex-shrink:0;z-index:200}.top-nav-logo{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;margin-right:.5rem;flex-shrink:0}.top-nav-phases{display:flex;align-items:center;gap:.1rem;flex:1}.top-nav-phase{background:none;border:none;cursor:pointer;color:var(--text3);padding:.45rem .6rem;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;position:relative;transition:color .15s,background .15s}.top-nav-phase:hover{color:var(--text1);background:var(--bg3)}.top-nav-phase.active{color:var(--gold);background:var(--bg3)}.top-nav-phase.soon{cursor:default;opacity:.4}.top-nav-phase.soon:hover{background:none;color:var(--text3)}.soon-dot{position:absolute;top:4px;right:4px;width:5px;height:5px;background:var(--text3);border-radius:50%}.phase-tooltip{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.3rem .6rem;font-size:14px;font-weight:600;white-space:nowrap;color:var(--text1);z-index:300;pointer-events:none}.top-nav-user{display:flex;align-items:center;gap:.4rem;background:none;border:none;cursor:pointer;color:var(--text2);padding:.35rem .6rem;border-radius:var(--radius-sm);font-family:var(--font);font-size:15px;transition:color .15s,background .15s;flex-shrink:0}.top-nav-user:hover{background:var(--bg3);color:var(--text1)}.top-nav-avatar{width:26px;height:26px;border-radius:50%;background:var(--gold);color:#111;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.top-nav-username{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 600px){.top-nav-username{display:none}.top-nav-phase{padding:.4rem .45rem}}.top-nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250}.top-nav-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);min-width:180px;box-shadow:0 8px 24px #0006;z-index:300;overflow:hidden}.top-nav-dropdown-header{padding:.75rem 1rem;border-bottom:1px solid var(--border)}.top-nav-dropdown-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.65rem 1rem;background:none;border:none;color:var(--text2);cursor:pointer;font-family:var(--font);font-size:16px;text-align:left;transition:background .1s,color .1s}.top-nav-dropdown-item:hover{background:var(--bg3);color:var(--text1)}.left-nav{width:200px;flex-shrink:0;background:var(--bg2);border-right:1px solid var(--border);padding:1rem;overflow-y:auto}.left-nav-phase-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text3);padding:0 .5rem .75rem}.left-nav-list{list-style:none;display:flex;flex-direction:column;gap:.15rem}.left-nav-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.55rem .75rem;background:none;border:none;color:var(--text2);cursor:pointer;font-family:var(--font);font-size:16px;font-weight:500;text-align:left;border-radius:var(--radius-sm);transition:background .1s,color .1s}.left-nav-item:hover{background:var(--bg3);color:var(--text1)}.left-nav-item.active{background:var(--bg3);color:var(--gold)}.left-nav-item.soon{opacity:.4;cursor:default}.left-nav-item.soon:hover{background:none;color:var(--text2)}.left-nav-soon{margin-left:auto;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text3);background:var(--bg3);padding:1px 5px;border-radius:4px}@media (max-width: 768px){.left-nav{display:none}.app-main .page{max-width:680px;margin:0 auto}}.bottom-nav.mobile-only{display:none}@media (max-width: 768px){.bottom-nav.mobile-only{display:flex}.app-main{padding-bottom:70px}}.app-main .page-header{position:sticky;top:0;z-index:100}.app-main .page{padding-bottom:2rem}.page-tabs{display:flex;align-items:center;gap:1.5rem;background:var(--bg3);border-bottom:1px solid var(--border);padding:.6rem 1.2rem;margin-bottom:1rem}.page-tab{position:relative;display:inline-flex;align-items:center;gap:.4rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-.6rem;padding:.65rem .1rem;font-family:var(--font);font-size:16px;font-weight:500;color:var(--text2);cursor:pointer;transition:color .15s,border-color .15s}.page-tab:hover{color:var(--text);font-weight:700}.page-tab.active{color:var(--gold);font-weight:700;border-bottom-color:var(--gold)}.page-tab-badge{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;font-size:.6rem;font-weight:700}:root{--palette-forest-dark: #022525;--palette-forest: #4c7763;--palette-forest-light: #94aa9f;--palette-moss-dark: #3d453b;--palette-moss: #5a6257;--palette-moss-light: #7f857d;--palette-olive-dark: #433d2e;--palette-olive: #5c5545;--palette-olive-light: #7d7564;--palette-sand-dark: #ad9e86;--palette-sand: #c9bdaa;--palette-sand-light: #e3d9c8;--palette-oatmeal-dark: #c8c0b0;--palette-oatmeal: #e3ded3;--palette-oatmeal-light: #f7f5ef;--palette-terra-dark: #67452f;--palette-terra: #875f46;--palette-terra-light: #ab7d61;--palette-mushroom-dark: #74685f;--palette-mushroom: #8d8178;--palette-mushroom-light: #b2a8a0;--palette-peppercorn-dark: #1a1918;--palette-peppercorn: #2f2e2c;--palette-peppercorn-light: #545352;--palette-slate-dark: #43484d;--palette-slate: #6a6d71;--palette-slate-light: #8a8c8e;--palette-cloud-dark: #c0c9d4;--palette-cloud: #d2d8e0;--palette-cloud-light: #f0f2f6;--palette-sprout: #8cf3bd;--palette-kiwi: #9bdf86;--palette-lime: #dbf176;--palette-orange: #ffd081;--palette-tangerine: #f2a271;--palette-peach: #fbd4b2;--palette-clay: #b7b2ae;--palette-blueberry: #9ecdfa;--palette-grape: #cdccff;--palette-brick-dark: #500101;--palette-brick: #7a0202;--palette-brick-light: #980000;--palette-grapefruit: #ff5150}[data-theme=glass]{--bg: linear-gradient(135deg, #000000 0%, #000000 45%, #0a2a21 75%, #123d30 100%);--bg3: rgba(255, 255, 255, .06);--border: rgba(227, 222, 211, .14);--border2: rgba(227, 222, 211, .26);--text: #f2f7f4;--text2: rgba(242, 247, 244, .78);--text3: rgba(242, 247, 244, .6);--gold: #c8c0b0;--gold-dim: #ad9e86;--glass-btn-hover: var(--palette-oatmeal);--red: var(--palette-grapefruit);--red-light: var(--palette-grapefruit);--glass-nav-active-bg: #1f6b4a;--glass-nav-active-text: #f4f8f6;--glass-leftnav-active-bg: rgba(255, 255, 255, .12);--glass-leftnav-active-text: #f4f8f6;--glass-leftnav-active-shadow: 0 2px 10px rgba(0, 0, 0, .25);--glass-soon-text: rgba(242, 247, 244, .68);--glass-scrollbar: rgba(227, 222, 211, .22);--dashboard-won-color: var(--palette-sprout);--p1-bg: rgba(0, 0, 0, .15);--p1-blur: blur(0px);--p1-edge-color: rgba(255, 255, 255, .12);--p1-edge-inset: inset 0 1px 0px rgba(255, 255, 255, .15);--p2-bg: rgba(20, 20, 20, .3);--p2-blur: blur(5px);--p2-edge-color: rgba(255, 255, 255, .1);--p2-edge-inset: inset 0 1px 1px rgba(255, 255, 255, .18);--p3-bg: rgba(28, 28, 30, .5);--p3-blur: blur(16px);--p3-edge-color: rgba(255, 255, 255, .14);--p3-edge-inset: inset 0 1px 1px rgba(255, 255, 255, .22);--p4-bg: rgba(18, 18, 18, .82);--p4-blur: blur(40px);--p4-edge-color: rgba(255, 255, 255, .18);--p4-edge-inset: inset 0 1px 2px rgba(255, 255, 255, .25);--glass-shadow: 0 2px 8px -2px rgba(0, 0, 0, .18);--bg2: var(--p3-bg);--glass-blur: var(--p3-blur)}[data-theme=glass-light]{--bg: linear-gradient(135deg, #ffffff 0%, #f4f0e6 55%, #e3d9c8 100%);--bg3: rgba(2, 37, 37, .05);--border: rgba(2, 37, 37, .1);--border2: rgba(2, 37, 37, .18);--text: #1a1918;--text2: rgba(26, 25, 24, .72);--text3: rgba(26, 25, 24, .55);--gold: #1f6b4a;--gold-dim: #175939;--red: var(--palette-brick);--red-light: var(--palette-brick-light);--glass-on-gold: #f7f5ef;--glass-nav-active-bg: #1f6b4a;--glass-nav-active-text: #f4f8f6;--glass-leftnav-active-bg: rgba(255, 255, 255, .9);--glass-leftnav-active-text: #1a1918;--glass-leftnav-active-shadow: 0 2px 10px rgba(2, 37, 37, .12);--glass-soon-text: rgba(26, 25, 24, .65);--glass-scrollbar: rgba(2, 37, 37, .18);--dashboard-won-color: var(--palette-forest);--p1-bg: rgba(255, 255, 255, .15);--p1-blur: blur(0px);--p1-edge-color: rgba(255, 255, 255, .6);--p1-edge-inset: inset 0 1px 1px rgba(255, 255, 255, .5);--p2-bg: rgba(255, 255, 255, .35);--p2-blur: blur(6px);--p2-edge-color: rgba(255, 255, 255, .5);--p2-edge-inset: inset 0 1px 1px rgba(255, 255, 255, .6);--p3-bg: rgba(255, 255, 255, .55);--p3-blur: blur(14px);--p3-edge-color: rgba(255, 255, 255, .45);--p3-edge-inset: inset 0 1px 2px rgba(255, 255, 255, .5);--p4-bg: rgba(248, 249, 250, .88);--p4-blur: blur(35px);--p4-edge-color: rgba(255, 255, 255, .7);--p4-edge-inset: inset 0 1px 3px rgba(255, 255, 255, .6);--glass-shadow: 0 1px 4px 0 rgba(31, 38, 135, .03);--bg2: var(--p3-bg);--glass-blur: var(--p3-blur)}html[data-theme=glass-light],[data-theme=glass-light] body,[data-theme=glass-light] #root{background:radial-gradient(42vw 42vw at 80% 10%,#fff6,#fff0 68%),radial-gradient(38vw 38vw at 16% 88%,#f4f0e652,#f4f0e600 68%),url(/backgrounds/glass-light-bg.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed}html[data-theme=glass],[data-theme=glass] body,[data-theme=glass] #root{background:radial-gradient(42vw 42vw at 80% 12%,#8cf3bd3d,#8cf3bd00 68%),radial-gradient(38vw 38vw at 15% 85%,#e3ded32e,#e3ded300 68%),radial-gradient(30vw 30vw at 50% 45%,#123d3038,#123d3000 70%),url(/backgrounds/glass-dark-bg.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed}[data-theme=glass] .glass-p1,[data-theme=glass-light] .glass-p1{background:var(--p1-bg);backdrop-filter:var(--p1-blur);-webkit-backdrop-filter:var(--p1-blur);box-shadow:var(--p1-edge-inset),var(--glass-shadow)!important}[data-theme=glass] .glass-p2,[data-theme=glass-light] .glass-p2{background:var(--p2-bg);backdrop-filter:var(--p2-blur);-webkit-backdrop-filter:var(--p2-blur);box-shadow:var(--p2-edge-inset),var(--glass-shadow)!important}[data-theme=glass] .glass-p3,[data-theme=glass-light] .glass-p3{background:var(--p3-bg);backdrop-filter:var(--p3-blur);-webkit-backdrop-filter:var(--p3-blur);box-shadow:var(--p3-edge-inset),var(--glass-shadow)!important}[data-theme=glass] .glass-p4,[data-theme=glass-light] .glass-p4,[data-theme=glass] .top-nav,[data-theme=glass] .left-nav,[data-theme=glass] .bottom-nav,[data-theme=glass] .page-header,[data-theme=glass-light] .top-nav,[data-theme=glass-light] .left-nav,[data-theme=glass-light] .bottom-nav,[data-theme=glass-light] .page-header{background:var(--p4-bg);backdrop-filter:var(--p4-blur);-webkit-backdrop-filter:var(--p4-blur);box-shadow:var(--p4-edge-inset),var(--glass-shadow)!important}[data-theme=glass] .card,[data-theme=glass] .login-card,[data-theme=glass] .new-job-form,[data-theme=glass] .new-item-form,[data-theme=glass] .catalog-results,[data-theme=glass] .template-sidebar,[data-theme=glass] .comment-block,[data-theme=glass] .score-summary-bar,[data-theme=glass] .glass-card,[data-theme=glass-light] .card,[data-theme=glass-light] .login-card,[data-theme=glass-light] .new-job-form,[data-theme=glass-light] .new-item-form,[data-theme=glass-light] .catalog-results,[data-theme=glass-light] .template-sidebar,[data-theme=glass-light] .comment-block,[data-theme=glass-light] .score-summary-bar,[data-theme=glass-light] .glass-card{background:var(--p3-bg);backdrop-filter:var(--p3-blur);-webkit-backdrop-filter:var(--p3-blur);box-shadow:var(--p3-edge-inset),var(--glass-shadow)!important}[data-theme=glass] .phase-tooltip,[data-theme=glass-light] .phase-tooltip{background:var(--p2-bg);backdrop-filter:var(--p2-blur);-webkit-backdrop-filter:var(--p2-blur);box-shadow:var(--p2-edge-inset),var(--glass-shadow)!important}[data-theme=glass] .top-nav-dropdown{background:#74685f;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none!important}[data-theme=glass] .top-nav-dropdown-item,[data-theme=glass] .top-nav-dropdown-label{color:#f7f5ef!important}[data-theme=glass] .top-nav-dropdown-item-active{color:#e3d9c8!important}[data-theme=glass-light] .top-nav-dropdown{background:#e3ded3;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none!important}[data-theme=glass-light] .top-nav-dropdown-item,[data-theme=glass-light] .top-nav-dropdown-label{color:#74685f!important}[data-theme=glass-light] .top-nav-dropdown-item-active{color:#4c7763!important}[data-theme=glass] .top-nav-phase.active,[data-theme=glass-light] .top-nav-phase.active{background:var(--glass-nav-active-bg);color:var(--glass-nav-active-text);font-weight:600}[data-theme=glass] .top-nav-phase.soon,[data-theme=glass-light] .top-nav-phase.soon{opacity:1;color:var(--glass-soon-text)}[data-theme=glass] .top-nav-phase.soon:hover,[data-theme=glass-light] .top-nav-phase.soon:hover{color:var(--glass-soon-text)}[data-theme=glass] .left-nav-item.active,[data-theme=glass-light] .left-nav-item.active{background:var(--glass-leftnav-active-bg);color:var(--glass-leftnav-active-text);box-shadow:var(--glass-leftnav-active-shadow);font-weight:600}[data-theme=glass] .left-nav-item.soon,[data-theme=glass-light] .left-nav-item.soon{opacity:1;color:var(--glass-soon-text)}[data-theme=glass] .left-nav-item.soon:hover,[data-theme=glass-light] .left-nav-item.soon:hover,[data-theme=glass] .left-nav-soon,[data-theme=glass-light] .left-nav-soon{color:var(--glass-soon-text)}[data-theme=glass-light] .btn-primary,[data-theme=glass-light] .badge-pending,[data-theme=glass-light] .top-nav-avatar,[data-theme=glass-light] .catalog-mode-btn.active,[data-theme=glass-light] .logo-mark,[data-theme=glass-light] .logo-sm{color:var(--glass-on-gold)}[data-theme=glass] .btn-primary:hover,[data-theme=glass] .catalog-mode-btn.active:hover{background:var(--glass-btn-hover);opacity:1}[data-theme=glass] ::-webkit-scrollbar,[data-theme=glass-light] ::-webkit-scrollbar{width:10px}[data-theme=glass] ::-webkit-scrollbar-track,[data-theme=glass-light] ::-webkit-scrollbar-track{background:transparent}[data-theme=glass] ::-webkit-scrollbar-thumb,[data-theme=glass-light] ::-webkit-scrollbar-thumb{background:var(--glass-scrollbar);border-radius:8px}
