@import url("https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&display=swap");:root{--tsi-blue:#0b5fa5;--tsi-blue-dark:#084a80;--tsi-orange:#f58220;--tsi-orange-dark:#d96f16;--bg:#f5f7fa;--bg-elevated:#ffffff;--bg-panel:#fafcff;--ink:#1f2937;--muted:#64748b;--line:#dde7f1;--accent:var(--tsi-blue);--accent-strong:var(--tsi-blue-dark);--accent-warm:var(--tsi-orange);--warn:#9a6418;--danger:#b91c1c;--success:#15803d;--radius:8px;--font-sans:"Source Sans 3","Segoe UI",sans-serif;--font-display:"Source Sans 3","Segoe UI",sans-serif;--shadow-soft:0 1px 2px rgba(8,74,128,0.04),0 8px 24px rgba(8,74,128,0.06)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;background:linear-gradient(180deg,#e8f1f9 0,transparent 220px),radial-gradient(900px 420px at 100% -10%,#fff1e3 0,transparent 55%),var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:16px}a{color:inherit;text-decoration:none}a:hover{color:var(--tsi-blue)}main{width:min(1100px,calc(100% - 2rem));margin:0 auto;padding:1.25rem 0 3rem}h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;margin:0 0 .5rem;color:var(--ink)}h1{font-size:1.75rem;color:var(--tsi-blue-dark)}p{color:var(--muted);line-height:1.55;margin:0}.site-header{justify-content:space-between;gap:1rem;padding:.85rem 0 1.1rem;border-bottom:1px solid var(--line);margin-bottom:1.5rem}.brand,.site-header{display:flex;align-items:center}.brand{gap:.75rem;color:var(--tsi-blue-dark);min-width:0}.brand:hover{color:var(--tsi-blue)}.brand-mark{width:auto;height:2.5rem;object-fit:contain;flex:0 0 auto}.brand-text{display:grid;grid-gap:.05rem;gap:.05rem;line-height:1.15}.brand-name{font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:-.02em}.brand-tag{font-size:.78rem;font-weight:600;color:var(--tsi-orange);text-transform:uppercase;letter-spacing:.04em}.nav{display:flex;flex-wrap:wrap;gap:.65rem 1rem;align-items:center;color:var(--muted);font-size:.95rem;font-weight:500}.nav a:hover{color:var(--tsi-blue)}.notice{margin:0;padding:.7rem .85rem;border-radius:8px;border:1px solid #9ec5e8;background:#eef6ff;color:var(--tsi-blue-dark);font-size:.92rem;font-weight:600}.support-bell,.support-bell-wrap{position:relative}.support-bell{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--tsi-blue-dark);cursor:pointer}.support-bell:hover{border-color:var(--tsi-blue);color:var(--tsi-blue)}.support-bell-count{position:absolute;top:-.2rem;right:-.25rem;min-width:1.15rem;height:1.15rem;padding:0 .3rem;border-radius:999px;background:var(--tsi-orange);color:#fff;font-size:.68rem;font-weight:700;line-height:1.15rem;text-align:center}.support-bell-dropdown{position:absolute;top:calc(100% + .45rem);right:0;z-index:40;width:min(22rem,calc(100vw - 2rem));background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 28px rgba(15,40,70,.12);overflow:hidden}.support-bell-dropdown-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;padding:.75rem .9rem;border-bottom:1px solid var(--line);background:#f7fafc}.support-bell-empty{margin:0;padding:1rem .9rem}.support-bell-list{list-style:none;margin:0;padding:0;max-height:min(60vh,22rem);overflow-y:auto}.support-bell-list a{display:grid;grid-gap:.15rem;gap:.15rem;padding:.75rem .9rem;border-bottom:1px solid var(--line);color:inherit}.support-bell-list a:hover{background:#eef6ff}.support-bell-item-title{font-weight:700;color:var(--tsi-blue-dark)}.support-bell-item-meta{font-size:.78rem}.support-bell-item-preview{font-size:.86rem;line-height:1.35;color:var(--ink)}.panel{background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius);padding:1.15rem 1.25rem;margin-bottom:1rem;box-shadow:var(--shadow-soft)}.panel h2{font-size:1.1rem;color:var(--tsi-blue-dark)}.eyebrow{margin:0 0 .35rem;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tsi-orange)}.stack{display:grid;grid-gap:.85rem;gap:.85rem}.row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--bg-panel);color:var(--ink);border-radius:8px;padding:.55rem .95rem;font:inherit;font-weight:600;cursor:pointer}.btn:hover{color:var(--tsi-blue-dark)}.btn-primary,.btn:hover{border-color:var(--tsi-blue)}.btn-primary{background:var(--tsi-blue);color:#ffffff}.btn-primary:hover{background:var(--tsi-blue-dark);border-color:var(--tsi-blue-dark);color:#ffffff}.btn-danger{border-color:var(--danger);color:var(--danger);background:#fef2f2}.btn-na{flex-shrink:0;min-width:7.5rem;padding:.7rem 1.15rem;border-color:#d97706;background:#fff7ed;color:#9a3412;font-size:.95rem;font-weight:700;letter-spacing:.01em;box-shadow:inset 0 0 0 1px rgba(217,119,6,.25)}.btn-na:hover:not(:disabled){border-color:#b45309;background:#ffedd5;color:#7c2d12}.btn-na-clear{flex-shrink:0;min-width:7.5rem;padding:.7rem 1.15rem;border-color:#64748b;background:#f8fafc;color:#334155;font-size:.95rem;font-weight:700}.btn-na-clear:hover:not(:disabled){border-color:var(--tsi-blue);color:var(--tsi-blue-dark);background:#fff}.btn-na-clear:disabled,.btn-na:disabled{opacity:.65;cursor:wait}.hs-appliance-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.hs-na-hint{margin:.4rem 0 0;font-size:.85rem}.input,.select,.textarea{width:100%;background:#ffffff;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:.55rem .7rem;font:inherit}.input:focus,.select:focus,.textarea:focus{outline:2px solid rgba(11,95,165,.25);border-color:var(--tsi-blue)}.textarea{min-height:90px;resize:vertical}.label{display:grid;grid-gap:.35rem;gap:.35rem;font-size:.9rem;color:var(--muted);font-weight:500}.auth-card{width:min(100%,420px)}.error-text{margin:0;color:var(--danger);font-size:.9rem}.table{width:100%;border-collapse:collapse}.table td,.table th{text-align:left;padding:.65rem .4rem;border-bottom:1px solid var(--line);vertical-align:top}.table th{color:var(--muted);font-weight:600;font-size:.85rem}.badge{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:.15rem .55rem;font-size:.8rem;font-weight:600;color:var(--ink);background:var(--bg-panel)}.badge.warn{border-color:#f5c48a;color:var(--tsi-orange-dark);background:#fff4ea}.badge.ok{border-color:#9ec5e8;color:var(--tsi-blue-dark);background:#eef6ff}.muted{color:var(--muted)}.tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tab{padding:.4rem .75rem;border-radius:999px;border:1px solid var(--line);color:var(--muted);font-size:.9rem;font-weight:600}.tab.active{color:#fff;border-color:var(--tsi-blue);background:var(--tsi-blue)}.workflow-steps{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--bg-panel)}.workflow-step{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border-bottom:1px solid var(--line)}.workflow-step:last-child{border-bottom:none}.workflow-step-static{background:color-mix(in srgb,var(--line) 35%,transparent)}.workflow-step-body{flex:1 1;min-width:0}.workflow-step-title{font-weight:650;font-size:.95rem}.workflow-step-action{flex-shrink:0;padding-top:.1rem}#photo-labels{scroll-margin-top:1.25rem}@media (max-width:720px){.workflow-step{flex-direction:column;align-items:stretch}.workflow-step-action{padding-top:0}}.error{color:#6d2424;border:1px solid #e2b4b4;background:#fef2f2;border-radius:8px}.error,.success{padding:.7rem .85rem}.success{color:var(--success);border:1px solid #b7d7c4;background:#ecfdf3;border-radius:8px}.grid-2{display:grid;grid-gap:1rem;gap:1rem}@media (min-width:800px){.grid-2{grid-template-columns:1fr 1fr}}.status-dot{width:.85rem;height:.85rem;border-radius:50%;border:2px solid var(--line);background:#fff;flex:0 0 auto;margin-top:.2rem}.status-dot.ok{border-color:var(--tsi-blue);background:var(--tsi-blue);box-shadow:inset 0 0 0 2px #fff}.evidence-slot{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:1rem 1.1rem;display:grid;grid-gap:.75rem;gap:.75rem}.evidence-slot.is-complete{border-color:#9ec5e8;background:#f7fbff}.evidence-slot-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.evidence-slot-title{display:flex;gap:.7rem;align-items:flex-start}.evidence-label{font-weight:650;color:var(--ink)}.evidence-help{margin:0;font-size:.95rem}.req-tag{display:inline-block;margin-top:.15rem;color:var(--tsi-orange-dark);font-size:.8rem;font-weight:700}.file-chip-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.4rem;gap:.4rem}.file-chip{display:flex;flex-wrap:wrap;gap:.35rem .6rem;align-items:center;padding:.45rem .6rem;border-radius:8px;background:var(--bg-panel);border:1px solid var(--line);font-size:.92rem}.file-chip-photo{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:.65rem;gap:.65rem}.file-chip-thumb{width:52px;height:52px;object-fit:cover;border-radius:6px;border:1px solid var(--line);background:#fff}.file-chip-meta{min-width:0;word-break:break-word}.file-chip a{color:var(--tsi-blue);text-decoration:underline;text-underline-offset:2px}.btn-danger-ghost{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--danger);background:#fff;color:var(--danger);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;padding:.35rem .7rem;border-radius:6px;white-space:nowrap}.btn-danger-ghost:hover:not(:disabled){background:#fef2f2}.btn-danger-ghost:disabled{opacity:.55;cursor:not-allowed}.evidence-upload{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.evidence-upload .input{flex:1 1 220px}.evidence-multi-upload{gap:.75rem}.evidence-dropzone{position:relative;display:grid;grid-gap:.25rem;gap:.25rem;justify-items:start;padding:.9rem 1rem;border:1.5px dashed var(--tsi-blue);border-radius:10px;background:#f3f8fc;cursor:pointer}.evidence-dropzone:hover{background:#eaf3fa}.evidence-dropzone.is-busy{opacity:.75;cursor:wait}.evidence-dropzone input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.evidence-dropzone strong{color:var(--tsi-blue-dark)}.evidence-queue{border:1px solid var(--line);border-radius:10px;background:#fff;padding:.65rem .75rem;display:grid;grid-gap:.55rem;gap:.55rem}.evidence-queue-head{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.btn-text{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.btn-text:hover{color:var(--danger)}.measure-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}.measure-card.is-selected{border-color:#9ec5e8}.measure-card-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem 1.1rem;background:var(--bg-panel)}.measure-card-head label{display:flex;align-items:center;gap:.7rem;font-weight:650;cursor:pointer}.measure-card-head input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--tsi-blue)}.measure-card-body{padding:1rem 1.1rem 1.15rem;display:grid;grid-gap:.85rem;gap:.85rem;border-top:1px solid var(--line)}.checklist{display:grid;grid-gap:.45rem;gap:.45rem;margin:0;padding:0;list-style:none}.checklist li{display:flex;gap:.55rem;align-items:flex-start}.checklist .ok{color:var(--success)}.checklist .bad{color:#9a2f2f}@media (max-width:640px){.brand-tag{display:none}.brand-mark{height:2.1rem}}.payroll-strip{display:grid;grid-gap:.85rem;gap:.85rem;grid-template-columns:1fr}@media (min-width:700px){.payroll-strip{grid-template-columns:1fr 1fr}}.payroll-tile{border-radius:10px;border:2px solid var(--line);background:#fff;padding:1.1rem 1.2rem 1rem;display:grid;grid-gap:.25rem;gap:.25rem}.payroll-tile.payroll{border-color:var(--tsi-orange);background:linear-gradient(180deg,#fff8f0,#ffffff 70%);box-shadow:0 0 0 1px rgba(245,130,32,.15),0 10px 28px rgba(245,130,32,.12)}.payroll-tile.running{border-color:var(--tsi-blue);background:linear-gradient(180deg,#eef6ff,#ffffff 70%);box-shadow:0 0 0 1px rgba(11,95,165,.12),0 10px 28px rgba(11,95,165,.1)}.payroll-tile-label{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.payroll-tile.payroll .payroll-tile-label{color:var(--tsi-orange-dark)}.payroll-tile.running .payroll-tile-label{color:var(--tsi-blue-dark)}.payroll-tile-value{font-size:3.25rem;font-weight:800;line-height:1;letter-spacing:-.04em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.payroll-tile.payroll .payroll-tile-value{color:var(--tsi-orange)}.payroll-tile.running .payroll-tile-value{color:var(--tsi-blue)}.payroll-tile-range{font-size:.9rem;font-weight:600;color:var(--muted)}.auditor-stat-row{display:flex;flex-wrap:wrap;gap:.65rem;align-items:stretch}.auditor-stat{min-width:5.5rem;border-radius:8px;border:2px solid var(--line);padding:.45rem .7rem .5rem;text-align:center;background:#fff}.auditor-stat.payroll{border-color:var(--tsi-orange);background:#fff8f0}.auditor-stat.running{border-color:var(--tsi-blue);background:#eef6ff}.auditor-stat-label{display:block;font-size:.65rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.auditor-stat.payroll .auditor-stat-label{color:var(--tsi-orange-dark)}.auditor-stat.running .auditor-stat-label{color:var(--tsi-blue-dark)}.auditor-stat-value{display:block;font-size:1.85rem;font-weight:800;line-height:1.05;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.auditor-stat.payroll .auditor-stat-value{color:var(--tsi-orange)}.auditor-stat.running .auditor-stat-value{color:var(--tsi-blue)}.auditor-collapse{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}.auditor-collapse-trigger{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;width:100%;margin:0;padding:.85rem 1rem;border:0;background:transparent;cursor:pointer;text-align:left;font:inherit;color:inherit}.auditor-collapse-trigger:hover{background:#f7f9fc}.auditor-collapse-chevron{color:var(--muted);font-size:.9rem;width:1rem;flex-shrink:0}.auditor-collapse-name{flex:1 1 8rem;font-weight:700;font-size:1.05rem}.auditor-collapse-stats{margin-left:auto}.auditor-collapse-body{display:flex;flex-direction:column;gap:.65rem;border-top:1px solid var(--line);padding:.85rem 1rem 1rem}.job-step-next{display:flex;justify-content:flex-end;padding:.25rem 0 .5rem}.snuggpro-csv-steps{margin:0;padding-left:1.25rem;display:grid;grid-gap:.45rem;gap:.45rem;color:var(--ink);line-height:1.45}.snuggpro-csv-steps li::marker{font-weight:700;color:var(--tsi-orange,#e67a2e)}.support-chat{display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden}.support-chat.is-open{gap:.75rem;min-height:min(70vh,560px)}.support-chat.is-collapsed{min-height:0}.support-chat-toggle{display:block;width:100%;margin:0;padding:0;border:0;background:transparent;text-align:left;cursor:pointer;color:inherit;font:inherit}.support-chat-toggle:hover .support-chat-header h2{color:var(--tsi-orange-dark,#c45a12)}.support-chat-header{padding:1rem 1.15rem}.support-chat.is-open .support-chat-header{padding-bottom:.35rem}.support-chat-header h2{margin:0}.support-chat-title-row{display:flex;align-items:center;gap:.55rem;margin-bottom:.2rem}.support-chat-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.4rem;height:1.4rem;padding:0 .35rem;border-radius:999px;background:var(--tsi-orange,#e67a2e);color:#fff;font-size:.72rem;font-weight:700}.support-chat-chevron{margin-left:auto;color:var(--muted);font-size:.95rem}.support-chat-thread{flex:1 1 auto;overflow-y:auto;padding:.5rem 1rem .75rem;display:flex;flex-direction:column;gap:.65rem;background:linear-gradient(180deg,#f7fafc,#ffffff 40%);border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:220px;max-height:min(50vh,420px);-webkit-overflow-scrolling:touch}.support-chat-empty{margin:1rem 0;text-align:center}.support-bubble{max-width:min(92%,420px);padding:.55rem .75rem;border-radius:12px;border:1px solid var(--line);background:#fff}.support-bubble-mine{align-self:flex-end;background:#eef6ff;border-color:#9ec5e8}.support-bubble-theirs{align-self:flex-start;background:#fff}.support-bubble.is-staff.support-bubble-mine,.support-bubble.is-staff.support-bubble-theirs{border-color:#f5c48a;background:#fff8f0}.support-bubble-meta{font-size:.72rem;font-weight:600;color:var(--muted);margin-bottom:.25rem}.support-bubble-body{white-space:pre-wrap;word-break:break-word;line-height:1.4;color:var(--ink)}.support-chat-composer{padding:.85rem 1.15rem 1.1rem;display:grid;grid-gap:.65rem;gap:.65rem}.support-chat-send{min-height:44px;width:100%}@media (min-width:640px){.support-chat-send{width:auto}}.support-lock-banner{border:2px solid var(--tsi-orange);background:#fff8f0;color:var(--tsi-orange-dark);border-radius:8px;padding:.7rem .85rem;font-weight:700}