/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.hidden{display:none}.inline{display:inline}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#10191b;--muted:#66716d;--line:#d8e2da;--green:#159447;--green-dark:#0f7337;--lime:#b7db2b;--charcoal:#10191b;--warm-white:#f7f6f2;--soft-sage:#ddebdd;--loopp-light-green:#b7db2b;--loopp-light-green-hover:#a7cb1f;--loopp-light-green-ink:#10191b;--pale:#eef3ec;--white:#fff}*{box-sizing:border-box}body{background:var(--warm-white);color:var(--ink);font-family:var(--font-jakarta), "Plus Jakarta Sans", Arial, sans-serif;margin:0}.app-shell{min-height:100vh;display:flex}.sidebar{color:#d8e5df;z-index:5;background:#102d24;flex-direction:column;width:244px;padding:28px 18px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:-.4px;color:#fff;align-items:center;gap:11px;padding:0 10px 32px;font-size:20px;font-weight:750;display:flex}.brand-mark{color:#0b3022;background:#41c58a;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.loopp-logo{object-fit:contain;height:auto;display:block}.loopp-logo-sidebar{object-position:left center;width:150px;max-height:58px}.loopp-logo-login{filter:drop-shadow(0 5px 18px #41c58a21);width:clamp(155px,15vw,205px)}.loopp-logo-onboarding{width:165px}.loopp-app-mark{object-fit:contain;flex:none;width:40px;height:40px}.nav-label{text-transform:uppercase;letter-spacing:1.6px;color:#76988c;margin:17px 12px 8px;font-size:10px;font-weight:700}.nav-item{color:#c2d5ce;border-radius:9px;align-items:center;gap:12px;height:43px;margin:2px 0;padding:0 12px;font-size:14px;text-decoration:none;display:flex}.nav-item span{text-align:center;width:19px;font-size:18px}.nav-item b{background:#315247;border-radius:12px;margin-left:auto;padding:2px 7px;font-size:11px}.nav-item i{text-transform:uppercase;color:#94afa5;background:#315247;border-radius:5px;margin-left:auto;padding:3px 6px;font-size:9px;font-style:normal}.nav-item.active{color:#fff;background:#225540;font-weight:700}.nav-item.muted{opacity:.65}.sidebar-foot{border-top:1px solid #315047;align-items:center;gap:10px;margin-top:auto;padding:18px 4px 2px;display:flex}.sidebar-foot .avatar{color:#352214;background:#d8a266;border-radius:50%;place-items:center;width:35px;height:35px;font-size:12px;font-weight:800;display:grid}.sidebar-foot strong,.sidebar-foot small{display:block}.sidebar-foot strong{color:#fff;font-size:12px}.sidebar-foot small{color:#8eaaa0;margin-top:3px;font-size:10px}.sidebar-foot button{color:#a8bbb5;background:0 0;border:0;margin-left:auto}.workspace{width:calc(100% - 244px);margin-left:244px;padding:32px clamp(24px,4vw,58px) 50px}.topbar{justify-content:space-between;align-items:center;margin-bottom:27px;display:flex}.topbar p{color:#7b8581;margin:0 0 5px;font-size:12px}.topbar h1{letter-spacing:-.7px;margin:0;font-size:28px}.top-actions{align-items:center;gap:12px;display:flex}.icon-button,.secondary,.primary{cursor:pointer;border:0;border-radius:9px;height:42px;font-weight:700}.icon-button{border:1px solid var(--line);background:#fff;place-items:center;width:42px;padding:0;display:grid;position:relative}.notification-bell{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;width:20px;height:20px}.icon-button span{background:#ef635d;border-radius:50%;width:6px;height:6px;position:absolute;top:9px;right:9px}.primary{background:var(--green);color:#fff;padding:0 19px;box-shadow:0 2px 5px #176b4b25}.primary:hover{background:var(--green-dark)}.secondary{border:1px solid var(--line);color:#4d5853;background:#fff;padding:0 14px}.summary-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;display:grid}.summary-grid article,.summary-card{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:14px;min-height:104px;padding:18px;display:flex}.summary-card{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}.summary-card:hover{border-color:var(--brand-colour)}@supports (color:color-mix(in lab, red, red)){.summary-card:hover{border-color:color-mix(in srgb, var(--brand-colour) 38%, var(--line))}}.summary-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #123a2c14}.summary-card:focus-visible{outline:3px solid var(--brand-colour)}@supports (color:color-mix(in lab, red, red)){.summary-card:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-colour) 30%, transparent)}}.summary-card:focus-visible{outline-offset:2px}.summary-icon{border-radius:11px;place-items:center;width:42px;height:42px;font-size:18px;font-weight:800;display:grid}.summary-icon.red{color:#d94741;background:#fff0ef}.summary-icon.blue{color:#3172b7;background:#ebf5ff}.summary-icon.amber{color:#b77714;background:#fff7e7}.summary-icon.green{color:#24835a;background:#ebf8f1}.summary-grid span,.summary-grid strong,.summary-grid small{display:block}.summary-grid span{color:#737d78;margin-bottom:4px;font-size:11px}.summary-grid strong{font-size:24px;line-height:1.1}.summary-grid small{color:#87908c;margin-top:6px;font-size:10px}.summary-grid small b{color:#25865c}.summary-grid article:first-child small b,.summary-grid .summary-card:first-child small b{color:#d84b45}.job-scope-banner{color:#36584b;background:#edf7f2;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;margin:0 23px 10px;padding:10px 12px;font-size:12px;display:flex}.job-scope-banner button{color:var(--brand-colour);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;font-weight:700;text-decoration:underline}.workforce-job-banner{background:linear-gradient(100deg,#edf7f2,#f6faed);border:1px solid #cfe7da}.workforce-job-banner button{white-space:nowrap;background:#fff;border:1px solid #b9dac9;border-radius:8px;padding:7px 10px;text-decoration:none}.manager-close-box{background:#fff9f7;border:1px solid #ead9d5;border-radius:14px;justify-content:space-between;align-items:center;gap:18px;margin-top:16px;padding:16px;display:flex}.manager-close-box h3{margin:0 0 4px;font-size:15px}.manager-close-box p{color:#6f7773;margin:0;font-size:12px;line-height:1.45}.close-job-button{color:#a43f32;background:#fff;border:1px solid #b84d3e;border-radius:9px;flex:none;padding:10px 14px;font-weight:800}.close-job-button:hover{color:#fff;background:#a43f32}@media (width<=640px){.manager-close-box{flex-direction:column;align-items:stretch}.close-job-button{width:100%}}.jobs-card{border:1px solid var(--line);background:#fff;border-radius:13px;overflow:hidden}.jobs-heading{justify-content:space-between;align-items:center;padding:22px 23px 16px;display:flex}.jobs-heading h2{margin:0 0 5px;font-size:18px}.jobs-heading p{color:#7b8581;margin:0;font-size:12px}.toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:0 22px;display:flex}.tabs{gap:21px;display:flex;overflow-x:auto}.tabs button{white-space:nowrap;color:#707b76;cursor:pointer;background:0 0;border:0;height:46px;padding:0;font-size:11px;position:relative}.tabs button.selected{color:var(--green);font-weight:800}.tabs button.selected:after{content:"";background:var(--green);height:2px;position:absolute;inset:auto 0 0}.tabs em{background:#eef3f0;border-radius:10px;margin-left:5px;padding:2px 6px;font-style:normal}.search{border:1px solid var(--line);color:#8b948f;border-radius:8px;align-items:center;gap:6px;height:34px;padding:0 10px;display:flex}.search input{border:0;outline:0;width:130px;font-size:11px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{text-align:left;color:#8a938f;text-transform:uppercase;letter-spacing:.6px;background:#fafbfa;padding:12px 18px;font-size:9px}td{vertical-align:middle;color:#4e5954;border-top:1px solid #eef0ef;padding:15px 18px}tbody tr{cursor:pointer;transition:all .15s}tbody tr:hover{background:#f7faf8}td strong,td small{display:block}td strong{color:#27302c;margin-bottom:4px;font-size:11px}td small{color:#909894;font-size:9px}.priority,.status{white-space:nowrap;border-radius:20px;align-items:center;padding:5px 8px;font-size:9px;font-weight:700;display:inline-flex}.priority.urgent{color:#c8423c;background:#fff0ef}.priority.high{color:#a86c10;background:#fff6e6}.priority.routine{color:#547386;background:#edf4f9}.status{color:#405049;letter-spacing:.01em;background:#f0f3f2;border:1px solid #d8e1dd;gap:7px;min-height:28px;padding:6px 11px;font-size:11px;font-weight:850;box-shadow:0 1px 2px #10231b0d}.status:before{content:"";background:currentColor;border-radius:50%;flex:0 0 7px;width:7px;height:7px}.status.new{color:#c93d34;background:#fff0ed;border-color:#ffc9c3}.status.allocated{color:#2764ad;background:#eaf3ff;border-color:#b9d4ff}.status.accepted{color:#187157;background:#eaf7f2;border-color:#b7ddd0}.status.in-progress{color:#6846b7;background:#f2edff;border-color:#d1c3f7}.status.awaiting-approval{color:#8a5e00;background:#fff5dc;border-color:#f0d08c}.status.returned{color:#b94b1b;background:#fff0e9;border-color:#ffc0a4}.status.complete{color:#167340;background:#e5f7eb;border-color:#adddbc}.status.invoiced{color:#126f6b;background:#e6f7f5;border-color:#a8d9d6}.status.paid{color:#0d6c31;background:#dcf5e3;border-color:#9ed6aa}.status.archived{color:#53605a;background:#edf0ef;border-color:#ccd2cf}.contractor-cell{white-space:nowrap;align-items:center;gap:7px;display:flex}.contractor-cell>span{color:#37584b;background:#e4eee9;border-radius:50%;place-items:center;width:23px;height:23px;font-size:8px;font-weight:800;display:grid}.card-footer{border-top:1px solid var(--line);color:#838d88;justify-content:space-between;padding:15px 21px;font-size:10px;display:flex}.card-footer button{color:var(--green);background:0 0;border:0;font-size:10px;font-weight:700}.empty{text-align:center;color:#808985;padding:55px}.overlay{z-index:20;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0d201a70;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:#fff;width:min(460px,100%);height:100%;padding:34px;animation:.22s ease-out slide;position:relative;overflow:auto;box-shadow:-15px 0 40px #0b211a25}.drawer-close{cursor:pointer;background:#f1f4f2;border:0;border-radius:50%;width:34px;height:34px;font-size:20px;position:absolute;top:20px;right:22px}.eyebrow{text-transform:uppercase;letter-spacing:1.4px;color:var(--green);font-size:10px;font-weight:800}.drawer h2,.modal h2{margin:9px 40px 7px 0;font-size:26px}.drawer>p,.modal>p{color:#77817c;margin:0 0 24px;font-size:13px}.job-pdf-button{appearance:none;color:var(--green);font:inherit;cursor:pointer;background:#eef7f0;border:1px solid #15944759;border-radius:10px;padding:10px 14px;font-size:11px;font-weight:800}.job-pdf-button:hover{background:#e4f2e7}.detail-grid{border:1px solid var(--line);border-radius:11px;grid-template-columns:1fr 1fr;margin:24px 0;display:grid}.detail-grid>div{border-bottom:1px solid var(--line);padding:15px}.detail-grid>div:nth-last-child(-n+2){border-bottom:0}.detail-grid>div:nth-child(odd){border-right:1px solid var(--line)}.detail-grid small,.detail-grid strong{display:block}.detail-grid small{text-transform:uppercase;color:#8c9591;margin-bottom:7px;font-size:9px}.detail-grid strong{font-size:12px}.job-note{background:#f5f7f6;border-radius:10px;padding:17px;font-size:12px}.job-note p{color:#69736e;margin:7px 0 0;line-height:1.6}.allocation{margin-top:27px}.allocation h3{font-size:17px}.allocation label,.modal label{color:#4c5752;margin:13px 0 7px;font-size:10px;font-weight:750;display:block}.allocation select,.modal input,.modal select{background:#fff;border:1px solid #dce2df;border-radius:8px;width:100%;height:42px;padding:0 11px;font-size:12px}.modal select{appearance:none;color:#26332d;background-color:#fff;background-image:linear-gradient(45deg,#0000 50%,#21744e 50%),linear-gradient(135deg,#21744e 50%,#0000 50%);background-position:calc(100% - 15px) 18px,calc(100% - 11px) 18px;background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-color:#c4d9cf;padding-right:34px}.modal select:focus{border-color:#7fbb9f;outline:none;box-shadow:0 0 0 3px #1f94581c}.channel-group{grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:17px;display:grid}.channel-group button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;height:39px;font-size:11px}.channel-group button.chosen{border-color:var(--green);color:var(--green);background:#eef8f3;font-weight:800}.allocation-lock{background:#eff8f3;border:1px solid #cfe2d8;border-radius:10px;align-items:flex-start;gap:12px;margin-top:24px;padding:16px;display:flex}.allocation-lock>span{color:#fff;background:#176b4b;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:12px;display:grid}.allocation-lock small,.allocation-lock strong{display:block}.allocation-lock small{color:#73817a;text-transform:uppercase;letter-spacing:.7px;font-size:9px}.allocation-lock strong{margin-top:4px;font-size:13px}.allocation-lock p,.progress-lock small{color:#68766f;margin:6px 0 0;font-size:10px;line-height:1.5}.reassign-toggle{color:var(--green);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin-top:11px;padding:0;font-size:11px;font-weight:800;text-decoration:underline}.reassign-panel{background:#fff;border:1px solid #dce2df;border-radius:10px;margin-top:10px;padding:16px}.reassign-panel h3{margin:0 0 5px;font-size:13px}.reassign-panel>p{color:#68766f;margin:0 0 14px;font-size:10px;line-height:1.5}.reassign-panel label{color:#4c5752;margin:11px 0 7px;font-size:10px;font-weight:750;display:block}.reassign-panel select{background:#fff;border:1px solid #dce2df;border-radius:8px;width:100%;height:42px;margin-top:7px;padding:0 11px;font-size:12px}.progress-lock{background:#f4f6f5;border-radius:9px;gap:3px;margin-top:14px;padding:13px 15px;display:grid}.progress-lock strong{font-size:11px}.wide{width:100%}.hint{text-align:center;color:#8a938f;margin-top:9px;font-size:9px;display:block}.modal{background:#fff;border-radius:15px;width:min(570px,100% - 30px);margin:auto;padding:32px;position:relative;box-shadow:0 20px 70px #07151050}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.modal .wide{margin-top:21px}@keyframes slide{0%{opacity:0;transform:translate(40px)}}@media (width<=1100px){.summary-grid{grid-template-columns:1fr 1fr}.sidebar{width:205px}.workspace{width:calc(100% - 205px);margin-left:205px;padding:28px 22px}.toolbar{flex-direction:column;align-items:flex-end;padding-top:6px}.search{width:100%;margin-bottom:10px}.search input{width:100%}}.toast{z-index:40;color:#fff;background:#163f31;border-radius:12px;align-items:center;gap:11px;padding:13px 17px;animation:.2s ease-out toastIn;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 35px #102d2445}.toast>span{color:#103b2d;background:#48c68d;border-radius:50%;place-items:center;width:27px;height:27px;font-weight:900;display:grid}.toast strong,.toast small{display:block}.toast strong{font-size:12px}.toast small{color:#bcd2ca;margin-top:3px;font-size:10px}@keyframes toastIn{0%{opacity:0;transform:translateY(15px)}}@media (width<=720px){.sidebar{width:68px;padding:20px 10px;position:static}.brand{padding:0 7px 25px}.brand>span:last-child,.nav-label,.nav-item:not(.active),.nav-item.active:not(:first-of-type),.sidebar-foot>div:not(.avatar),.sidebar-foot button{display:none}.nav-item.active{justify-content:center;padding:0}.workspace{width:calc(100% - 68px);margin-left:0;padding:22px 14px}.topbar h1{font-size:22px}.topbar p{display:none}.summary-grid{grid-template-columns:1fr 1fr;gap:8px}.summary-grid article,.summary-card{min-height:86px;padding:12px}.summary-icon{display:none}.jobs-heading{padding:18px}.tabs{gap:16px}.toolbar{padding:0 16px}.search{display:none}.form-row{grid-template-columns:1fr}th:nth-child(4),td:nth-child(4),th:nth-child(5),td:nth-child(5),th:nth-child(6),td:nth-child(6),.top-actions .icon-button{display:none}}.sidebar-brand-lockup{border-bottom:1px solid #ddebdd1a;margin-bottom:10px;padding:2px 10px 18px;position:relative}.sidebar-brand-lockup:after{content:"";opacity:.045;pointer-events:none;background:url(/brand/loopp-icon.png) 50%/contain no-repeat;width:88px;height:42px;position:absolute;bottom:-13px;right:-8px}.sidebar-brand-lockup .brand{padding:0 0 12px}.sidebar-brand-line{color:#f7f6f2;letter-spacing:.075em;text-transform:uppercase;gap:5px;margin:0;font-size:8px;font-weight:800;display:flex}.sidebar-brand-line strong{color:var(--lime)}.login-action-line{z-index:1;color:#fff;letter-spacing:.09em;text-transform:uppercase;background:#ddebdd0b;border:1px solid #b7db2b2e;border-radius:999px;align-self:flex-start;align-items:center;gap:9px;margin:14px 0 0;padding:8px 12px;font-size:9px;font-weight:800;display:flex;position:relative}.login-action-line strong{color:var(--lime)}.login-icon-brand{background:var(--charcoal);padding:8px}.login-icon-brand img{object-fit:contain;width:100%;height:100%;display:block}.sidebar-live{color:#a9bdb4;letter-spacing:.06em;text-transform:uppercase;background:#b7db2b0f;border:1px solid #b7db2b29;border-radius:999px;align-self:flex-start;align-items:center;gap:7px;margin:0 10px 6px;padding:6px 9px;font-size:8px;font-weight:700;display:inline-flex}.sidebar-live i{background:var(--lime);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #b7db2b17}.sidebar-nav{position:relative}.sidebar-nav:before{content:"";pointer-events:none;background:linear-gradient(#1594470f,#b7db2b2e,#1594470a);width:1px;position:absolute;top:46px;bottom:20px;left:25px}.sidebar-nav .nav-item{min-height:46px;margin:3px 0;padding:0 10px;transition:transform .16s,background .16s,color .16s;position:relative}.sidebar-nav .nav-item:hover{transform:translate(2px)}.sidebar-nav .nav-item>span:first-child{z-index:1;color:#a6b9b0;background:#ddebdd0b;border:1px solid #ddebdd1f;border-radius:9px;flex:0 0 30px;place-items:center;width:30px;height:30px;font-size:14px;transition:border-color .16s,background .16s,color .16s;display:grid;position:relative}.sidebar-nav .nav-item:hover>span:first-child{color:var(--lime);border-color:#b7db2b42}.sidebar-nav .nav-item.active{box-shadow:inset 3px 0 0 var(--lime), 0 7px 18px #0000001a;background:linear-gradient(90deg,#15944757,#b7db2b21)}.sidebar-nav .nav-item.active>span:first-child{background:linear-gradient(135deg, var(--green), var(--lime));color:var(--charcoal);border-color:#b7db2b85;box-shadow:0 4px 12px #1594473d}.sidebar-nav .nav-item b{min-width:22px;color:var(--lime);text-align:center;background:#b7db2b1c;padding:3px 7px}.sidebar-foot{background:#ddebdd0b;border:1px solid #ddebdd1c;border-radius:13px;margin-bottom:13px;padding:13px 10px}.sidebar-foot .avatar{background:linear-gradient(135deg, var(--green), var(--lime));color:var(--charcoal);box-shadow:0 4px 12px #15944733}.signout-link{color:#c9d8d1;white-space:nowrap;border:1px solid #ddebdd24;border-radius:8px;align-items:center;gap:5px;padding:8px 9px;font-size:9px;font-weight:800;text-decoration:none;display:flex}.signout-link:hover{color:var(--lime);background:#b7db2b14;border-color:#b7db2b59}@media (width<=720px){.sidebar-brand-lockup{padding-inline:10px}.sidebar-live{margin-left:10px}.sidebar-nav:before{left:27px}}.sidebar button.nav-item{text-align:left;cursor:pointer;background:0 0;border:0;width:100%}.sidebar button.nav-item.active{background:#225540}.notification-popover{border:1px solid var(--line);z-index:12;background:#fff;border-radius:13px;width:360px;padding:10px;position:absolute;top:80px;right:clamp(24px,4vw,58px);box-shadow:0 18px 50px #16241f24}.notification-popover>div{justify-content:space-between;align-items:center;padding:5px 8px 10px;display:flex}.notification-popover h3{margin:0;font-size:14px}.notification-popover button{background:0 0;border:0;font-size:18px}.notification-popover article{border-top:1px solid #edf0ee;gap:10px;padding:11px 8px;display:flex}.notification-popover article>span{color:#217451;background:#e9f6ef;border-radius:50%;place-items:center;width:25px;height:25px;display:grid}.notification-popover p{margin:0;font-size:10px;line-height:1.45}.notification-popover p strong,.notification-popover p small{display:block}.notification-popover p small{color:#929b97;margin-top:3px}.empty-small{text-align:center;color:#7c8581;padding:20px}.content-view{border:1px solid var(--line);background:#fff;border-radius:13px;padding:24px}.section-title{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.section-title h2{margin:0 0 5px;font-size:20px}.section-title p{color:#7c8681;margin:0;font-size:12px}.entity-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.entity-grid article{border:1px solid var(--line);border-radius:11px;align-items:center;gap:12px;padding:16px;display:flex}.entity-grid h3{margin:0 0 5px;font-size:13px}.entity-grid p{color:#7e8883;margin:0;font-size:10px}.entity-grid article>strong{color:var(--green);margin-left:auto;font-size:20px}.entity-icon,.person-avatar{width:40px;height:40px;color:var(--green);background:#edf6f1;border-radius:10px;place-items:center;font-weight:800;display:grid}.person-avatar{border-radius:50%;font-size:11px}.entity-grid article>.secondary{height:34px;margin-left:auto;font-size:10px}.online{background:#3dbc82;border-radius:50%;width:6px;height:6px;display:inline-block}.timeline article{border-bottom:1px solid var(--line);gap:13px;padding:15px 8px;display:flex}.timeline article>span{color:#247856;background:#eaf6ef;border-radius:50%;place-items:center;width:27px;height:27px;display:grid}.timeline strong,.timeline small{font-size:11px;display:block}.timeline small{color:#929a96;margin-top:5px;font-size:9px}.report-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.report-grid article{border:1px solid var(--line);border-radius:11px;padding:20px}.report-grid span,.report-grid strong,.report-grid small{display:block}.report-grid span{color:#76807b;font-size:11px}.report-grid strong{margin:11px 0;font-size:31px}.report-grid small{color:#8c9591;font-size:10px}.bar{background:#e9eeeb;border-radius:6px;height:7px;overflow:hidden}.bar i{background:#43b47f;height:100%;display:block}.progress-box{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.progress-box h3{font-size:16px}.progress-box>div{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.progress-box button{border:1px solid var(--line);color:#47534d;cursor:pointer;background:#fff;border-radius:8px;min-height:38px;font-size:10px}.progress-box button:hover{border-color:var(--green);color:var(--green)}.progress-box button:disabled{opacity:.45;cursor:default}.modal textarea{resize:vertical;border:1px solid #dce2df;border-radius:8px;width:100%;min-height:78px;padding:10px 11px;font:12px Arial}.primary:disabled{opacity:.55;cursor:wait}@media (width<=820px){.entity-grid,.report-grid{grid-template-columns:1fr}.notification-popover{width:auto;left:82px;right:15px}.content-view{padding:17px}.section-title{align-items:flex-start;gap:12px}.section-title .primary{white-space:nowrap}}.property-grid article{min-height:88px}.property-card{cursor:pointer;transition:border-color .18s,transform .18s,box-shadow .18s}.property-card:hover,.property-card:focus-visible{border-color:#89b7a2;outline:none;transform:translateY(-1px);box-shadow:0 8px 24px #173d3010}.property-arrow{color:#8aa097;font-size:22px}.property-detail-summary{border:1px solid var(--line);border-radius:11px;grid-template-columns:1fr 1fr;margin:22px 0;display:grid;overflow:hidden}.property-edit-button{width:100%;margin-top:14px}.property-detail-summary>div{border-bottom:1px solid var(--line);padding:14px}.property-detail-summary>div:nth-child(odd){border-right:1px solid var(--line)}.property-detail-summary>div:nth-last-child(-n+2){border-bottom:0}.property-detail-summary small,.property-detail-summary strong{display:block}.property-detail-summary small{color:#89938e;text-transform:uppercase;letter-spacing:.7px;font-size:8px}.property-detail-summary strong{margin-top:5px;font-size:13px}.property-map-card{background:#edf6f1;border:1px solid #cfe0d7;border-radius:12px;margin-bottom:18px;overflow:hidden}.property-map-heading{background:#eff8f3;align-items:center;gap:10px;padding:12px 13px;display:flex}.property-map-heading>span{color:#fff;background:#176b4b;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:15px;display:grid}.property-map-heading strong,.property-map-heading small{display:block}.property-map-heading strong{font-size:11px}.property-map-heading small{color:#6f7c75;margin-top:3px;font-size:9px}.property-map-frame{background:#e3eee8;border:0;width:100%;height:210px;display:block}.property-map-link{justify-content:center;align-items:center;margin:10px;font-size:10px;text-decoration:none;display:flex}.property-contact-card{border:1px solid var(--line);border-radius:10px;gap:5px;margin-bottom:17px;padding:15px;display:grid}.property-contact-card strong{font-size:12px}.property-contact-card a{color:var(--green);font-size:11px}.property-notes{margin-bottom:20px}.property-related-jobs>div{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.property-related-jobs h3{margin:0;font-size:15px}.property-related-jobs>div>span{text-transform:uppercase;color:#6e7b75;font-size:8px}.property-related-jobs>button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;width:100%;margin-bottom:7px;padding:12px;display:flex}.property-related-jobs>button:hover{border-color:#8eb6a4}.property-related-jobs>button strong,.property-related-jobs>button small{display:block}.property-related-jobs>button strong{font-size:10px}.property-related-jobs>button small{color:#8a948f;margin-top:4px;font-size:8px}.property-related-jobs>p{color:#7b8781;text-align:center;background:#f6f8f7;border-radius:9px;padding:18px;font-size:10px}.closeout-box{background:#f7f9f8;border:1px solid #d9e2de;border-radius:10px;margin-top:16px;padding:16px}.closeout-box h3{margin:0;font-size:14px}.closeout-box p{color:#6d7973;margin:6px 0 13px;font-size:10px;line-height:1.5}.closeout-box .wide+.wide{margin-top:8px}.closeout-box.invoiced{background:#f1f6fb;border-color:#cdddf1}.closeout-box.paid{background:#eef8f3;border-color:#b9dcc9}.archive-record-banner{background:#eef2f0;border-radius:10px;align-items:center;gap:11px;margin-top:16px;padding:15px;display:flex}.archive-record-banner>span{color:#fff;background:#53665d;border-radius:8px;place-items:center;width:31px;height:31px;display:grid}.archive-record-banner strong,.archive-record-banner small{display:block}.archive-record-banner strong{font-size:11px}.archive-record-banner small{color:#718078;margin-top:4px;font-size:9px;line-height:1.4}.archive-summary{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:17px;display:grid}.archive-summary article{border:1px solid var(--line);background:#fff;border-radius:11px;padding:16px}.archive-summary span,.archive-summary strong{display:block}.archive-summary span{color:#7c8882;font-size:9px}.archive-summary strong{color:#176b4b;margin-top:6px;font-size:22px}.archive-search{background:#fff;display:flex}.archive-list{gap:8px;display:grid}.archive-list>button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:11px;grid-template-columns:minmax(220px,1fr) 180px 100px 12px;align-items:center;gap:18px;width:100%;padding:15px;display:grid}.archive-list>button:hover{border-color:#91b7a6}.archive-job-main span,.archive-job-main strong,.archive-job-main small,.archive-invoice small,.archive-invoice strong,.archive-invoice span,.archive-date small,.archive-date strong{display:block}.archive-job-main span{color:#237858;font-size:8px;font-weight:850}.archive-job-main strong{margin-top:4px;font-size:12px}.archive-job-main small,.archive-invoice small,.archive-date small{color:#89938e;margin-top:4px;font-size:8px}.archive-invoice strong,.archive-date strong{margin-top:4px;font-size:10px}.archive-invoice span{color:#617068;margin-top:4px;font-size:8px}@media (width<=720px){.archive-summary{grid-template-columns:1fr 1fr}.archive-list>button{grid-template-columns:1fr auto}.archive-invoice{grid-column:1/2}.archive-date{grid-area:1/2/3/3}.archive-search{width:100%}.archive-view .section-title{flex-direction:column;align-items:stretch}}.property-copy{min-width:0}.property-copy p{white-space:nowrap;text-overflow:ellipsis;max-width:320px;overflow:hidden}.property-copy small{color:#9aa19e;margin-top:5px;font-size:9px;display:block}.property-jobs{text-align:center;min-width:55px;margin-left:auto}.property-jobs strong,.property-jobs small{display:block}.property-jobs strong{color:var(--green);font-size:20px}.property-jobs small{text-transform:uppercase;color:#949d98;margin-top:3px;font-size:8px}.property-modal{max-height:calc(100vh - 30px);overflow:auto}.form-error{color:#b63d37;background:#fff0ef;border-radius:8px;margin-bottom:12px;padding:10px 12px;font-size:11px}@media (width<=820px){.property-copy p{max-width:180px}}.workforce-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin:-8px 0 18px;display:flex}.workforce-toolbar>span{color:#8a938f;font-size:10px}.tabs.compact button{height:40px}.workforce-grid article{min-height:102px}.workforce-grid article.workforce-click-card{cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}.workforce-grid article.workforce-click-card:hover{border-color:#83cdaa;transform:translateY(-1px);box-shadow:0 8px 22px #12523714}.workforce-grid article.workforce-click-card:focus-visible{outline-offset:2px;border-color:#45c88c;outline:3px solid #45c88c52}.person-avatar.staff{color:#5265a6;background:#edf1ff}.member-copy{flex:1;min-width:0}.member-copy>div{align-items:center;gap:7px;display:flex}.member-copy h3{margin:0}.member-copy small{color:#959e99;margin-top:5px;font-size:9px;display:block}.member-type,.invite-status{border-radius:10px;padding:3px 6px;font-size:8px;font-weight:800;display:inline-block}.member-type.contractor{color:#277654;background:#eaf6ef}.member-type.staff{color:#5669aa;background:#eef1ff}.member-actions{align-items:center;gap:10px;display:flex}.member-actions .secondary{height:33px;font-size:9px}.invite-status{color:#277654;background:#eaf6ef}.invite-status.invited{color:#9a6b14;background:#fff5df}.type-selector{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:12px;display:grid}.type-selector button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:9px;padding:12px}.type-selector button.chosen{border-color:var(--green);box-shadow:0 0 0 1px var(--green);background:#eef8f3}.type-selector strong,.type-selector small{display:block}.type-selector strong{color:#2a342f;font-size:12px}.type-selector small{color:#8c9591;margin-top:4px;font-size:9px}.invite-modal{max-height:calc(100vh - 30px);overflow:auto}.invite-summary{background:#f4f7f5;border-radius:9px;align-items:center;gap:10px;margin-top:16px;padding:12px;display:flex}.invite-summary>span{width:29px;height:29px;color:var(--green);background:#dcece4;border-radius:50%;place-items:center;display:grid}.invite-summary p{margin:0}.invite-summary strong,.invite-summary small{display:block}.invite-summary strong{font-size:10px}.invite-summary small{color:#838c88;margin-top:4px;font-size:9px}@media (width<=820px){.member-actions{flex-direction:column;align-items:flex-end}.workforce-toolbar>span{display:none}.type-selector{grid-template-columns:1fr}}.app-shell .primary{background:var(--loopp-light-green);color:var(--loopp-light-green-ink);box-shadow:0 3px 8px #41c58a40}.app-shell .primary:hover:not(:disabled),.app-shell .primary:focus-visible{background:var(--loopp-light-green-hover);color:var(--loopp-light-green-ink)}.app-shell .tabs button.selected{color:var(--brand-colour,var(--green))}.app-shell .tabs button.selected:after{background:var(--brand-colour,var(--green))}.brand-logo{object-fit:contain;background:#fff;border-radius:9px;width:40px;height:40px;padding:3px}.settings-layout{grid-template-columns:220px 1fr;align-items:start;gap:16px;display:grid}.settings-menu{border:1px solid var(--line);background:#fff;border-radius:12px;padding:15px}.settings-menu>span{text-transform:uppercase;letter-spacing:1px;color:#8c9591;padding:4px 8px 10px;font-size:9px;display:block}.settings-menu button{text-align:left;color:#59645e;cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;padding:11px 10px;font-size:11px}.settings-menu button.active{color:var(--brand-colour,var(--green));background:#edf6f1;font-weight:800}.settings-menu small{border-top:1px solid var(--line);color:#9aa19e;margin-top:12px;padding:13px 8px 3px;font-size:9px;line-height:1.45;display:block}.settings-panel{min-width:0}.permission-guide{grid-template-columns:repeat(3,1fr);gap:10px;margin:4px 0 22px;display:grid}.permission-guide article{border:1px solid var(--line);background:#fafcfb;border-radius:10px;padding:14px}.permission-guide strong,.permission-guide span,.settings-user-list strong,.settings-user-list small{display:block}.permission-guide strong{margin-bottom:5px;font-size:12px}.permission-guide span{color:#7b8580;font-size:10px;line-height:1.45}.settings-user-list{border-top:1px solid var(--line)}.settings-user-list article{border-bottom:1px solid var(--line);grid-template-columns:36px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:13px 0;display:grid}.user-avatar{width:34px;height:34px;color:var(--brand-colour);background:#e6f2ec;border-radius:50%;place-items:center;font-size:10px;font-weight:800;display:grid}.settings-user-list strong{font-size:12px}.settings-user-list small{color:#8b9490;margin-top:3px;font-size:9px}.access-badge{color:#5d6963;background:#f1f5f3;border-radius:20px;padding:6px 9px;font-size:9px}.setting-switch{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:15px 0;margin:0!important;display:flex!important}.setting-switch span strong,.setting-switch span small{display:block}.setting-switch span small{color:#8a938f;margin-top:3px;font-weight:400}.setting-switch input[type=checkbox]{appearance:none;cursor:pointer;background:#ccd4d0;border:0;border-radius:20px;flex:none;width:42px;height:24px;padding:2px;transition:background .15s}.setting-switch input[type=checkbox]:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;display:block;box-shadow:0 1px 4px #0002}.setting-switch input[type=checkbox]:checked:after{transform:translate(18px)}.master-switch{background:#f2f8f5;border:1px solid #dce9e2;border-radius:10px;padding:15px!important}.notification-options .setting-switch:last-child{border-bottom:0}.category-add{grid-template-columns:1fr auto;align-items:end;gap:10px;margin-bottom:20px;display:grid}.category-add .primary{height:42px;margin-bottom:7px}.category-list{border-top:1px solid var(--line)}.category-list article{border-bottom:1px solid var(--line);grid-template-columns:28px 1fr auto;align-items:center;gap:8px;padding:12px 4px;display:grid}.category-list article>span{color:var(--brand-colour)}.category-list article strong{font-size:12px}.category-list article button{color:#a34a45;cursor:pointer;background:0 0;border:0;font-size:10px}.category-list article button:disabled{opacity:.35;cursor:default}.settings-help{color:#8b9490;margin-top:14px;font-size:10px}.projects-view{padding:0;overflow:hidden}.projects-title{padding:24px 24px 8px}.project-readonly{color:#68736e;background:#f3f6f5;border-radius:8px;margin:0 24px 12px;padding:10px 12px;font-size:10px}.project-stats{grid-template-columns:repeat(4,1fr);gap:10px;padding:10px 24px 20px;display:grid}.project-stats article{border:1px solid var(--line);background:#fafcfb;border-radius:10px;padding:14px}.project-stats span,.project-stats strong{display:block}.project-stats span{color:#7d8782;margin-bottom:5px;font-size:9px}.project-stats strong{font-size:18px}.project-workspace{border-top:1px solid var(--line);grid-template-columns:250px minmax(0,1fr);min-height:620px;display:grid}.project-list{border-right:1px solid var(--line);background:#f7f9f8;padding:10px}.project-list>button{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:1px solid #0000;border-radius:10px;margin-bottom:5px;padding:13px;position:relative}.project-list>button:hover,.project-list>button.active{background:#fff;border-color:#dce6e1;box-shadow:0 4px 14px #132e2408}.project-list>button span,.project-list>button strong,.project-list>button small{display:block}.project-list>button span{color:var(--brand-colour);letter-spacing:.5px;font-size:8px;font-weight:800}.project-list>button strong{margin:4px 0;padding-right:70px;font-size:12px}.project-list>button small{color:#8a938f;font-size:9px}.project-status{color:#627069;background:#edf3f0;border-radius:20px;padding:4px 7px;font-size:8px;font-style:normal;position:absolute;top:12px;right:10px}.project-status.in-progress,.project-status.approved{color:#3972a7;background:#e9f2ff}.project-status.complete{color:#24764f;background:#e7f5ed}.project-status.on-hold{color:#93611d;background:#fff2dc}.project-detail{min-width:0;padding:24px}.project-detail>header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.project-detail>header h3{margin:5px 0;font-size:22px}.project-detail>header p{color:#7b8580;font-size:11px}.project-header-actions{gap:8px;display:flex}.project-header-actions button{height:38px}.project-meta{grid-template-columns:repeat(5,1fr);gap:8px;margin:20px 0;display:grid}.project-meta div{background:#f7f9f8;border-radius:8px;padding:12px}.project-meta small,.project-meta strong{display:block}.project-meta small{color:#87908c;margin-bottom:4px;font-size:8px}.project-meta strong{font-size:10px}.project-description{border:1px solid var(--line);border-radius:10px;margin-bottom:16px;padding:16px}.project-detail h4{margin:0;font-size:12px}.project-description p{color:#606b65;white-space:pre-wrap;margin:8px 0 0;font-size:11px;line-height:1.55}.project-sections{grid-template-columns:1fr 1fr;gap:14px;display:grid}.project-sections>section,.project-quotes{border:1px solid var(--line);border-radius:10px;padding:15px}.project-section-title{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.project-section-title>span{min-width:22px;height:22px;color:var(--brand-colour);background:#edf4f0;border-radius:20px;place-items:center;padding:0 5px;font-size:9px;font-weight:800;display:grid}.project-note-form textarea{resize:vertical;width:100%;min-height:72px;font:inherit;border:1px solid #dce2df;border-radius:8px;padding:9px;font-size:10px}.project-note-form button{width:100%;height:34px;margin:6px 0 10px}.project-notes{max-height:240px;overflow:auto}.project-notes article{background:#f7f9f8;border-radius:8px;margin-bottom:7px;padding:10px}.project-notes p{white-space:pre-wrap;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 7px;font-size:10px;line-height:1.5;display:-webkit-box;overflow:hidden}.project-notes small{color:#8a938f;font-size:8px}.project-notes article>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.project-notes article button{color:var(--green);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:3px 0;font-size:9px;font-weight:750}.project-upload{background:#f8fbf9;border:1px dashed #cddcd5;border-radius:11px;grid-template-columns:130px minmax(0,1fr) auto;align-items:stretch;gap:8px;margin-bottom:14px;padding:12px;display:grid}.project-upload select{color:#47554e;min-width:0;height:46px;font:inherit;background:#fff;border:1px solid #d8e3de;border-radius:9px;padding:0 10px;font-size:10px}.project-file-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.project-file-picker{color:#32423a;text-align:left;cursor:pointer;background:#fff;border:1px solid #d8e3de;border-radius:9px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;min-width:0;height:46px;padding:6px 10px;display:grid}.project-file-picker>span{width:26px;height:26px;color:var(--green);background:#e7f4ed;border-radius:7px;place-items:center;font-size:17px;display:grid}.project-file-picker>div{min-width:0}.project-file-picker strong,.project-file-picker small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-file-picker strong{font-size:10px}.project-file-picker small{color:#839088;margin-top:2px;font-size:8px}.project-upload-submit{white-space:nowrap;border-radius:9px;height:46px}.project-upload>small{color:#75827b;grid-column:1/-1;min-height:12px;font-size:8px}.project-upload .upload-more,.project-upload .upload-cancel,.project-upload .upload-clear{height:auto;color:var(--green);font:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;padding:2px 0;font-size:9px;font-weight:750}.project-upload .upload-more{grid-column:2}.project-upload .upload-clear{color:#7b8781;grid-column:3}.project-upload .upload-cancel{color:#b44343;grid-column:2/-1}.project-note-modal{width:min(620px,100vw - 28px)}.project-note-meta{margin-bottom:16px!important}.project-note-full{white-space:pre-wrap;overflow-wrap:anywhere;color:#26322d;background:#f7f9f8;border:1px solid #e4e9e6;border-radius:10px;max-height:min(55vh,520px);margin-bottom:16px;padding:16px;font-size:13px;line-height:1.65;overflow:auto}.project-files{max-height:240px;overflow:auto}.project-files>article{background:#fff;border:1px solid #e4ebe7;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:7px;padding:10px;display:grid}.project-file-info{grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;min-width:0;display:grid}.project-file-info>span{width:30px;height:30px;color:var(--brand-colour);background:#eef6f2;border-radius:8px;place-items:center;display:grid}.project-file-actions{align-items:center;gap:4px;display:flex}.project-file-actions a,.project-file-actions button{color:var(--green);cursor:pointer;font:inherit;background:#fff;border:1px solid #dce5e0;border-radius:7px;padding:7px 9px;font-size:8px;font-weight:750;text-decoration:none}.project-file-actions .delete{color:#a34a45;border-color:#0000;padding:3px 6px;font-size:14px}.project-file-message{color:var(--green);margin:-3px 0 7px;font-size:8px}.project-file-viewer{z-index:1000;background:#eef2f0;grid-template-rows:auto minmax(0,1fr);display:grid;position:fixed;inset:0}.project-file-viewer>header{min-height:66px;padding:10px 18px;padding-top:max(10px, env(safe-area-inset-top));border-bottom:1px solid var(--line);background:#fff;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;display:grid}.project-file-viewer>header>div{min-width:0}.project-file-viewer>header strong,.project-file-viewer>header small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-file-viewer>header strong{color:#24332c;font-size:12px}.project-file-viewer>header small{color:#7d8983;margin-top:2px;font-size:9px}.project-file-viewer>header a,.project-file-back{color:var(--green);font:inherit;cursor:pointer;background:#fff;border:1px solid #d8e2dd;border-radius:8px;padding:9px 11px;font-size:10px;font-weight:800;text-decoration:none}.project-file-close{width:38px;height:38px;color:var(--green);cursor:pointer;background:#edf4f0;border:0;border-radius:50%;place-items:center;font-size:24px;line-height:1;display:grid}.project-file-stage{place-items:center;min-height:0;padding:18px;display:grid;overflow:auto}.project-file-stage img{object-fit:contain;border-radius:6px;max-width:100%;max-height:100%;display:block;box-shadow:0 8px 30px #0f35281f}.job-photo-stage{background:#17201c}.job-photo-stage img{max-width:min(1200px,100%);max-height:100%;box-shadow:none}.project-file-stage iframe{background:#fff;border:0;border-radius:8px;width:min(1100px,100%);height:100%;min-height:0;box-shadow:0 8px 30px #0f35281f}.project-file-unavailable{text-align:center;background:#fff;border-radius:12px;width:min(440px,100%);padding:34px 24px}.project-file-unavailable>span{color:var(--brand-colour);font-size:34px}.project-file-unavailable h3{margin:12px 0 7px}.project-file-unavailable p{color:#728078;font-size:11px;line-height:1.5}.project-file-unavailable a{background:var(--green);color:#fff;border-radius:8px;margin-top:12px;padding:11px 14px;font-size:10px;font-weight:800;text-decoration:none;display:inline-block}.project-files strong,.project-files small{display:block}.project-files strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.project-files small{color:#8a938f;margin-top:2px;font-size:8px}.project-quotes{margin-top:14px}.project-quotes>article{border-top:1px solid var(--line);grid-template-columns:1fr auto auto auto;align-items:center;gap:15px;padding:11px 2px;display:grid}.project-quotes>article div strong,.project-quotes>article div span{display:block}.project-quotes>article div strong{color:var(--brand-colour);font-size:9px}.project-quotes>article div span{margin-top:3px;font-size:10px}.project-quotes>article em{background:#f0f4f2;border-radius:20px;padding:5px 8px;font-size:8px;font-style:normal}.project-quotes>article b{font-size:10px}.project-quote-actions{gap:5px;display:flex}.project-quote-actions button,.project-quote-download{border:1px solid var(--line);color:var(--brand-colour);font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border-radius:7px;padding:7px 10px;font-size:9px;font-weight:800}.project-quote-actions button:first-child{background:#edf6f1;border-color:#d7e9df}.project-quote-download{height:38px}.invoice-empty-state{text-align:center;background:#f5faf7;border:1px solid #dfe9e4;border-radius:12px;margin:20px 0 4px;padding:24px 18px}.invoice-empty-state>span{width:38px;height:38px;color:var(--green);background:#e3f2ea;border-radius:50%;place-items:center;margin:0 auto 12px;font-size:18px;font-weight:800;display:grid}.invoice-empty-state h3{color:#26372f;margin:0 0 7px;font-size:15px}.invoice-empty-state p{color:#748078;font-size:11px;line-height:1.5;margin:0 0 16px!important}.project-empty{text-align:center;color:#89938e;place-content:center;display:grid}.project-empty>span{color:var(--brand-colour);font-size:30px}.project-empty h3{color:#36423c;margin:8px 0}.project-empty p{font-size:10px}.project-modal label{color:#4c5752;margin:13px 0 7px;font-size:10px;font-weight:750;display:block}.project-modal input,.project-modal select,.project-modal textarea{background:#fff;border:1px solid #dce2df;border-radius:8px;width:100%;min-height:42px;padding:0 11px;font-size:12px}.project-modal textarea{resize:vertical;min-height:100px;padding-top:10px}@media (width<=1000px){.project-workspace{grid-template-columns:210px minmax(0,1fr)}.project-meta{grid-template-columns:repeat(3,1fr)}.project-sections{grid-template-columns:1fr}}@media (width<=720px){.projects-title{padding:16px 14px 8px}.project-readonly{margin:0 14px 8px}.project-stats{grid-template-columns:1fr 1fr;padding:8px 14px 14px}.project-workspace{min-height:0;display:block}.project-list{border-right:0;border-bottom:1px solid var(--line);gap:7px;padding:10px 14px;display:flex;overflow-x:auto}.project-list>button{flex:0 0 210px;margin:0}.project-detail{padding:18px 14px}.project-detail>header{display:block}.project-header-actions{grid-template-columns:1fr;gap:7px;margin-top:16px;display:grid}.project-header-actions button{white-space:nowrap;width:100%;min-width:0;padding-inline:14px;font-size:12px;line-height:1}.project-header-actions .primary{height:48px;box-shadow:0 5px 14px var(--green);border-radius:12px;order:1}@supports (color:color-mix(in lab, red, red)){.project-header-actions .primary{box-shadow:0 5px 14px color-mix(in srgb, var(--green) 22%, transparent)}}.project-header-actions .secondary{color:#64716b;background:0 0;border:0;order:2;height:40px}.project-meta{grid-template-columns:1fr 1fr}.project-sections,.project-upload{grid-template-columns:1fr}.project-upload select,.project-file-picker,.project-upload-submit,.project-upload .upload-more,.project-upload .upload-clear,.project-upload .upload-cancel,.project-upload>small{grid-column:1}.project-file-actions{grid-column:1/-1;justify-content:flex-end}.project-file-viewer>header{min-height:106px;padding:max(9px, env(safe-area-inset-top)) 12px 9px;grid-template-columns:minmax(0,1fr) auto;gap:8px}.project-file-back{grid-area:1/1;justify-self:start}.project-file-viewer>header>div{grid-area:2/1/auto/-1}.project-file-viewer>header>a{grid-area:2/2}.project-file-close{grid-area:1/2}.project-file-stage{padding:8px;padding-bottom:max(8px, env(safe-area-inset-bottom))}.project-file-stage iframe{border-radius:4px}.project-quotes>article{grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.project-quotes>article em{grid-column:1;width:fit-content}.project-quote-actions{grid-area:2/2/auto/-1;justify-content:flex-end}}.settings-form label{color:#4c5752;margin:13px 0 7px;font-size:10px;font-weight:750;display:block}.settings-form input,.settings-form textarea{background:#fff;border:1px solid #dce2df;border-radius:8px;width:100%;height:42px;padding:0 11px;font-size:12px}.settings-form textarea{height:78px;padding:10px}.logo-setting{background:#f6f8f7;border-radius:10px;align-items:center;gap:18px;margin-bottom:22px;padding:18px;display:flex}.logo-preview{background:#173d30;border-radius:13px;flex:none;place-items:center;width:80px;height:80px;display:grid;overflow:hidden}.logo-preview img{object-fit:contain;background:#fff;width:100%;height:100%}.logo-preview span{color:#fff;font-size:32px;font-weight:850}.logo-setting strong{font-size:12px}.logo-setting p{color:#848e89;margin:5px 0 10px;font-size:9px}.upload-button{cursor:pointer;background:#fff;border:1px solid #dce2df;border-radius:8px;align-items:center;height:34px;padding:0 12px;margin:0!important;display:inline-flex!important}.upload-button input{display:none}.settings-section{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.settings-section h3{margin:0;font-size:14px}.settings-section>p{color:#87908c;font-size:10px}.colour-setting{grid-template-columns:50px 110px 1fr;align-items:center;gap:9px;max-width:280px;display:grid}.colour-setting input[type=color]{padding:3px}.colour-setting span{border-radius:8px;height:12px}.settings-actions{border-top:1px solid var(--line);justify-content:flex-end;margin-top:24px;padding-top:20px;display:flex}@media (width<=820px){.settings-layout{grid-template-columns:1fr}.settings-menu{gap:5px;display:flex;overflow-x:auto}.settings-menu>span,.settings-menu small{display:none}.settings-menu button{white-space:nowrap;flex:none;width:auto}.permission-guide{grid-template-columns:1fr}.settings-user-list article{grid-template-columns:36px minmax(0,1fr) auto}.settings-user-list .access-badge{grid-column:2;width:fit-content}.settings-user-list .secondary{grid-area:1/3/span 2}.logo-setting{align-items:flex-start}.logo-preview{width:64px;height:64px}}.mobile-menu-button,.mobile-nav-close,.mobile-bottom-nav,.mobile-scrim{display:none}@media (width<=720px){body{background:#f4f6f5}.app-shell{min-height:100dvh;display:block}.workspace{width:100%;margin:0;padding:18px 14px 96px}.topbar{z-index:4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f4f6f5ef;gap:10px;margin:-18px -14px 16px;padding:12px 14px;position:sticky;top:0}.topbar-title{flex:1;min-width:0}.topbar h1{white-space:nowrap;text-overflow:ellipsis;font-size:20px;overflow:hidden}.topbar p{display:none}.top-actions{gap:8px}.top-actions .icon-button{width:40px;height:40px;display:grid}.top-actions .primary{width:42px;height:40px;padding:0;font-size:0}.top-actions .primary:first-letter{font-size:20px}.mobile-menu-button{border:1px solid var(--line);color:#294238;background:#fff;border-radius:10px;place-items:center;width:40px;height:40px;font-size:18px;display:grid}.sidebar{z-index:60;width:min(310px,86vw);height:100dvh;padding:24px 18px 18px;transition:transform .22s;display:flex;position:fixed;inset:0 auto 0 0;transform:translate(-105%);box-shadow:18px 0 55px #07191244}.sidebar.mobile-open{transform:translate(0)}.sidebar .brand{padding:0 10px 22px}.sidebar .brand>span:last-child,.sidebar .nav-label{display:block}.sidebar .nav-item,.sidebar .nav-item:not(.active),.sidebar .nav-item.active:not(:first-of-type){width:100%;height:47px;display:flex}.sidebar .nav-item.active{justify-content:flex-start;padding:0 12px}.sidebar-foot>div:not(.avatar),.sidebar-foot button{display:block}.mobile-nav-close{color:#fff;z-index:2;background:#24483b;border:0;border-radius:50%;place-items:center;width:34px;height:34px;font-size:20px;display:grid;position:absolute;top:18px;right:15px}.mobile-scrim{z-index:55;background:#0b1d1770;border:0;display:block;position:fixed;inset:0}.summary-grid{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:14px}.summary-grid article,.summary-card{align-items:flex-start;min-height:102px;padding:14px}.summary-icon{border-radius:8px;width:30px;height:30px;font-size:13px;display:grid}.summary-grid span{font-size:10px}.summary-grid strong{font-size:22px}.summary-grid small{font-size:8px;line-height:1.3}.jobs-card{background:0 0;border:0;border-radius:12px;overflow:visible}.jobs-heading{padding:16px 4px 10px}.jobs-heading h2{font-size:17px}.jobs-heading .secondary{display:none}.toolbar{border:0;padding:0 0 10px;display:block}.tabs{gap:8px;padding-bottom:4px}.tabs button{border:1px solid var(--line);background:#fff;border-radius:20px;height:38px;padding:0 10px}.tabs button.selected{background:#e8f3ed;border-color:#bfd8cc}.tabs button.selected:after{display:none}.search{background:#fff;width:100%;height:42px;margin:7px 0 0;display:flex}.search input{width:100%;font-size:14px}.table-wrap{overflow:visible}table,tbody{display:block}thead{display:none}tbody tr{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:1fr auto auto;gap:8px;margin-bottom:9px;padding:15px;display:grid;box-shadow:0 2px 9px #17241e08}td{border:0;padding:0;display:block!important}td:first-child{grid-column:1/4}td:first-child strong{margin-bottom:6px;font-size:14px}td:first-child small{font-size:9px}td:nth-child(2){grid-column:1/2;margin-top:5px}td:nth-child(2) strong{font-size:11px}td:nth-child(3),td:nth-child(4){align-self:end}td:nth-child(5),td:nth-child(6){display:none!important}td:nth-child(7){color:#93a09a;margin-top:2px;font-size:20px;position:absolute;right:26px}.priority,.status{padding:6px 9px;font-size:10px}.card-footer{border:1px solid var(--line);background:#fff;border-radius:10px;margin-top:8px}.content-view{border-radius:12px;padding:16px}.section-title{align-items:flex-start;gap:10px}.section-title h2{font-size:18px}.section-title .primary{height:40px;padding:0 12px;font-size:10px}.entity-grid,.report-grid{grid-template-columns:1fr}.entity-grid article{padding:13px}.property-copy p{max-width:180px}.workforce-grid article{align-items:flex-start}.member-actions{flex-direction:column;align-items:flex-end}.member-actions .secondary{display:none}.settings-layout{grid-template-columns:1fr}.settings-menu{padding:8px}.settings-menu>span,.settings-menu small{display:none}.settings-menu button.active{height:42px}.category-add{grid-template-columns:1fr}.category-add .primary{width:100%;margin-bottom:0}.settings-form{padding:16px}.logo-setting{gap:12px;padding:13px}.form-row{grid-template-columns:1fr}.colour-setting{grid-template-columns:45px 100px 1fr}.overlay{z-index:80;background:#071a146b;align-items:flex-end}.drawer{width:100%;height:94dvh;padding:28px 20px max(30px, env(safe-area-inset-bottom));border-radius:18px 18px 0 0;animation:.22s ease-out sheetUp}.modal{width:100%;max-width:none;padding:28px 20px max(36px, env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;border-radius:18px 18px 0 0;margin:auto 0 0;overflow:hidden auto;max-height:94dvh!important}.quote-modal .primary.wide:last-child{margin-bottom:12px}.drawer-close{top:15px;right:16px}.drawer h2,.modal h2{font-size:22px}.allocation select,.modal input,.modal select,.settings-form input{height:48px;font-size:16px}.modal textarea,.settings-form textarea{font-size:16px}.channel-group button{height:45px}.progress-box>div{grid-template-columns:1fr}.progress-box button{min-height:46px}.type-selector{grid-template-columns:1fr 1fr}.toast{bottom:82px;left:14px;right:14px}.notification-popover{width:auto;max-height:70dvh;position:fixed;top:70px;left:12px;right:12px;overflow:auto}.mobile-bottom-nav{height:72px;padding:7px 7px max(7px, env(safe-area-inset-bottom));border-top:1px solid var(--line);z-index:30;background:#fff;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #17241e12}.mobile-bottom-nav button{color:#7c8882;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:9px;display:flex}.mobile-bottom-nav button>span{font-size:18px}.mobile-bottom-nav button.active{color:var(--brand-colour,var(--green));font-weight:800}.mobile-bottom-nav .mobile-create>span{background:var(--loopp-light-green);width:38px;height:38px;color:var(--loopp-light-green-ink);border-radius:50%;place-items:center;margin-top:-20px;font-size:23px;display:grid;box-shadow:0 5px 14px #173f3050}.mobile-bottom-nav .mobile-create{color:var(--green);font-weight:800}@keyframes sheetUp{0%{opacity:.5;transform:translateY(50px)}}}.login-shell{background:#f4f6f5;grid-template-columns:minmax(420px,1.05fr) minmax(430px,.95fr);min-height:100dvh;display:grid}.login-story{color:#fff;background:radial-gradient(circle at 80% 15%,#316854 0,#173d30 35%,#102d24 75%);flex-direction:column;min-height:100dvh;padding:48px clamp(42px,6vw,92px);display:flex;position:relative;overflow:hidden}.login-story:after{content:"";border:1px solid #ffffff18;border-radius:50%;width:420px;height:420px;position:absolute;bottom:-110px;right:-210px;box-shadow:0 0 0 65px #ffffff08,0 0 0 130px #ffffff05}.login-brand{z-index:1;align-items:center;gap:12px;display:flex;position:relative}.login-brand>span{color:#113b2d;background:#48c68d;border-radius:11px;place-items:center;width:42px;height:42px;font-size:19px;font-weight:900;display:grid}.login-brand strong{font-size:21px}.login-message{z-index:1;max-width:560px;margin:auto 0;position:relative}.login-message>span{letter-spacing:1.8px;text-transform:uppercase;color:#72d5a7;font-size:10px;font-weight:850}.login-message h1{letter-spacing:-2px;margin:15px 0 20px;font-size:clamp(42px,5vw,68px);line-height:1.02}.login-message>p{color:#c2d5ce;max-width:470px;font-size:14px;line-height:1.7}.login-points{gap:16px;margin-top:35px;display:grid}.login-points>div{align-items:center;gap:12px;display:flex}.login-points b{color:#72d5a7;background:#285844;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.login-points span strong,.login-points span small{display:block}.login-points span strong{font-size:11px}.login-points span small{color:#98b4a9;margin-top:3px;font-size:9px}.login-footer{z-index:1;color:#789c8e;font-size:9px;position:relative}.login-panel{flex-direction:column;justify-content:center;align-items:center;padding:35px;display:flex}.login-card{background:#fff;border:1px solid #dfe6e2;border-radius:17px;width:min(440px,100%);padding:42px;box-shadow:0 18px 55px #19332912}.login-icon{color:#176b4b;background:#e9f5ef;border-radius:13px;place-items:center;width:48px;height:48px;margin-bottom:23px;font-size:21px;display:grid}.login-card h2{letter-spacing:-.6px;margin:9px 0;font-size:28px}.login-card>p{color:#74807a;margin:0 0 25px;font-size:12px;line-height:1.55}.secure-signin{color:#fff;background:#176b4b;border-radius:10px;grid-template-columns:28px 1fr 20px;align-items:center;height:52px;padding:0 14px;font-size:12px;text-decoration:none;display:grid;box-shadow:0 5px 14px #176b4b2c}.secure-signin>span{background:#ffffff20;border-radius:7px;place-items:center;width:27px;height:27px;display:grid}.secure-signin>b{text-align:right;font-size:16px}.login-assurance{background:#f4f7f5;border-radius:10px;align-items:flex-start;gap:11px;margin-top:17px;padding:14px;display:flex}.login-assurance>span{color:#257653}.login-assurance p{margin:0}.login-assurance strong,.login-assurance small{display:block}.login-assurance strong{font-size:10px}.login-assurance small{color:#83908a;margin-top:4px;font-size:9px;line-height:1.45}.login-help{text-align:center!important;color:#8b9691!important;margin:20px 0 0!important;font-size:9px!important}.login-legal{color:#9aa39f;margin-top:19px;font-size:8px}.sidebar-foot .signout-link{color:#a8bbb5;margin-left:auto;padding:8px;font-size:16px;text-decoration:none}@media (width<=820px){.login-shell{grid-template-columns:1fr}.login-story{display:none}.login-panel{min-height:100dvh;padding:22px}.login-card{padding:29px 23px}.login-card h2{font-size:24px}.secure-signin{height:54px}.login-legal{text-align:center}}.manager-evidence{background:#f8faf9;border:1px solid #dce4e0;border-radius:11px;margin-top:22px;padding:17px}.manager-evidence>div:first-child{justify-content:space-between;align-items:center;display:flex}.manager-evidence h3{margin:0;font-size:15px}.manager-evidence>div:first-child span{color:#267353;background:#e7f3ed;border-radius:12px;padding:5px 8px;font-size:8px}.manager-evidence>p{color:#5e6b65;font-size:11px;line-height:1.5}.manager-evidence>small{color:#8c9691;margin-top:9px;font-size:8px;display:block}.evidence-grid{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.evidence-grid button,.portal-evidence>div button{cursor:zoom-in;background:0 0;border:0;border-radius:8px;min-width:0;padding:0;display:block;overflow:hidden}.evidence-grid img{aspect-ratio:1;object-fit:cover;border-radius:8px;width:100%}.review-box{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.review-box h3{margin:0 0 5px;font-size:16px}.review-box>p{color:#7a8580;font-size:10px}.review-box>div{grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;display:grid}.review-box button{cursor:pointer;border-radius:8px;height:42px;font-size:10px;font-weight:800}.return-work{color:#9a4139;background:#fff;border:1px solid #d5a69f}.approve-work{color:#fff;background:#176b4b;border:1px solid #176b4b}.review-box button:disabled{opacity:.45}@media (width<=720px){.review-box>div{grid-template-columns:1fr}.review-box button{height:48px}}.portal-shell{color:#25322c;background:#f3f6f4;min-height:100dvh}.portal-header{color:#fff;background:#173d30;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(18px,5vw,64px);display:flex}.portal-header a{color:#cfe2d9;font-size:11px;text-decoration:none}.portal-brand{align-items:center;gap:11px;display:flex}.portal-brand>span{color:#176b4b;background:#fff;border-radius:10px;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.portal-brand>.loopp-app-mark{background:#102d24;border-radius:10px;padding:3px}.portal-brand strong,.portal-brand small{display:block}.portal-brand strong{font-size:13px}.portal-brand small{color:#b9d0c6;margin-top:3px;font-size:9px}.portal-intro{max-width:980px;margin:0 auto;padding:42px 20px 24px}.portal-intro>span{text-transform:uppercase;letter-spacing:1.3px;color:#237858;font-size:9px;font-weight:850}.portal-intro h1{margin:7px 0;font-size:30px}.portal-intro p{color:#738079;margin:0;font-size:12px}.portal-error,.portal-success{border-radius:9px;max-width:940px;margin:0 auto 14px;padding:12px 14px;font-size:11px}.portal-error{color:#a63d37;background:#fff0ef}.portal-success{color:#247756;background:#e9f6ef}.portal-stats{grid-template-columns:repeat(3,1fr);gap:10px;max-width:940px;margin:0 auto 18px;display:grid}.portal-stats article{background:#fff;border:1px solid #dde5e1;border-radius:11px;padding:16px}.portal-stats strong,.portal-stats small{display:block}.portal-stats strong{color:#176b4b;font-size:24px}.portal-stats small{color:#7e8984;margin-top:4px;font-size:9px}.portal-jobs{max-width:940px;margin:0 auto;padding-bottom:50px}.portal-jobs>button{text-align:left;cursor:pointer;background:#fff;border:1px solid #dce4e0;border-radius:12px;grid-template-columns:70px 1fr auto 12px;align-items:center;gap:14px;width:100%;margin-bottom:9px;padding:17px;display:grid}.portal-jobs>button:hover{border-color:#8bb8a4}.portal-jobs small,.portal-jobs strong,.portal-jobs p{display:block}.portal-jobs small{color:#8c9691;font-size:9px}.portal-jobs strong{margin-top:5px;font-size:14px}.portal-jobs p{color:#6f7a75;margin:6px 0 0;font-size:10px}.portal-priority{text-align:center;text-transform:uppercase;color:#477060;background:#eef4f1;border-radius:12px;padding:5px 7px;font-size:8px;font-weight:850}.portal-priority.urgent{color:#b43e38;background:#ffe9e6}.portal-priority.high{color:#9a6517;background:#fff3dc}.portal-job-status{color:#176f42;white-space:nowrap;background:#e5f7eb;border:1px solid #adddbc;border-radius:14px;padding:7px 11px;font-size:11px;font-weight:850}.portal-empty{text-align:center;color:#7e8984;background:#fff;border:1px solid #dce4e0;border-radius:12px;padding:50px;font-size:12px}.portal-overlay{z-index:20;background:#0d201a70;justify-content:flex-end;display:flex;position:fixed;inset:0}.portal-drawer{background:#fff;width:min(500px,100%);height:100%;padding:34px;position:relative;overflow:auto;box-shadow:-15px 0 40px #0b211a25}.portal-close{background:#eef2f0;border:0;border-radius:50%;width:35px;height:35px;font-size:20px;position:absolute;top:18px;right:20px}.portal-drawer h2{margin:9px 40px 7px 0;font-size:26px}.portal-drawer>p{color:#758079;font-size:12px}.portal-detail{border:1px solid #dce4e0;border-radius:11px;grid-template-columns:1fr 1fr;margin:22px 0;display:grid}.portal-detail>div{border-bottom:1px solid #dce4e0;padding:14px}.portal-detail>div:nth-last-child(-n+2){border-bottom:0}.portal-detail>div:nth-child(odd){border-right:1px solid #dce4e0}.portal-detail small,.portal-detail strong{display:block}.portal-detail small{text-transform:uppercase;color:#8b9690;margin-bottom:6px;font-size:8px}.portal-detail strong{font-size:11px}.portal-primary,.portal-secondary{cursor:pointer;border-radius:9px;width:100%;height:46px;font-size:11px;font-weight:800}.portal-primary{color:#fff;background:#176b4b;border:0}.portal-secondary{color:#275d47;background:#fff;border:1px solid #bfd0c8;margin-top:8px}.completion-form{border-top:1px solid #e0e6e3;margin-top:22px;padding-top:20px}.completion-form h3,.portal-evidence h3{margin:0 0 6px;font-size:16px}.completion-form>p{color:#77827d;font-size:10px;line-height:1.5}.completion-form label{margin:14px 0 7px;font-size:10px;font-weight:800;display:block}.completion-form textarea{border:1px solid #d7e0dc;border-radius:9px;width:100%;min-height:95px;padding:11px;font:14px Arial}.photo-upload{text-align:center;cursor:pointer;background:#f4f9f6;border:1px dashed #9ab9aa;border-radius:11px;padding:20px!important}.photo-upload span,.photo-upload small{display:block}.photo-upload span{color:#1e704f;font-size:12px}.photo-upload small{color:#829089;margin-top:5px;font-size:8px}.photo-upload input{width:100%;margin-top:12px;font-size:10px}.portal-evidence{border-top:1px solid #e0e6e3;margin-top:22px;padding-top:20px}.portal-evidence>div{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.portal-evidence img{aspect-ratio:1;object-fit:cover;border-radius:8px;width:100%}.portal-evidence p{color:#5f6c66;font-size:11px;line-height:1.5}.portal-primary:disabled,.portal-secondary:disabled{opacity:.55}.portal-drawer .portal-success{margin:0 0 12px}.portal-error{margin-bottom:14px}@media (width<=720px){.portal-header{height:64px;padding:0 16px}.portal-intro{padding:28px 15px 18px}.portal-intro h1{font-size:25px}.portal-stats{gap:7px;margin:0 14px 14px}.portal-stats article{padding:12px}.portal-stats strong{font-size:20px}.portal-jobs{padding:0 14px 35px}.portal-jobs>button{grid-template-columns:1fr auto 9px;gap:8px;padding:15px}.portal-priority{grid-column:1/4;width:max-content}.portal-job-status{font-size:8px}.portal-drawer{height:94dvh;padding:28px 19px max(28px, env(safe-area-inset-bottom));border-radius:18px 18px 0 0;margin-top:auto}.portal-overlay{align-items:flex-end}.portal-drawer h2{font-size:22px}}.member-buttons{gap:6px;display:flex}.edit-member{color:#315344;cursor:pointer;background:#f6f9f7;border:1px solid #cfd9d4;border-radius:8px;height:33px;padding:0 10px;font-size:9px;font-weight:750}.edit-member:hover{border-color:var(--green);color:var(--green)}.member-edit-modal{max-height:calc(100vh - 30px);overflow:auto}.danger-zone{border-top:1px solid #ead8d6;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding-top:20px;display:flex}.danger-zone strong,.danger-zone small{display:block}.danger-zone strong{color:#7f2926;font-size:11px}.danger-zone small{color:#8a7775;margin-top:5px;font-size:9px;line-height:1.45}.danger-button{color:#a93631;white-space:nowrap;cursor:pointer;background:#fff4f3;border:1px solid #d65a52;border-radius:8px;height:36px;padding:0 12px;font-size:9px;font-weight:800}.danger-button:disabled{opacity:.42;cursor:not-allowed}.delete-confirm{gap:6px;display:flex}.delete-confirm>button:first-child{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;height:36px;padding:0 12px;font-size:9px}@media (width<=720px){.member-buttons .secondary{display:none}.edit-member{height:38px}.danger-zone{flex-direction:column;align-items:flex-start}.danger-zone>button,.delete-confirm{width:100%}.delete-confirm button{flex:1}}.login-switch-link{text-align:center;color:#66746e;margin-top:18px;font-size:10px;font-weight:750;display:block}.onboarding-shell{background:radial-gradient(circle at 0 0,#dff4e9,#f4f6f5 45%,#eef2ef);place-items:center;min-height:100dvh;padding:28px;display:grid}.onboarding-card{background:#fff;border:1px solid #dce5e0;border-radius:20px;width:min(560px,100%);padding:42px;box-shadow:0 24px 70px #173d3014}.login-brand.dark{color:#173d30;margin-bottom:40px}.onboarding-card h1{letter-spacing:-1.2px;margin:10px 0;font-size:36px}.onboarding-card>p{color:#6d7b74;margin-bottom:26px;font-size:12px;line-height:1.6}.onboarding-card form{gap:15px;display:grid}.onboarding-card label{color:#34453e;gap:7px;font-size:10px;font-weight:800;display:grid}.onboarding-card input{height:46px;font:inherit;border:1px solid #d7e0db;border-radius:9px;padding:0 13px}.onboarding-card input[readonly]{color:#78857f;background:#f5f7f6}.onboarding-assurance{color:#277553;background:#eef7f2;border-radius:10px;gap:12px;padding:14px;display:flex}.onboarding-assurance span strong,.onboarding-assurance span small{display:block}.onboarding-assurance strong{font-size:10px}.onboarding-assurance small{color:#71827a;margin-top:4px;font-size:9px}@media (width<=620px){.onboarding-shell{padding:14px}.onboarding-card{padding:28px 22px}.onboarding-card h1{font-size:29px}}.auth-form{gap:13px;display:grid}.auth-form label{color:#3c4b44;gap:7px;font-size:9px;font-weight:800;display:grid}.auth-form input{width:100%;height:45px;font:inherit;border:1px solid #d7e0dc;border-radius:9px;padding:0 12px}.auth-form input:focus{border-color:#398565;outline:2px solid #73b99b55}.auth-submit{cursor:pointer;border:0;width:100%;margin-top:4px}.auth-submit:disabled{opacity:.6}.auth-links{justify-content:space-between;gap:12px;margin-top:14px;display:flex}.auth-links button{color:#277553;cursor:pointer;background:0 0;border:0;padding:0;font-size:9px;font-weight:800}.workforce-login-help{background:#eef8f3;border:1px solid #cfe2d8;border-radius:10px;align-items:flex-start;gap:11px;margin-top:18px;padding:14px;display:flex}.workforce-login-help>span{color:#fff;background:#176b4b;border-radius:8px;flex:none;place-items:center;width:29px;height:29px;font-size:15px;display:grid}.workforce-login-help strong{color:#254537;font-size:10px;display:block}.workforce-login-help p{color:#687a71;margin:4px 0 0;font-size:9px;line-height:1.5}.plan-summary-card,.usage-grid article,.usage-note{background:#fff;border:1px solid #d9e5de;border-radius:18px}.plan-summary-card{background:linear-gradient(135deg,#edf8f1,#f8fbf6);justify-content:space-between;align-items:center;margin-bottom:16px;padding:22px 24px;display:flex}.plan-summary-card div,.usage-grid article>div{flex-direction:column;gap:5px;display:flex}.plan-summary-card span,.usage-grid span{color:#6d7b73;font-size:13px}.plan-summary-card strong{color:#123c2e;font-size:28px}.usage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.usage-grid article{padding:22px}.usage-grid article>div{flex-direction:row;justify-content:space-between;align-items:baseline}.usage-grid article strong{color:#173d30;font-size:18px}.usage-grid progress{accent-color:#49c98d;width:100%;height:12px;margin:18px 0 10px}.usage-grid small{color:#78857e}.usage-note{margin-top:16px;padding:20px 22px}.usage-note strong{color:#176b4b}.usage-note p{color:#637068;margin:6px 0 0;line-height:1.5}@media (width<=720px){.usage-grid{grid-template-columns:1fr}.usage-grid article>div{align-items:flex-start}}.form-success{color:#247756;background:#e9f6ef;border-radius:8px;margin-bottom:12px;padding:11px 12px;font-size:10px}.loopp-wordmark{text-transform:lowercase;letter-spacing:-.8px!important;font-weight:850!important}.loopp-mark,.login-icon{text-transform:lowercase;font-weight:900!important}.portal-brand>span.loopp-mark{color:#102d24;background:#48c68d;font-size:19px}.quote-stats{grid-template-columns:repeat(3,1fr);gap:11px;margin-bottom:18px;display:grid}.quote-stats article{border:1px solid var(--line);background:#f8faf9;border-radius:11px;padding:15px}.quote-stats span,.quote-stats strong{display:block}.quote-stats span{color:#7a8781;font-size:9px}.quote-stats strong{color:#176b4b;margin-top:6px;font-size:22px}.quote-list{gap:8px;display:grid}.quote-list>article{border:1px solid var(--line);border-radius:11px;grid-template-columns:1fr auto 140px;align-items:center;gap:18px;padding:15px;display:grid}.quote-card-clickable{cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.quote-card-clickable:hover,.quote-card-clickable:focus-visible{border-color:#bdd7ca;outline:none;transform:translateY(-1px);box-shadow:0 7px 22px #144c3714}.edit-quote-button{width:100%}.quote-number{color:#237858;letter-spacing:.6px;font-size:8px;font-weight:900}.quote-main h3{margin:4px 0;font-size:13px}.quote-main p{color:#84908a;margin:0;font-size:9px}.quote-total{font-size:15px}.quote-status{border:1px solid #d6e0db;border-radius:18px;height:35px;padding:0 10px;font-size:9px;font-weight:800}.quote-status.sent{color:#8d641c;background:#fff6df}.quote-status.accepted{color:#21744e;background:#e8f6ee}.quote-status.declined{color:#a03e39;background:#fff0ee}.quote-modal{max-height:calc(100dvh - 30px);overflow:auto}.quote-calculation{background:#edf6f1;border-radius:10px;justify-content:space-between;align-items:center;margin:16px 0;padding:15px;display:flex}.quote-calculation span{color:#617069;font-size:10px}.quote-calculation strong{color:#176b4b;font-size:20px}@media (width<=720px){.quote-stats{grid-template-columns:1fr}.quote-list>article{grid-template-columns:1fr auto}.quote-status{grid-column:1/3;width:100%}}.quote-actions{align-content:center;gap:6px;width:140px;display:grid}.quote-actions .quote-status{appearance:none;color:#174f3b;background-color:#fff;background-image:linear-gradient(45deg,#0000 50%,#21744e 50%),linear-gradient(135deg,#21744e 50%,#0000 50%);background-position:calc(100% - 13px) 14px,calc(100% - 9px) 14px;background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-color:#bcd7c9;border-radius:8px;width:100%;padding-right:28px}.quote-actions .document-buttons{grid-template-columns:1fr 1fr;gap:6px;display:grid}.quote-actions .view-pdf-button{grid-column:1/-1}.quote-actions .document-button{color:#26332d;text-align:center;background:#fff;border-color:#c9d8d1;justify-content:center;align-items:center;width:100%;min-height:34px;display:inline-flex}.quote-actions .document-button:hover:not(:disabled),.quote-actions .document-button:focus-visible{color:#176b4b;background:#f2f7f4;border-color:#9fbdaf}.quote-actions .document-button:focus-visible{outline-offset:2px;outline:3px solid #176b4b33}.quote-actions .document-button:disabled{cursor:not-allowed;opacity:.48}@media (width<=720px){.quote-actions{grid-column:1/-1;width:100%}.quote-actions .quote-status{grid-column:auto}}.quote-status.submitted{color:#8d641c;background-color:#fff}.quote-status.confirmed,.quote-status.paid{color:#21744e;background-color:#fff}.quote-status.overdue{color:#a03e39;background-color:#fff}.convert-job{color:#fff;cursor:pointer;background:#176b4b;border:0;border-radius:7px;padding:8px;font-size:8px;font-weight:800}.converted-ref{color:#277553;text-align:center;font-size:8px}.quote-photos{gap:5px;margin-top:10px;display:flex}.quote-photos img{object-fit:cover;border-radius:6px;width:42px;height:42px}.invoice-note{color:#66746e;background:#f5f7f6;border-radius:8px;margin-bottom:14px;padding:11px 13px;font-size:9px}.document-buttons{gap:6px;display:flex}.document-button{color:#176b4b;cursor:pointer;background:#fff;border:1px solid #b9cbc2;border-radius:7px;padding:7px 8px;font-size:8px;font-weight:800;text-decoration:none}.document-shell{background:#edf1ef;min-height:100dvh;padding:30px}.document-actions{text-align:right;width:min(850px,100%);margin:0 auto 12px}.document-actions button{color:#fff;cursor:pointer;background:#176b4b;border:0;border-radius:8px;padding:11px 16px;font-weight:800}.business-document{--document-brand:#176b4b;color:#25322c;background:#fff;width:min(850px,100%);min-height:1080px;margin:auto;padding:58px;box-shadow:0 12px 40px #1b33281c}.business-document header{border-bottom:4px solid var(--document-brand);justify-content:space-between;align-items:flex-start;padding-bottom:24px;display:flex}.business-document header>div{align-items:center;gap:15px;display:flex}.business-document header img,.business-document header>div>span{object-fit:contain;border-radius:10px;width:58px;height:58px}.business-document header>div>span{background:var(--document-brand);color:#fff;place-items:center;font-size:25px;font-weight:900;display:grid}.business-document h1{margin:0;font-size:22px}.business-document header p{color:#728078;margin:4px 0 0;font-size:10px}.business-document header>strong{letter-spacing:2px;color:var(--document-brand);font-size:26px}.document-meta{grid-template-columns:1fr 1fr;gap:50px;padding:38px 0;display:grid}.document-meta small{text-transform:uppercase;letter-spacing:1px;color:#7d8983}.document-meta h2{margin:7px 0;font-size:20px}.document-meta p{color:#66736d;margin:4px 0;font-size:11px}.document-meta dl{margin:0}.document-meta dl div{border-bottom:1px solid #e2e7e4;justify-content:space-between;padding:8px 0;font-size:10px;display:flex}.document-meta dd{font-weight:800}.document-work{background:#f5f8f6;border-radius:8px;margin-bottom:28px;padding:18px}.document-work h3{margin:0 0 8px;font-size:15px}.document-work p{white-space:pre-wrap;margin:0;font-size:11px;line-height:1.6}.business-document table{border-collapse:collapse;width:100%}.business-document th{text-align:left;background:var(--document-brand);color:#fff;padding:11px;font-size:10px}.business-document th:last-child,.business-document td:last-child{text-align:right}.business-document td{border-bottom:1px solid #e1e7e4;padding:13px 11px;font-size:11px}.document-totals{width:300px;margin:28px 0 45px auto}.document-totals div{justify-content:space-between;padding:8px;font-size:11px;display:flex}.document-totals .grand{border-top:2px solid var(--document-brand);color:var(--document-brand);font-size:17px}.business-document footer{color:#718079;border-top:1px solid #dfe5e2;justify-content:space-between;padding-top:20px;font-size:9px;display:flex}.business-document footer p{margin:3px 0}@media (width<=700px){.document-shell{padding:0}.document-actions{margin:0;padding:10px}.business-document{min-height:100dvh;padding:25px}.document-meta{grid-template-columns:1fr;gap:20px}.business-document header>strong{font-size:17px}.document-totals{width:100%}}@media print{.document-shell{background:#fff;padding:0}.document-actions{display:none}.business-document{box-shadow:none;width:100%;min-height:auto;padding:20mm}}.settings-menu{color:#f7f6f2;background:var(--charcoal);border:0;border-radius:18px;padding:14px;position:relative;overflow:hidden;box-shadow:0 14px 34px #10191b29}.settings-menu:before{content:"";background:linear-gradient(90deg, var(--green), var(--lime));height:4px;position:absolute;inset:0 0 auto}.settings-menu-brand{align-items:center;gap:11px;padding:10px 9px 17px;display:flex}.settings-menu-brand>span{background:linear-gradient(135deg, var(--green), var(--lime));border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.settings-menu-brand img{object-fit:contain;width:23px;height:23px}.settings-menu-brand small,.settings-menu-brand strong{display:block}.settings-menu-brand small{color:#8fa49a;letter-spacing:1.6px;text-transform:uppercase;border:0;margin:0 0 2px;padding:0;font-size:8px;font-style:normal;font-weight:800;line-height:1}.settings-menu-brand strong{color:#fff;letter-spacing:-.02em;font-size:16px}.settings-menu nav{gap:5px;display:grid}.settings-menu nav button{color:#cbd8d2;border:1px solid #0000;border-radius:11px;grid-template-columns:28px minmax(0,1fr) 12px;align-items:center;min-height:45px;padding:8px;font-size:11px;font-weight:650;transition:background .18s,color .18s,transform .18s;display:grid}.settings-menu nav button:hover{color:#fff;background:#ffffff12;transform:translate(2px)}.settings-menu nav button i{width:28px;height:28px;color:var(--lime);background:#b7db2b17;border-radius:8px;place-items:center;font-size:12px;font-style:normal;display:grid}.settings-menu nav button span{min-width:0}.settings-menu nav button b{color:#688078;text-align:center;font-size:17px;font-weight:500}.settings-menu nav button.active{color:var(--charcoal);background:linear-gradient(105deg, var(--green), var(--lime));box-shadow:0 7px 18px #1594473d}.settings-menu nav button.active i{color:var(--charcoal);background:#ffffff57}.settings-menu nav button.active b{color:var(--charcoal)}.settings-menu>small{color:#7f958b;letter-spacing:.75px;text-transform:uppercase;border-top-color:#ffffff1c;margin:14px 4px 0;padding:14px 5px 3px;font-size:8px;font-weight:750}.settings-menu>small em{color:var(--lime);padding:0 2px;font-style:normal}@media (width<=820px){.settings-menu{padding:10px;display:block}.settings-menu-brand{padding:5px 5px 11px}.settings-menu-brand>span{width:32px;height:32px}.settings-menu-brand img{width:20px;height:20px}.settings-menu nav{scrollbar-width:none;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.settings-menu nav::-webkit-scrollbar{display:none}.settings-menu nav button{width:auto;min-width:max-content;min-height:42px;padding:7px 11px 7px 7px;display:flex}.settings-menu nav button b,.settings-menu>small{display:none}}.app-shell{background:var(--warm-white)}.sidebar{background:var(--charcoal);color:#f7f6f2;border-right:1px solid #b7db2b1f}.sidebar:after{content:"";background:linear-gradient(90deg, var(--green), var(--lime));opacity:.8;border-radius:999px;height:3px;position:absolute;inset:auto 18px 14px}.nav-label{color:#88a096;letter-spacing:1.8px;font-size:9px}.nav-item{color:#cfdbd5;border-radius:11px;min-height:44px;font-weight:600}.nav-item:hover{color:#fff;background:#ddebdd14}.nav-item.active{color:#fff;box-shadow:inset 3px 0 0 var(--lime);background:linear-gradient(90deg,#15944757,#b7db2b1f)}.nav-item.active span,.nav-item b{color:var(--lime)}.main-content{isolation:isolate;background-color:var(--warm-white);background-image:url(/brand/loopp-motion.svg);background-position:100% 100%;background-repeat:no-repeat;background-size:min(1180px,86vw);background-attachment:fixed;position:relative}.main-content:before{display:none}.topbar h1,.section-title h2,.modal-card h2,.detail-panel h2,.login-message h1,.onboarding-card h1{color:var(--charcoal);letter-spacing:-.035em;font-weight:800}.topbar p,.section-title p{color:#6e7b76}.content-view,.dashboard-panel,.settings-panel,.quotes-view{border-color:#dbe4dc}.summary-grid article,.summary-card,.dashboard-panel,.content-view,.settings-panel,.quote-list>article,.quote-stats article,.property-card,.workforce-card,.project-main,.project-detail,.modal-card{border-color:#dbe4dc;box-shadow:0 8px 28px #10191b0b}.summary-grid article,.summary-card,.quote-stats article{background:#fff;border-radius:15px}.summary-grid article:hover,.summary-card:hover,.quote-card-clickable:hover,.quote-card-clickable:focus-visible{border-color:#15944757;box-shadow:0 10px 30px #15944717}.summary-icon{border:1px solid #15944729;border-radius:12px}.summary-icon.blue,.summary-icon.green{color:var(--green);background:#edf5e1}.app-shell .primary,.secure-signin,.portal-primary,.convert-job,.document-actions button{background:linear-gradient(105deg, var(--green), var(--lime));color:var(--charcoal);border:0;font-weight:800;box-shadow:0 6px 16px #1594472e}.app-shell .primary:hover:not(:disabled),.app-shell .primary:focus-visible,.secure-signin:hover,.portal-primary:hover:not(:disabled){color:var(--charcoal);background:linear-gradient(105deg,#11813e,#a9ce20)}.app-shell .primary:focus-visible,.secondary:focus-visible,.icon-button:focus-visible,.nav-item:focus-visible{outline-offset:2px;outline:3px solid #b7db2b6b}.secondary,.icon-button,.document-button,.project-file-actions a,.project-file-actions button{color:var(--green);background:#fff;border-color:#cfdcd2}.icon-button{border-radius:12px}.tabs button.selected{color:var(--green)!important}.tabs button.selected:after{border-radius:999px;height:3px;background:linear-gradient(90deg, var(--green), var(--lime))!important}.eyebrow,.quote-number,.project-list>button span,.project-section-title>span{letter-spacing:.08em;font-weight:800;color:var(--green)!important}.quote-stats strong,.quote-calculation strong{color:var(--green)}.quote-actions .document-button{border-color:var(--green);background:var(--green);color:#fff}.quote-actions .document-button:hover:not(:disabled),.quote-actions .document-button:focus-visible{border-color:var(--charcoal);background:var(--charcoal);color:var(--lime)}.setting-switch input[type=checkbox]:checked{background:linear-gradient(90deg, var(--green), var(--lime))}.project-list{background:#f0f3ed}.project-list>button:hover,.project-list>button.active{box-shadow:inset 3px 0 0 var(--lime), 0 5px 16px #10191b0a;border-color:#15944738}.login-story,.portal-header{background:var(--charcoal)}.login-story:after{content:"";z-index:0;background:linear-gradient(90deg, var(--green), var(--lime));width:auto;height:7px;box-shadow:none;opacity:.9;border:0;border-radius:999px 45% 999px 35%;position:absolute;bottom:11%;left:-2%;right:-2%;transform:rotate(-.7deg)}.login-story .login-message h1{color:#fff}.login-message>span,.login-points b{color:var(--lime)}.login-card,.onboarding-card{border-color:#d8e3da;border-radius:22px}.login-icon{background:var(--soft-sage);color:var(--green)}.portal-shell{background:var(--warm-white)}.portal-brand>.loopp-app-mark{background:0 0}.mobile-bottom-nav{background:#fff;border-top-color:#dce5de}.mobile-bottom-nav button.active,.mobile-bottom-nav .mobile-create{color:var(--green)}.mobile-bottom-nav .mobile-create>span{background:linear-gradient(135deg, var(--green), var(--lime));color:var(--charcoal);box-shadow:0 7px 20px #15944742}.form-success{background:var(--soft-sage);color:var(--green-dark)}.document-shell{background:var(--warm-white)}@media (width<=720px){.main-content{background-position:38% bottom;background-size:920px;background-attachment:scroll}.sidebar:after{display:none}.topbar h1{font-size:27px}}.invite-ready>p strong{color:#263a31}.invite-link{overflow-wrap:anywhere;color:#426052;background:#f5f8f6;border:1px solid #d7e2dc;border-radius:9px;margin:18px 0 12px;padding:12px;font-size:10px}.share-link{place-items:center;margin-top:9px;text-decoration:none;display:grid}.secondary.wide{color:#176b4b;background:#fff;border:1px solid #a8beb3;border-radius:9px;width:100%;height:44px;font-size:10px;font-weight:800}.line-items-editor{border:1px solid #dce5e0;border-radius:10px;margin-top:12px;padding:12px}.line-items-editor>div:first-child{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.line-items-editor>div:first-child strong{font-size:10px}.line-items-editor>div:first-child button{color:#176b4b;cursor:pointer;background:#e9f4ee;border:0;border-radius:7px;padding:7px 9px;font-size:8px;font-weight:800}.line-item-row{grid-template-columns:1fr 14px 100px 28px;align-items:center;gap:6px;margin-top:7px;display:grid}.line-item-row input{height:39px;font:inherit;border:1px solid #d5dfda;border-radius:7px;min-width:0;padding:0 9px}.line-item-row>span{text-align:center;font-size:10px}.line-item-row>button{color:#a44740;cursor:pointer;background:#f7e9e7;border:0;border-radius:6px;height:30px}.line-item-row>button:disabled{opacity:.35}@media (width<=560px){.line-item-row{grid-template-columns:1fr 12px 78px 27px}.line-item-row input{font-size:11px}}.summary-grid span{color:#46534d;margin-bottom:5px;font-size:14px;font-weight:700;line-height:1.25}.install-loopp-button{z-index:95;color:#fff;cursor:pointer;min-height:54px;font:inherit;background:#102d24;border:1px solid #ffffff2e;border-radius:15px;align-items:center;gap:10px;padding:8px 16px 8px 8px;display:none;position:fixed;bottom:20px;right:20px;box-shadow:0 12px 30px #102d2440}.install-loopp-button img{object-fit:contain;background:#ecf7ef;border-radius:10px;width:44px;height:38px;padding:6px}.install-loopp-button span{text-align:left;line-height:1.1;display:grid}.install-loopp-button strong{font-size:13px}.install-loopp-button small{color:#bed2c9;margin-top:3px;font-size:9px}.install-loopp-overlay{z-index:300;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#081914a8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.install-loopp-card{background:#fff;border-radius:22px;width:min(100%,430px);padding:30px;position:relative;box-shadow:0 30px 80px #00000042}.install-loopp-close{color:#234238;cursor:pointer;background:#eff4f1;border:0;border-radius:50%;width:34px;height:34px;font-size:23px;position:absolute;top:15px;right:15px}.install-loopp-icon{object-fit:contain;background:#ecf7ef;border-radius:17px;width:82px;height:66px;margin-bottom:18px;padding:11px;box-shadow:0 8px 20px #24915b33}.install-loopp-card h2{color:#17211d;margin:8px 0 9px;font-size:25px;line-height:1.15}.install-loopp-card>p{color:#65736d;margin:0 0 22px;font-size:13px;line-height:1.55}.install-loopp-card ol{gap:10px;margin:0 0 22px;padding:0;list-style:none;display:grid}.install-loopp-card li{color:#52605a;background:#f4f7f5;border-radius:12px;align-items:center;gap:12px;padding:12px;font-size:12px;display:flex}.install-loopp-card li b:first-child{color:#102d24;background:#45c88c;border-radius:50%;flex:0 0 28px;place-items:center;width:28px;height:28px;display:grid}.install-loopp-card li strong{color:#17211d}.install-loopp-card li i{color:#17814f;margin-left:4px;font-size:18px;font-style:normal}.install-loopp-done{color:#102d24;cursor:pointer;background:#45c88c;border:0;border-radius:11px;width:100%;min-height:46px;font-family:inherit;font-size:13px;font-weight:700}@media (width<=720px){.install-loopp-button{right:14px;bottom:calc(82px + env(safe-area-inset-bottom));border-radius:13px;min-height:48px;padding:6px 12px 6px 6px;display:flex}.install-loopp-button img{width:42px;height:35px;padding:5px}.install-loopp-card{padding:26px 21px max(22px, env(safe-area-inset-bottom))}}@media (width<=1100px){.summary-grid span{font-size:13px}}@media (width<=720px){.summary-grid span{font-size:12px;line-height:1.2}}.reports-view{gap:18px;display:grid}.reports-heading{margin-bottom:0}.reports-heading .eyebrow{color:#258157;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;font-size:8px;font-weight:800;display:block}.report-actions{gap:8px;display:flex}.report-filters{background:#f6f9f7;border:1px solid #dfe8e3;border-radius:13px;grid-template-columns:repeat(5,minmax(120px,1fr)) auto;align-items:end;gap:9px;padding:14px;display:grid}.report-filters label{gap:6px;min-width:0;display:grid}.report-filters label>span{color:#738078;font-size:8px;font-weight:700}.report-filters select{color:#26332d;background:#fff;border:1px solid #d5e0da;border-radius:8px;width:100%;min-width:0;height:38px;padding:0 28px 0 10px;font-family:inherit;font-size:9px;font-weight:600}.report-reset{color:#287552;cursor:pointer;background:0 0;border:0;height:38px;padding:0 12px;font-family:inherit;font-size:9px;font-weight:700}.report-kpis{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.report-kpis>button{min-width:0;color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #dfe7e3;border-radius:13px;padding:16px;transition:transform .15s,border-color .15s,box-shadow .15s;position:relative}.report-kpis>button:hover{border-color:#9dd8b8;transform:translateY(-2px);box-shadow:0 8px 24px #1a4f3914}.report-kpis>button.attention{background:#fff9f8;border-color:#efc2bb}.report-kpis span,.report-kpis strong,.report-kpis small{display:block}.report-kpis span{color:#77837d;font-size:8px;font-weight:700}.report-kpis strong{color:#18231e;margin:8px 0 5px;font-size:clamp(20px,2vw,29px);line-height:1}.report-kpis small{color:#8b9690;white-space:nowrap;text-overflow:ellipsis;font-size:8px;overflow:hidden}.report-kpis>button>i{background:#e7eeea;border-radius:4px;height:4px;margin-top:11px;display:block;overflow:hidden}.report-kpis>button>i b{border-radius:inherit;background:linear-gradient(90deg,#15965b,#b6dc34);height:100%;display:block}.report-visual-grid,.report-table-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:12px;display:grid}.report-table-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-card{background:#fff;border:1px solid #dfe7e3;border-radius:14px;min-width:0;padding:17px}.report-card>header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.report-card h3{color:#1d2923;margin:0 0 4px;font-size:12px}.report-card header p{color:#8a948f;margin:0;font-size:8px}.report-key{color:#748079;gap:11px;font-size:8px;display:flex}.report-key span{align-items:center;gap:5px;display:flex}.report-key i{border-radius:3px;width:8px;height:8px}.report-key i.created,.trend-columns i.created{background:#163d31}.report-key i.completed,.trend-columns i.completed{background:#73c94b}.trend-chart{background:repeating-linear-gradient(#0000 0 44px,#edf2ef 45px);border-bottom:1px solid #dde5e1;grid-template-columns:repeat(6,1fr);gap:12px;height:185px;padding:12px 10px 0;display:grid}.trend-month{text-align:center;grid-template-rows:1fr auto;gap:9px;min-width:0;display:grid}.trend-columns{justify-content:center;align-items:flex-end;gap:4px;min-height:0;display:flex}.trend-columns i{border-radius:5px 5px 1px 1px;width:min(16px,34%);min-height:0;transition:height .2s}.trend-month>span{color:#808b85;font-size:8px}.status-bars{gap:11px;display:grid}.status-bars button{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:86px 1fr 22px;align-items:center;gap:8px;padding:0;display:grid}.status-bars button>span{color:#59665f;white-space:nowrap;text-overflow:ellipsis;font-size:8px;overflow:hidden}.status-bars button>i{background:#edf2ef;border-radius:5px;height:7px;overflow:hidden}.status-bars button>i b{border-radius:inherit;background:linear-gradient(90deg,#1ca364,#9bd449);min-width:4px;height:100%;display:block}.status-bars button>strong{color:#26332d;text-align:right;font-size:9px}.report-table{border:1px solid #e5ebe8;border-radius:10px;overflow:hidden}.report-table-head,.report-table>button{grid-template-columns:minmax(130px,1fr) 48px 48px 70px;align-items:center;gap:8px;display:grid}.report-table-head{color:#87918c;text-transform:uppercase;background:#f5f8f6;padding:9px 11px;font-size:7px;font-weight:800}.report-table>button{color:#59655f;text-align:right;cursor:pointer;background:#fff;border:0;border-top:1px solid #e8eeeb;width:100%;padding:11px;font-family:inherit;font-size:8px;font-weight:500}.report-table>button:hover{background:#f5faf7}.report-table>button strong{color:#24312b;text-align:left;white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.report-table-head span:first-child{text-align:left}.report-table-head span:not(:first-child){text-align:right}.workforce-report-table .overdue-value{color:#c4463c;font-weight:800}.report-empty{color:#8a958f;text-align:center;padding:26px 10px;font-size:9px}.report-footnote{color:#8b9690;text-align:right;margin:-3px 0 0;font-size:8px}@media (width<=1180px){.report-filters,.report-kpis{grid-template-columns:repeat(3,1fr)}}@media (width<=850px){.report-visual-grid,.report-table-grid{grid-template-columns:1fr}}@media (width<=720px){.reports-view{gap:12px}.reports-heading{display:grid}.report-actions{width:100%}.report-actions button{flex:1}.report-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:11px}.report-reset{background:#fff;border:1px solid #d5e0da;border-radius:8px}.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.report-kpis>button{padding:13px}.report-kpis>button:last-child{grid-column:1/-1}.report-kpis strong{font-size:22px}.report-card{padding:13px}.trend-chart{gap:7px;height:160px;padding-inline:4px}.report-key{gap:7px}.status-bars button{grid-template-columns:78px 1fr 20px}.report-table{overflow-x:auto}.report-table-head,.report-table>button{min-width:440px}.report-footnote{text-align:left;line-height:1.5}}@media print{.sidebar,.topbar,.mobile-bottom-nav,.report-actions,.report-filters,.install-loopp-button{display:none!important}.workspace{margin:0!important}.reports-view{border:0!important;padding:0!important}.report-card,.report-kpis>button{break-inside:avoid;box-shadow:none!important}}
