/* Shared workspace shell, inspired by the approved Unifier demo. */
@font-face{font-family:Poppins;src:url('/static/fonts/Poppins-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('/static/fonts/Poppins-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Poppins;src:url('/static/fonts/Poppins-SemiBold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Poppins;src:url('/static/fonts/Poppins-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--navy:#032553;--blue:#0058ee;--ink:#1d2a44;--muted:#5b6477;--border:#d5deed;--bg:#f3f5f9}
body{background:var(--bg);color:var(--ink);font-family:Poppins,'Segoe UI',sans-serif;font-size:13px;line-height:1.6}.shell,.workspace .shell{margin-left:0;min-width:0}a{color:var(--blue)}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #74a5ff;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:absolute;left:20px;top:-60px;z-index:1000;background:#fff;padding:10px 18px;border-radius:8px}.skip-link:focus{top:10px}
.workspace-header{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 28px;background:var(--navy);color:#fff}.workspace-identity{display:flex;gap:14px;align-items:center;min-width:0;color:#fff}.workspace-identity:hover{color:#fff;text-decoration:none}.workspace-identity img{width:72px;height:44px;object-fit:contain;background:#fff;border-radius:6px;padding:4px}.workspace-identity strong{display:block;font-size:18px;font-weight:600;overflow-wrap:anywhere}.workspace-identity small{display:block;font-size:10px;color:#d4e2f8;letter-spacing:.7px}.header-actions{display:flex;gap:22px;align-items:center}.header-actions a,.header-actions .text-button{color:#fff}.header-actions .text-button{font-size:11px}.header-actions form{margin:0}.header-actions .account{font-size:12px}.header-actions .account small{color:#cfdef1;font-size:10px}.header-actions .avatar{background:#254776;color:#fff}.switch-link{font-size:11px;white-space:nowrap}.workspace-header .mobile-nav{background:transparent;color:#fff;border:1px solid #6482aa;border-radius:6px}
.workspace-navigation{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 28px;background:#fff;border-bottom:1px solid var(--border);position:relative;z-index:20}.primary-links{display:flex;align-items:stretch;gap:4px;flex-wrap:wrap}.primary-links>a,.nav-menu>summary{display:block;cursor:pointer;list-style:none;padding:19px 11px 16px;font-size:12px;font-weight:500;color:var(--muted);border-bottom:3px solid transparent;white-space:nowrap;margin:0;border-radius:0}.primary-links>a:hover,.nav-menu>summary:hover{text-decoration:none;color:var(--blue);background:#f4f7fc}.primary-links .active{color:var(--blue);border-bottom-color:var(--blue)}.nav-menu{position:relative}.nav-menu>summary::after{content:'⌄';margin-left:8px}.nav-menu>summary::-webkit-details-marker{display:none}.nav-menu-items{position:absolute;top:100%;left:0;min-width:245px;background:#fff;border:1px solid var(--border);box-shadow:0 12px 30px #03255320;border-radius:10px;padding:7px;z-index:30}.nav-menu-items a{display:block;padding:10px 12px;border-radius:6px;color:var(--ink);font-size:12px}.nav-menu-items a:hover{background:#eef2fa;text-decoration:none;color:var(--blue)}.project-jump{margin:0;max-width:250px;min-width:160px}.project-jump select{margin:0;background:#f8faff;border:1px solid var(--border);font-size:11px;padding:9px;width:100%}
main#main{max-width:1576px;margin:auto;padding:28px;width:100%}.page-heading{margin-bottom:26px;gap:20px;align-items:center}.page-heading h1{font-size:30px;font-weight:700;line-height:1.3;letter-spacing:-.8px;margin:6px 0 14px}.page-heading h1::after{content:'';display:block;width:48px;height:4px;background:#dd3a2f;border-radius:4px;margin-top:14px}.page-heading p{font-size:13px;margin:0;color:var(--muted)}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1px}.button{border-radius:8px;background:var(--blue);border:1px solid var(--blue);padding:10px 16px;font-size:12px;font-weight:600;box-shadow:none}.button:hover{background:#0046be;border-color:#0046be}.button.secondary{background:#fff;color:var(--ink);border-color:var(--border)}.button.secondary:hover{background:#eef2fa;border-color:#9db5db}.actions{gap:10px;flex-wrap:wrap}button:disabled{opacity:.5;cursor:not-allowed}.panel{background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px;box-shadow:none;min-width:0}.panel h2,.section-heading h2{font-size:17px;font-weight:600;letter-spacing:-.3px}.section-heading{gap:12px;align-items:center}.section-heading .inline-link{font-size:11px;white-space:nowrap}.muted,small{color:var(--muted)}.badge{font-size:10px;border-radius:6px;white-space:normal}.metrics{gap:18px;margin-bottom:24px}.metric{background:#eef2fa;border:1px solid var(--border);border-radius:16px;padding:18px 22px;min-height:128px;box-shadow:none}.metric strong{font-size:30px;line-height:1.35;color:var(--navy);font-weight:600;margin:3px 0}.metric>span{font-size:12px;font-weight:500;color:var(--ink)}.metric small{font-size:11px}.overview-layout{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(280px,1fr);gap:22px;align-items:start}.overview-primary,.overview-secondary{display:grid;gap:22px;min-width:0}.task-row{display:flex;align-items:center;gap:14px;padding:15px 0;border-top:1px solid #e8edf5;color:var(--ink)}.task-row:hover,.project-row:hover{text-decoration:none;background:#f8faff}.task-row>span:nth-child(2){flex:1;min-width:0}.task-row strong{display:block;font-size:12px;font-weight:600}.task-row small{display:block;font-size:11px}.task-row>.badge:first-child{min-width:68px;text-align:center}.task-row>.arrow{color:var(--blue);font-size:17px}.quiet-empty{padding:14px 0}.quiet-empty strong{font-size:13px;font-weight:500}.quiet-empty p{color:var(--muted);font-size:12px;margin:5px 0}.coverage-callout{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;background:#fff8eb;border:1px solid #ecd9ad;color:#78520c;border-radius:8px;padding:12px;font-size:11px;margin-top:12px}.coverage-callout span{font-weight:600}.project-row{padding:18px 0;gap:14px;color:var(--ink)}.project-monogram{width:42px;height:42px;min-width:42px;border-radius:10px;background:#eef2fa;color:var(--blue);font-size:12px}.project-row-main{min-width:0}.project-row-main strong{font-size:13px}.project-row small{font-size:10px;display:block}.project-row .right{min-width:105px}.next-step{margin-top:6px}.project-progress{display:flex;align-items:center;gap:10px;margin-top:7px}.project-progress progress{max-width:120px;width:30%;height:6px}.project-progress small{font-size:9px}progress{accent-color:var(--blue)}.date-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;border-radius:8px;background:#eef2fa;padding:5px}.date-tile strong{font-size:17px}.date-tile small{font-size:9px;text-transform:uppercase}.upcoming-row{display:flex;flex-direction:column;gap:5px;padding:14px 0;border-top:1px solid #e8edf5;color:var(--ink)}.upcoming-row strong{font-size:12px;font-weight:500}.upcoming-row small,.upcoming-row span{font-size:10px;color:var(--muted)}.quick-links>a{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #e8edf5;padding:13px 0;font-size:12px;color:var(--ink)}.quick-links>a span{color:var(--blue)}.recent-event{display:flex;gap:10px;border-top:1px solid #e8edf5;padding:13px 0}.recent-event .event-dot{margin-top:6px;flex-shrink:0}.recent-event strong{display:block;font-size:11px;font-weight:500;overflow-wrap:anywhere}.recent-event small,.recent-event time{display:block;font-size:10px;color:var(--muted);overflow-wrap:anywhere}.preconstruction-section{margin-top:28px}.category-card{border-radius:14px;padding:18px}.category-card h2{font-size:15px}.category-card p{font-size:11px;margin-bottom:14px}.category-number{margin-bottom:9px}.site-footer{max-width:1576px;margin:auto;padding:28px;font-size:10px}
.hub-heading{background:#fff;border:1px solid var(--border);padding:24px;border-radius:16px}.hub-heading h1{font-size:26px}.hub-tabs,.tabs{border-bottom:1px solid var(--border)}.tabs a{font-size:12px}.hub-folders{padding:18px 12px;border-radius:12px}.hub-folders h2{padding:0 9px;font-size:14px}.hub-folders a{padding:11px 9px;font-size:11px;border-radius:7px;margin:3px 0;color:var(--muted)}.hub-folders a.selected{background:#eef2fa;color:var(--blue)}.hub-layout{grid-template-columns:245px minmax(0,1fr);gap:22px}.hub-file{padding:18px 0;gap:14px}.hub-file h3{font-size:14px}.hub-file p{font-size:12px}.hub-file .button{padding:8px 12px;font-size:11px}.hub-file small{font-size:10px}.hub-progress progress{height:9px}.collection-tabs{border-radius:12px}.collection-tabs>a{font-size:11px}.job-folder-card{border-radius:14px}.billing-setup-notice{padding:14px 16px;background:#eef2fa;border:1px solid var(--border);border-radius:10px;margin:0 0 20px}.billing-setup-notice p{margin:0 0 8px}.billing-setup-notice[hidden]{display:none}.time-entry-form fieldset{border:0;padding:0;margin:0;min-width:0}.time-entry-form fieldset:disabled{opacity:.5}.billing-setup-panel{border-left:4px solid var(--blue)}.billing-setup-panel:target{scroll-margin-top:20px}.billing-setup-panel details:target{background:#f5f8ff;scroll-margin-top:20px}.system-totals>div{background:#eef2fa;border-radius:12px}.form-grid input,.form-grid select,textarea{border-radius:8px}th{font-size:10px;text-transform:uppercase;letter-spacing:.4px}td{font-size:12px}
@media(min-width:1101px){.workspace-header .mobile-nav{display:none}}
@media(max-width:1250px){.workspace-navigation{padding:0 18px}.primary-links>a,.nav-menu>summary{font-size:11px;padding-left:8px;padding-right:8px}.project-jump{max-width:190px}.overview-layout{grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr)}}
@media(max-width:1100px){.workspace-header{padding:14px 20px}.workspace-header .mobile-nav{display:block}.workspace-navigation{display:none;padding:14px 20px}.nav-open .workspace-navigation{display:flex;align-items:stretch;flex-direction:column}.primary-links{flex-wrap:wrap}.primary-links>a,.nav-menu>summary{padding:12px}.project-jump{max-width:none;width:100%}.header-actions{gap:14px}.workspace-identity strong{font-size:16px}}
@media(max-width:850px){main#main{padding:22px 18px}.overview-layout{grid-template-columns:1fr}.overview-secondary{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-secondary>section:last-child{grid-column:1/-1}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.page-heading h1{font-size:27px}.header-actions .switch-link{display:none}.workspace-identity small{font-size:9px}.hub-layout{grid-template-columns:1fr}.hub-folders{display:flex;flex-wrap:nowrap;overflow:auto}.hub-folders a{white-space:nowrap}.hub-folders h2{display:none}.site-footer{padding:22px 18px}}
@media(max-width:540px){.workspace-header{padding:12px;gap:10px}.workspace-identity img{width:42px;height:36px}.workspace-identity{gap:9px}.workspace-identity strong{font-size:13px}.workspace-identity small{font-size:8px;letter-spacing:0}.header-actions{gap:8px}.header-actions .account>span:last-child,.header-actions form{display:none}.header-actions .avatar{width:30px;height:30px}.workspace-navigation{padding:10px}.primary-links{display:grid;grid-template-columns:1fr 1fr}.nav-menu-items{position:static;min-width:0;box-shadow:none}.nav-menu[open]{grid-column:1/-1}.primary-links>a,.nav-menu>summary{font-size:11px}.overview-secondary{grid-template-columns:1fr}.panel{padding:17px;border-radius:12px}.page-heading{align-items:flex-start}.page-heading h1{font-size:25px}.page-heading .actions{width:100%}.page-heading .button{flex:1;text-align:center}.metric{padding:14px;min-height:115px}.metric strong{font-size:27px}.metric small{font-size:10px}.metrics{gap:12px}.project-row{flex-wrap:wrap;gap:10px}.project-row-main{flex:1}.project-row .right{margin-left:52px;text-align:left}.project-row>.arrow{margin-left:auto}.task-row{gap:9px}.task-row>.badge:last-child{display:none}.project-progress{flex-wrap:wrap}.section-heading{flex-wrap:wrap}.hub-heading{padding:18px}.hub-heading h1{font-size:23px}.workspace-categories{grid-template-columns:1fr}.site-footer{display:block}.site-footer>a{display:block;margin-top:8px}}
@media print{.workspace-header,.workspace-navigation,.skip-link,.site-footer{display:none!important}.shell{margin:0!important}main#main{padding:0;max-width:none}.overview-layout{display:block}.panel{break-inside:avoid}.page-heading h1::after{display:none}}

.mobile-account-links{display:none}
@media(max-width:540px){.overview-layout .project-row{display:grid;grid-template-columns:42px minmax(0,1fr) 16px;align-items:start}.overview-layout .project-row-main{grid-column:2}.overview-layout .project-row .right{grid-column:2;margin-left:0;display:flex;align-items:center;gap:10px}.overview-layout .project-row>.arrow{grid-column:3;grid-row:1}.overview-layout .project-row .project-monogram{grid-column:1;grid-row:1}.project-progress progress{min-width:65px}.mobile-account-links{display:flex;align-items:center;flex-wrap:wrap;gap:18px;padding:12px;border-top:1px solid var(--border)}.mobile-account-links a,.mobile-account-links button{font-size:11px}.mobile-account-links form{margin:0}}
