[hidden]{display:none!important}.portal{--blue:#315f80;--paper:#f5f7fa}.portal .portal-topbar{padding-top:max(14px,env(safe-area-inset-top));background:#fffffffa}.portal main{padding-bottom:48px}.portal .button{border-radius:9px;min-height:46px;gap:10px}.portal .button.secondary:hover{background:#edf2f6}.portal h1{font-size:32px}.portal .muted{line-height:1.7}.portal .panel{border-radius:12px;box-shadow:0 2px 5px #0f1b2a02}.today{font-size:12px;color:var(--muted)}.text-link{font-size:12px;font-weight:700}.overview-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:28px}.overview-stats>a{padding:24px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);display:block}.overview-stats>a:hover{border-color:var(--blue);text-decoration:none}.overview-stats span{font-size:12px;color:var(--muted)}.overview-stats strong{display:flex;align-items:center;gap:14px;font-size:36px;margin:10px 0;font-weight:700;letter-spacing:-.04em}.overview-stats small{font-size:11px;color:var(--blue)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(250px,1fr);gap:24px;align-items:start}.dashboard-grid h2{font-size:18px}.project-row{display:flex;align-items:center;gap:14px;padding:18px 0;border-top:1px solid var(--line);color:var(--ink)}.project-row:hover{text-decoration:none;color:var(--blue)}.project-symbol{background:#eef3f7;padding:12px;border-radius:10px;color:var(--blue)}.project-label{flex:1;min-width:0}.project-label strong{display:block;font-size:13px;overflow-wrap:anywhere}.project-label small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.quick-actions>a{display:flex;gap:12px;align-items:center;padding:18px 0;border-top:1px solid var(--line);color:var(--ink)}.quick-actions>a:hover{text-decoration:none;color:var(--blue)}.quick-actions>a>span:first-of-type{flex:1}.quick-actions strong{font-size:12px;display:block}.quick-actions small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.empty-inline{padding:24px 0}.empty-inline h3{font-size:18px}.warning{background:#fff8e9;border-color:#ebdcb8;color:#795b25}.warning a{color:inherit;text-decoration:underline}.filter-panel{padding:20px;background:#fff;border:1px solid var(--line);border-radius:12px}.clear-filter{font-size:12px;padding:14px 0}.customer-line{font-size:12px;color:var(--blue);margin:-4px 0 14px;overflow-wrap:anywhere}.missing-customer{color:#8b601e}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:30px;font-size:12px}.editor-grid{display:grid;grid-template-columns:minmax(0,800px) 210px;gap:30px}.editor-sections{display:grid;gap:24px;min-width:0}.form-section-title{display:flex;gap:14px;align-items:flex-start;margin-bottom:26px}.form-section-title>span{display:grid;place-items:center;background:#edf2f7;color:var(--blue);width:32px;height:32px;flex-shrink:0;border-radius:50%;font-weight:800;font-size:13px}.form-section-title h2{margin:3px 0 6px;font-size:19px}.form-section-title p{margin:0;font-size:12px;color:var(--muted)}.field{margin-bottom:20px;min-width:0}.field:last-child{margin-bottom:0}.field input[type=checkbox]{width:20px}.optional{font-size:10px;font-weight:400;color:var(--muted);margin-left:5px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.address-fields{grid-template-columns:1fr 2fr}.editor-guide{position:sticky;top:110px;align-self:start;font-size:12px;padding:14px 0}.editor-guide a{display:block;padding:10px 0;color:var(--muted)}.editor-guide hr{border:0;border-top:1px solid var(--line);margin:20px 0}.editor-guide p:not(.eyebrow){font-size:11px;color:var(--muted)}.site-editor section{scroll-margin-top:105px}.editor-actions{position:sticky;bottom:0;background:#ffffffed;backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:12px;padding:16px 20px;display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-bottom:max(16px,env(safe-area-inset-bottom));z-index:10}.error-summary{background:#fff1ef;border:1px solid #e8c4bf;color:#8a302b;padding:18px;border-radius:9px;margin-bottom:24px;font-size:13px}.error-summary h2{font-size:17px}.error-summary a{color:inherit;text-decoration:underline}.field-error input,.field-error select,.field-error textarea{border-color:#a4493e}.member-picker{max-height:300px;overflow:auto;margin-top:14px;border:1px solid var(--line);border-radius:8px;padding:6px 14px}.member-picker label{padding:10px 0;margin:0;font-size:12px;font-weight:500;overflow-wrap:anywhere}.sync-note{font-size:11px;color:var(--muted)}.search-inline{display:flex;gap:10px}.customer-results{display:grid;gap:6px;margin:12px 0}.customer-results button{background:#f5f8fa;border:1px solid var(--line);text-align:left;padding:13px;border-radius:7px;color:var(--ink);font-size:12px}.customer-results button:hover{border-color:var(--blue);background:#e9f0f6}.customer-results p{font-size:12px;margin:0}.record-dialog{border:1px solid var(--line);border-radius:16px;padding:28px;width:min(600px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;color:var(--ink);box-shadow:0 24px 80px #0f1b2a30}.record-dialog::backdrop{background:#0f1b2a80;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:20px}.dialog-heading h2{margin:0;font-size:24px}.dialog-heading .eyebrow{margin-bottom:6px}.dialog-actions{position:sticky;bottom:-28px;margin:24px -28px -28px;padding:18px 28px;background:white;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:12px}.dialog-fields .helptext{font-size:11px}.dialog-fields ul{padding-left:20px}.record-dialog .errorlist{padding-left:14px}.portal input,.portal select,.portal textarea{scroll-margin-top:110px}.install-app{color:#dce7f0;background:#203348;border:1px solid #3c5066;border-radius:8px;padding:12px;text-align:left;font-size:12px;margin-top:30px}.app-update{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--navy);color:#fff;padding:16px 20px;border-radius:10px;z-index:90;max-width:90vw;width:440px;font-size:12px}.app-update button{background:white;color:var(--ink);border:0;padding:9px 12px;border-radius:6px;margin:8px 0 0 12px}.connection{padding-bottom:max(16px,env(safe-area-inset-bottom))}.button:disabled{cursor:wait;opacity:.65}.portal .site-card{border-radius:12px}.portal .site-card .card-top{margin-bottom:22px}
@media(max-width:1150px){.dashboard-grid{grid-template-columns:1fr}.editor-grid{grid-template-columns:1fr}.editor-guide{display:none}.quick-actions{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.quick-actions h2,.quick-actions>.eyebrow{grid-column:1/-1}.overview-stats>a{padding:20px}}
@media(max-width:620px){.portal h1{font-size:28px}.portal input:not([type=checkbox]),.portal select,.portal textarea{font-size:16px}.today{font-size:11px}.overview-stats{gap:8px;margin-bottom:22px}.overview-stats>a{padding:14px 11px}.overview-stats span{font-size:10px}.overview-stats strong{font-size:29px}.overview-stats small{display:none}.dashboard-grid{gap:18px}.project-row{flex-wrap:wrap;gap:10px}.project-label{min-width:150px}.project-row .badge{margin-left:54px}.project-symbol{padding:10px}.project-row>span:last-child{margin-left:auto}.quick-actions{display:block}.filter-panel{padding:16px}.field-grid{grid-template-columns:1fr;gap:0}.editor-sections{gap:18px}.editor-actions{padding:12px;justify-content:space-between;padding-bottom:max(12px,env(safe-area-inset-bottom))}.editor-actions .button{font-size:12px;padding:12px}.record-dialog{padding:22px;width:calc(100vw - 20px);max-height:calc(100dvh - 24px);border-radius:14px}.dialog-actions{bottom:-22px;margin:24px -22px -22px;padding:16px 22px;padding-bottom:max(16px,env(safe-area-inset-bottom))}.record-dialog input:not([type=checkbox]),.record-dialog select{font-size:16px}.search-inline{flex-wrap:wrap}.search-inline input{flex:1;min-width:150px}.portal .site-editor .panel{padding:22px 18px}.portal .user-row .role{margin-left:50px}.pagination{gap:12px}.pagination .button{padding:12px}.portal footer{padding-bottom:max(20px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.customer-panel{margin-bottom:22px}.customer-panel select{margin-bottom:14px}.project-label{overflow-wrap:anywhere}.site-editor .panel h2{font-size:20px}@media(max-width:620px){.project-row{flex-wrap:wrap}.project-row .button{min-height:44px}.customer-panel{padding:20px}.portal .button{min-height:44px}}

.customer-heading>div{min-width:0}.customer-heading h1,.customer-details dd{overflow-wrap:anywhere}
.customer-details{margin-bottom:32px}.customer-details>.panel{min-width:0}
.customer-facts{margin:20px 0 0}.customer-facts>div+div{margin-top:20px}
.customer-facts dt{font-size:12px;color:#667085;margin-bottom:5px}.customer-facts dd{margin:0;line-height:1.6}
.customer-facts a{display:inline-block;min-height:44px;padding:8px 0}
.customer-row{color:inherit;text-decoration:none}.customer-row:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.customer-row:hover .project-label strong{text-decoration:underline}.customer-meta{font-size:12px;margin-top:28px}
@media(max-width:620px){.customer-details{grid-template-columns:1fr;gap:16px}.customer-heading{align-items:flex-start}.customer-row>.text-link{margin-left:54px}.customer-sites .section-head{flex-wrap:wrap;gap:8px}}
