:root{--brand:#1f2766;--brand-2:#c9dcff}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{color:#1a1d2e;overflow-wrap:break-word;background:#f6f7fb;flex-direction:column;min-height:100vh;margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.45;display:flex}img{max-width:100%;height:auto}header{background:var(--brand);color:#fff;z-index:10;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 16px;display:flex;position:sticky;top:0}header img{width:auto;height:32px}header strong{font-size:18px}header nav{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}header nav a.active{color:#fff;background:#ffffff2e}.menu-btn{display:none}header a{color:var(--brand-2);white-space:nowrap;border-radius:8px;padding:6px 10px;text-decoration:none}header a:hover{background:#ffffff1f}main{flex:1 0 auto;width:100%;max-width:960px;margin:24px auto;padding:0 16px}.card{background:#fff;border-radius:12px;margin-bottom:12px;padding:16px;box-shadow:0 1px 4px #00000014}h2{margin:0 0 8px;font-size:22px}h3{margin:0 0 12px;font-size:17px}button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:8px;min-height:40px;padding:10px 14px;font-size:15px}button:disabled{opacity:.5;cursor:not-allowed}input,select{background:#fff;border:1px solid #ccd;border-radius:8px;max-width:100%;min-height:40px;padding:10px;font-size:16px}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row>input,.row>select{flex:150px;min-width:0}.row>input.narrow{flex:0 100px}.row>span,.row>strong{min-width:0}.row>span[style*=flex]{flex:200px!important}.row>button{flex:none}.row>input[type=color]{flex:0 0 56px;padding:2px}.stack{flex-direction:column;gap:8px;display:flex}.stack>input,.stack>select{width:100%}.stack>button.linklike{align-self:flex-start}.stack>p{margin:0}p.row{margin:8px 0}.badge{background:var(--brand-2);color:var(--brand);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:12px}.locked{opacity:.5}@media (max-width:1100px){.menu-btn{background:0 0;border:1px solid #ffffff73;margin-left:auto;padding:8px 12px;font-size:20px;line-height:1;display:block}header nav{flex-direction:column;gap:2px;width:100%;margin-left:0;padding:4px 0 8px;display:none}header nav.open{display:flex}header nav a{border-radius:8px;padding:12px 10px;font-size:16px}}@media (max-width:640px){header{padding:8px 12px}main{margin:12px auto;padding:0 12px}.card{padding:14px}h2{font-size:20px}.row>input,.row>select{flex:100%}.row>input.narrow{flex:calc(50% - 4px)}.row>button{flex:auto}}.check{flex:220px;align-items:center;gap:8px;font-size:14px;display:flex}.check input{flex:none;width:18px;height:18px;min-height:0}.badge.ok{color:#065f46;background:#d1fae5}.badge.warn{color:#92400e;background:#fef3c7}.badge.bad{color:#991b1b;background:#fee2e2}.badge.plain{color:#374151;background:#e5e7eb}.banner{background:#fffbeb;border-left:4px solid #f59e0b}.banner.bad{background:#fef2f2;border-left-color:#dc2626}.stat{text-align:center;flex:140px}.stat b{font-size:22px;display:block}.linklike{color:var(--brand-2);min-height:0;font-size:inherit;background:0 0;border-radius:8px;padding:6px 10px}.linklike:hover{background:#ffffff1f}header nav .who{color:#fff;opacity:.85;white-space:nowrap;align-self:center;padding:0 8px;font-size:13px}@media (max-width:900px){header nav .who{padding:8px 10px}.linklike{text-align:left;padding:12px 10px;font-size:16px}}@media (max-width:1100px){header nav .who{align-self:flex-start;padding:12px 10px;font-size:15px}header nav .linklike{text-align:left;padding:12px 10px;font-size:16px}}a.tile{color:inherit;text-decoration:none}.tile b{color:var(--brand)}.tile.warn b{color:#b45309}.tile.bad b,.bad-text{color:#b91c1c}.tiles{flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.tiles .card{margin:0}.list-item{border-top:1px solid #eef;flex-wrap:wrap;align-items:baseline;gap:8px;padding:8px 0;display:flex}.list-item:first-of-type{border-top:0}.attn{color:inherit;background:#fffbeb;border-left:4px solid #f59e0b;border-radius:8px;margin-bottom:6px;padding:8px 10px;text-decoration:none;display:block}.attn.bad{background:#fef2f2;border-left-color:#dc2626}.site-footer{text-align:center;color:#6b7280;background:#fff;border-top:1px solid #e4e6f2;flex-shrink:0;padding:16px;font-size:13px}.site-footer a{color:var(--brand);font-weight:600;text-decoration:none}.site-footer a:hover{text-decoration:underline}.site-footer .sep{opacity:.5;margin:0 8px}.modal-backdrop{z-index:100;background:#1118278c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;width:100%;max-width:460px;max-height:90vh;padding:20px;position:relative;overflow:auto;box-shadow:0 10px 40px #0000004d}.modal h3{margin-top:0}.modal>.modal-close{color:#667;min-height:0;padding:6px 8px;font-size:18px;line-height:1;text-decoration:none;position:absolute;top:10px;right:12px}.modal>.modal-close+h3{padding-right:32px}.modal-backdrop.modal-dark{background:#0a0c1ee0;flex-direction:column;gap:10px}.modal-backdrop>.modal-close{top:max(12px, env(safe-area-inset-top,0px));right:max(14px, env(safe-area-inset-right,0px));color:#fff;min-height:0;padding:6px 10px;font-size:24px;line-height:1;text-decoration:none;position:fixed}.modal .fields{flex-direction:column;gap:10px;display:flex}.modal .fields input{width:100%}.modal textarea{width:100%;min-height:70px;font:inherit;border:1px solid #ccd;border-radius:8px;padding:10px;font-size:16px}button.danger{background:#b91c1c}button.secondary{color:#111827;background:#e5e7eb}.progress{background:#e5e7eb;border-radius:999px;min-width:80px;height:8px;overflow:hidden}.progress>div{background:var(--brand);height:100%}.tabs{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.tabs button{color:#111827;background:#e5e7eb}.tabs button.on{background:var(--brand);color:#fff}a.badge{text-decoration:none}.table-wrap{background:#fff;border-radius:12px;margin-bottom:12px;overflow-x:auto;box-shadow:0 1px 4px #00000014}table.data{border-collapse:collapse;width:100%;min-width:860px;font-size:14px}table.data th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;white-space:nowrap;background:#f6f7fb;padding:10px 12px;font-size:12px;position:sticky;top:0}table.data th.num,table.data td.num{text-align:right}table.data td{vertical-align:top;border-top:1px solid #eef;padding:10px 12px}table.data tr.row-off td{opacity:.6}table.data tr.panel-row td{background:#f6f7fb;padding:14px}.fields{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 12px;display:grid}.fields label{color:#374151;flex-direction:column;gap:4px;font-size:13px;display:flex}.fields label input,.fields label select,.fields label textarea{width:100%;font-size:16px}.fields .wide{grid-column:1/-1}.fields.fields-bottom{align-items:end}.fields.fields-bottom>.wide{align-self:start}.group-title{text-transform:uppercase;letter-spacing:.04em;color:#6b7280;margin:14px 0 6px;font-size:13px;font-weight:700}.invoice-sheet{background:#fff;border-radius:12px;margin-bottom:12px;padding:32px;position:relative;box-shadow:0 1px 4px #00000014}.invoice-sheet h1{letter-spacing:.04em;color:var(--doc,inherit);margin:0;font-size:26px}.doc-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px 24px;margin-bottom:20px;display:flex}.doc-head .doc-biz{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;max-width:100%;display:flex}.doc-head .doc-name{font-size:20px}.doc-head .doc-title{text-align:right;margin-left:auto}.doc-head.doc-right .doc-biz{text-align:right;align-items:flex-end;margin-left:auto}.doc-head.doc-right .doc-title{text-align:left;margin-left:0}.doc-head.doc-centre{text-align:center;flex-direction:column;align-items:center}.doc-head.doc-centre .doc-biz{align-items:center}.doc-head.doc-centre .doc-title{text-align:center;border-top:1px solid var(--doc,#ddd);width:100%;margin:0;padding-top:10px}.doc-head .doc-meta{margin-top:8px;font-size:14px}.doc-head .doc-meta>div{margin-top:4px!important}.doc-foot{text-align:center;color:#6b7280;margin-top:24px;font-size:13px}.invoice-sheet .cols{flex-wrap:wrap;justify-content:space-between;gap:24px;margin-bottom:20px;display:flex}.invoice-sheet table{border-collapse:collapse;width:100%;font-size:14px}.invoice-sheet th{text-align:left;border-bottom:2px solid var(--doc,var(--brand));text-transform:uppercase;letter-spacing:.04em;padding:8px 6px;font-size:12px}.invoice-sheet td{vertical-align:top;border-bottom:1px solid #eee;padding:8px 6px}.invoice-sheet .num{text-align:right;white-space:nowrap}.invoice-sheet .totals{width:min(320px,100%);margin-top:12px;margin-left:auto}.invoice-sheet .totals div{justify-content:space-between;padding:4px 0;display:flex}.invoice-sheet .totals .grand{border-top:2px solid var(--doc,var(--brand));margin-top:4px;padding-top:8px;font-size:17px;font-weight:700}.invoice-sheet .stamp{letter-spacing:.12em;text-align:center;opacity:.13;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0;white-space:nowrap;border:6px solid;border-radius:14px;padding:6px 28px;font-size:clamp(48px,11vw,104px);font-weight:800;line-height:1;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)rotate(-18deg)}.invoice-sheet .stamp small{letter-spacing:.05em;margin-top:4px;font-size:.22em;font-weight:700;display:block}.invoice-sheet .stamp.paid{color:#047857}.invoice-sheet .stamp.void{color:#b91c1c}.sheet-scroll{overflow-x:auto}.line-grid input,.line-grid select{width:100%;min-width:0}@media (max-width:700px){.sheet-scroll:has(>table.line-grid){overflow:visible}table.line-grid{border:0;width:100%;min-width:0!important}table.line-grid thead{display:none}table.line-grid tbody{display:block}table.line-grid tbody tr{background:#fff;border:1px solid #e5e7eb;border-radius:10px;grid-template-columns:1fr 1fr;gap:10px 12px;margin-bottom:10px;padding:12px;display:grid;position:relative}table.line-grid tbody td{text-align:left;border:0;min-width:0;padding:0;display:block}table.line-grid tbody td[data-label]:before{content:attr(data-label);color:#374151;margin-bottom:4px;font-size:12px;font-weight:600;display:block}table.line-grid td.lg-desc{grid-column:1/-1;padding-right:44px}table.line-grid td.lg-amount{align-self:end;padding-bottom:8px;font-size:16px;font-weight:700}table.line-grid td.lg-remove{position:absolute;top:8px;right:8px}table.line-grid td.lg-remove:empty{display:none}}@media print{body{background:#fff}header,footer.site-footer,.no-print,.modal-backdrop{display:none!important}main{max-width:none;margin:0;padding:0}.invoice-sheet{box-shadow:none;border-radius:0;margin:0;padding:0}}.lock-banner{border-bottom:1px solid;padding:10px 16px;font-size:14px}.lock-banner.warn{color:#92400e;background:#fffbeb;border-color:#fcd34d}.lock-banner.bad{color:#991b1b;background:#fef2f2;border-color:#fca5a5}.lock-banner a,.lock-banner button.linklike{color:inherit;font-weight:600;font-size:inherit;text-decoration:underline}.mt-tab{z-index:30;background:var(--brand);color:#fff;cursor:pointer;writing-mode:vertical-rl;border:0;border-radius:10px 0 0 10px;align-items:center;gap:6px;padding:12px 8px;font-size:13px;display:flex;position:fixed;top:50%;right:0;transform:translateY(-50%);box-shadow:-2px 2px 8px #0003}.mt-count{color:var(--brand);writing-mode:horizontal-tb;background:#fff;border-radius:999px;padding:1px 6px;font-size:11px;font-weight:700}.mt-panel{z-index:30;background:#fff;border-left:1px solid #e4e6f2;flex-direction:column;width:300px;max-width:92vw;display:flex;position:fixed;top:56px;bottom:0;right:0;box-shadow:-4px 0 16px #00000014}.mt-head{border-bottom:1px solid #e4e6f2;align-items:center;gap:8px;padding:12px 14px;display:flex}.mt-close{cursor:pointer;color:#111827;background:#eef0f7;border:1px solid #cfd3e0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;margin-left:auto;padding:0;font-size:18px;line-height:1;display:inline-flex}.mt-close:hover{background:#e0e3f0}.mt-filters{border-bottom:1px solid #e4e6f2;flex-direction:column;gap:6px;padding:10px 14px;display:flex}.mt-filters select{width:100%}.mt-done{color:#4b5563;align-items:center;gap:6px;font-size:13px;display:flex}.mt-list{flex:1;padding:8px 10px;overflow-y:auto}.mt-item{color:inherit;border:1px solid #e4e6f2;border-radius:10px;flex-direction:column;gap:4px;margin-bottom:8px;padding:10px;text-decoration:none;display:flex}.mt-item:hover{border-color:var(--brand);background:#f9fafb}.mt-title{font-size:14px;font-weight:600}.mt-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.mt-due,.mt-job{color:#6b7280;font-size:12px}.mt-due.late{color:#b91c1c;font-weight:600}.mt-empty{color:#6b7280;text-align:center;margin:16px 0;font-size:13px}.mt-foot{border-top:1px solid #e4e6f2;padding:10px 14px;font-size:13px}.mt-foot a{color:var(--brand);font-weight:600;text-decoration:none}@media (max-width:900px){.mt-panel{top:0}}.card p.err{color:#b91c1c;background:#fee2e2;border-radius:8px;padding:8px 10px}.card p.ok{color:#065f46;background:#d1fae5;border-radius:8px;padding:8px 10px}.card .linklike{color:var(--brand);padding:0 2px;text-decoration:underline}.card .linklike:hover{background:0 0}.card .linklike:disabled{opacity:.5;text-decoration:none}.field-error{color:#b91c1c;margin-top:3px;font-size:12px;line-height:1.3;display:block}input.invalid,select.invalid,textarea.invalid{background:#fef2f2;outline-color:#dc2626;border-color:#dc2626!important}.row>.field-error,.fields>.field-error{flex:100%;margin:-2px 0 0}.jp{flex:1;min-width:0}.jp-top{align-items:center;gap:10px;display:flex}.jp-bar{background:#e5e7eb;border-radius:999px;flex:1;gap:2px;height:12px;display:flex;overflow:hidden}.jp-seg{height:100%}.jp-seg.done,.jp-chip.done i{background:#16a34a}.jp-seg.doing,.jp-chip.doing i{background:#2563eb}.jp-seg.blocked,.jp-chip.blocked i{background:#dc2626}.jp-seg.todo,.jp-chip.todo i{background:#9ca3af}.jp-pct{text-align:right;min-width:38px;font-size:14px}.jp-legend{color:#4b5563;flex-wrap:wrap;gap:4px 12px;margin-top:6px;font-size:12px;display:flex}.jp-chip{align-items:center;gap:5px;display:inline-flex}.jp-chip i{border-radius:50%;width:8px;height:8px;display:inline-block}.jp-chip.overdue{color:#b91c1c;font-weight:600}.jp-next{color:#4b5563}.jt{border-top:1px solid #e5e7eb;gap:4px;margin:10px 0 0;padding:8px 0 0;list-style:none;display:grid}.jt-row{align-items:baseline;gap:8px;font-size:13px;display:flex}.jt-ico{text-align:center;flex:none;width:16px}.jt-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.jt-meta{color:#4b5563;text-align:right;flex:none;max-width:55%;font-size:12px}.jt-row.done{color:#6b7280}.jt-row.done .jt-title{text-decoration:line-through}.jt-row.done .jt-ico{color:#16a34a}.jt-row.doing .jt-ico{color:#2563eb}.jt-row.blocked .jt-title,.jt-row.overdue .jt-title{font-weight:600}.jt-row.blocked .jt-ico,.jt-row.overdue .jt-ico{color:#dc2626}.jt-flag{color:#b91c1c;margin-right:6px;font-weight:600}.jt-flag.amber{color:#b45309}.jt-more{color:#6b7280;padding-left:24px;font-size:12px}.jt-key{color:#4b5563;flex-wrap:wrap;gap:4px 14px;margin:0 4px 10px;font-size:12px;display:flex}.jt-key span{align-items:center;gap:5px;display:inline-flex}.jt-key i{border-radius:2px;width:4px;height:12px;display:inline-block}.jt-keysep{flex-basis:100%}@media (max-width:560px){.jt-row{flex-wrap:wrap}.jt-meta{text-align:left;flex-basis:100%;max-width:none;padding-left:24px}}.legal{max-width:760px;margin-left:auto;margin-right:auto}.legal h3{margin:18px 0 4px;font-size:16px}.legal p,.legal li{line-height:1.55}.dtf{flex-direction:column;min-width:0;margin-bottom:20px;display:flex;position:relative}.dtf>small{white-space:nowrap;margin-top:3px;font-size:12px;line-height:1.3;position:absolute;top:100%;left:0}.dtf+.field-error{margin-top:20px;display:block}.row .dtf,.fields .dtf{margin-bottom:0}.row:has(.dtf){row-gap:26px;padding-bottom:18px}.fields:has(.dtf){row-gap:26px;padding-bottom:18px}@media (max-width:600px){:is(.row>.field:has(.dtf),.row>.dtf-row){flex:100%}.dtf-in input{flex:auto}}.dtf-row{flex:240px}.dtf-in{gap:6px;display:flex}.dtf-in input,.dtf-in select{box-sizing:border-box;height:40px;padding:6px 8px;font-size:15px}.dtf-in input{flex:0 150px;min-width:0}.dtf-in select{flex:none;width:104px}.dtf-ok{color:#166534}.dtf-none{color:#6b7280}.field{flex-direction:column;flex:200px;gap:4px;min-width:0;display:flex}.field>input,.field>select{box-sizing:border-box;width:100%;height:40px}.field>small:first-child{font-weight:600}.row.form-row{align-items:flex-end}.row:has(>.field){align-items:flex-end}.row:has(>.field)>.field-error{align-self:stretch}.row:has(>.field)>label.check{align-items:center;gap:6px;min-height:40px;display:flex}.maplink{white-space:nowrap}.addr{flex-direction:column;gap:4px;min-width:0;display:flex;position:relative}.addr-list{z-index:20;background:#fff;border:1px solid #d1d5db;border-radius:6px;max-height:260px;margin:2px 0 0;padding:4px 0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 6px 18px #0000001f}.addr-list li{cursor:pointer;padding:8px 12px}.addr-list li:hover,.addr-list li.on{background:#eef2ff}.crew-near{border-bottom:1px solid #eee;justify-content:space-between;gap:12px;padding:6px 0;display:flex}.wf-name{margin:0 0 6px}.wf-strip{flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:0;list-style:none;display:flex}.wf-chip a{color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:999px;align-items:center;gap:6px;padding:4px 10px 4px 4px;text-decoration:none;display:inline-flex}.wf-chip.prog a{background:#fffbeb;border-color:#f59e0b}.wf-chip.done a{color:#166534;background:#f0fdf4;border-color:#16a34a}.wf-no{color:#374151;background:#e5e7eb;border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;font-weight:700;display:inline-flex}.prog>summary .wf-no,.wf-chip.prog .wf-no{color:#fff;background:#f59e0b}.done>summary .wf-no,.wf-chip.done .wf-no{color:#fff;background:#16a34a}.phase{background:#fafbff;border:1px solid #e0e3f0;border-left:5px solid #cbd5e1;border-radius:10px;margin-top:12px;overflow:hidden}.phase.prog{border-left-color:#f59e0b}.phase.done{border-left-color:#16a34a}.phase-head{cursor:pointer;background:#f1f3fb;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;list-style:none;display:flex}.phase-head::-webkit-details-marker{display:none}.phase-head:after{content:"▾";color:#6b7280;margin-left:auto}.phase:not([open]) .phase-head:after{content:"▸"}.phase-name{font-size:16px}.phase-bar{background:#e5e7eb;border-radius:4px;flex:0 120px;min-width:60px;height:8px;overflow:hidden}.phase-bar i{background:#16a34a;height:100%;display:block}.phase-body{padding:4px 12px 12px}.plan-step{background:#f6f7fb;border-radius:10px;margin-top:10px;padding:10px 12px}.plan-task{align-items:flex-start;margin-top:8px}.plan-task>span:first-child{padding-top:8px}.plan-due{flex:320px;align-items:flex-start;gap:6px;display:flex}.plan-due .dtf-in input{flex:0 0 150px}.plan-due>small{white-space:nowrap;padding-top:10px}.plan-task>.check{white-space:nowrap;padding-top:8px}.waiting{color:#92400e;background:#fef3c7;border-radius:8px;padding:6px 10px}.waiting-step{color:#92400e;background:#fef3c7;border-radius:8px;margin-bottom:8px;padding:6px 10px}.wf-card>summary{cursor:pointer;list-style:none}.wf-card>summary::-webkit-details-marker{display:none}.wf-card-arrow{color:#5b6080;flex:none;font-size:20px;line-height:1;transition:transform .15s;display:inline-block}.wf-card[open] .wf-card-arrow{transform:rotate(90deg)}.nav-group{display:flex;position:relative}.nav-group-btn{color:var(--brand-2);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px;min-height:0;padding:6px 10px}.nav-group-btn:hover{background:#ffffff1f}.nav-group-btn.active{color:#fff;background:#ffffff2e}.nav-group-panel{z-index:30;background:var(--brand);border-radius:10px;flex-direction:column;gap:2px;min-width:210px;padding:6px;display:none;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 28px #00000040}.nav-group-panel.open{display:flex}.nav-group-panel a{padding:9px 12px}@media (max-width:1100px){.nav-group{flex-direction:column}.nav-group-btn{pointer-events:none;text-align:left;text-transform:uppercase;letter-spacing:.06em;opacity:.7;padding:12px 10px 2px;font-size:12px}.nav-group-btn.active{background:0 0}.nav-caret{display:none}.nav-group-panel{box-shadow:none;background:0 0;min-width:0;padding:0 0 0 10px;display:flex;position:static}}.bell{order:2;position:relative}.bell-btn{color:#fff;background:0 0;border:1px solid #ffffff59;border-radius:8px;min-height:0;padding:6px 10px;font-size:16px;line-height:1;position:relative}.bell-btn:hover{background:#ffffff1f}.bell-count{color:#fff;background:#dc2626;border-radius:999px;padding:1px 6px;font-size:11px;font-weight:700;position:absolute;top:-6px;right:-6px}.bell-panel{z-index:70;color:#111827;background:#fff;border-radius:12px;width:min(380px,100vw - 24px);position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 12px 32px #0000002e}.bell-head{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.bell-head .linklike{color:var(--brand);padding:0;font-size:13px}.bell-list{flex-direction:column;max-height:min(70vh,520px);display:flex;overflow-y:auto}.bell-item{white-space:normal;text-align:left;height:auto;min-height:0;font:inherit;color:#374151;background:#fff;border:0;border-radius:0;flex-direction:column;flex:auto;align-items:flex-start;gap:2px;min-width:0;padding:10px 14px;font-weight:400;display:flex}.bell-item:hover{background:#f6f7fb}.bell-row{border-bottom:1px solid #f1f2f4;flex-shrink:0;align-items:stretch;display:flex}.bell-row.unread,.bell-row.unread .bell-item{color:#111827;background:#eef2ff}.bell-row.unread .bell-title{font-weight:700}.bell-row.picked .bell-item{background:#e6f4f1}.bell-x{flex:none;align-self:flex-start;min-height:0;font-size:14px;text-decoration:none;color:#6b7280!important;padding:10px 12px!important}.bell-x:hover{color:#111827!important}.bell-pick{cursor:pointer;flex-direction:row!important;gap:10px!important}.bell-pick input{flex:none;width:18px;height:18px;min-height:0;margin-top:2px}.bell-text{flex-direction:column;gap:2px;min-width:0;display:flex}.bell-restore{flex:none;align-self:center;padding:8px 14px!important}.bell-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.bell-ask{background:#fff7ed;flex-wrap:wrap;gap:10px}.bell-ask button:not(.linklike){min-height:0;padding:6px 12px;font-size:13px}.bell-undo{background:#f0fdf4;border-bottom:1px solid #e5e7eb;align-items:center;gap:8px;padding:8px 14px;font-size:13px;display:flex}.bell-undo .linklike,.bell-foot .linklike{color:var(--brand);padding:0;font-size:13px}.bell-foot{text-align:right;border-top:1px solid #e5e7eb;padding:8px 14px}.bell-title{font-size:14px}.bell-body{font-size:13px}.bell-item small{color:#6b7280}.bell-empty{color:#4b5563;margin:0;padding:14px;font-size:14px}@media (max-width:1100px){.bell{order:0;margin-left:auto}.bell+.menu-btn{margin-left:0}.bell-panel{width:auto;position:fixed;top:60px;left:12px;right:12px}}.card.flash{outline-offset:2px;outline:3px solid #f59e0b;transition:outline-color 1s}.licence-picker{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.licence-picker .chip{align-items:center;gap:4px;display:inline-flex}.licence-picker .chip .linklike{min-height:0;padding:0 2px;font-size:12px}.licence-picker select{width:auto;min-width:200px}@media (min-width:1101px) and (max-width:1360px){header{gap:8px 10px}header nav{gap:2px}header nav a,.nav-group-btn{padding:6px 7px}header strong{font-size:16px}}.mt-group{text-transform:uppercase;letter-spacing:.06em;color:#6b7280;padding:8px 2px 4px;font-size:11px;font-weight:700}.mt-group span{font-weight:400}.mt-group.bad{color:#b91c1c}.mt-waiting{border-bottom:1px solid #e4e6f2;margin-bottom:2px;padding-bottom:6px}.mt-wait{color:#1f2937;background:#eef2ff;border-left:4px solid #6366f1;border-radius:8px;margin:4px 0;padding:8px 10px;font-size:13px;text-decoration:none;display:block}.mt-wait.warn{background:#fffbeb;border-left-color:#f59e0b}.mt-wait.bad{background:#fef2f2;border-left-color:#dc2626}.mt-wait:hover{filter:brightness(.97)}.mt-waitfor{color:#92400e;font-size:12px;display:block}.mt-item.mt-held .mt-title{color:#6b7280}.mt-item.mt-held{border-style:dashed}.po-line{background:#fafbfc;border:1px solid #e5e7eb;border-radius:10px;margin-top:8px;padding:10px 12px}.po-line .row.form-row+.row.form-row{margin-top:6px}.po-amount{text-align:right;flex-direction:column;justify-content:flex-end;min-width:100px;padding-bottom:8px;display:flex}.po-amount small{color:#6b7280;font-weight:600}.po-totals{grid-template-columns:auto auto;justify-items:end;gap:4px 24px;min-width:220px;display:grid}.po-totals>:nth-child(odd){justify-self:start}.po-totals strong{border-top:2px solid var(--brand,#0f766e);padding-top:4px;font-size:1.05em}table.compare td.cheapest{background:#ecfdf5}table.compare td.picked{box-shadow:inset 0 0 0 2px var(--brand,#0f766e)}.help{vertical-align:middle;margin-left:4px;display:inline-flex}.help-btn{all:unset;box-sizing:border-box;color:#6b7280;text-align:center;cursor:help;border:1.5px solid #9aa3b2;border-radius:50%;flex-shrink:0;width:16px;height:16px;font:italic 700 10px/13px Georgia,Times New Roman,serif}.help-btn:hover,.help-btn[aria-expanded=true]{border-color:var(--brand,#0f766e);color:var(--brand,#0f766e)}.help-btn:focus-visible{outline:2px solid var(--brand,#0f766e);outline-offset:2px}.help-pop{z-index:1000;color:#f9fafb;text-transform:none;letter-spacing:normal;white-space:normal;text-align:left;pointer-events:auto;background:#1f2937;border-radius:8px;max-width:min(300px,100vw - 16px);padding:9px 11px;font:400 13px/1.45 system-ui,-apple-system,Segoe UI,sans-serif;position:fixed;box-shadow:0 6px 20px #0000002e}.help-pop a{color:#93c5fd}.field>small{flex-wrap:nowrap;align-items:center;gap:2px;display:inline-flex}table.data td button,table.data td a>button,table.data td a.btn,table.data td .badge{white-space:nowrap}table.data td:last-child:has(>button,>a>button,>a.btn){white-space:nowrap;width:1%}.invoice-sheet th{white-space:nowrap}.sheet-scroll table{min-width:520px}.stat b{white-space:nowrap}@media (max-width:600px){.stat b{font-size:18px}.stat{flex-basis:120px}}.row>h2,.row>h3{min-width:0;flex:220px!important}.row>a.btn{flex:none}.row>a:has(>button){flex:none}@media (max-width:600px){.card.row>input,.card.row>input[type=search]{flex:100%!important}}textarea{font:inherit}.nowrap{white-space:nowrap}.nav-divider{border:0;border-top:1px solid #e5e7eb;margin:4px 8px}@media (max-width:1100px){.nav-divider{border-top-color:#ffffff40;margin:2px 0}}@media (min-width:1101px) and (max-width:1179px){header nav a,.nav-group-btn{padding:6px 5px}header nav .who{text-overflow:ellipsis;white-space:nowrap;max-width:90px;overflow:hidden}}table.data td>a>strong{white-space:nowrap}@media (min-width:1101px){header{flex-wrap:nowrap}header>strong{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}header>img{flex-shrink:0}header nav{flex-wrap:nowrap;flex-shrink:0}.bell{flex-shrink:0}.bell-panel{position:fixed;top:62px;right:12px}}.dash-head{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.dash-head .row{flex:0 auto}.dash-clock{color:#4b5563;font-size:14px}.dash-clock.on{color:#047857;font-weight:600}.dash-section{margin:16px 4px 8px}.dash-more{white-space:nowrap;margin-left:auto;font-size:14px}.dash-job{color:inherit;border-top:1px solid #f1f2f4;align-items:center;gap:12px;padding:9px 0;text-decoration:none;display:flex}.dash-job:first-of-type{border-top:0}.dash-job:hover{background:#f8f9fc}.dash-when{color:#4b5563;white-space:nowrap;flex:0 0 140px;font-size:13px}.dash-what{flex-direction:column;flex:auto;min-width:0;display:flex}.dash-what>.ref-tag{align-self:flex-start}.dash-what small{color:#6b7280}.dash-pipe{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.dash-col{border:1px solid #eef0f4;border-radius:10px;flex-direction:column;gap:6px;padding:10px;display:flex}.dash-col h4{text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin:0 0 2px;font-size:13px}.dash-stage{color:inherit;background:#f6f7fb;border-radius:8px;grid-template-columns:1fr auto;grid-template-areas:"label count""label total";align-items:center;gap:0 8px;padding:8px 10px;text-decoration:none;display:grid}.dash-stage span{grid-area:label;font-size:14px}.dash-stage b{text-align:right;grid-area:count;font-size:18px}.dash-stage small{text-align:right;color:#4b5563;grid-area:total}.dash-stage:hover{filter:brightness(.97)}.dash-stage.warn{background:#fef3c7}.dash-stage.bad{background:#fee2e2}.attn.info{background:#eff6ff;border-left-color:#2563eb}@media (max-width:600px){.dash-when{white-space:normal;flex-basis:92px}.dash-job .badge{display:none}}header .side{background:var(--brand);color:#fff;z-index:45;flex-direction:column;width:248px;display:flex;position:fixed;top:0;bottom:0;left:0}header .side-head{border-bottom:1px solid #ffffff26;flex-shrink:0;align-items:center;display:flex}header .side-brand{color:#fff;white-space:normal;border-radius:0;flex:auto;align-items:center;gap:10px;min-width:0;padding:16px;text-decoration:none;display:flex}header .side-brand:hover{background:#ffffff0f}header .side-brand img{object-fit:contain;background:#fff;border-radius:8px;flex-shrink:0;width:38px;height:38px}header .side-brand span{font-size:16px;font-weight:700;line-height:1.25}header .side-nav{flex:auto;margin:0;padding:4px 10px 20px;display:block;overflow-y:auto}header .side-section{margin-top:12px}header .side-title{letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6;padding:4px 10px;font-size:11px;font-weight:700}header .side-nav a{color:#ffffffeb;white-space:nowrap;border-radius:8px;align-items:center;gap:10px;padding:7px 10px;font-size:14.5px;display:flex}header .side-nav a:hover{color:#fff;background:#ffffff1a}header .side-nav a.active{color:#fff;background:#fff3;font-weight:600}header .side-nav a:focus-visible{outline-offset:-2px;outline:2px solid #fff}.side-icon{flex-shrink:0}header .side-divider{border:0;border-top:1px solid #ffffff2e;margin:6px 10px}.topbar-tools{display:none}body.with-side .topbar-tools{align-items:center;gap:10px;margin-left:auto;display:flex}.tb-menu{position:relative}.tb-new{min-height:36px;padding:6px 14px;font-weight:600}.tb-me{color:inherit;background:0 0;border:1px solid #0000;align-items:center;gap:8px;min-height:36px;padding:4px 8px;display:flex}.tb-me:hover{background:#0000000d}.tb-avatar{background:var(--brand);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:inline-flex}.tb-name{white-space:nowrap;font-size:14px}.tb-panel{z-index:60;color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:10px;flex-direction:column;min-width:220px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #00000029}header .tb-panel a,.tb-panel .linklike{color:#111827;text-align:left;border-radius:6px;padding:9px 12px;font-size:14px}header .tb-panel a:hover,.tb-panel .linklike:hover{background:#f3f4f6}.tb-who{border-bottom:1px solid #f1f2f4;flex-direction:column;margin-bottom:4px;padding:8px 12px 10px;display:flex}.tb-who small{color:#6b7280;overflow-wrap:anywhere}.side-toggle{display:none!important}.side-backdrop{z-index:44;background:#11182773;position:fixed;inset:0}@media (min-width:1101px){body.with-side{padding-left:248px}body.with-side header{color:#1a1d2e;background:#fff;border-bottom:1px solid #e5e7eb;min-height:56px}body.with-side header>img,body.with-side header>strong,body.console-side .tb-console{display:none}body.with-side .bell-btn{color:#374151;border-color:#d1d5db}body.with-side .bell-panel{top:64px}body.side-anim,body.side-anim header .side{transition:padding-left .18s,width .18s}body.with-side.side-mini{padding-left:64px}body.with-side main{max-width:1280px}body.side-mini header .side{width:64px}body.side-mini header .side-head{flex-direction:column;gap:6px;padding-bottom:10px}body.side-mini header .side-brand{justify-content:center;padding:13px 0 0}body.side-mini header .side-nav{padding:4px 8px 20px}body.side-mini header .side-section{border-top:1px solid #ffffff26;margin-top:8px;padding-top:8px}body.side-mini header .side-section:first-child{border-top:0}body.side-mini header .side-nav a{justify-content:center;padding:9px 0}body.side-mini header .side-divider{margin:6px 4px}body.side-mini header .side-brand span,body.side-mini header .side-title,body.side-mini header .side-nav a span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.side-collapse{display:none}@media (min-width:1101px){header .side-collapse{color:#ffffffbf;background:0 0;border:1px solid #ffffff40;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;min-height:0;margin-right:12px;padding:0;font-size:18px;line-height:1;display:inline-flex}header .side-collapse:hover{color:#fff;background:#ffffff1a}header .side-collapse:focus-visible{outline-offset:-2px;outline:2px solid #fff}body.side-mini header .side-collapse{margin:0}}@media (min-width:1101px) and (prefers-reduced-motion:reduce){body.side-anim,body.side-anim header .side{transition:none}}@media (max-width:1100px){header .side{width:min(300px,86vw);box-shadow:none;transition:transform .2s;transform:translate(-102%)}header .side.open{transform:none;box-shadow:8px 0 32px #00000040}body.with-side .side-toggle{order:-1;margin-left:0;display:block!important}body.with-side header{flex-wrap:nowrap}body.with-side header>strong{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:16px;overflow:hidden}body.with-side .topbar-tools{gap:6px;margin-left:0}body.with-side .tb-name,body.console-side header>img,body.console-side header>strong{display:none}body.console-side .tb-console{flex:auto;align-items:center;gap:8px;min-width:0;display:flex}body.console-side .tb-console img{border-radius:6px;width:auto;height:32px}body.console-side .tb-console strong{text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}body.with-side .tb-new{padding:6px 10px}body.with-side .tb-me{padding:2px}body.with-side .tb-avatar{background:#fff3}.tb-new{background:#ffffff2e}}@media (prefers-reduced-motion:reduce){header .side{transition:none}}.topbar-tools .bell{order:0;margin-left:0}.tb-new,.tb-me{white-space:nowrap}@media (max-width:600px){.tb-label,.tb-caret{display:none}body.with-side .tb-new{padding:4px 12px;font-size:20px;line-height:1}}@media (max-width:1100px){body.with-side header{gap:8px}body.with-side header>img{height:28px}}.step-msgs{border-top:1px solid #e4e6f2;margin-top:10px;padding-top:8px}.step-msgs>summary{cursor:pointer}.step-msgs>summary small{color:#4b5563}.step-msgs-body{gap:4px;margin-top:8px;display:grid}.step-msgs-indent{gap:4px;margin:4px 0 4px 26px;display:grid}.step-msgs-indent textarea{width:100%}.step-msgs-preview{background:#fff;border:1px dashed #d1d5db;border-radius:8px;margin:4px 0 0;padding:8px 10px}@media (max-width:600px){.step-msgs-indent{margin-left:0}.step-msgs-indent .row>small:first-child{flex-basis:100%!important}}tr.muted-row>td{color:#8a8fa3}.dash-job-row{border-top:1px solid #f1f2f4;align-items:center;gap:10px;display:flex}.dash-job-row:first-of-type{border-top:0}.dash-job-row>.dash-job{border-top:0;flex:1;min-width:0}.dash-dir{white-space:nowrap;font-size:14px}.route-people{flex-wrap:wrap;align-items:center;gap:6px 14px;margin:4px 0 8px;display:flex}.route-people .linklike{color:#1f2766;font-size:13px;text-decoration:underline}.sched-bar{flex-direction:column;gap:10px;display:flex}.sched-nav,.sched-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sched-nav>button{min-width:40px}.sched-views{gap:0;margin:0}.sched-views button{border-radius:0}.sched-views button:first-child{border-radius:8px 0 0 8px}.sched-views button:last-child{border-radius:0 8px 8px 0}.sched-date{flex:none;width:auto}.sched-title{white-space:nowrap;font-size:16px}.sched-filters .check{flex:none}.sched-filters select{flex:none;width:auto;min-width:180px}.sched-card{padding:0;overflow:hidden}.sched-card>p,.sched-foot{padding:0 14px}.sched-card>p:last-child{padding-bottom:12px}.sched-scroll{overflow-x:auto}.sched-grid,.sched-week{min-width:760px}.sched-head,.sched-row,.sched-whead,.sched-wrow{border-bottom:1px solid #eef0f3;display:flex}.sched-name{z-index:2;background:#fafbfc;border-right:1px solid #eef0f3;flex-direction:column;flex:0 0 180px;gap:2px;width:180px;min-width:0;padding:8px 10px;display:flex;position:sticky;left:0}.sched-corner{justify-content:flex-end}.sched-person{overflow-wrap:anywhere;font-size:14px;font-weight:600}.sched-route{font-size:13px}.sched-stop{color:#1f2937;vertical-align:1px;background:#fff;border:1px solid #9ca3af;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;margin-right:4px;padding:0 4px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.sched-stop.set{background:var(--brand,#1f2766);color:#fff;border-color:var(--brand,#1f2766)}.sched-job.sched-due{color:#334155;background:repeating-linear-gradient(135deg,#f8fafc 0 6px,#eef2f7 6px 12px);border:1px dashed #94a3b8;border-left:3px dashed #64748b}.sched-key i.t-due{background:repeating-linear-gradient(135deg,#f8fafc 0 3px,#e2e8f0 3px 6px);border:1px dashed #94a3b8}.sched-nodate-card>summary{cursor:pointer;list-style:revert;flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.sched-nodate-card>summary h3{margin:0;display:inline}.sched-nodate-card[open]>summary{margin-bottom:8px}.sched-nodate{border-top:1px solid #eef0f3;padding:6px 0}.sched-nodate ul{margin:4px 0 0;padding-left:18px}.sched-nodate li{margin:2px 0}.sched-links{flex-wrap:wrap;align-items:baseline;gap:2px 10px;margin-top:2px;display:flex}.sched-links .sched-order{all:unset;cursor:pointer;color:linktext;white-space:nowrap;font-size:13px;text-decoration:underline}.sched-links .sched-order:hover{text-decoration-thickness:2px}.sched-links .sched-order:focus-visible{outline:2px solid var(--brand,#1f2766);outline-offset:2px;border-radius:2px}.sched-clash{color:#b45309;font-weight:600}.sched-hours{flex:1;height:34px;position:relative}.sched-hours span{color:#6b7280;white-space:nowrap;font-size:12px;position:absolute;bottom:6px;transform:translate(-50%)}.sched-hours span:first-child{transform:none}.sched-track{background-image:linear-gradient(90deg,#eef0f3 1px,#0000 1px);background-repeat:repeat-x;flex:1;min-width:0;position:relative}.sched-track.can-book,.sched-cell.can-book{cursor:copy}.sched-track.can-book:hover,.sched-cell.can-book:hover{background-color:#f7f9fc}.sched-now{z-index:1;pointer-events:none;background:#dc2626;width:2px;position:absolute;top:0;bottom:0}.sched-job{color:#111827;z-index:1;border-left:4px solid;border-radius:6px;flex-direction:column;justify-content:center;min-width:0;height:40px;padding:3px 7px;text-decoration:none;display:flex;position:absolute;overflow:hidden;box-shadow:0 1px 2px #00000014}.sched-job:hover{z-index:3;box-shadow:0 2px 6px #0000002e}.sched-job .sched-when{color:#4b5563;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.sched-job-title{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sched-job.no-end{border-right:2px dashed}.t-booked{background:#eef1fb;border-color:#1f2766}.t-on{background:#e0ecff;border-color:#2563eb}.t-late{background:#fde8e8;border-color:#dc2626}.t-done{background:#e7f6ec;border-color:#16a34a}.t-cancelled{color:#6b7280;background:#f3f4f6;border-color:#9ca3af;text-decoration:line-through}.t-hold{color:#78350f;background:repeating-linear-gradient(135deg,#fffbeb 0 6px,#fef3c7 6px 12px);border-color:#a16207}.sched-job.clash,.sched-chip.clash{outline-offset:-1px;outline:2px solid #f59e0b}.sched-unassigned .sched-name{background:#fff8eb}.sched-unassigned .sched-person{font-style:italic;font-weight:500}.sched-whead>.sched-wday,.sched-cell{flex:1 1 0;min-width:0}.sched-wday{text-align:left;color:#111827;border-radius:0;padding:8px 6px;font-size:13px;font-weight:600;text-decoration:none}.sched-wday.today,.sched-cell.today{background-color:#f3f6ff}.sched-cell{border-left:1px solid #eef0f3;flex-direction:column;gap:4px;min-height:56px;padding:4px;display:flex}.sched-chip{-webkit-line-clamp:2;color:#111827;overflow-wrap:anywhere;border-left:3px solid;border-radius:5px;-webkit-box-orient:vertical;padding:3px 6px;font-size:12px;line-height:1.3;text-decoration:none;display:-webkit-box;overflow:hidden}.sched-chip .sched-when{color:#4b5563}.sched-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding-top:10px;display:flex}.sched-key{color:#4b5563;flex-wrap:wrap;gap:4px 14px;font-size:12px;display:flex}.sched-key span{align-items:center;gap:5px;display:inline-flex}.sched-key i{border-left:3px solid;border-radius:3px;width:14px;height:10px;display:inline-block}.sched-hours-edit{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.sched-hours-edit select{flex:none;width:auto}@media (max-width:600px){.sched-name{flex-basis:120px;width:120px}.sched-title{white-space:normal;flex-basis:100%}.sched-filters select{flex:100%;min-width:0}}.sched-job.can-drag,.sched-chip.can-drag{cursor:grab;-webkit-user-select:none;user-select:none}.sched-job.dragging,.sched-chip.dragging{cursor:grabbing;pointer-events:none;opacity:.9;z-index:6;position:relative;box-shadow:0 6px 16px #00000040}.sched-job.dragging{position:absolute}.sched-row.drop-here .sched-track,.sched-cell.drop-here{background-color:#eef4ff}.sched-row.drop-here .sched-name{box-shadow:inset 3px 0 #2563eb}.sched-changes{margin:0 0 8px;padding-left:20px}.sched-changes li{margin:2px 0}.sched-warn{background:#fff7e6;border:1px solid #f5d08a;border-radius:8px;flex-direction:column;gap:4px;margin:8px 0;padding:8px 10px;font-size:14px;display:flex}.line-grid td{vertical-align:top}.line-grid textarea.line-desc{width:100%;min-height:40px;font:inherit;resize:vertical;border:1px solid #ccd;border-radius:8px;padding:9px 10px;font-size:15px;line-height:1.4;display:block;overflow-y:auto}.line-grid textarea.line-desc.invalid{border-color:#b91c1c}td.line-text{white-space:pre-line}textarea.terms-box{width:100%;min-height:120px;font:inherit;resize:vertical;border:1px solid #ccd;border-radius:8px;padding:10px 12px;font-size:14px;line-height:1.45;display:block}textarea.terms-box.invalid{border-color:#b91c1c}.terms-list{flex-direction:column;gap:8px;display:flex}.terms-item{border:1px solid #e5e7eb;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;display:flex}.terms-item.archived{opacity:.7;background:#fafafa}.quote-bottom{flex-direction:column;gap:12px;margin-top:18px;display:flex}.quote-bottom h4{letter-spacing:.04em;text-transform:uppercase;color:#6b7280;margin:0 0 4px;font-size:12px}.quote-bottom .pre{white-space:pre-line}.quote-terms{background:#fafbfc;border:1px solid #e5e7eb;border-radius:8px;max-height:360px;padding:10px 12px;font-size:14px;overflow-y:auto}@media print{.quote-terms{background:0 0;border:0;max-height:none;padding:0;overflow:visible}}.business-preview{border:1px dashed #d1d5db;border-radius:8px;flex-direction:column;gap:2px;margin-top:12px;padding:10px 12px;font-size:14px;display:flex}.business-preview strong{font-size:16px}.biz-lines{white-space:pre-line;color:#374151;font-size:14px}.import-panel{box-shadow:none;border:1px solid #e5e7eb;min-width:0;max-width:100%;margin:4px 0 0}.import-panel .import-table{max-width:100%}.import-steps{flex-direction:column;gap:4px;margin:0 0 10px;padding-left:20px;font-size:14px;display:flex}.import-table{max-height:420px;overflow:auto}.fold-head{align-items:center;gap:8px 12px}.fold-title{flex:0 auto;min-width:0;margin:0}.fold-card .fold-toggle,.fold-card button.fold-toggle.linklike{min-height:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;align-items:center;gap:8px;padding:2px 0;font-weight:700;text-decoration:none;display:inline-flex}.fold-card button.fold-toggle.linklike:hover{color:var(--brand);text-decoration:none}.fold-chev{color:#4b5563;background:#f1f2f5;border-radius:5px;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;transition:transform .15s;display:inline-flex}.fold-card.is-open .fold-chev{transform:rotate(90deg)}.fold-sum{color:#4b5563;flex:0 auto;min-width:0;font-size:14px}.fold-gap{flex:1 1 0}.fold-body{margin-top:12px}@media print{.fold-chev{display:none}}.fold-head>h3.fold-title{flex:0 auto!important}.fold-head>.fold-sum{flex:0 auto}.fold-head>.fold-gap{flex:1 1 0}.ref-tag,button.ref-tag.linklike{color:#374151;letter-spacing:.02em;vertical-align:middle;white-space:nowrap;background:#eef0f5;border-radius:5px;min-height:0;padding:1px 6px;font:600 12px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-decoration:none;display:inline-block}button.ref-tag.linklike{cursor:copy;border:0}button.ref-tag.linklike:hover{color:#111827;background:#e2e6f0}h2 .ref-tag{vertical-align:3px;font-size:14px}.po-steps{flex-direction:column;gap:4px;margin:10px 0 0;padding:0;font-size:14px;list-style:none;display:flex}.po-steps li{color:#6b7280;padding-left:24px;position:relative}.po-steps li:before{content:"○";position:absolute;left:4px}.po-steps li.done{color:#111827}.po-steps li.done:before{content:"✓";color:#15803d;font-weight:700}.name-suggest{position:relative}.name-suggest>input{width:100%}.name-suggest-list{z-index:30;background:#fff;border:1px solid #d6d9e3;border-radius:10px;min-width:max(100%,min(340px,100vw - 48px));max-height:320px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;overflow:auto;box-shadow:0 8px 24px #11182724}.name-suggest-list li{cursor:pointer;border-radius:7px;flex-direction:column;gap:1px;padding:8px 10px;display:flex}.name-suggest-list li small{font-size:12px}.name-suggest-list li.on{background:#eef1f8}.name-suggest-list li.name-suggest-new{color:var(--brand,#1f2766);border-top:1px solid #eceef4;flex-direction:row;gap:4px;margin-top:2px;font-weight:600}.row>.task-pick,.task-pick{align-self:flex-start;height:20px;min-height:0;margin:2px 4px 0 0;padding:0;flex:0 0 20px!important;width:20px!important}.card.picked{outline:2px solid var(--brand,#1f2766);outline-offset:-2px}.select-bar{z-index:20;position:sticky;top:64px}tr.picked-row td{background:#e6f4f1}.day-bar{flex-wrap:wrap;align-items:center;gap:8px 16px;margin:10px 0 6px;display:flex}.route-day{align-items:center;min-width:0;display:inline-flex}.route-day-pick{align-items:center;gap:4px;display:inline-flex}.route-day-pick button.secondary{min-height:0;padding:6px 10px;line-height:1}.route-day-pick input[type=date]{width:auto;height:34px;min-height:0;padding:4px 8px}.route-day-out{flex-direction:column;gap:2px;min-width:0;display:flex}.order-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.order-list li{background:#fff;border:1px solid #e5e7eb;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.order-no{background:var(--brand,#1f2766);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-weight:700;display:flex}.order-what{flex-direction:column;flex:auto;min-width:0;display:flex}.order-move{flex:none;gap:4px;display:flex}.order-move button{min-height:0;padding:6px 10px;line-height:1}.order-move button:disabled{opacity:.35;color:inherit}.doc-logo-box{text-align:center;background:#fafbfc;border:1px dashed #cbd5e1;border-radius:10px;flex:0 0 240px;justify-content:center;align-items:center;max-width:100%;height:96px;padding:8px;display:flex}.doc-logo-box img{object-fit:contain;max-width:100%;max-height:80px}.doc-checks{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:6px 18px;display:grid}.doc-preview{box-shadow:none;border:1px solid #e5e7eb;max-width:760px}.sort-box{white-space:nowrap;align-items:center;gap:6px;margin-left:auto;display:inline-flex}.sort-box small{color:#555b6e;font-weight:600}.sort-box select{min-width:0}@media (max-width:600px){.card.row>.sort-box{flex:100%;margin-left:0}.card.row>.sort-box select{flex:1}}.sched-chip.sched-chip-due{color:#334155;background:repeating-linear-gradient(135deg,#f8fafc 0 6px,#eef2f7 6px 12px);border:1px dashed #94a3b8;border-left:3px dashed #64748b}.error-summary{top:calc(64px + env(safe-area-inset-top,0px));z-index:95;color:#1f2937;background:#fff;border:1px solid #fecaca;border-left:6px solid #b91c1c;border-radius:10px;width:min(640px,100vw - 32px);padding:12px 14px 10px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0f172a2e}body.with-side .error-summary{left:calc(50% + 124px)}body.side-mini.with-side .error-summary{left:calc(50% + 32px)}@media (max-width:1100px){body.with-side .error-summary{left:50%}}.error-summary-head{align-items:flex-start;gap:10px;display:flex}.error-summary-head strong{color:#b91c1c;flex:1}.error-summary-x{color:#6b7280;padding:0 2px;font-size:18px;line-height:1}.error-summary ul{max-height:40vh;margin:6px 0 0;padding-left:20px;overflow:auto}.error-summary li{margin:3px 0}.error-summary a{color:#b91c1c;font-weight:600}.notes .note-add textarea{box-sizing:border-box;width:100%;font:inherit;resize:vertical;border-radius:10px;margin-top:10px;padding:10px 12px}.note-list{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.note-list li{background:#fff;border:1px solid #e4e6f2;border-radius:10px;min-width:0;padding:10px 12px}.note-list li.pinned{background:#fffbeb;border-color:#f5d27a}.note-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.note-meta .linklike{font-size:13px}.note-body{white-space:pre-line;overflow-wrap:break-word;margin-top:4px}.note-removed{border-top:1px dashed #d4d7e6;margin-top:12px;padding-top:10px}.note-removed .note-body{color:#6b7280}.note-actions{white-space:nowrap;gap:10px;margin-left:auto;display:inline-flex}.notes .note-add .row>.check{flex:none;margin-right:12px}.badge.prio-urgent{color:#b91c1c;background:#fee2e2;font-weight:700}.badge.prio-high{color:#c2410c;background:#ffedd5;font-weight:600}.badge.prio-low{color:#6b7280;background:#f3f4f6}.badge.prio-normal{color:#374151;background:#eef0fa}.badge.hold{color:#44403c;background:#e7e5e4}.job-hold-line{color:#92400e}.fake-tab{color:#374151;background:#e8eaf2;border-radius:10px 10px 0 0;align-items:center;gap:8px;min-width:0;max-width:240px;padding:7px 12px;font-size:13px;display:inline-flex}.fake-tab span:not(.fake-x){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fake-tab .fake-x{color:#9ca3af;margin-left:6px;font-size:11px}.tl-tools{align-items:center;gap:8px;margin-bottom:8px}.tl-bulk{align-items:flex-end;gap:8px}.tl-scroll{border:1px solid #e4e6f2;border-radius:10px;max-height:75vh;overflow:auto}.tl-table{border-collapse:separate;border-spacing:0;width:100%;min-width:860px;font-size:14px}.tl-table thead th{z-index:2;text-align:left;color:#4b5563;white-space:nowrap;background:#f6f7fb;border-bottom:1px solid #e4e6f2;padding:8px 10px;font-size:12px;font-weight:600;position:sticky;top:0}.tl-table td{vertical-align:middle;border-bottom:1px solid #eef0f6;padding:6px 10px}.tl-group td{background:#fafbfe;padding-top:8px;padding-bottom:8px}.tl-group.all-done td{background:#f6faf7}.tl-fold{cursor:pointer;font:inherit;color:inherit;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:inline-flex}.tl-arrow{color:#6b7280;width:14px}.tl-no{background:#eef0fa;border-radius:50%;place-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:inline-grid}.tl-gmeta{flex-wrap:wrap;align-items:center;gap:10px;margin-left:14px;display:inline-flex}.tl-bar{vertical-align:middle;background:#e5e7eb;border-radius:6px;width:90px;height:6px;display:inline-block;overflow:hidden}.tl-bar i{background:#16a34a;height:100%;display:block}.tl-strike{color:#6b7280;text-decoration:line-through}.tl-row:hover td{background:#fbfcff}.tl-row.picked td{background:#eef4ff}.tl-row.done .tl-name a{color:#6b7280;text-decoration:line-through}.tl-pick{text-align:center;width:32px}.tl-id{white-space:nowrap;width:78px}.tl-name a{color:inherit;font-weight:500;text-decoration:none}.tl-name a:hover{text-decoration:underline}.tl-st{width:140px}.tl-who{width:190px}.tl-who select{width:100%;height:32px;padding:4px 6px;font-size:13px}.tl-d{white-space:nowrap;width:104px}.tl-dur{white-space:nowrap;color:#4b5563;width:80px}.tl-date{color:inherit;font-size:13px}.tl-date.late{color:#b91c1c;font-weight:600}.tl-date-edit{min-width:270px}.tl-status{border:0;border-radius:6px;max-width:132px;height:30px;padding:4px 8px;font-size:13px;font-weight:600;display:inline-block}select.tl-status{cursor:pointer}.tl-status.done{color:#166534;background:#dcfce7}.tl-status.prog{color:#1e40af;background:#dbeafe}.tl-status.blocked{color:#b91c1c;background:#fee2e2}.tl-status.todo{color:#374151;background:#f3f4f6}.tl-status.wait{color:#854d0e;background:#fef9c3}.tl-add td{background:#fff}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.seg{display:inline-flex}.seg>button{border-radius:0;margin:0}.seg>button:first-child{border-radius:8px 0 0 8px}.seg>button:last-child{border-radius:0 8px 8px 0}.card .tl-table td{padding:3px 10px}.card .tl-table select{height:28px;min-height:28px;padding:0 6px;font-size:13px;line-height:1.2}.card .tl-table .tl-status{height:26px;min-height:26px;padding:0 6px}.card .tl-table .tl-group td{padding-top:6px;padding-bottom:6px}.tl-date{border-bottom:1px dotted #0000;text-decoration:none!important}.tl-date:hover{border-bottom-color:currentColor}.tl-table .ref-tag{padding:1px 6px;font-size:11px}.card .tl-table button.linklike,.card .tl-table .tl-fold{height:auto;min-height:0;margin:0;padding:0}.card .tl-table input[type=checkbox]{vertical-align:middle;width:16px;height:16px;min-height:0;margin:0}.tl-bulk{flex-wrap:wrap}.tl-bulk>.field{flex:none}.tl-bulk>select{flex:0 230px;min-width:200px}a.plain-link{color:inherit;text-decoration:none}a.plain-link:hover{text-decoration:underline}.drag-handle{color:#9ca3af;cursor:grab;touch-action:none;background:0 0;border:0;border-radius:4px;flex:none;min-height:0;padding:2px 4px;font-size:16px;line-height:1}.drag-handle:hover,.drag-handle:focus-visible{color:#374151;background:#eef0f4}.tl-table .tl-drag{text-align:center;width:26px;padding-left:4px;padding-right:0}.tl-table tr.drag-source td,.task-card-drag.drag-source{opacity:.4}.tl-table tr.drop-before td{box-shadow:inset 0 3px 0 var(--brand)}.tl-table tr.drop-after td{box-shadow:inset 0 -3px 0 var(--brand)}.task-card-drag.drop-before{box-shadow:0 -3px 0 var(--brand)}.task-card-drag.drop-after{box-shadow:0 3px 0 var(--brand)}.tl-table tr.drop-into td,.phase-head.drop-into{outline:2px dashed var(--brand);outline-offset:-2px}.task-card-drag>.row{align-items:flex-start}.drag-ghost{z-index:120;pointer-events:none;text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--brand);background:#fff;border-radius:8px;max-width:320px;padding:6px 10px;font-size:13px;position:fixed;overflow:hidden;box-shadow:0 6px 18px #0000002e}body.dragging-task,body.dragging-task *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.tl-empty td{padding:10px}.job-card{position:relative}.job-card a.stretched{color:inherit;text-decoration:none}.job-card a.stretched:after{content:"";z-index:1;border-radius:inherit;position:absolute;inset:0}.job-card a:not(.stretched),.job-card .maplink{z-index:2;position:relative}.job-card:hover{box-shadow:0 2px 10px #10182814}.job-card a.stretched:focus-visible{outline:none}.job-card:has(a.stretched:focus-visible){outline:2px solid var(--brand);outline-offset:2px}a.btn,a.btn:visited{box-sizing:border-box;background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;min-height:40px;padding:10px 14px;font-family:inherit;font-size:15px;line-height:1.2;text-decoration:none;display:inline-flex}a.btn.secondary,a.btn.secondary:visited{color:#111827;background:#e5e7eb}a.btn.danger,a.btn.danger:visited{color:#fff;background:#b91c1c}a.btn:hover{text-decoration:none}a.btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
body.site-body{color:#0d1a2b;background:#f2f4f6;font-family:Barlow,ui-sans-serif,system-ui,sans-serif;font-size:18px;line-height:1.55;display:block}.site{--ink:#0d1a2b;--paper:#f2f4f6;--steel:#566577;--rule:#d3d9e0;--yellow:#f5c400}.site *{box-sizing:border-box}.site a{color:inherit}.site h1,.site h2,.site h3{letter-spacing:.005em;color:var(--ink);margin:0;font-family:Barlow Condensed,Arial Narrow,ui-sans-serif,sans-serif;font-weight:700;line-height:1.02}.site p{margin:0}.s-wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 20px}.s-skip{background:var(--yellow);color:var(--ink);z-index:50;border-radius:6px;padding:8px 12px;position:absolute;top:8px;left:-999px}.s-skip:focus{left:8px}.site a:focus-visible,.site button:focus-visible,.site input:focus-visible{outline-offset:2px;border-radius:4px;outline:3px solid #1550c8}.s-head{background:var(--ink);color:#fff;border-bottom:4px solid var(--yellow);z-index:20;position:sticky;top:0}.s-head-in{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;padding-bottom:12px;display:flex}.site .s-logo{color:#fff;letter-spacing:.01em;white-space:nowrap;font-family:Barlow Condensed,Arial Narrow,sans-serif;font-size:28px;font-weight:700;text-decoration:none}.s-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;display:flex}.site .s-nav a{color:#dbe3ec;border-radius:6px;padding:8px 12px;font-size:16px;font-weight:500;text-decoration:none}.site .s-nav a:hover{color:#fff;background:#ffffff1a}.site .s-nav a[aria-current=page]{color:#fff;box-shadow:inset 0 -3px 0 var(--yellow);background:#ffffff24}.site .s-nav a.s-nav-signin[aria-current=page]{box-shadow:none;background:#ffd633}.s-burger{color:#fff;cursor:pointer;background:0 0;border:2px solid #ffffff80;border-radius:8px;width:44px;height:44px;padding:0;font-size:22px;line-height:1;display:none}.s-burger:hover{background:#ffffff1f}.site .s-nav a.s-nav-signin{background:var(--yellow);color:var(--ink);margin-left:6px;font-weight:600}.site .s-nav a.s-nav-signin:hover{background:#ffd633}.s-main{min-height:60vh}.s-sec{padding:72px 0}.s-ink{background:var(--ink);color:#dbe3ec}.s-ink h2,.s-ink h3{color:#fff}.s-line{background:repeating-linear-gradient(90deg, var(--yellow) 0 44px, transparent 44px 76px);height:6px}.site h1{font-size:clamp(44px,7vw,84px)}.site h2{max-width:18ch;font-size:clamp(34px,4.6vw,54px)}.site .s-lead{color:#2c3b4f;max-width:54ch;margin-top:22px;font-size:20px}.site .s-ink .s-lead{color:#c3cfdc}.s-muted{color:var(--steel)}.s-cta{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.site .s-btn{border:2px solid var(--ink);color:var(--ink);background:0 0;border-radius:8px;padding:13px 22px;font-size:17px;font-weight:600;text-decoration:none;display:inline-block}.site .s-btn:hover{background:#0d1a2b12}.site .s-btn.primary{background:var(--yellow);border-color:var(--yellow)}.site .s-btn.primary:hover{background:#ffd633;border-color:#ffd633}.s-ink .s-btn{color:#fff;border-color:#fff}.s-ink .s-btn:hover{background:#ffffff1f}.s-ink .s-btn.primary{color:var(--ink);border-color:var(--yellow)}.s-hero{padding:56px 0 72px}.s-hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:48px;display:grid}.s-hero-grid h1{text-wrap:balance;max-width:15ch}.s-sec.s-sec-hero{padding:40px 0 64px}.s-board{border:1px solid var(--rule);background:#fff;border-radius:10px;gap:12px;padding:14px;display:grid;box-shadow:0 18px 40px -22px #0d1a2b73}.s-board-title{color:var(--steel);justify-content:space-between;align-items:baseline;padding:2px 4px 0;font-size:15px;display:flex}.s-job{border:1px solid var(--rule);border-left:5px solid #d1d5db;border-radius:8px;padding:12px 14px;font-size:15px}.s-job.red{border-left-color:#dc2626}.s-job.blue{border-left-color:#2563eb}.s-job.green{border-left-color:#16a34a}.s-job-top{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.s-job-top strong{font-size:16px}.s-job-top small{color:var(--steel);font-size:13px;display:block}.s-job-sub{gap:1px;margin:-4px 0 8px;display:grid}.s-job-sub small{color:var(--steel);font-size:13px}.s-job-sub small.s-job-cust{color:var(--ink,#0d1a2b);font-weight:600}.s-badge{white-space:nowrap;background:#e7ebf0;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600}.s-badge.red{color:#991b1b;background:#fde2e2}.s-badge.blue{color:#1e429f;background:#dbe7ff}.s-badge.green{color:#166534;background:#d6f3e0}.s-board .jp-legend{font-size:12px}.s-board .jt{margin-top:8px;padding-top:6px;font-size:13px}.s-board .jt-row{font-size:13px}.s-hero .jp-seg{transform-origin:0;animation:.9s cubic-bezier(.2,.7,.2,1) both s-grow}.s-hero .jp-seg:nth-child(2){animation-delay:.12s}.s-hero .jp-seg:nth-child(3){animation-delay:.24s}.s-hero .jp-seg:nth-child(4){animation-delay:.36s}@keyframes s-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.s-hero .jp-seg{animation:none}}.s-statement{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:56px;display:grid}.s-statement p+p{margin-top:14px}.s-rows{border-top:2px solid var(--ink);margin-top:36px}.s-ink .s-rows{border-top-color:var(--yellow)}.s-row{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:32px;padding:22px 0;display:grid}.s-ink .s-row{border-bottom-color:#ffffff2e}.s-row h3{font-size:28px}.s-row p{color:#2c3b4f;max-width:62ch}.s-ink .s-row p{color:#c3cfdc}.s-row p b{color:var(--ink)}.s-steps{counter-reset:step;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:36px 0 0;padding:0;list-style:none;display:grid}.s-steps li{counter-increment:step;border-top:6px solid var(--yellow);padding-top:14px}.s-steps li:before{content:counter(step);margin-bottom:6px;font-family:Barlow Condensed,sans-serif;font-size:44px;font-weight:700;line-height:1;display:block}.s-steps h3{margin-bottom:6px;font-size:26px}.s-steps p{color:#2c3b4f;font-size:17px}.s-ink .s-steps p{color:#c3cfdc}.s-ink .s-steps li:before{color:var(--yellow)}.s-trades{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;margin-top:32px;display:grid}.s-trade{border-bottom:1px solid var(--rule);padding:16px 0}.s-trade h3{font-size:26px}.s-trade p{color:#2c3b4f;font-size:17px}.s-plans{border:2px solid var(--ink);background:#fff;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:36px;display:grid;overflow:hidden}.s-plan{border-right:1px solid var(--rule);padding:26px 24px 30px}.s-plan:last-child{border-right:0}.s-plan.pick{box-shadow:inset 0 6px 0 var(--yellow);background:#fffbe0}.s-plan h3{font-size:36px}.s-price{align-items:baseline;gap:8px;margin:6px 0 0;display:flex}.s-price b{font-family:Barlow Condensed,Arial Narrow,sans-serif;font-size:52px;line-height:1}.s-price span{color:var(--steel);font-size:16px}.s-plan .s-for{color:var(--steel);min-height:3em;margin:4px 0 14px;font-size:16px}.s-plan .s-users{color:var(--ink);margin:8px 0 0;font-size:15px}.s-plan .s-total{background:var(--paper);border-radius:6px;min-height:2.6em;margin:10px 0 12px;padding:8px 10px;font-size:15px}.s-plan .s-total b{font-size:18px}.s-plan .s-total.over{color:#8a4b00;background:#fff4e5}.s-plan-over .s-price,.s-plan-over .s-users{opacity:.6}.s-calc{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 28px;margin-top:28px;display:flex}.s-calc-users{flex-wrap:wrap;align-items:center;gap:10px 14px;font-size:18px;font-weight:600;display:flex}.s-calc-num{border:2px solid var(--ink);background:#fff;border-radius:8px;align-items:stretch;display:inline-flex;overflow:hidden}.s-calc-num button{background:var(--paper);cursor:pointer;width:44px;color:var(--ink);border:0;font-size:22px}.s-calc-num input{text-align:center;-moz-appearance:textfield;width:72px;color:var(--ink);background:#fff;border:0;font-size:20px;font-weight:700}.s-calc-num input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.s-calc-num input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.s-calc-cycle{border:2px solid var(--ink);border-radius:999px;display:inline-flex;overflow:hidden}.s-calc-cycle button{cursor:pointer;color:var(--ink);background:#fff;border:0;padding:9px 18px;font-size:16px;font-weight:600}.s-calc-cycle button.on{background:var(--ink);color:#fff}.s-plan ul{gap:8px;margin:0;padding:0;font-size:16px;list-style:none;display:grid}.s-plan li{padding-left:24px;position:relative}.s-plan li:before{content:"";border-bottom:3px solid #16a34a;border-left:3px solid #16a34a;width:10px;height:6px;position:absolute;top:.5em;left:2px;transform:rotate(-45deg)translateY(-3px)}.s-plan li.more{padding-left:0;font-weight:600}.s-plan li.more:before{display:none}.site .s-note{color:var(--steel);max-width:70ch;margin-top:22px;font-size:16px}.s-narrow{max-width:640px}.s-form{gap:10px;margin-top:24px;display:grid}.s-form label{font-size:16px;font-weight:600}.s-form .s-field{flex-wrap:wrap;align-items:stretch;gap:0;display:flex}.s-form input{min-width:0;font:inherit;border:2px solid var(--ink);color:var(--ink);background:#fff;border-radius:8px 0 0 8px;flex:160px;padding:12px 14px;font-size:18px}.s-form .s-suffix{border:2px solid var(--ink);color:var(--steel);background:#e7ebf0;border-left:0;border-radius:0 8px 8px 0;align-items:center;padding:0 14px;font-size:17px;display:inline-flex}.s-form input.invalid{border-color:#b91c1c}.s-err{color:#b91c1c;font-size:16px}.site .s-form button{font:inherit;background:var(--yellow);color:var(--ink);border:2px solid var(--yellow);cursor:pointer;border-radius:8px;justify-self:start;min-height:0;margin-top:6px;padding:13px 22px;font-size:17px;font-weight:600}.site .s-form button:hover{background:#ffd633}.s-foot{background:var(--ink);color:#aebbc9;border-top:4px solid var(--yellow);font-size:15px}.s-foot-in{flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding-top:22px;padding-bottom:22px;display:flex}.s-foot-links{flex-wrap:wrap;gap:6px 20px;display:flex}.site .s-foot a{color:#dbe3ec}.site .legal{box-shadow:none;border:1px solid var(--rule);background:#fff;border-radius:10px;margin:40px auto;padding:28px}.site .legal h2{max-width:none;margin-bottom:4px;font-size:40px}.site .legal h3{margin:22px 0 4px;font-family:Barlow,sans-serif;font-size:18px}@media (max-width:860px){.s-sec{padding:52px 0}.s-hero{padding:36px 0 52px}.s-sec.s-sec-hero{padding:24px 0 48px}.s-hero-grid,.s-statement{grid-template-columns:1fr;gap:32px}.s-row{grid-template-columns:1fr;gap:6px;padding:18px 0}.s-steps,.s-trades,.s-plans{grid-template-columns:1fr}.s-plan{border-right:0;border-bottom:1px solid var(--rule)}.s-plan .s-for{min-height:0}}@media (max-width:520px){body.site-body{font-size:17px}.site .s-nav a{padding:8px 9px;font-size:15px}}@media (max-width:720px){.s-head-in{flex-wrap:wrap}.s-burger{justify-content:center;align-items:center;display:inline-flex}.s-nav{flex-direction:column;flex:100%;align-items:stretch;gap:2px;padding-top:8px;display:none}.s-nav.open{display:flex}.site .s-nav a{padding:12px 14px;font-size:17px}.site .s-nav a[aria-current=page]{box-shadow:inset 4px 0 0 var(--yellow)}.site .s-nav a.s-nav-signin{text-align:center;margin:8px 0 0}}.s-form{gap:14px;margin-top:24px;display:grid;position:relative}.s-form label{gap:6px;font-size:14px;font-weight:600;display:grid}.s-form input,.s-form textarea{font:inherit;box-sizing:border-box;border:1px solid #cfd3e0;border-radius:8px;width:100%;padding:10px 12px}.s-form button{justify-self:start}.s-shots{gap:56px;margin-top:36px;display:grid}.s-shot{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);align-items:start;gap:40px;margin:0;display:grid}.s-shot:nth-child(2n){grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.s-shot:nth-child(2n) figcaption{order:2}.s-shot-full{color:var(--ink);margin-top:12px;font-size:15px;display:inline-block}.s-shot figcaption{border-top:6px solid var(--yellow);padding-top:14px}.s-shot figcaption h3{margin-bottom:10px;font-size:30px}.s-shot figcaption p{color:var(--steel);margin:0;font-size:18px;line-height:1.5}.s-shot-frame{border:1px solid var(--rule);background:#fff;border-radius:12px;max-height:640px;display:block;position:relative;overflow:hidden;box-shadow:0 18px 40px -22px #0d1a2b73}.s-shot-frame:after{content:"";pointer-events:none;background:linear-gradient(#fff0,#fff);height:56px;position:absolute;bottom:0;left:0;right:0}.s-shot-bar{background:var(--paper);border-bottom:1px solid var(--rule);gap:6px;padding:10px 12px;display:flex}.s-shot-bar i{background:var(--rule);border-radius:50%;width:10px;height:10px}.s-shot-frame img{width:100%;height:auto;display:block}.s-phones{justify-content:center;align-items:flex-start;gap:24px;display:flex}.s-phone{background:#0d1a2b;border-radius:34px;flex:0 260px;min-width:0;padding:8px;display:block;box-shadow:0 18px 40px -22px #0d1a2b8c}.s-phone:nth-child(2){margin-top:48px}.s-phone img{border-radius:26px;width:100%;height:auto;display:block}@media (max-width:860px){.s-shot,.s-shot:nth-child(2n){grid-template-columns:1fr;gap:18px}.s-shot:nth-child(2n) figcaption{order:0}.s-shot-frame{max-height:520px}.s-phones{gap:14px}.s-phone{border-radius:26px;padding:6px}.s-phone img{border-radius:20px}.s-phone:nth-child(2){margin-top:28px}}.s-demo{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:48px;display:grid}.s-ticks{gap:10px;margin:20px 0 0;padding:0;font-size:18px;list-style:none;display:grid}.s-ticks li{padding-left:28px;position:relative}.s-ticks li:before{content:"";border-bottom:3px solid #16a34a;border-left:3px solid #16a34a;width:12px;height:7px;position:absolute;top:.45em;left:2px;transform:rotate(-45deg)}.s-form-full{border:1px solid var(--rule);background:#fff;border-radius:12px;margin-top:0;padding:24px}.s-form-2{grid-template-columns:1fr 1fr;gap:10px 16px;display:grid}.s-form label>input,.s-form label>select,.s-form label>textarea{width:100%;font:inherit;border:2px solid var(--ink);color:var(--ink);box-sizing:border-box;background:#fff;border-radius:8px;margin-top:4px;padding:11px 13px;font-size:17px;font-weight:400;display:block}.s-form label>select{height:50px}.s-sent{border:1px solid var(--rule);background:#fff;border-radius:12px;padding:24px}@media (max-width:860px){.s-demo{grid-template-columns:1fr;gap:24px}.s-form-2{grid-template-columns:1fr}.s-form-full{padding:16px}}.s-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.s-compare-wrap{border:1px solid var(--rule);background:#fff;border-radius:12px;margin-top:24px;overflow-x:auto}.s-compare{border-collapse:collapse;width:100%;min-width:560px;font-size:16px}.s-compare th,.s-compare td{border-bottom:1px solid var(--rule);text-align:center;vertical-align:middle;padding:11px 14px}.s-compare tbody th{text-align:left;color:var(--ink);font-family:inherit;font-size:16px;font-weight:500}.s-compare thead th{background:#fff;font-size:22px;position:sticky;top:0}.s-compare tr:last-child th,.s-compare tr:last-child td{border-bottom:0}.s-compare-group th{letter-spacing:.04em;text-transform:uppercase;background:#f3f5f8;text-align:left!important;color:var(--steel)!important;font-size:14px!important;font-weight:700!important}.s-compare td small{color:var(--steel);white-space:nowrap;font-size:14px}.s-yes{color:#16a34a;font-size:18px;font-weight:700}.s-trust{border-top:1px solid var(--rule);grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px;padding-top:22px;display:grid}.s-trust div{gap:4px;display:grid}.s-trust b{color:var(--ink);font-size:17px}.s-trust span{color:var(--steel);font-size:15px;line-height:1.45}.s-areas{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px;display:grid}.site a.s-area{border:1px solid var(--rule);border-top:5px solid var(--yellow);color:var(--ink);background:#fff;border-radius:10px;align-content:start;gap:8px;padding:20px;text-decoration:none;display:grid}.site a.s-area:hover{border-color:var(--ink)}.s-area h3{font-size:26px}.s-area p{color:#2c3b4f;margin:0;font-size:17px;line-height:1.5}.s-area-more{margin-top:4px;font-size:15px;font-weight:600}.site a.s-trade{color:inherit;text-decoration:none;display:block}.site a.s-trade:hover h3{text-decoration:underline}.s-chips{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.site .s-chips a{border:2px solid var(--ink);color:var(--ink);background:#fff;border-radius:999px;padding:8px 14px;font-size:15px;font-weight:600;text-decoration:none}.site .s-chips a:hover{background:var(--yellow);border-color:var(--yellow)}.s-shots-one{margin-top:20px;margin-bottom:8px}.site [id]{scroll-margin-top:100px}.s-kicker{color:var(--steel);margin:0 0 8px;font-size:15px}.s-flows{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.s-flow{border:1px solid var(--rule);background:#fff;border-radius:10px;padding:18px 20px}.s-flow h3{margin-bottom:10px;font-size:24px}.s-flow ol{counter-reset:step;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.s-flow li{counter-increment:step;color:var(--ink);background:#eef1f5;border-radius:999px;padding:5px 10px;font-size:15px}.s-flow li:before{content:counter(step) ". ";font-weight:700}.s-plan-note{color:var(--steel);font-family:Barlow,ui-sans-serif,sans-serif;font-size:14px;font-weight:500}@media (max-width:860px){.s-trust{grid-template-columns:repeat(2,minmax(0,1fr))}.s-areas,.s-flows{grid-template-columns:1fr}}@media (max-width:480px){.s-trust{grid-template-columns:1fr}}.s-compare tbody th{z-index:1;background:#fff;position:sticky;left:0}.s-compare-group th{position:static!important}
