@font-face{font-family:CareGotham;src:url("/static/fonts/gotham-400.3ae97c80fba3.woff2")}@font-face{font-family:CareGotham;src:url("/static/fonts/gotham-700.107632a9e6c9.woff2");font-weight:700}
:root{--ink:#161616;--muted:#77736e;--paper:#f5f3f0;--card:#fff;--line:#e7e3df;--teal:#247088;--coral:#f2643e;--green:#3d9b69;--amber:#d8912f;--red:#c95a51;--radius:16px;--shadow:0 3px 14px rgba(25,20,15,.055)}*{box-sizing:border-box}html{font-size:15px}body{margin:0;background:var(--paper);color:var(--ink);font-family:CareGotham,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.45}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:flex;min-height:100vh}.sidebar{width:232px;background:#fbfaf8;border-right:1px solid var(--line);padding:24px 14px;display:flex;flex-direction:column;flex-shrink:0}.brand{display:flex;gap:10px;align-items:center;font-weight:700;font-size:1rem;letter-spacing:-.02em;padding:4px 8px}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:var(--ink);color:white;font-weight:700}.brand-sub{display:block;font-size:.67rem;font-weight:400;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-top:-2px}.side-nav{display:grid;gap:4px;margin-top:42px}.side-nav a{display:flex;align-items:center;gap:13px;padding:12px 12px;border-radius:11px;color:#6e6a65;font-size:.9rem}.side-nav a span{font-size:1.15rem;width:18px;text-align:center;color:#8a8680}.side-nav a.active,.side-nav a:hover{background:#eeebe7;color:var(--ink)}.side-nav a.active span{color:var(--ink)}.sidebar-bottom{margin-top:auto}.user-chip{display:flex;gap:9px;align-items:center;padding:12px 8px;border-top:1px solid var(--line);margin-top:18px}.avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e2bbaa;color:#603125;font-weight:700;font-size:.8rem}.user-chip strong,.user-chip small{display:block}.user-chip strong{font-size:.75rem}.user-chip small{font-size:.66rem;color:var(--muted);margin-top:2px}.side-logout-form{margin:0}.side-logout{display:block;width:100%;text-align:left;padding:6px 8px;font-size:.75rem;color:var(--muted);background:none;border:0;font-family:inherit}.main-content{flex:1;min-width:0;padding:0 34px 56px}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar-search{height:40px;max-width:420px;flex:1;background:white;border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;gap:8px;padding:0 13px;color:#aaa}.topbar-search input{border:0;outline:0;background:transparent;min-width:0;width:100%;font-size:.82rem}.topbar-actions{display:flex;gap:13px;align-items:center}.topbar-icon{color:#777;font-size:1.2rem}.mobile-menu{display:none;border:0;background:transparent;font-size:1.35rem}.button{border:1px solid transparent;border-radius:10px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:700;font-size:.78rem;line-height:1.1;transition:transform .15s ease,background .15s ease}.button:hover{transform:translateY(-1px)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#333}.button-light{background:white;border-color:var(--line);color:var(--ink)}.button-wide{width:100%;padding:13px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin:22px 0 26px}.page-head h1,.detail-head h1{font-size:clamp(1.65rem,3vw,2.25rem);line-height:1.05;letter-spacing:-.055em;margin:5px 0 7px}.muted{color:var(--muted);margin:0;font-size:.84rem}.eyebrow{font-size:.65rem;letter-spacing:.13em;color:#938e88;font-weight:700;margin:0;text-transform:uppercase}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.metric-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 19px;box-shadow:var(--shadow);min-height:125px}.metric-card strong{display:block;font-size:1.75rem;letter-spacing:-.06em;margin:14px 0 4px}.metric-card small{display:block;color:var(--muted);font-size:.72rem}.metric-label{font-size:.7rem;color:var(--muted);font-weight:700}.accent-card{background:#f2e5df;border-color:#ecd4ca}.positive{color:var(--green)!important}.dashboard-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:18px;margin-bottom:18px}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:15px}.panel-head h2{font-size:1rem;letter-spacing:-.03em;margin:4px 0 0}.text-link{font-size:.74rem;color:var(--teal);font-weight:700;white-space:nowrap}.deal-list,.task-list{display:grid}.deal-row,.task-row{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid #f0eeeb}.deal-row:last-child,.task-row:last-child{border-bottom:0}.status-dot{width:8px;height:8px;border-radius:50%;background:#aaa;flex:0 0 auto}.status-won{background:var(--green)}.status-payment_pending,.status-approval_required{background:var(--amber)}.status-lost,.status-unqualified{background:var(--red)}.status-qualified,.status-contacted{background:var(--teal)}.row-main{min-width:0;flex:1}.row-main strong,.row-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-main strong{font-size:.83rem}.row-main small,.row-value small{font-size:.69rem;color:var(--muted);margin-top:3px}.row-value{text-align:right;white-space:nowrap;font-size:.78rem}.task-check{color:var(--coral);font-size:1.2rem}.task-due{font-size:.67rem;color:var(--muted);white-space:nowrap}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.78rem}th{text-align:left;color:#98928b;text-transform:uppercase;letter-spacing:.08em;font-size:.62rem;padding:10px 8px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:13px 8px;border-bottom:1px solid #f1efed;vertical-align:middle}td small,.table-link small{display:block;color:var(--muted);font-size:.67rem;margin-top:3px}.table-link{display:block}.table-link:hover{color:var(--teal)}.pill{display:inline-flex;padding:4px 8px;border-radius:999px;background:#efedea;color:#6e6962;font-size:.65rem;font-weight:700;white-space:nowrap}.pill-paid,.pill-approved,.pill-won,.pill-accepted,.pill-qualified,.pill-verified{background:#e1f2e8;color:#28764e}.pill-payment_pending,.pill-approval_required,.pill-sent,.pill-pending,.pill-submitted{background:#fff0d4;color:#946119}.pill-rejected,.pill-lost,.pill-cancelled{background:#fae5e1;color:#a54a40}.empty{padding:25px 4px;color:#9a948e;font-size:.78rem;text-align:center}.filter-bar{display:flex;gap:8px;margin:-6px 0 18px}.filter-bar input{flex:1;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:white;outline:none;font-size:.8rem}.back-link{display:inline-block;color:var(--teal);font-size:.75rem;font-weight:700;margin:6px 0 16px}.detail-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}.button-row{display:flex;gap:8px}.stage-strip{display:flex;overflow:auto;gap:5px;margin-bottom:20px;padding-bottom:2px}.stage-strip form{flex:1;min-width:86px}.stage-step{width:100%;height:54px;border:1px solid var(--line);background:#fff;border-radius:10px;color:#8f8981;font-size:.75rem}.stage-step.current{background:var(--ink);color:#fff;border-color:var(--ink)}.stage-step small{display:block;font-size:.58rem;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.detail-grid{align-items:start}.big-number{font-size:1.1rem;font-weight:700}.inline-form,.quote-create-form{display:flex;gap:7px;margin-bottom:14px}.inline-form select,.inline-form input,.quote-create-form input{min-width:0;flex:1;padding:9px;border:1px solid var(--line);border-radius:9px;background:white;font-size:.75rem}.inline-form input{max-width:75px}.deal-items{display:grid}.deal-item,.quote-row{display:flex;align-items:center;gap:8px;justify-content:space-between;padding:12px 0;border-bottom:1px solid #f0eeeb;font-size:.78rem}.deal-item:last-child,.quote-row:last-child{border-bottom:0}.deal-item span,.quote-row span:first-child{min-width:0;flex:1}.deal-item small,.quote-row small{display:block;color:var(--muted);font-size:.66rem;margin-top:3px}.quote-actions{display:flex;gap:8px}.text-button{border:0;background:none;padding:3px;color:var(--teal);font-size:.72rem;font-weight:700}.quote-create-form{align-items:flex-end;border-top:1px solid var(--line);padding-top:14px;margin-top:10px}.quote-create-form label{flex:1;font-size:.68rem;color:var(--muted)}.quote-create-form input{display:block;width:100%;margin-top:5px}.form-panel{max-width:840px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid label,.stack-form label,.form-panel>p{display:flex;flex-direction:column;gap:6px;font-size:.72rem;font-weight:700;color:#5c5752}.form-grid input,.form-grid select,.form-grid textarea,.form-panel input,.form-panel select,.form-panel textarea,.stack-form input{width:100%;border:1px solid var(--line);border-radius:9px;background:#fff;padding:10px 11px;outline:none;font-size:.8rem;font-weight:400;color:var(--ink)}.form-grid textarea,.form-panel textarea{resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.stack-form input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(36,112,136,.1)}.form-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.field-error,.form-error{color:var(--red);font-size:.7rem;font-weight:400}.form-error{background:#fff0ed;border:1px solid #f0c9c1;border-radius:9px;padding:10px;margin-bottom:13px}.kanban-grid{display:grid;grid-template-columns:repeat(5,minmax(190px,1fr));gap:12px;overflow:auto;padding-bottom:8px}.kanban-column{background:#eeece9;border-radius:14px;padding:11px;min-height:260px}.kanban-title{display:flex;justify-content:space-between;font-size:.7rem;font-weight:700;margin:1px 2px 10px;color:#605b55}.count-badge{background:#d8d4cf;border-radius:999px;padding:2px 7px;font-size:.62rem}.kanban-card{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px;margin-bottom:8px;box-shadow:0 2px 8px rgba(0,0,0,.035)}.kanban-card:hover{border-color:#cfc8c1;transform:translateY(-1px)}.card-kicker{display:block;text-transform:uppercase;color:#9a938b;letter-spacing:.09em;font-size:.58rem;font-weight:700;margin-bottom:7px}.kanban-card strong,.kanban-card small{display:block}.kanban-card strong{font-size:.8rem}.kanban-card small{color:var(--muted);font-size:.67rem;margin-top:4px}.card-footer{display:flex;justify-content:space-between;border-top:1px solid #f1efed;padding-top:9px;margin-top:11px;font-size:.68rem;font-weight:700}.card-footer span:last-child{color:var(--muted);font-weight:400}.kanban-empty{text-align:center;font-size:.68rem;color:#a29c95;padding:16px}.timeline-row{display:flex;gap:12px;padding:11px 0;border-bottom:1px solid #f1efed}.timeline-row:last-child{border-bottom:0}.timeline-dot{width:8px;height:8px;border:2px solid var(--teal);border-radius:50%;margin:4px 0 0 3px;flex:0 0 auto}.timeline-row strong,.timeline-row small{display:block;font-size:.75rem}.timeline-row small{font-size:.66rem;color:var(--muted);margin-top:4px}.task-row-action{gap:10px}.task-row-action form{margin-left:auto}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.product-card{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.product-card img,.product-art{width:100%;height:150px;object-fit:cover;background:linear-gradient(135deg,#247088,#143f4e)}.product-copy{padding:15px}.product-copy h2{font-size:.95rem;margin:5px 0}.product-copy p{font-size:.72rem;color:var(--muted);min-height:32px}.product-copy strong{display:block;font-size:1rem}.product-copy small{display:block;color:var(--muted);font-size:.65rem;margin-top:6px}.sale-form{max-width:920px}.sale-section{border-bottom:1px solid var(--line);padding:5px 0 22px;margin-bottom:22px}.section-heading{display:flex;gap:11px;align-items:flex-start;margin-bottom:16px}.section-heading h2{font-size:1rem;margin:0}.section-heading p{font-size:.72rem;color:var(--muted);margin:3px 0 0}.section-number{display:grid;place-items:center;background:#f0e0d9;color:#a34e35;border-radius:8px;width:29px;height:29px;font-size:.68rem;font-weight:700}.payment-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.choice-card{display:flex!important;flex-direction:row!important;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:13px;background:#fff}.choice-card:has(input:checked){border-color:var(--ink);box-shadow:0 0 0 2px var(--ink)}.choice-card input{width:auto!important;margin-top:3px}.choice-card strong,.choice-card small{display:block}.choice-card strong{font-size:.8rem}.choice-card small{font-size:.67rem;color:var(--muted);font-weight:400;margin-top:3px}.signature-box{border:1px dashed #bcb5ae;border-radius:12px;padding:10px;background:#fcfbfa}.signature-box canvas{display:block;width:100%;height:160px;touch-action:none;background:#fff;border-radius:8px}.success-icon{display:grid;place-items:center;background:#dff2e6;color:#27754b;border-radius:50%;width:48px;height:48px;font-size:1.6rem;font-weight:700;margin-bottom:15px}.center-card,.public-card{max-width:500px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;padding:30px;margin:70px auto}
.public-card-wide{max-width:780px}
.public-card-wide .form-grid{margin:18px 0}
.public-card-wide .sale-section:last-of-type{border-bottom:0}.center-card h1,.public-card h1{font-size:1.8rem;letter-spacing:-.05em;margin:8px 0}.checkout-rail{display:flex;gap:12px;align-items:center;background:#f6f2ee;border-radius:12px;padding:14px;margin:22px 0}.payment-symbol{font-size:1.8rem}.checkout-rail strong,.checkout-rail small{display:block}.checkout-rail small{font-size:.7rem;color:var(--muted);margin-top:3px}.small-note{font-size:.68rem;color:var(--muted);text-align:center;margin:15px 0}.public-page{padding:20px}.public-card{margin:30px auto}.public-card .brand{padding:0;margin-bottom:35px}.public-items>div,.public-total{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 0;border-bottom:1px solid var(--line);font-size:.78rem}.public-items strong{font-weight:700}.public-total{margin-top:12px}.public-total span:nth-last-of-type(1),.public-total strong:nth-last-of-type(1){font-size:1.1rem;padding-top:9px}.stack-form{display:grid;gap:13px;margin-top:22px}.checkbox-line{display:flex!important;flex-direction:row!important;align-items:flex-start;font-size:.7rem!important;font-weight:400!important}.checkbox-line input{width:auto}.auth-page{display:grid;place-items:center;min-height:100vh;padding:20px}.auth-card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);max-width:380px;width:100%;padding:32px}.brand-centered{justify-content:center;margin-bottom:35px}.auth-card h1{font-size:1.9rem;letter-spacing:-.06em;margin:5px 0}.auth-card .muted{margin-bottom:23px}.flash-stack{position:fixed;right:24px;top:82px;z-index:5;display:grid;gap:7px;max-width:360px}.flash{background:var(--ink);color:white;padding:11px 14px;border-radius:10px;font-size:.72rem;box-shadow:var(--shadow)}.flash.error{background:#a9473e}.flash.success{background:#2f8055}.fab,.mobile-nav,.fab-menu{display:none}
.mock-qr{display:flex;justify-content:center;padding:14px;margin:18px 0;background:#fff;border:1px solid var(--line);border-radius:14px}
.order-status-panel{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f6f2ee;border-radius:12px;padding:14px 16px;margin-bottom:18px}
.order-status-panel strong{display:block;font-size:.85rem}
.order-status-panel small{display:block;color:var(--muted);font-size:.7rem;margin-top:2px}
/* ── Projects (ProManage) ── */
.projects-page{max-width:1440px;margin:0 auto}
.projects-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0 18px}
.projects-title{font-size:1.85rem;letter-spacing:-.05em;margin:0;line-height:1}
.projects-new-btn{border-radius:10px;padding:11px 16px;gap:8px;box-shadow:0 4px 14px rgba(0,0,0,.13)}
.projects-new-btn .chev{font-size:.7rem;opacity:.85}
.proj-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}
.proj-stat-card{display:flex;align-items:center;gap:16px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:18px 18px;min-height:98px}
.proj-stat-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-size:1.1rem;flex:0 0 auto;background:#f6f2ee;color:#5b4b3a}
.proj-stat-label{display:block;font-size:.72rem;color:var(--muted);font-weight:700;margin-bottom:2px}
.proj-stat-card strong{display:block;font-size:1.45rem;letter-spacing:-.05em;line-height:1}
.proj-stat-card small{display:block;color:var(--muted);font-size:.68rem;margin-top:3px}
.proj-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:6px 0 14px;padding-bottom:0;border-bottom:1px solid var(--line)}
.proj-tabs{display:flex;gap:22px;align-items:center}
.proj-tabs a{position:relative;padding:12px 2px 13px;font-size:.8rem;font-weight:700;color:#8a8682;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px}
.proj-tabs a.active{color:var(--ink);border-bottom-color:var(--ink)}
.proj-toolbar-actions{display:flex;align-items:center;gap:8px}
.proj-btn{border:1px solid var(--line);background:#fff;border-radius:10px;padding:7px 12px;font-size:.74rem;font-weight:700;color:#3e3a36;display:inline-flex;align-items:center;gap:6px}
.proj-btn-light{background:#fff}
.proj-sort{position:relative}
.proj-sort-menu{position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:6px;min-width:140px;display:none;z-index:5}
.proj-sort-menu.open{display:grid}
.proj-sort-menu a{padding:8px 10px;border-radius:8px;font-size:.76rem}
.proj-sort-menu a:hover{background:#f5f3f0}
.proj-layout{display:grid;grid-template-columns:340px minmax(0,1.05fr) 300px;gap:16px;align-items:start}
.proj-list-col{display:grid;gap:11px;align-content:start}
.proj-card{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:15px 15px 13px;transition:border-color .15s,box-shadow .15s}
.proj-card:hover{border-color:#d8d2cc;box-shadow:0 4px 16px rgba(0,0,0,.06)}
.proj-card.selected{border-color:var(--ink);box-shadow:0 4px 18px rgba(0,0,0,.08)}
.proj-card-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.proj-card-title{font-size:.86rem;letter-spacing:-.02em;flex:1;min-width:0}
.proj-badge{font-size:.62rem;font-weight:800;letter-spacing:.02em;padding:3px 8px;border-radius:999px;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}
.proj-badge-progress{background:#e9f5ec;color:#2a7a3b;border:1px solid #cfe8d3}
.proj-badge-completed{background:#e9f5ec;color:#1e7a3a;border:1px solid #cfe8d3}
.proj-badge-planning{background:#f0ecfb;color:#6b4bb5;border:1px solid #ddd4f3}
.proj-badge-hold{background:#fff4d6;color:#8a5a00;border:1px solid #f0d9a0}
.proj-badge-archived{background:#efedea;color:#6e6962;border:1px solid #e2ddd8}
.proj-card-more{color:#9a958f;font-size:.9rem;padding:2px 4px}
.proj-card-desc{margin:0 0 10px;color:#6e6a65;font-size:.72rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.1em}
.proj-progress-row{display:flex;align-items:center;gap:10px;margin-bottom:11px}
.proj-progress-track{flex:1;height:5px;background:#f0eeeb;border-radius:999px;overflow:hidden}
.proj-progress-track-lg{height:7px}
.proj-progress-fill{height:100%;background:#e67e22;border-radius:999px;transition:width .3s}
.proj-progress-pct{font-size:.72rem;font-weight:800;min-width:32px;text-align:right}
.proj-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}
.proj-avatars{display:flex;align-items:center}
.proj-avatar{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:.66rem;font-weight:800;background:#f2d6c8;color:#6b2f1a;border:2px solid #fff;margin-left:-6px}
.proj-avatar:first-child{margin-left:0}
.proj-avatar-more{background:#eee9e4;color:#6e6a65}
.proj-avatar.sm{width:22px;height:22px;font-size:.6rem;margin-left:0}
.proj-due{color:#9a958f;font-size:.66rem;white-space:nowrap}
.proj-detail-col{position:sticky;top:14px}
.proj-detail-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:20px}
.proj-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}
.proj-detail-head h2{margin:0;font-size:1.15rem;letter-spacing:-.03em;line-height:1.2}
.proj-detail-actions{display:flex;gap:6px}
.icon-btn{width:28px;height:28px;border:0;background:transparent;border-radius:8px;display:grid;place-items:center;color:#8a8682;font-size:.9rem}
.icon-btn:hover{background:#f5f3f0;color:var(--ink)}
.proj-detail-desc{color:#6e6a65;font-size:.77rem;line-height:1.5;margin:8px 0 16px}
.proj-progress-panel{border:1px solid var(--line);border-radius:12px;padding:14px 15px;margin-bottom:14px;background:#fcfbfa}
.proj-progress-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.proj-progress-panel-head strong{font-size:.82rem}
.proj-on-track{font-size:.66rem;font-weight:800;color:#1e7a3a;background:#e9f5ec;border:1px solid #cfe8d3;padding:3px 8px;border-radius:999px}
.proj-big-pct-row{display:flex;align-items:center;gap:14px}
.proj-big-pct{font-size:1.7rem;font-weight:800;letter-spacing:-.06em;line-height:1}
.proj-progress-sub{display:block;color:var(--muted);font-size:.66rem;margin-top:6px}
.proj-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px;border:1px solid var(--line);border-radius:12px;margin-bottom:18px;background:#fff}
.proj-meta-grid>div{padding:6px 2px}
.proj-meta-grid small{display:block;color:var(--muted);font-size:.62rem;font-weight:700;letter-spacing:.04em;margin-bottom:6px}
.proj-meta-val{display:flex;align-items:center;gap:7px;font-size:.77rem;font-weight:700}
.dot{width:7px;height:7px;border-radius:50%;display:inline-block}
.dot-high{background:#e67e22}
.proj-milestones h3{margin:0 0 12px;font-size:.9rem;letter-spacing:-.02em}
.milestone-list{list-style:none;margin:0;padding:0;position:relative}
.milestone-list::before{content:"";position:absolute;left:13px;top:8px;bottom:8px;width:1px;background:#eee8e1}
.milestone{display:flex;align-items:flex-start;gap:12px;padding:10px 0;position:relative}
.milestone:first-child{padding-top:2px}
.ms-dot{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:.7rem;font-weight:800;flex:0 0 auto;border:2px solid #e7e3df;background:#fff;color:#b0aaa3;z-index:1}
.milestone.done .ms-dot{background:#e67e22;border-color:#e67e22;color:#fff}
.milestone.active .ms-dot{border-color:#e67e22;color:#e67e22;background:#fff}
.ms-body{flex:1;min-width:0}
.ms-body strong{display:block;font-size:.78rem;line-height:1.25}
.ms-body small{display:block;color:var(--muted);font-size:.68rem;margin-top:3px}
.ms-note{color:#6e6a65!important}
.ms-pct{font-size:.66rem;font-weight:800;color:#4a4450;background:#f0ecfb;border:1px solid #ddd4f3;padding:3px 7px;border-radius:999px;white-space:nowrap}
.proj-rail-col{display:grid;gap:14px;align-content:start}
.rail-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:16px}
.rail-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.rail-head h3{margin:0;font-size:.86rem;letter-spacing:-.02em}
.rail-link{font-size:.68rem;font-weight:800;color:#8a8682}
.rail-list{display:grid;gap:11px}
.rail-activity{display:flex;align-items:flex-start;gap:9px}
.rail-icon{width:22px;height:22px;border-radius:6px;display:grid;place-items:center;font-size:.62rem;font-weight:800;flex:0 0 auto}
.rail-icon.icon-green{background:#e9f5ec;color:#1e7a3a}
.rail-icon.icon-blue{background:#eaf0ff;color:#2b5da8}
.rail-icon.icon-amber{background:#fff4d6;color:#8a5a00}
.rail-avatar{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:.58rem;font-weight:800;background:#e8ddd6;color:#5b3a2a;flex:0 0 auto}
.rail-text{flex:1;min-width:0}
.rail-text strong{display:block;font-size:.72rem;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rail-text small{display:block;color:var(--muted);font-size:.64rem;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rail-deadlines{display:grid;gap:10px}
.deadline-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid #f5f3f0}
.deadline-row:last-child{border-bottom:0}
.deadline-row strong{display:block;font-size:.74rem}
.deadline-row small{display:block;color:var(--muted);font-size:.64rem;margin-top:2px}
.deadline-date{font-size:.68rem;font-weight:700;white-space:nowrap;color:#6e6a65}
.deadline-date.overdue{color:#c95a51}
.rail-donut-row{display:flex;align-items:center;gap:16px}
.donut-wrap{width:88px;height:88px;flex:0 0 auto}
.donut{width:88px;height:88px;border-radius:50%;background:conic-gradient(#4a86e8 0 calc(var(--p1, 50) * 1%), #4ecb7a calc(var(--p1, 50) * 1%) calc((var(--p1, 50) + var(--p2, 30)) * 1%), #8a6bc9 calc((var(--p1, 50) + var(--p2, 30)) * 1%) calc((var(--p1, 50) + var(--p2, 30) + var(--p3, 13)) * 1%), #f0a030 calc((var(--p1, 50) + var(--p2, 30) + var(--p3, 13)) * 1%) 100%);position:relative}
.donut::after{content:"";position:absolute;inset:15px;background:#fff;border-radius:50%;border:1px solid var(--line)}
.donut-empty{background:#f0eeeb}
.donut-legend{list-style:none;margin:0;padding:0;display:grid;gap:7px;flex:1}
.donut-legend li{display:flex;align-items:center;gap:7px;font-size:.7rem;color:#4a4450}
.legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.legend-count{margin-left:auto;color:var(--muted);font-weight:700;white-space:nowrap}
@media(max-width:1000px){.main-content{padding:0 22px 50px}.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.kanban-grid{grid-template-columns:repeat(5,190px)}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.proj-layout{grid-template-columns:1fr 1fr}.proj-rail-col{grid-column:1 / -1;grid-template-columns:1fr 1fr}.proj-stats{grid-template-columns:repeat(2,1fr)}} 
@media(max-width:900px){.proj-layout{grid-template-columns:1fr}.proj-detail-col{position:static}.proj-rail-col{grid-template-columns:1fr}}
@media(max-width:680px){body{padding-bottom:68px}.sidebar{position:fixed;z-index:10;left:-250px;top:0;bottom:0;transition:left .2s ease;box-shadow:10px 0 30px rgba(0,0,0,.12)}.sidebar.open{left:0}.main-content{padding:0 13px 32px}.topbar{height:65px;gap:10px}.mobile-menu{display:block}.topbar-search{height:36px}.topbar-actions{gap:6px}.topbar-icon{display:none}.top-new{display:none}.page-head{align-items:flex-start;flex-wrap:wrap;margin:14px 0 19px}.page-head h1,.detail-head h1{font-size:1.65rem}.page-head .button{padding:9px 10px;width:100%;text-align:center}.desktop-only{display:none}.metric-grid{gap:9px}.metric-card{min-height:112px;padding:14px}.metric-card strong{font-size:1.35rem;margin-top:12px}.metric-card small{font-size:.64rem}.panel{padding:15px;border-radius:14px}.form-grid{grid-template-columns:1fr;gap:12px}.form-actions{position:sticky;bottom:0;background:var(--card);margin:17px -15px -15px;padding:14px 15px;border-radius:0 0 14px 14px;z-index:2}.detail-head{align-items:flex-start;flex-direction:column}.detail-head .button-row{width:100%}.detail-head .button{width:100%}.stage-strip{margin-right:-13px}.stage-strip form{min-width:77px}.stage-step{height:49px;font-size:.68rem}.table-wrap{margin:0 -5px}.catalog-grid{grid-template-columns:1fr}.filter-bar{margin-bottom:12px}.filter-bar .button{padding:9px 11px}.payment-choice{grid-template-columns:1fr}.center-card,.public-card{margin:20px auto;padding:23px;border-radius:16px}.sale-section{padding-bottom:18px}.signature-box canvas{height:135px}.mobile-nav{display:flex;position:fixed;z-index:4;bottom:0;left:0;right:0;height:64px;background:rgba(255,255,255,.96);border-top:1px solid var(--line);justify-content:space-around;padding-bottom:env(safe-area-inset-bottom)}.mobile-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#97918b;font-size:1.1rem;min-width:50px}.mobile-nav a:first-child{color:var(--ink)}.mobile-nav small{font-size:.58rem}.fab{display:grid;place-items:center;position:fixed;right:18px;bottom:80px;width:50px;height:50px;border-radius:50%;background:var(--ink);color:#fff;font-size:1.6rem;box-shadow:0 6px 16px rgba(0,0,0,.2);z-index:5}.fab-menu{position:fixed;right:17px;bottom:136px;z-index:5;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:5px;display:none}.fab-menu.open{display:grid}.fab-menu a{padding:10px 13px;font-size:.75rem;white-space:nowrap}.fab-menu a:hover{background:#f3f0ed;border-radius:8px}.flash-stack{top:69px;left:13px;right:13px;max-width:none}.kanban-grid{margin-right:-13px}.quote-row{flex-wrap:wrap}.quote-actions{width:100%}.quote-create-form{flex-wrap:wrap}.quote-create-form label{min-width:130px}}

/* Workspace shell and project controls */
.nav-icon{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nav-section-label{display:block;padding:0 12px;color:#b0aaa3;font-size:.58rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;margin-bottom:4px}
.nav-section-spaced{margin-top:20px}
.side-nav a{position:relative}
.nav-label-with-badge{display:flex;align-items:center;gap:7px}
.nav-count,.topbar-badge,.filter-count{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#f2643e;color:#fff;font-size:.58rem;font-weight:800;line-height:1;min-width:17px;height:17px;padding:0 5px}
.side-settings{display:flex;align-items:center;gap:13px;padding:11px 12px;border-radius:11px;color:#6e6a65;font-size:.9rem;margin-bottom:4px}
.side-settings.active,.side-settings:hover{background:#eeebe7;color:var(--ink)}
.user-chip-copy{min-width:0;flex:1}
.user-chip-menu{margin-left:auto;color:#999;font-size:.95rem}
.avatar-image{object-fit:cover}
.topbar-search svg,.list-search svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.topbar-icon-link{position:relative;display:grid;place-items:center;width:31px;height:31px;border-radius:9px;color:#777}
.topbar-icon-link:hover{background:#eeebe7;color:var(--ink)}
.topbar-icon-link svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.topbar-icon-link .topbar-badge{position:absolute;right:-2px;top:-4px;min-width:15px;height:15px;font-size:.52rem;padding:0 4px;border:2px solid var(--paper)}
.search-clear{font-size:1.1rem;color:#aaa;line-height:1}
.new-menu-wrap{position:relative}
.menu-chevron{font-size:.7rem;opacity:.8;margin-left:2px}
.action-menu{position:absolute;right:0;top:calc(100% + 9px);z-index:20;width:240px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 12px 30px rgba(25,20,15,.12);padding:7px;display:none}
.action-menu.open{display:grid}
.action-menu-label{padding:7px 9px 5px;color:#9a948e;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.action-menu a{display:flex;align-items:flex-start;gap:10px;padding:10px 9px;border-radius:9px}
.action-menu a:hover{background:#f5f3f0}
.action-menu a strong,.action-menu a small{display:block}
.action-menu a strong{font-size:.73rem}
.action-menu a small{font-size:.62rem;color:var(--muted);margin-top:2px}
.action-menu a.action-menu-primary{background:var(--ink);color:#fff;margin-bottom:4px}
.action-menu a.action-menu-primary:hover{background:#333}
.action-menu a.action-menu-primary small{color:#c9c5c0}
.fab-menu a.action-menu-primary{background:var(--ink);color:#fff;border-radius:8px;font-weight:700}
.menu-symbol{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#f0eeeb;font-size:.9rem;color:#5d5852;flex:0 0 auto}
.drawer-backdrop{display:none}
.page-actions{display:flex;align-items:center;gap:8px}
.page-action-secondary{background:#fff}

/* Project workspace fixes and interactions */
.projects-title-row{align-items:flex-end}
.projects-title-row .eyebrow{margin-bottom:4px}
.proj-stat-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.proj-stat-icon.icon-pulse{background:#fff7ed;color:#e67e22}
.proj-stat-icon.icon-check{background:#f0fdf4;color:#22a55b}
.proj-stat-icon.icon-team{background:#fbfaf8;color:#5b5b5b}
.proj-btn{cursor:pointer}
.proj-toolbar{position:relative}
.proj-toolbar-actions{position:relative}
.filter-toggle{position:relative}
.filter-count{margin-left:2px;min-width:16px;height:16px;background:var(--ink)}
.filter-menu{position:absolute;right:92px;top:calc(100% + 8px);z-index:16;width:274px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 30px rgba(25,20,15,.12);padding:12px;display:none}
.filter-menu.open{display:block}
.filter-menu-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.filter-menu-head strong{font-size:.78rem}
.filter-form{display:grid;gap:9px}
.filter-form label{display:grid;gap:5px;color:#6e6962;font-size:.64rem;font-weight:700}
.filter-form select{width:100%;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px 9px;font-size:.72rem;color:var(--ink)}
.filter-form-actions{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f0eeeb;padding-top:10px;margin-top:2px}
.filter-form-actions .button{padding:8px 11px}
.proj-badge-in_progress{background:#e9f5ec;color:#2a7a3b;border:1px solid #cfe8d3}
.proj-badge-completed{background:#e9f5ec;color:#1e7a3a;border:1px solid #cfe8d3}
.proj-badge-planning{background:#f0ecfb;color:#6b4bb5;border:1px solid #ddd4f3}
.proj-badge-on_hold{background:#fff4d6;color:#8a5a00;border:1px solid #f0d9a0}
.proj-badge-archived{background:#efedea;color:#6e6962;border:1px solid #e2ddd8}
.favorite-mark{color:#e09a2c;font-size:.74rem;margin-left:auto}
.proj-card-more{margin-left:0}
.proj-avatar-client{background:#d9e8ff;color:#2b5da8}
.empty-projects{display:grid;place-items:center;text-align:center;padding:35px 20px}
.empty-projects strong{font-size:.84rem;margin-top:8px}
.empty-projects p{font-size:.7rem;color:var(--muted);margin:5px 0 14px}
.empty-project-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:#f3f0ed;color:#8b8379;font-size:1.3rem}
.proj-detail-actions form{display:inline-flex}
.icon-btn.is-favorite{color:#e09a2c}
.proj-on-track.attention{background:#fff4d6;border-color:#f0d9a0;color:#8a5a00}
.proj-on-track.steady{background:#eaf0ff;border-color:#d4e0fb;color:#2b5da8}
.dot-low{background:#7f9fba}.dot-normal{background:#9c968e}.dot-high{background:#e67e22}.dot-urgent{background:#c95a51}
.section-inline-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.section-inline-head h3{margin:0}
.milestones-empty{display:flex;align-items:center;gap:10px;border:1px dashed #d8d2cc;border-radius:11px;padding:13px;color:#8b8379}
.milestones-empty>span{font-size:1.35rem}
.milestones-empty strong,.milestones-empty small{display:block}
.milestones-empty strong{font-size:.74rem;color:var(--ink)}
.milestones-empty small{font-size:.66rem;color:var(--muted);margin-top:3px}
.project-detail-actions{display:flex;gap:8px;margin-top:17px}
.project-detail-actions .button:first-child{flex:1}
.project-detail-actions .button:nth-child(2){flex:1}
.button-icon-only{width:40px;padding:0}
.project-danger-zone{display:flex;justify-content:flex-end;border-top:1px solid #f1efed;margin-top:13px;padding-top:10px}
.danger-text{color:var(--red)}
.no-selection{display:grid;place-items:center;min-height:420px;text-align:center}
.no-selection h2{margin:10px 0 5px;font-size:1.1rem}
.no-selection .muted{margin-bottom:16px}
.rail-activity,.deadline-row{transition:background .15s}
.rail-activity:hover,.deadline-row:hover{background:#faf8f6;border-radius:8px}
.donut{background:conic-gradient(#4a86e8 0 calc(var(--p1,0) * 1%),#4ecb7a calc(var(--p1,0) * 1%) calc((var(--p1,0) + var(--p2,0)) * 1%),#8a6bc9 calc((var(--p1,0) + var(--p2,0)) * 1%) calc((var(--p1,0) + var(--p2,0) + var(--p3,0)) * 1%),#f0a030 calc((var(--p1,0) + var(--p2,0) + var(--p3,0)) * 1%) calc((var(--p1,0) + var(--p2,0) + var(--p3,0) + var(--p4,0)) * 1%),#aaa39b calc((var(--p1,0) + var(--p2,0) + var(--p3,0) + var(--p4,0)) * 1%) 100%)}

/* Shared list/detail surfaces */
.list-toolbar{display:flex;align-items:center;gap:9px;margin-bottom:15px;padding:11px}
.list-search{display:flex;align-items:center;gap:8px;flex:1;border:1px solid var(--line);border-radius:9px;padding:8px 10px;background:#fff}
.list-search input{border:0;outline:0;width:100%;font-size:.75rem;background:transparent}
.list-toolbar select{border:1px solid var(--line);border-radius:9px;background:#fff;padding:8px 10px;font-size:.72rem;color:var(--ink)}
.timeline-panel{padding:20px}
.activity-row{display:flex;align-items:center;gap:11px;padding:13px 2px;border-bottom:1px solid #f1efed}
.activity-row:last-child{border-bottom:0}
.activity-row:hover{background:#fbfaf8;border-radius:9px;padding-left:8px;padding-right:8px}
.activity-type-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#f0eeeb;color:#6e6962;font-size:.85rem;flex:0 0 auto}
.activity-stage_change{background:#e9f5ec;color:#1e7a3a}.activity-note{background:#eaf0ff;color:#2b5da8}.activity-call,.activity-meeting{background:#fff4d6;color:#8a5a00}
.activity-copy{flex:1;min-width:0}.activity-copy strong,.activity-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-copy strong{font-size:.78rem}.activity-copy small{color:var(--muted);font-size:.66rem;margin-top:3px}.activity-row time{font-size:.65rem;color:var(--muted);white-space:nowrap}
.empty-state{display:grid;place-items:center;text-align:center;padding:36px 20px}.empty-state>span{font-size:2rem;color:#b4ada5}.empty-state strong{font-size:.82rem;margin-top:8px}.empty-state p{font-size:.7rem;color:var(--muted);margin:5px 0 14px}

/* Schedule */
.schedule-head{align-items:flex-end}.schedule-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:16px;align-items:start}.calendar-panel{min-height:520px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:13px}.calendar-month{display:flex;align-items:center;gap:13px}.calendar-month strong{font-size:.95rem}.calendar-arrow{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#f5f3f0;color:#6e6962;font-size:1.15rem}.calendar-arrow:hover{background:#eeebe7;color:var(--ink)}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(92px,1fr));gap:7px;overflow:auto}.week-day{min-height:360px;border:1px solid #f0eeeb;border-radius:11px;background:#fcfbfa;padding:8px}.week-day>a:first-child{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.week-day>a:first-child small{font-size:.62rem;color:var(--muted);text-transform:uppercase;font-weight:800}.week-day>a:first-child strong{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;font-size:.72rem}.week-day.is-today>a:first-child strong{background:var(--ink);color:#fff}.week-day.is-selected{border-color:#cfc8c1;background:#fff}.calendar-task{display:block;border-left:3px solid #4a86e8;background:#eaf0ff;border-radius:6px;padding:7px 6px;margin-bottom:6px}.calendar-task.task-high{border-left-color:#e67e22;background:#fff4d6}.calendar-task.task-urgent{border-left-color:#c95a51;background:#fae5e1}.calendar-task strong,.calendar-task small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-task strong{font-size:.62rem}.calendar-task small{font-size:.58rem;color:#6e6962;margin-top:3px}.calendar-empty{display:block;color:#c6c0ba;text-align:center;padding-top:26px;font-size:.8rem}.schedule-side{display:grid;gap:16px}.schedule-side .stack-form{margin-top:0}.upcoming-list{display:grid}.upcoming-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #f1efed}.upcoming-row:last-child{border-bottom:0}.upcoming-date{width:42px;text-align:center;font-weight:800;font-size:.68rem;color:var(--ink)}.upcoming-date small{display:block;color:var(--muted);font-size:.58rem;font-weight:400;margin-top:2px}.upcoming-row .row-main strong{font-size:.72rem}.upcoming-row .row-main small{font-size:.63rem;color:var(--muted);display:block;margin-top:3px}

/* Team, reports, messages, files, settings */
.team-summary,.report-summary{margin-bottom:16px}.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.member-card{padding:17px}.member-head{display:flex;align-items:center;gap:10px}.member-avatar{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#f2d6c8;color:#6b2f1a;font-size:.85rem;font-weight:800;object-fit:cover}.member-head h2{font-size:.88rem;margin:0}.member-head p{font-size:.66rem;color:var(--muted);margin:3px 0 0}.member-workload{margin-left:auto;font-size:.66rem;font-weight:800;color:#1e7a3a;background:#e9f5ec;border:1px solid #cfe8d3;border-radius:999px;padding:4px 7px}.member-workload-0{color:#777;background:#f4f1ee;border-color:#e7e3df}.member-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid #f1efed;border-bottom:1px solid #f1efed;margin:15px 0 11px;padding:12px 0}.member-stats strong,.member-stats small{display:block}.member-stats strong{font-size:.84rem}.member-stats small{font-size:.61rem;color:var(--muted);margin-top:3px}.member-foot{display:flex;justify-content:space-between;gap:8px;margin-top:11px}.member-foot a{font-size:.66rem;color:var(--teal);font-weight:700}.reports-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.report-status-list,.report-agent-list{display:grid;gap:13px}.report-status-row{display:grid;grid-template-columns:10px minmax(75px,1fr) 30px minmax(80px,1.2fr) 32px;align-items:center;gap:8px;font-size:.7rem}.report-status-row strong{text-align:right}.report-status-row small{color:var(--muted);text-align:right;font-size:.64rem}.report-bar{height:7px;border-radius:999px;background:#f0eeeb;overflow:hidden}.report-bar i{display:block;height:100%;border-radius:999px}.report-agent-row{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #f1efed}.report-agent-row:last-child{border-bottom:0}.report-agent-row>.row-main strong{font-size:.72rem}.report-agent-row>.row-main small{font-size:.63rem;color:var(--muted);display:block;margin-top:3px}.report-agent-row>strong{font-size:.72rem;white-space:nowrap}.report-funnel{margin-bottom:16px}.funnel-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.funnel-step{background:#f7f4f1;border-radius:10px;padding:12px}.funnel-step span,.funnel-step strong{display:block}.funnel-step span{font-size:.64rem;color:var(--muted)}.funnel-step strong{font-size:1.15rem;margin-top:8px}.messages-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.message-list{display:grid}.message-row{display:flex;align-items:center;gap:9px;padding:12px 0;border-bottom:1px solid #f1efed}.message-row:last-child{border-bottom:0}.message-row:hover{background:#fbfaf8;border-radius:8px;padding-left:7px;padding-right:7px}.message-row.unread .message-icon{color:var(--coral)}.message-icon{font-size:.75rem;color:#aaa}.message-row .row-main strong{font-size:.74rem}.message-row .row-main small{display:block;color:var(--muted);font-size:.63rem;margin-top:3px}.message-row time{font-size:.62rem;color:var(--muted);white-space:nowrap}.message-detail{max-width:900px}.message-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:16px}.message-detail h1{font-size:1.45rem;letter-spacing:-.05em;margin:6px 0}.message-body{font-size:.84rem;line-height:1.7;padding:20px 0}.message-context{border-top:1px solid #f1efed;padding-top:12px;color:var(--muted);font-size:.7rem}.message-context a{color:var(--teal);font-weight:700}.file-panel{padding:20px}.file-list{display:grid}.file-row{display:flex;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #f1efed}.file-row:last-child{border-bottom:0}.file-type{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#f0eeeb;color:#6e6962;font-size:.58rem;font-weight:800}.file-row .row-main strong{font-size:.74rem}.file-row .row-main small{display:block;color:var(--muted);font-size:.63rem;margin-top:3px}.file-row .proj-btn{margin-left:auto;white-space:nowrap}.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}.settings-side{display:grid;gap:16px}.role-chip{font-size:.64rem;font-weight:800;color:#2a7a3b;background:#e9f5ec;border:1px solid #cfe8d3;border-radius:999px;padding:4px 8px}.settings-role{display:flex;align-items:center;gap:9px;border-top:1px solid #f1efed;margin-top:14px;padding-top:14px}.settings-role strong,.settings-role small{display:block}.settings-role strong{font-size:.74rem}.settings-role small{font-size:.63rem;color:var(--muted);margin-top:3px}

@media(max-width:1000px){.sidebar{width:218px}.main-content{padding-left:22px;padding-right:22px}.schedule-layout,.settings-layout{grid-template-columns:1fr}.schedule-side{grid-template-columns:1fr 1fr}.reports-grid,.messages-grid{grid-template-columns:1fr}.week-grid{grid-template-columns:repeat(7,110px)}}
@media(max-width:680px){.drawer-backdrop{position:fixed;inset:0;background:rgba(22,22,22,.28);z-index:9}.drawer-backdrop.open{display:block}.sidebar{width:250px;padding-top:18px}.side-nav{margin-top:25px;overflow:auto}.main-content{padding-left:13px;padding-right:13px}.topbar-search{min-width:0}.topbar-search input{font-size:.72rem}.topbar-actions{margin-left:auto}.topbar-icon-link{display:none}.projects-title-row{align-items:flex-start}.projects-title{font-size:1.65rem}.projects-title-row .eyebrow{font-size:.58rem}.page-actions{gap:6px}.page-action-secondary{display:none}.projects-new-btn{padding:9px 11px;font-size:.68rem}.proj-toolbar{display:block;overflow:visible;border-bottom:0}.proj-tabs{overflow-x:auto;gap:18px;border-bottom:1px solid var(--line);padding-right:8px;scrollbar-width:none}.proj-tabs::-webkit-scrollbar{display:none}.proj-tabs a{font-size:.7rem;padding:11px 1px}.proj-toolbar-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:9px}.filter-menu{right:0;top:calc(100% + 7px);width:min(274px,calc(100vw - 26px))}.proj-sort-menu{right:0}.proj-layout{display:block}.proj-detail-col{margin-top:14px}.proj-rail-col{margin-top:14px}.proj-detail-card{padding:15px}.project-detail-actions{flex-wrap:wrap}.button-icon-only{width:100%;height:38px}.project-danger-zone{margin-top:10px}.team-grid{grid-template-columns:1fr}.schedule-side{grid-template-columns:1fr}.week-grid{grid-template-columns:repeat(7,100px)}.calendar-panel{overflow:hidden}.list-toolbar{flex-wrap:wrap}.list-toolbar .list-search{flex-basis:100%}.list-toolbar select{flex:1}.activity-row{align-items:flex-start}.activity-row time{display:none}.message-detail-head{display:block}.message-detail-head .proj-btn{margin-top:12px}.file-row{align-items:flex-start}.file-row .proj-btn{font-size:.63rem;padding:7px 8px}.funnel-steps{grid-template-columns:repeat(2,1fr)}.top-new-label{display:none}.new-menu{right:-4px}.mobile-nav{height:68px}.mobile-nav a{font-size:.8rem}.mobile-nav a svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.mobile-nav a.active{color:var(--ink)}.fab{bottom:84px}.fab-menu{bottom:139px}}

/* Finance ledger */
.finance-summary{margin-bottom:16px}
.finance-collected{background:#eef8f1;border-color:#d7ebdc}
.finance-filter-bar{align-items:center}
.finance-filter-bar select{min-width:145px}
.finance-table-panel{padding:20px}
.finance-table td:nth-child(5),.finance-table td:nth-child(7){white-space:nowrap}
.finance-table td:last-child{width:1%;text-align:right}
.finance-reconcile{font-size:.65rem;padding:6px 8px;white-space:nowrap}
.finance-note{font-size:.68rem;color:var(--muted);max-width:850px;margin:12px 3px}
.finance-note strong{color:#5e5953}
.milestone-complete-form{margin-left:auto;align-self:center}
.milestone-complete{width:23px;height:23px;border:1px solid #d8d2cc;border-radius:7px;background:#fff;color:#8e887f;font-size:.68rem;display:grid;place-items:center;padding:0}
.milestone-complete:hover{border-color:#e67e22;background:#fff4d6;color:#8a5a00}
@media(max-width:680px){.finance-filter-bar select{flex:1;min-width:0}.finance-filter-bar .button{width:100%}.finance-table{min-width:840px}}
@media(max-width:680px){.form-actions{bottom:68px}
/* A sticky submit bar and the global quick-add FAB both dock to the
   bottom-right on mobile and visually collide. A page mid-form doesn't need
   the FAB anyway — hide it while a sticky form-actions bar is present. */
body:has(.form-actions) .fab,body:has(.form-actions) .fab-menu{display:none}}
@media print{.sidebar,.topbar,.mobile-nav,.fab,.fab-menu,.page-actions,.proj-toolbar,.project-detail-actions,.project-danger-zone{display:none!important}.main-content{padding:0}.panel,.proj-card,.proj-detail-card,.rail-card{box-shadow:none}}
