@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap";:root{font-family:DM Sans,sans-serif;color:var(--text-primary);background:var(--surface-canvas);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}.wordmark{display:flex;align-items:center;gap:9px;color:inherit;text-decoration:none;font-weight:700;font-size:18px;letter-spacing:-.04em}.wordmark span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--synapse-cyan);color:var(--synapse-navy)}.wordmark svg{width:18px}.eyebrow{font:500 10px DM Mono,monospace!important;letter-spacing:.12em!important;color:var(--text-secondary)!important;margin:0 0 9px!important}.muted{color:var(--text-secondary)}.primary,.secondary,.icon-button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;font-weight:700;text-decoration:none;transition:.18s}.primary{padding:11px 15px;color:var(--text-on-navy);box-shadow:var(--shadow-button)}.primary:hover{transform:translateY(-1px)}.primary svg,.secondary svg{width:16px}.primary.wide{width:100%;padding:13px}.secondary{padding:10px 13px;background:var(--btn-secondary-bg);color:var(--text-body)}.secondary:hover{background:var(--btn-secondary-bg-hover)}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(320px,43%) 1fr;background:var(--surface-canvas)}.auth-intro{padding:40px clamp(34px,6vw,90px);background:var(--synapse-navy);color:var(--text-on-navy);display:flex;flex-direction:column;justify-content:space-between;min-height:680px}.auth-intro .wordmark{color:#fff}.auth-intro .wordmark span{background:var(--synapse-cyan);color:var(--synapse-navy)}.auth-intro h1{font:700 clamp(38px,4.5vw,65px)/1.04 Fraunces,serif;letter-spacing:-.055em;margin:0 0 20px}.auth-intro h1 i{color:var(--synapse-cyan);font-style:normal}.auth-intro>div>p:not(.eyebrow){max-width:390px;color:var(--text-on-navy-muted);line-height:1.65;font-size:16px}.intro-note{color:var(--text-on-navy-muted);display:flex;gap:10px;font-size:13px}.intro-note svg{color:var(--synapse-cyan);width:18px}.auth-card-wrap{display:grid;place-items:center;padding:28px}.auth-card{width:min(410px,100%)}.mobile-wordmark{display:none}.auth-card h2{font:700 32px/1.13 Fraunces,serif;letter-spacing:-.045em;margin:0 0 10px}.auth-card>.muted{line-height:1.55;margin:0 0 27px}.field{display:grid;gap:7px;margin:16px 0;color:var(--text-muted);font-size:13px;font-weight:700}.field input{width:100%;border:1px solid var(--border-input);border-radius:9px;padding:12px 13px;color:var(--text-primary);background:var(--surface-card);outline:none}.field input:focus{border-color:var(--focus-ring-color);box-shadow:var(--input-halo)}.form-error{border-radius:8px;background:var(--status-danger-bg);color:var(--status-danger-fg);padding:9px 11px;font-size:13px}.auth-foot{font-size:12px;line-height:1.5;color:var(--text-secondary);text-align:center;margin:18px 15px}.app-shell{display:flex;min-height:100vh}.sidebar{position:relative;overflow:hidden;display:flex;flex-direction:column;width:258px;flex:none;background:var(--synapse-navy);color:var(--text-on-navy);padding:24px 16px;min-height:100vh}.sidebar .wordmark{padding:0 8px;margin-bottom:32px}.main-nav{display:grid;gap:3px}.nav-item{display:flex;align-items:center;gap:11px;border-radius:8px;color:var(--nav-text);text-decoration:none;padding:10px;font-size:14px;font-weight:600}.nav-item svg{width:18px}.nav-item:hover,.nav-item.active{color:var(--text-on-navy)}.sidebar-section{border-top:1px solid var(--nav-divider);margin:24px 8px 0;padding-top:16px}.sidebar-section>span{padding:0 4px;color:var(--nav-label-muted);font:500 10px DM Mono,monospace;letter-spacing:.09em}.project-nav{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--nav-text-strong);padding:8px 3px;margin-top:6px;border-radius:7px;font-size:13px}.project-nav:hover{background:var(--nav-hover-solid)}.project-nav b{display:grid;place-items:center;flex:none;height:24px;width:24px;background:var(--nav-chip-bg);border-radius:6px;font-size:11px}.project-nav em{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-empty{font-size:12px;color:var(--nav-label-muted);padding:0 4px}.sidebar-bottom{margin-top:auto}.profile{width:100%;margin-top:16px;border:0;border-top:1px solid var(--nav-divider);background:transparent;padding:16px 4px 2px;color:#fff;text-align:left;display:flex;align-items:center;gap:9px}.profile>span,.avatar{display:grid;place-items:center;width:30px;height:30px;flex:none;border-radius:50%;color:var(--synapse-navy);font-weight:700}.profile div{min-width:0;display:grid;gap:1px;flex:1}.profile b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile small{color:var(--nav-label-muted);font-size:11px}.profile svg{width:16px;color:var(--nav-label-muted)}.workspace{min-width:0;flex:1}.topbar{height:69px;display:flex;align-items:center;gap:14px;padding:0 32px;border-bottom:1px solid var(--border-default);background:var(--surface-topbar)}.global-search{width:min(410px,52vw);display:flex;align-items:center;gap:8px;color:var(--text-secondary);background:var(--surface-sunken);border-radius:8px;padding:0 10px}.global-search svg{width:16px}.global-search input{height:35px;width:100%;border:0;background:transparent;outline:0;font-size:13px}.topbar>.icon-button{margin-left:auto}.icon-button{width:35px;height:35px;background:transparent;color:var(--text-muted)}.icon-button:hover{background:var(--surface-hover)}.icon-button svg{width:18px}.menu-button{display:none}.avatar{width:31px;height:31px;font-size:13px}.page{max-width:1320px;margin:auto;padding:42px clamp(22px,4vw,60px) 55px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:29px}.page-heading h1{margin:0 0 6px;font:700 35px/1.05 Fraunces,serif;letter-spacing:-.05em;color:var(--text-primary)}.page-heading>div>p:last-child{margin:0;color:var(--text-secondary);font-size:14px}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px;margin-bottom:17px}.metric{padding:21px;border-radius:13px;min-height:130px;display:flex;flex-direction:column}.metric span{font-size:13px;color:var(--text-muted)}.metric strong{font:700 39px/1.1 Fraunces,serif;color:var(--text-primary);margin-top:auto}.metric small{font-size:12px;color:var(--text-secondary);margin-top:6px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);gap:17px}.surface{background:var(--surface-card);border:1px solid var(--border-default);border-radius:13px;box-shadow:var(--shadow-card)}.activity-card{padding:23px}.section-head{display:flex;justify-content:space-between;gap:10px;align-items:start}.section-head h2,.setting h2{font:700 19px Fraunces,serif;letter-spacing:-.03em;margin:0 0 5px;color:var(--text-primary)}.section-head p,.setting p{font-size:13px;line-height:1.5;color:var(--text-secondary);margin:0}.section-head a,.text-link{display:inline-flex;align-items:center;gap:2px;color:var(--link-color);text-decoration:none;font-size:13px;font-weight:700}.section-head a svg,.text-link svg{width:15px}.project-list{margin-top:15px}.project-list>a{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--text-primary);border-top:1px solid var(--border-subtle);padding:13px 0}.project-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--accent-icon-bg);color:var(--accent-icon-fg)}.project-icon svg{width:17px}.project-list div{display:grid;gap:2px;flex:1}.project-list b{font-size:13px}.project-list small{font-size:12px;color:var(--text-faint)}.project-list>a>svg{width:16px;color:var(--text-faint)}.next-card{padding:25px;background:var(--brand-feature-bg);color:#fff}.next-card .eyebrow{color:var(--synapse-cyan)!important}.next-card h2{font:700 28px/1.1 Fraunces,serif;letter-spacing:-.04em;margin:0 0 12px}.next-card p:not(.eyebrow){color:var(--text-on-navy-muted);font-size:14px;line-height:1.6}.next-card .text-link{color:var(--synapse-cyan);margin-top:10px}.table-surface{overflow:hidden}.table-toolbar{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border-subtle);padding:11px 16px;color:var(--text-faint)}.table-toolbar svg{width:16px}.table-toolbar input{border:0;outline:0;flex:1;font-size:13px}.table-toolbar span{font-size:12px;color:var(--text-secondary)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{background:var(--surface-raised);color:var(--text-secondary);font:500 10px DM Mono,monospace;letter-spacing:.08em;text-transform:uppercase}th,td{padding:14px 17px;border-bottom:1px solid var(--border-subtle);white-space:nowrap;font-size:13px}td{color:var(--text-muted)}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-hover)}.table-link{font-weight:700;color:var(--link-color);text-decoration:none}.status{display:inline-block;border-radius:20px;padding:4px 8px;background:var(--status-info-bg);color:var(--status-info-fg);text-transform:capitalize;font-size:11px;font-weight:700}.status-open,.status-under-review,.status-pending{background:var(--status-warn-bg);color:var(--status-warn-fg)}.status-closed,.status-approved{background:var(--status-success-bg);color:var(--status-success-fg)}.status-draft{background:var(--status-neutral-bg);color:var(--status-neutral-fg)}.table-loading{padding:40px;text-align:center;color:var(--text-secondary)}.empty{display:grid;place-items:center;text-align:center;padding:47px 24px;min-height:245px}.empty>div{max-width:385px}.empty div>svg{width:29px;height:29px;color:var(--accent-icon-fg);margin-bottom:4px}.empty h3{margin:8px 0;font:700 21px Fraunces,serif;color:var(--text-primary)}.empty p{font-size:13px;line-height:1.55;color:var(--text-secondary);margin:0 auto 20px}.empty-hero{padding:33px}.empty-hero>svg{width:30px;height:30px;color:var(--accent-icon-fg)}.empty-hero h2{font:700 24px Fraunces,serif;margin:11px 0 8px;color:var(--text-primary)}.empty-hero p{font-size:14px;color:var(--text-secondary);max-width:560px;line-height:1.55}.settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.setting{padding:21px}.setting p{min-height:84px}.modal-backdrop{position:fixed;z-index:10;top:0;right:0;bottom:0;left:0;background:var(--overlay-backdrop);display:grid;place-items:center;padding:20px}.modal{position:relative;width:min(420px,100%);background:var(--surface-card);border-radius:14px;padding:27px;box-shadow:var(--shadow-modal)}.modal h2{font:700 28px Fraunces,serif;letter-spacing:-.04em;margin:0 0 18px}.close{position:absolute;right:14px;top:14px;border:0;background:transparent;color:var(--text-secondary)}.close svg{width:19px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:23px}@media(max-width:850px){.sidebar{position:fixed;z-index:5;left:-270px;transition:left .2s;box-shadow:10px 0 30px #1234}.sidebar.open{left:0}.menu-button{display:inline-flex}.topbar{padding:0 16px}.global-search{width:auto;flex:1}.page{padding:31px 21px}.settings-grid,.dashboard-grid{grid-template-columns:1fr}.next-card{min-height:210px}}@media(max-width:620px){.auth-page{display:block}.auth-intro{display:none}.auth-card-wrap{min-height:100vh;padding:28px 22px}.mobile-wordmark{display:flex;align-items:center;gap:7px;font-weight:700;margin-bottom:42px}.mobile-wordmark svg{color:var(--text-secondary)}.metric-grid{grid-template-columns:1fr;gap:10px}.metric{min-height:102px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:31px}.page-heading .primary{width:100%}.global-search{display:none}.topbar>.icon-button{margin-left:auto}.table-toolbar{padding-left:12px}.empty{min-height:210px}.project-list>a{padding:11px 0}}.page-actions{display:flex;gap:9px;align-items:center}.success-note{margin:-10px 0 20px;padding:10px 12px;border-radius:9px;background:var(--status-success-bg);color:var(--status-success-fg);font-size:13px;font-weight:600}.setting-status{display:block;border-radius:8px;background:var(--surface-hover);color:var(--text-muted);font-size:12px;line-height:1.45;padding:9px 10px}@media(max-width:620px){.page-actions{width:100%;display:grid;grid-template-columns:1fr}.page-actions .secondary{width:100%}}.inline-form{display:flex;gap:7px;margin-top:10px}.inline-form input{min-width:0;flex:1;border:1px solid var(--border-input);border-radius:8px;padding:9px;font-size:12px}.inline-form .primary{padding:9px 10px;font-size:12px}.allowlist{display:grid;gap:5px;margin-top:12px}.allowlist>span{font:500 12px DM Mono,monospace;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis}@media(max-width:620px){.inline-form{display:grid;grid-template-columns:1fr}.inline-form .primary{width:100%}}.back-link{display:inline-flex;align-items:center;gap:4px;color:var(--link-color);text-decoration:none;font-size:13px;font-weight:700;margin-bottom:16px}.back-link svg{width:16px}.record-header{padding:24px}.record-header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.status-select{border:1px solid var(--border-input);border-radius:20px;padding:5px 10px;font:600 11px DM Mono,monospace;text-transform:capitalize;color:var(--text-body);background:var(--status-info-bg)}.record-title-input{width:100%;border:0;outline:0;font:700 28px/1.15 Fraunces,serif;letter-spacing:-.03em;color:var(--text-primary);padding:4px 0;background:transparent}.record-description-input{width:100%;border:0;outline:0;resize:vertical;min-height:44px;font-size:14px;color:var(--text-muted);background:transparent;padding:4px 0;font-family:inherit}.record-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border-subtle)}.record-meta-grid label{display:grid;gap:5px;font-size:12px;font-weight:700;color:var(--text-muted)}.record-meta-grid select,.record-meta-grid input,.assignee-picker{border:1px solid var(--border-input);border-radius:8px;padding:8px 9px;font-size:13px;color:var(--text-primary);background:var(--surface-card)}.record-tabs{display:flex;gap:4px;margin:18px 0 -1px}.record-tab{border:0;background:transparent;padding:10px 14px;border-radius:9px 9px 0 0;font-size:13px;font-weight:700;color:var(--text-secondary);text-transform:capitalize}.record-tab.active{background:var(--surface-card);color:var(--text-primary);border:1px solid var(--border-default);border-bottom-color:var(--surface-card)}.record-tab-body{padding:22px;border-top-left-radius:0}.overview-grid{display:grid;gap:16px}.overview-grid dt{font:500 11px DM Mono,monospace;letter-spacing:.06em;color:var(--text-secondary);margin-bottom:4px}.overview-grid dd{margin:0;color:var(--text-body);font-size:14px;line-height:1.5}.comment-thread{display:grid;gap:14px}.comment{border-bottom:1px solid var(--border-subtle);padding-bottom:12px}.comment b{font-size:13px;color:var(--text-primary)}.comment small{color:var(--text-faint);margin-left:8px;font-size:11px}.comment p{margin:6px 0 0;font-size:13px;color:var(--text-muted);line-height:1.5}.comment-form{display:grid;gap:8px;margin-top:6px}.comment-form textarea{border:1px solid var(--border-input);border-radius:9px;padding:10px;font-size:13px;min-height:70px;font-family:inherit;resize:vertical}.comment-form button{justify-self:flex-end}.attachments-panel{display:grid;gap:16px}.dropzone{border:1.5px dashed var(--border-input);border-radius:12px;padding:26px;text-align:center;color:var(--accent-icon-fg);cursor:pointer}.dropzone.dragging{background:var(--surface-active);border-color:var(--focus-ring-color)}.dropzone svg{width:22px}.dropzone p{margin:8px 0 0;font-size:13px;color:var(--text-secondary)}.attachment-list{display:grid;gap:6px}.attachment-row{display:flex;align-items:center;gap:8px;border:1px solid var(--border-subtle);border-radius:8px;padding:9px 11px;background:var(--surface-card);text-align:left;font-size:13px;color:var(--text-body);font-weight:600}.attachment-row svg{width:15px;color:var(--accent-icon-fg)}.activity-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.activity-list li{display:flex;justify-content:space-between;border-bottom:1px solid var(--border-subtle);padding-bottom:8px;font-size:13px;color:var(--text-body);text-transform:capitalize}.activity-list li small{color:var(--text-faint);text-transform:none}@media(max-width:620px){.record-meta-grid{grid-template-columns:1fr}}.overdue-tag{margin-left:6px;color:var(--status-danger-fg);font:700 10px DM Mono,monospace;text-transform:uppercase;letter-spacing:.04em}.response-text{background:var(--surface-hover);border-radius:9px;padding:12px;font-size:13px;color:var(--text-body);line-height:1.55;margin:0 0 10px}.revision-tag{margin-left:auto;font:600 10px DM Mono,monospace;letter-spacing:.04em;color:var(--text-faint);text-transform:uppercase}.revision-tag.current{color:var(--status-success-fg)}.workflow-panel{display:grid;gap:16px}.workflow-steps{list-style:none;margin:0;padding:0;display:grid;gap:10px}.workflow-step{border:1px solid var(--border-subtle);border-radius:10px;padding:13px}.workflow-step>div{display:flex;align-items:center;gap:9px;justify-content:space-between}.workflow-step b{font-size:13px;color:var(--text-primary)}.workflow-step p{margin:8px 0 0;font-size:13px;color:var(--text-muted)}.workflow-step small{color:var(--text-faint);font-size:11px}.workflow-step.response-approved,.workflow-step.response-approved_as_noted{border-color:var(--status-success-border)}.workflow-step.response-rejected,.workflow-step.response-revise_and_resubmit{border-color:var(--status-danger-border)}.status-approved-as-noted{background:var(--status-success-bg);color:var(--status-success-fg)}.status-revise-and-resubmit,.status-rejected{background:var(--status-danger-bg);color:var(--status-danger-fg)}.respond-form{margin-top:10px;display:grid;gap:8px}.respond-form textarea{border:1px solid var(--border-input);border-radius:8px;padding:8px;font-size:13px;min-height:50px;font-family:inherit;resize:vertical}.respond-actions{display:flex;gap:6px;flex-wrap:wrap}.respond-actions button{font-size:12px;padding:8px 10px;text-transform:capitalize}.workflow-setup{display:grid;gap:10px}.approver-select{display:grid;gap:6px}.approver-option{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-body);font-weight:600}.daily-log-sections{display:grid;gap:20px}.log-section h3{margin:0 0 8px;font:700 14px Fraunces,serif;text-transform:capitalize;color:var(--text-primary)}.log-entry{border-bottom:1px solid var(--border-subtle);padding-bottom:8px;margin-bottom:8px}.log-entry p{margin:0 0 3px;font-size:13px;color:var(--text-body)}.log-entry small{color:var(--text-faint);font-size:11px}.cost-code-form{margin-bottom:16px}.budget-grid tfoot td{border-top:2px solid var(--border-input);background:var(--surface-raised)}.budget-cell-input{width:100%;min-width:80px;border:1px solid transparent;border-radius:6px;padding:4px 6px;font-size:13px;background:transparent;color:var(--text-primary)}.budget-cell-input:hover,.budget-cell-input:focus{border-color:var(--border-input);background:var(--surface-card)}.variance-negative{color:var(--status-danger-fg);font-weight:700}.variance-positive{color:var(--status-success-fg);font-weight:700}.snapshots-panel{margin-top:20px;padding:22px}.snapshots-panel h2{margin:0 0 12px;font:700 18px Fraunces,serif;color:var(--text-primary)}.snapshot-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.snapshot-detail{margin-top:10px;border:1px solid var(--border-subtle);border-radius:9px;overflow:hidden}.commitment-financials,.change-event-financials{display:grid;gap:16px}.sov-total{display:flex;justify-content:space-between;padding:10px 0;font-size:13px;color:var(--text-body);font-weight:700;border-top:1px solid var(--border-subtle);margin-top:4px}.requisition-card{border:1px solid var(--border-subtle);border-radius:10px;padding:13px}.requisition-card>div{display:flex;justify-content:space-between;align-items:center}.requisition-card small{color:var(--text-faint);font-size:11px}.change-order-card{border:1px solid var(--border-subtle);border-radius:10px;padding:13px;display:flex;justify-content:space-between;align-items:center;gap:10px}.detail-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:16px}.detail-form label{display:grid;gap:5px;font-size:12px;font-weight:700;color:var(--text-muted)}.detail-form input,.detail-form select{border:1px solid var(--border-input);border-radius:8px;padding:8px 9px;font-size:13px}.gantt-track{position:relative;height:16px;min-width:140px;background:var(--surface-sunken);border-radius:6px}.gantt-bar{position:absolute;top:0;bottom:0;background:var(--border-accent-hover);border-radius:6px;overflow:hidden}.gantt-fill{display:block;height:100%;background:var(--link-color)}.global-search{position:relative}.search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--surface-card);border:1px solid var(--border-default);border-radius:10px;box-shadow:var(--shadow-dropdown);max-height:340px;overflow:auto;z-index:6}.search-result{display:block;padding:10px 14px;text-decoration:none;border-bottom:1px solid var(--border-subtle)}.search-result:last-child{border-bottom:0}.search-result:hover{background:var(--surface-hover)}.search-result b{display:block;font-size:13px;color:var(--text-primary)}.search-result small{color:var(--text-faint);font-size:11px;text-transform:capitalize}.search-empty{padding:14px;margin:0;font-size:12px;color:var(--text-faint);text-align:center}.saved-views-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:11px 16px;border-bottom:1px solid var(--border-subtle)}.saved-views-bar select{border:1px solid var(--border-input);border-radius:8px;padding:6px 8px;font-size:12px}.saved-views-bar button{font-size:12px;padding:7px 10px}.drawer-backdrop{position:fixed;z-index:20;top:0;right:0;bottom:0;left:0;background:var(--overlay-backdrop);display:flex;justify-content:flex-end}.drawer{position:relative;width:min(460px,100%);height:100%;overflow-y:auto;background:var(--surface-card);padding:28px 27px 24px;box-shadow:var(--shadow-drawer);display:flex;flex-direction:column;animation:drawer-in .22s ease}@keyframes drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer h2{font:700 28px Fraunces,serif;letter-spacing:-.04em;margin:0 0 6px}.drawer>.muted{margin:0 0 4px;font-size:13px}.drawer-body{flex:1}.drawer-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.drawer .field textarea,.drawer .field select{width:100%;border:1px solid var(--border-input);border-radius:9px;padding:11px 12px;color:var(--text-primary);background:var(--surface-card);outline:none;font-size:14px;font-family:inherit}.drawer .field textarea{min-height:84px;resize:vertical}.drawer .field textarea:focus,.drawer .field select:focus{border-color:var(--focus-ring-color);box-shadow:var(--input-halo)}.drawer .field .assignee-picker{width:100%}.drawer .modal-actions{margin-top:18px}@media(max-width:620px){.drawer{width:100%}.drawer-grid{grid-template-columns:1fr}}.drawing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.drawing-card{display:flex;align-items:center;gap:12px;padding:18px;border-radius:13px;background:var(--surface-card);border:1px solid var(--border-default);box-shadow:var(--shadow-card);text-decoration:none;color:inherit;transition:.18s}.drawing-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover);border-color:var(--border-accent-hover)}.drawing-card-icon{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:10px;background:var(--accent-icon-bg);color:var(--accent-icon-fg)}.drawing-card-icon svg{width:19px}.drawing-card-body{display:grid;gap:3px;flex:1;min-width:0}.drawing-card-body b{font-size:14px;color:var(--text-primary)}.drawing-card-body small{font-size:12px;color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.pin-count-badge{font:600 11px DM Mono,monospace;color:var(--status-info-fg);background:var(--status-info-bg);border-radius:20px;padding:5px 9px;flex:none;white-space:nowrap}.viewer-page{max-width:none;padding:11px clamp(6px,1vw,15px) 14px}.viewer-page>.back-link{margin-bottom:6px;font-size:12px}.viewer-page>.page-heading{margin-bottom:12px}.viewer-page>.page-heading .eyebrow{margin-bottom:4px!important}.viewer-page>.page-heading h1{margin-bottom:3px;font-size:25px;line-height:1.08}.viewer-page>.page-heading>div>p:last-child{font-size:12px}.viewer-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:17px;align-items:start}.viewer-grid.markups-panel-hidden{grid-template-columns:minmax(0,1fr)}.viewer-surface{min-width:0;padding:0;overflow:hidden}.viewer-toolbar{display:flex;align-items:center;gap:10px;padding:11px 16px;border-bottom:1px solid var(--border-subtle);font-size:13px;color:var(--text-muted)}.viewer-toolbar-spacer{flex:1}.viewer-canvas-scroll{width:100%;min-width:0;overflow:auto;padding:24px;background:var(--surface-sunken);display:flex;height:80vh}.viewer-canvas-scroll.focus-centering{padding-block:max(24px,calc(40vh - 24px));padding-inline:max(24px,calc(50% - 24px))}.viewer-page-wrap{position:relative;display:inline-block;line-height:0;touch-action:none;margin:auto;-webkit-user-select:none;user-select:none}.viewer-page-wrap canvas,.viewer-page-wrap svg,.viewer-page-wrap foreignObject,.viewer-page-wrap .markup-text-note{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.viewer-toolbar-secondary{min-height:40px;border-top:1px solid var(--border-subtle);padding:4px 10px;gap:6px;font-size:12px}.viewer-toolbar-secondary .icon-button{width:30px;height:30px}.viewer-toolbar-secondary .icon-button svg{width:16px}.tool-group{display:flex;align-items:center;gap:4px}.snap-status,.selection-count{white-space:nowrap;border-radius:999px;padding:4px 8px;background:var(--status-info-bg);color:var(--status-info-fg);font:600 10px DM Mono,monospace}.snap-status-empty,.snap-status-error{background:var(--status-warn-bg);color:var(--status-warn-fg)}.icon-button.active,.secondary.active{background:var(--surface-active);color:var(--link-color)}.dropdown-wrap{position:relative}.dropdown-panel{position:absolute;top:calc(100% + 6px);left:0;z-index:12;min-width:190px;background:var(--surface-card);border-radius:10px;box-shadow:var(--shadow-dropdown);padding:8px;display:grid;gap:2px}.dropdown-item{border:0;background:transparent;text-align:left;padding:9px 10px;border-radius:7px;font-size:13px;font-weight:600;color:var(--text-body)}.dropdown-item:hover{background:var(--surface-hover)}.layers-panel{right:0;left:auto;width:min(320px,calc(100vw - 32px));max-height:min(420px,60vh);overflow-y:auto;overscroll-behavior:contain}.layer-row{display:flex;align-items:flex-start;gap:8px;min-width:0;padding:7px 8px;font-size:13px;color:var(--text-body);font-weight:600}.layer-row input{flex:none;margin-top:2px}.layer-name{display:-webkit-box;min-width:0;max-height:2.7em;overflow:hidden;overflow-wrap:anywhere;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.color-row{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;color:var(--text-muted);margin:8px 0}.color-row input[type=color]{width:34px;height:26px;padding:0;border:1px solid var(--border-input);border-radius:6px;margin:0}.markup-shapes-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.snap-target{pointer-events:none}.snap-target circle:first-child{fill:#42e8ff33;stroke:var(--text-primary);stroke-width:1.5}.snap-target circle:last-child{fill:var(--text-primary)}.snap-target-edge circle:first-child{stroke-dasharray:3 2}.snap-target-intersection circle:first-child{fill:#42e8ff66;stroke-width:2.5}.snap-target-intersection circle:last-child{fill:var(--status-danger-fg)}.markup-shape.selected{filter:drop-shadow(0 0 3px var(--synapse-cyan)) drop-shadow(0 0 2px var(--text-primary))}.markup-hit{pointer-events:stroke;cursor:pointer}.markup-handle{fill:var(--surface-canvas);stroke:var(--link-color);stroke-width:2;cursor:grab;pointer-events:auto}.markup-handle:active{cursor:grabbing}.markup-text-note{display:inline-block;max-width:210px;background:var(--surface-note);border:1.5px solid;border-radius:6px;padding:5px 8px;font-size:12px;line-height:1.4;font-weight:600;box-shadow:var(--pin-note-shadow);pointer-events:auto;cursor:pointer}.markup-text-note.callout{background:var(--surface-card)}.markup-text-note.selected{box-shadow:0 0 0 2px var(--link-color)}.markup-list-edit,.markup-list-delete{width:29px;height:29px;flex:none;color:var(--text-secondary)}.markup-list-edit:hover{background:var(--status-success-bg);color:var(--link-color)}.markup-list-delete:hover{background:var(--status-danger-bg);color:var(--status-danger-fg)}.pin-list li{display:flex;align-items:center;gap:4px}.pin-list li>.pin-list-item{flex:1;min-width:0}.pin-list-panel{padding:20px}.pin-marker{position:absolute;transform:translate(-50%,-100%);border:0;background:transparent;padding:0;cursor:pointer;color:var(--link-color);filter:drop-shadow(var(--pin-shadow))}.pin-marker svg{width:var(--pin-size,28px);height:var(--pin-size,28px)}.pin-marker.pin-label{color:var(--text-faint)}.pin-marker.pin-rfis{color:#7957df}.pin-marker.pin-punch-list{color:#b36a22}.pin-marker.pin-observations{color:var(--status-danger-fg)}.pin-marker.pin-inspections{color:#1686bd}.pin-marker.selected{transform:translate(-50%,-100%) scale(1.15);filter:drop-shadow(var(--pin-shadow-selected))}.markup-editor-backdrop{z-index:80;background:var(--overlay-backdrop-light)}.markup-editor-modal{width:min(390px,calc(100vw - 24px));max-height:calc(100vh - 40px);overflow-y:auto;cursor:default;text-align:left;padding:24px}.markup-editor-modal .eyebrow{margin-bottom:10px!important;padding-right:26px}.markup-editor-drag-handle{display:flex;align-items:center;gap:7px;margin:-5px 26px 10px -4px;padding:5px 4px;color:var(--text-faint);cursor:move;touch-action:none;-webkit-user-select:none;user-select:none}.markup-editor-drag-handle:active{cursor:grabbing}.markup-editor-drag-handle:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px;border-radius:6px}.markup-editor-drag-handle svg{width:17px;height:17px;flex:none}.markup-editor-drag-handle .eyebrow{margin:0!important;padding:0}.markup-editor-modal select,.markup-editor-modal input{width:100%;border:1px solid var(--border-input);border-radius:8px;padding:8px 9px;font-size:13px;margin-top:4px}.markup-appearance-fields{display:grid;gap:9px;padding:10px 0;margin:10px 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.appearance-slider,.appearance-select{display:grid;gap:4px;color:var(--text-muted);font-size:12px;font-weight:700}.appearance-slider>span,.appearance-select>span{display:flex;align-items:center;justify-content:space-between;gap:8px}.appearance-slider output{color:var(--link-color);font:600 11px DM Mono,monospace}.markup-editor-modal .appearance-slider input[type=range]{height:18px;margin:0;padding:0;border:0;border-radius:0;accent-color:var(--text-secondary)}.markup-editor-modal .appearance-select select{margin:0;padding:6px 8px}.pending-markup{pointer-events:none;opacity:.85}.pin-tool-select{display:grid;gap:2px;font-size:12px;font-weight:700;color:var(--text-muted);margin-bottom:10px}.pin-mode-actions{display:grid;gap:6px}.pin-mode-actions button{justify-content:flex-start;font-size:12px}.pin-label-toggle{margin-top:10px;font-size:12px}.pin-peek b{display:block;margin:2px 0 6px;font-size:14px;color:var(--text-primary)}.pin-peek .status{margin-bottom:8px}.pin-peek .text-link{margin-top:2px}.pin-delete{color:var(--status-danger-fg);margin-top:10px;font-size:12px}.markup-context-menu{position:fixed;z-index:70;width:210px;padding:6px;background:var(--surface-card);border:1px solid var(--border-input);border-radius:10px;box-shadow:var(--shadow-context-menu)}.markup-context-menu button,.markup-context-menu a{display:flex;align-items:center;gap:8px;width:100%;border:0;border-radius:7px;background:transparent;padding:9px 10px;color:var(--text-body);font-family:inherit;font-size:13px;font-weight:600;text-align:left;text-decoration:none}.markup-context-menu button:hover,.markup-context-menu button:focus-visible,.markup-context-menu a:hover,.markup-context-menu a:focus-visible{background:var(--surface-hover);outline:none}.markup-context-menu svg{width:15px;height:15px}.markup-context-menu .danger{color:var(--status-danger-fg)}.markup-link-tooltip{position:fixed;z-index:75;max-width:240px;padding:6px 10px;border-radius:8px;background:var(--surface-card);color:var(--text-body);border:1px solid var(--border-input);font-size:12px;line-height:1.4;font-weight:600;box-shadow:var(--shadow-context-menu);pointer-events:none}.markup-filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.markup-filter-row .global-search{flex:1;min-width:140px;background:var(--surface-sunken)}.markup-filter-row select{border:1px solid var(--border-input);border-radius:8px;padding:7px 8px;font-size:12px;color:var(--text-body);background:var(--surface-card)}.pin-list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:4px}.pin-list-item{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;padding:9px 6px;border-radius:8px;text-align:left;cursor:pointer}.pin-list-item:hover{background:var(--surface-hover)}.pin-list-item.active{background:var(--status-success-bg)}.pin-list-item svg{width:16px;color:var(--accent-icon-fg);flex:none}.pin-list-item div{display:grid;gap:1px;min-width:0}.pin-list-item b{font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pin-list-item small{font-size:11px;color:var(--text-faint)}.pin-location-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.pin-location-list .text-link{font-size:13px}.pin-location-list svg{width:14px}@media(max-width:850px){.viewer-grid{grid-template-columns:1fr}.viewer-canvas-scroll{height:68vh}.viewer-toolbar{flex-wrap:wrap;row-gap:6px}}@media(max-width:620px){.viewer-page{padding:8px 6px 12px}.viewer-toolbar .icon-button,.viewer-toolbar .secondary{min-width:44px;min-height:44px}.viewer-toolbar .tool-group{width:100%;flex-wrap:wrap}.layers-panel{position:fixed;top:16vh;right:16px;left:16px;width:auto;max-height:68vh;transform:none}.markup-filter-row select{flex:1;min-width:0}.markup-editor-backdrop{padding:12px}.markup-editor-modal{width:calc(100vw - 24px);max-height:calc(100vh - 24px);padding:21px}}.workspace-metrics{margin-bottom:31px}.tool-group-section{margin-bottom:28px}.tool-group-section:last-of-type{margin-bottom:0}.tool-group-heading{font:700 12px DM Mono,monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);margin:0 0 12px}.tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.tool-tile{display:flex;align-items:center;gap:14px;padding:19px;border-radius:13px;background:var(--surface-card);border:1px solid var(--border-default);box-shadow:var(--shadow-card);text-decoration:none;color:inherit;transition:.18s}.tool-tile:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover);border-color:var(--border-accent-hover)}.tool-tile-icon{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:11px;background:var(--accent-icon-bg);color:var(--accent-icon-fg)}.tool-tile-icon svg{width:20px}.tool-tile-body{flex:1;min-width:0;display:grid;gap:2px}.tool-tile-body h3{margin:0;font:700 15px Fraunces,serif;letter-spacing:-.02em;color:var(--text-primary)}.tool-tile-body p{margin:0;font-size:12.5px;color:var(--text-faint);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.tool-tile-count{flex:none;font:600 11px DM Mono,monospace;color:var(--status-info-fg);background:var(--status-info-bg);border-radius:20px;padding:5px 9px;white-space:nowrap}.tool-tile-chevron{flex:none;width:16px;color:var(--text-faint)}@media(max-width:620px){.tool-grid{grid-template-columns:1fr}.tool-tile-count{display:none}}:root{--synapse-navy:#07152f;--synapse-ink:#101c3d;--synapse-blue:#168bff;--synapse-cyan:#42e8ff;--synapse-violet:#8b5cf6;--gradient-primary:linear-gradient(135deg,#168bff,#6558e8);--gradient-primary-hover:linear-gradient(135deg,#0d77e8,#7549e8);--shadow-button:0 5px 16px #168bff30;--shadow-button-hover:0 8px 22px #168bff40;--gradient-avatar:linear-gradient(135deg,#42e8ff,#8b5cf6);--nav-hover-gradient:linear-gradient(90deg,#168bff33,#8b5cf626);--text-on-navy:#f8faff;--text-on-navy-muted:#a9b9df;--nav-text:#aab8db;--nav-text-strong:#dbe6ff;--nav-label-muted:#788ab9;--nav-divider:#1c3971;--nav-hover-solid:#122d67;--nav-chip-bg:#243f7d;--brand-feature-bg:#0b1d4a;--pin-shadow:0 2px 4px #07152f55;--pin-shadow-selected:0 3px 8px #07152f70;--pin-note-shadow:0 3px 8px #07152f22;--shadow-drawer:-18px 0 55px #07152f33;--overlay-backdrop-light:#07152f33;--surface-note:#fffdf4}:root[data-theme=light]{color-scheme:light;--surface-canvas:#f5f8ff;--surface-card:#fff;--surface-sunken:#eff3fc;--surface-raised:#fafbff;--surface-topbar:#fbfcff;--surface-hover:#f5f7fd;--surface-active:#d9efff;--border-default:#dce3f3;--border-subtle:#edf1ec;--border-input:#d7def0;--border-accent-hover:#cbeaff;--text-primary:#101c3d;--text-secondary:#667397;--text-muted:#53668f;--text-faint:#7c8db4;--text-body:#2a4275;--link-color:#176bda;--focus-ring-color:#258cff;--input-halo:0 0 0 3px #42e8ff77;--shadow-card:0 7px 22px #07152f0a;--shadow-card-hover:0 10px 24px #1a3a2c14;--shadow-modal:0 20px 55px #07152f66;--shadow-dropdown:0 14px 30px #07152f30;--shadow-context-menu:0 14px 34px #07152f40;--overlay-backdrop:#07152f88;--btn-secondary-bg:#edf2ff;--btn-secondary-bg-hover:#e1e9ff;--accent-icon-bg:#e2f4ff;--accent-icon-fg:#227bd5;--status-info-bg:#e8f1ff;--status-info-fg:#39669b;--status-warn-bg:#fff2cf;--status-warn-fg:#8b6414;--status-success-bg:#ddf7f5;--status-success-fg:#14766f;--status-success-border:#b7e8e3;--status-neutral-bg:#edf0f7;--status-neutral-fg:#687699;--status-danger-bg:#ffe2eb;--status-danger-fg:#bd285a;--status-danger-border:#ffc4d8;--metric-mint-grad:linear-gradient(135deg,#dcf9ff,#e8f3ff);--metric-lavender-grad:linear-gradient(135deg,#ece8ff,#f4ecff);--metric-peach-grad:linear-gradient(135deg,#e7edff,#f0eaff)}:root[data-theme=dark]{color-scheme:dark;--surface-canvas:#0b1220;--surface-card:#121b33;--surface-sunken:#0e1830;--surface-raised:#101a33;--surface-topbar:#0f1830;--surface-hover:#1a2544;--surface-active:#1d3a63;--border-default:#26314f;--border-subtle:#1c2540;--border-input:#2b3660;--border-accent-hover:#33507e;--text-primary:#e8edfb;--text-secondary:#98a6c9;--text-muted:#a3b1d6;--text-faint:#7484aa;--text-body:#c3ceec;--link-color:#6cb2ff;--focus-ring-color:#42e8ff;--input-halo:0 0 0 3px #42e8ff55;--shadow-card:0 4px 14px #00000050;--shadow-card-hover:0 10px 24px #00000060;--shadow-modal:0 20px 55px #00000080;--shadow-dropdown:0 14px 30px #00000055;--shadow-context-menu:0 14px 34px #00000066;--overlay-backdrop:#000000b3;--btn-secondary-bg:#182544;--btn-secondary-bg-hover:#20305c;--accent-icon-bg:#15263f;--accent-icon-fg:#6ab7ff;--status-info-bg:#152b4a;--status-info-fg:#8fc4ff;--status-warn-bg:#3a2e10;--status-warn-fg:#f0c55c;--status-success-bg:#0f2e2b;--status-success-fg:#5fe0d2;--status-success-border:#1c5c53;--status-neutral-bg:#232c48;--status-neutral-fg:#b6c1e4;--status-danger-bg:#3a1524;--status-danger-fg:#ff86ab;--status-danger-border:#5c2438;--metric-mint-grad:linear-gradient(135deg,#0d2b38,#0e2440);--metric-lavender-grad:linear-gradient(135deg,#241d47,#2a1f4a);--metric-peach-grad:linear-gradient(135deg,#1c2247,#22203f)}body{background:var(--surface-canvas)}.wordmark{width:190px;max-width:100%;letter-spacing:0}.wordmark img{display:block;width:100%;height:auto}.sidebar{background:radial-gradient(circle at 18% 8%,#103479 0,var(--synapse-navy) 38%,#080d24 100%)}.auth-intro{background:radial-gradient(circle at 20% 30%,#113b88 0,var(--synapse-navy) 44%,#0e0928 100%);position:relative;overflow:hidden}.auth-intro:after{content:"";position:absolute;width:430px;height:430px;border:1px solid #168bff33;border-radius:50%;right:-250px;bottom:-180px;box-shadow:0 0 70px #168bff22;pointer-events:none}.auth-intro>*{position:relative;z-index:1}.primary{background:var(--gradient-primary);box-shadow:var(--shadow-button)}.primary:hover{background:var(--gradient-primary-hover);box-shadow:var(--shadow-button-hover)}.nav-item:hover,.nav-item.active{background:var(--nav-hover-gradient);box-shadow:inset 2px 0 var(--synapse-cyan)}.profile>span,.avatar{background:var(--gradient-avatar)}.surface,.drawing-card,.tool-tile{box-shadow:var(--shadow-card)}.metric.mint{background:var(--metric-mint-grad)}.metric.lavender{background:var(--metric-lavender-grad)}.metric.peach{background:var(--metric-peach-grad)}.sidebar-swirl{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.sidebar-swirl-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.sidebar>.wordmark,.sidebar>.main-nav,.sidebar>.sidebar-section,.sidebar>.sidebar-bottom{position:relative;z-index:1}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--synapse-blue);outline-offset:2px}.mobile-wordmark img{width:34px;height:34px;border-radius:9px}
