dialog:focus{outline:none}
.intake-dialog{color:#edf4f4;background:#0b171c;border:1px solid #345159;border-radius:12px;width:min(710px,calc(100% - 28px));max-height:calc(100dvh - 32px);padding:0;box-shadow:0 25px 100px #0009;overscroll-behavior:contain;font:16px/1.6 'DM Sans',Arial,sans-serif}
.intake-dialog::backdrop{background:rgba(2,7,9,.8);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}body.modal-open{overflow:hidden}.intake-shell{padding:26px 36px 24px}.intake-top{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid #2a424a;padding-bottom:16px;margin-bottom:24px}.intake-top>span{font-size:9px;letter-spacing:.15em;color:#91b7bb}.intake-top>span span{padding:0 8px}.intake-dialog button{font-family:inherit;cursor:pointer}.intake-close{font-size:28px;line-height:1;color:#deecee;background:#162b32;border:1px solid #38545d;border-radius:50%;min-width:44px;height:44px}.intake-heading h2{font-size:42px;line-height:1.06;letter-spacing:-.025em;margin:0 0 15px}.intake-heading h2:focus{outline:none}.intake-heading>p:not(.eyebrow){color:#afc2c6;font-size:15px;margin-bottom:25px}.intake-heading .eyebrow{font-size:10px;margin-bottom:14px}.intake-choices{display:grid;grid-template-columns:1fr 1fr;gap:16px}.intake-choices button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:16px;padding:25px;background:linear-gradient(140deg,#19343b,#102028);border:1px solid #3b6069;border-radius:7px;color:#bdcfd2;font-size:14px;line-height:1.6}.intake-choices button:hover{border-color:#71d0d5;background:#17353e}.intake-choice-label{font:400 30px/1.1 'Cormorant Garamond',Georgia,serif;color:#eff7f7}.intake-choice-arrow{color:#68d0d7;font-size:26px;margin-top:auto}.intake-dialog fieldset{border:0;padding:0;margin:0;min-width:0}.intake-dialog [hidden]{display:none!important}.intake-dialog label{display:block;font-size:14px;color:#edf4f4;font-weight:500;margin:18px 0 7px}.intake-dialog label span{font-weight:400;color:#91aab0;font-size:12px}.intake-dialog input,.intake-dialog select,.intake-dialog textarea{display:block;width:100%;min-height:46px;border:1px solid #46626b;border-radius:5px;background:#071115;color:#edf4f4;padding:11px 12px;font:16px/1.45 'DM Sans',Arial,sans-serif;box-sizing:border-box;color-scheme:dark}.intake-dialog select{padding-right:25px}.intake-dialog textarea{resize:vertical}.intake-dialog input::placeholder,.intake-dialog textarea::placeholder{color:#94a8af;opacity:1}.intake-dialog :is(input,select,textarea,button,a,summary):focus-visible{outline:2px solid #72d8dd;outline-offset:3px}.intake-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.intake-hint{font-size:12px;line-height:1.6;color:#a4babf;margin:9px 0 0}.intake-hint a,.intake-footnote a{color:#89dbe0;text-decoration:underline;text-underline-offset:3px}.intake-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:28px 0 0;padding-top:22px;border-top:1px solid #2a424a}.intake-dialog .primary-link{font-size:14px;line-height:1.5;border-radius:4px;margin:0;min-height:46px;text-align:center}.intake-secondary{border:1px solid #47646e;background:transparent;color:#c4e7e9;border-radius:4px;font-size:14px;padding:10px 18px;min-height:44px}.intake-footnote{font-size:12px;color:#9db3b9;margin:25px 0 0;line-height:1.7}.intake-review{background:#10252c;border:1px solid #2d4851;border-radius:6px;padding:20px}.intake-review dl{margin:0;display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px 20px;font-size:14px}.intake-review dt{color:#91b2ba}.intake-review dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#e1ecee}.intake-delivery{margin:22px 0 0}.intake-delivery>p{color:#b7c9ce;font-size:14px}.intake-book-link{display:block;color:#8adee3;text-decoration:underline;text-underline-offset:5px;padding:14px 0;min-height:44px}.intake-copy{margin-top:20px}.intake-copy summary{color:#9bdde0;cursor:pointer;font-size:14px;min-height:32px}.intake-copy textarea{margin:12px 0;font-size:13px}.intake-status{font-size:14px;color:#b5e5e8;margin:20px 0 0}.intake-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.intake-launchers{display:none}.intake-ready .intake-launchers{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}.intake-launchers a{display:inline-flex;align-items:center;min-height:46px;border:1px solid #4d7f85;padding:10px 20px;color:#b4e9ec;font-size:14px}.intake-launchers a:hover{background:#16353e}
.intake-embed{padding:12px}.intake-embed>.intake-close{display:block;margin-left:auto;margin-bottom:8px}.intake-embed iframe{display:block;width:100%;height:70dvh;border:0;background:#0b171c}.intake-embed>a{display:block;padding:12px;font-size:13px;text-decoration:underline;color:#8adee3}#intake-calendar button{margin-top:16px}#intake-calendar .intake-secondary{font-size:12px}.intake-dialog button:disabled{opacity:.55;cursor:wait}
@media(max-width:520px){.intake-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.intake-shell{padding:18px 20px}.intake-heading h2{font-size:34px}.intake-choices,.intake-fields{grid-template-columns:1fr}.intake-fields{gap:0}.intake-choices button{gap:10px;padding:20px}.intake-choice-arrow{display:none}.intake-top>span{font-size:8px;letter-spacing:.08em}.intake-review dl{grid-template-columns:1fr;gap:3px}.intake-review dd{margin-bottom:12px}.intake-delivery .primary-link{display:block}.intake-actions{gap:12px}.intake-actions button{padding:11px 14px}}
.intake-top{justify-content:flex-end;border:0;padding:0;margin:0 0 8px}.intake-top:has(>.intake-close[hidden]){display:none}.intake-dialog{scrollbar-width:thin;scrollbar-color:#46626b #0b171c}.intake-embed{display:grid;grid-template-rows:44px minmax(0,1fr) auto;height:calc(100dvh - 36px);max-height:920px;box-sizing:border-box;gap:4px;padding:8px}.intake-embed>.intake-close{margin:0 0 0 auto}.intake-embed iframe{height:100%;min-height:0}.intake-embed>a{padding:6px 12px}.intake-shell{padding:18px 28px}.intake-heading h2{font-size:36px;margin-bottom:10px}.intake-heading .eyebrow{margin-bottom:8px}.intake-heading>p:not(.eyebrow){margin-bottom:16px}.intake-dialog label{margin-top:13px}.intake-actions{margin-top:20px;padding-top:16px}.intake-footnote{margin-top:16px}
/* Generated shared confirmation styles */
dialog.shared-modal{--teal:#39c4cc;--teal-deep:#169aa5;--button-bg:#087783;--button-hover:#086b74;--ink:#eff1f0;--text:#eff1f0;--muted:#a9b5b7;--line:#293b40;--paper:#101b1f;--panel:#0d171a;--bg:#080c0e;--red:#ff9ca4;--amber:#ffd47c;--font-ui:'DM Sans',Arial,sans-serif;--space-section:28px;--space-results:14px}
@keyframes shared-dialog-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes shared-fade-enter{from{opacity:0}to{opacity:1}}
dialog.shared-modal{width:min(var(--shared-dialog-width,700px),calc(100% - 48px));max-width:none;max-height:calc(100dvh - 48px);padding:0;border:0;border-radius:4px;background:transparent;color:var(--text);overflow:visible;box-shadow:0 30px 90px rgba(0,0,0,.62)}
/* Native containers are not actionable controls; retain control focus indicators. */
dialog:focus,.shared-modal-panel:focus{outline:none}
dialog::backdrop{background:rgba(2,7,9,.8);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}
.shared-modal-panel{position:relative;min-width:0;max-height:calc(100dvh - 48px);overflow-y:auto;overscroll-behavior:contain;padding:34px;background:#0b1316;border:1px solid #38545b;border-radius:4px}
.shared-modal-panel>.dialog-title{padding-right:50px;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #2a4147;color:var(--teal);font:700 18px/1.35 var(--font-ui);letter-spacing:.02em}
.modal-close{display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;min-height:42px;padding:0;border:1px solid #395159;border-radius:4px;background:#16252a;color:#eaf3f3;font-size:28px;line-height:1;cursor:pointer}
.modal-close:hover{background:#263b41}
.modal-close:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
.shared-modal-panel>.modal-close{position:absolute;top:16px;right:16px}
.shared-modal-panel>.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
dialog[open],.gs-view-enter{animation:shared-dialog-enter .34s ease-out both}
@media(max-width:700px){dialog.shared-modal{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.shared-modal-panel{max-height:calc(100dvh - 24px);padding:24px 18px}.shared-modal-panel>.modal-close{top:12px;right:12px}}
@media(prefers-reduced-motion:reduce){dialog[open],.gs-view-enter{animation-name:shared-fade-enter}}
.record-title{margin:12px 0 14px;color:#f4f7f6;font:700 clamp(28px,3vw,38px)/1.1 var(--font-ui);letter-spacing:-.025em;overflow-wrap:anywhere}.record-label{display:block;margin:20px 0 7px;color:var(--teal);font:700 12px/1.2 var(--font-ui);letter-spacing:.12em;text-transform:uppercase}
.shared-modal-panel>h1.dialog-title,.dialog-head h2{margin:0;padding:0 0 12px;color:var(--teal);font:700 18px/1.35 var(--font-ui);letter-spacing:.02em}.shared-modal-panel>h1.dialog-title{padding-right:50px;margin-bottom:16px;border-bottom:1px solid #2a4147}

dialog.shared-modal input:focus,dialog.shared-modal select:focus,dialog.shared-modal textarea:focus,dialog.shared-modal button:focus-visible{border-color:var(--teal);outline:2px solid rgba(57,196,204,.5);outline-offset:2px}
dialog.shared-modal button,dialog.shared-modal .button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:700 16px/1.25 var(--font-ui);cursor:pointer;border:1px solid transparent;border-radius:4px;padding:10px 15px;min-height:44px;background:var(--button-bg);color:#fff;text-decoration:none;transition:background-color .18s ease,color .18s ease}
dialog.shared-modal button:hover,dialog.shared-modal .button:hover{background:var(--button-hover);color:#fff}dialog.shared-modal button:disabled{cursor:not-allowed;opacity:.48}
dialog.shared-modal .secondary,dialog.shared-modal .button.secondary,dialog.shared-modal .icon-button{background:#1b2a2f;color:#dfe8e9;border:1px solid #395159}dialog.shared-modal .secondary:hover,dialog.shared-modal .button.secondary:hover,dialog.shared-modal .icon-button:hover{background:#263b41;color:#fff}
dialog.shared-modal .danger,dialog.shared-modal .button.danger{background:transparent;color:#ff858b;border:1px solid #a9474d}dialog.shared-modal .danger:hover,dialog.shared-modal .button.danger:hover{background:#5b2025;color:#fff}

.field:has(>.address-parts){grid-column:1/-1}
.address-parts{display:grid;grid-template-columns:minmax(80px,.6fr) minmax(0,2fr) minmax(100px,1fr);gap:12px;margin-top:12px;width:100%;min-width:0}.address-parts label{display:flex;flex-direction:column;gap:6px;min-width:0}.address-parts input{width:100%;min-width:0}@media(max-width:560px){.address-parts{grid-template-columns:repeat(2,minmax(0,1fr))}.address-parts label:nth-child(2){grid-column:1/-1;grid-row:2}}

/* Shared invoice discount breakdown, including customer views and printables. */
.invoice-discount-summary{text-align:right;margin:16px 0;font-variant-numeric:tabular-nums}.invoice-discount-summary strong{margin-left:12px}

.gs-upcoming-body .gs-upcoming-emphasis{font-weight:700;color:var(--text,#fff)}

/* Canonical project task completion: never conflates progress with project status. */
.project-progress{padding:var(--space-4,16px) 0}.project-progress-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.project-progress-heading strong{font-size:1.5rem;color:var(--teal,#39c4cc)}.project-task-progress{display:block;width:100%;height:.65rem;margin:.6rem 0 1rem;accent-color:var(--teal,#39c4cc);border:0;border-radius:999px;overflow:hidden;background:var(--surface-2,#172b30)}.project-task-progress::-webkit-progress-bar{background:var(--surface-2,#172b30);border-radius:999px}.project-task-progress::-webkit-progress-value{background:var(--teal,#39c4cc);border-radius:999px}.project-task-progress::-moz-progress-bar{background:var(--teal,#39c4cc);border-radius:999px}

.project-list-progress{margin-top:.75rem;max-width:32rem;min-width:min(14rem,100%)}.project-list-progress .project-progress-heading{font-size:.95rem}.project-list-progress p{margin:.35rem 0}

.gs-searchable-select{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem}.gs-select-options{position:absolute;top:100%;left:0;right:0;z-index:30;max-height:16rem;overflow:auto;background:var(--surface-2,#172b30);color:var(--text,#fff);border:1px solid var(--teal,#39c4cc);border-radius:.5rem;box-shadow:0 .5rem 1.5rem #0008}.gs-select-options [role="option"],.gs-select-options [role="status"]{padding:.65rem .8rem}.gs-select-options [role="option"]{cursor:pointer}.gs-select-options [role="option"]:hover,.gs-select-options [aria-selected="true"]{background:#23666d}

/* Same flying-window loader in login, work orders and shared record states. */
.gs-loading-mark{display:inline-flex;position:relative;flex:none;width:62px;height:62px;align-items:center;justify-content:center;color:var(--teal)}.gs-loading-mark img{display:block;width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 0 7px rgba(57,196,204,.45))}.gs-loading-mark::before{content:"";position:absolute;inset:0;border:3px solid rgba(57,196,204,.2);border-top-color:var(--teal);border-radius:50%;animation:gill-login-spin 1.1s linear infinite}
.gs-record-state.is-loading{display:flex;align-items:center;gap:16px;min-height:90px}.gs-record-state.is-loading p{margin:0}
@media(prefers-reduced-motion:reduce){.gs-loading-mark::before{animation:none;border-color:var(--teal)}}

.deployment-build-reference{overflow-wrap:anywhere}