/* ===== mini FSM ===== */
.hosted #bk-share,.hosted .jump a[href="#bk-share"]{display:none}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:3px 10px;border-radius:12px;background:var(--fill);color:var(--ink-2);white-space:nowrap;letter-spacing:0}
.pill.won{background:color-mix(in srgb,var(--green) 16%,transparent);color:var(--green)}
.pill.lost{background:var(--red-soft);color:var(--red)}
.pill.review{background:var(--orange-soft);color:var(--orange)}
.pill.approved{background:var(--blue-soft);color:var(--blue)}
.pill.progress{background:color-mix(in srgb,#5E5CE6 16%,transparent);color:#5E5CE6}
.sec-h{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:30px 0 10px;max-width:760px}
.sec-h h3{margin:0;font-size:19px;font-weight:600;letter-spacing:-.022em}
.sv-list + .sv-list{margin-top:10px}
.kv.detail{max-width:760px}
.fg-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--sep-2);border-radius:16px;overflow:hidden;max-width:760px;margin-bottom:14px;border:1px solid var(--sep-2)}
.fg-card > div{background:var(--card);padding:14px 16px}
.fg-card .k{display:block;font-size:12px;color:var(--ink-2);font-weight:600;letter-spacing:0}
.fg-card b{display:block;font-size:20px;font-weight:600;letter-spacing:-.025em;margin:3px 0 2px}
.fg-card span:last-child{font-size:13px;color:var(--ink-2)}
.fg-card.overdue{border-color:var(--red)} .fg-card.overdue > div:nth-child(2) b{color:var(--red)}
.fg-card.due > div:nth-child(2) b{color:var(--orange)}
.fg-card.ok > div:nth-child(2) b{color:var(--green)}
.st-row{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px;max-width:760px}
.st-row button{border:0;background:var(--card);border-radius:980px;padding:8px 14px;font-size:14px;color:var(--ink);min-height:38px;box-shadow:0 0 0 1px var(--sep-2)}
.st-row button[aria-pressed="true"]{background:var(--ink);color:var(--bg);box-shadow:none}
.job-acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;max-width:760px}
.note-add{display:grid;grid-template-columns:1fr auto;gap:8px;max-width:760px;align-items:end;margin-bottom:10px}
.note-add textarea{border:0;background:var(--card);border-radius:12px;padding:12px 14px;font-size:16px;min-height:48px;resize:vertical;outline:none}
.note-add textarea:focus{box-shadow:0 0 0 2px var(--blue)}
.timeline{max-width:760px;background:var(--card);border-radius:14px;padding:6px 16px}
.ev{display:grid;grid-template-columns:14px 1fr;gap:12px;padding:10px 0;border-top:1px solid var(--sep-2)}
.ev:first-child{border-top:0}
.ev i{width:10px;height:10px;border-radius:50%;background:var(--ink-3);margin-top:6px}
.ev.status i{background:var(--blue)} .ev.refrigerant i{background:#0A8FD1} .ev.certificate i{background:var(--green)} .ev.asset i{background:var(--orange)}
.ev b{display:block;font-weight:500;font-size:15px;letter-spacing:-.015em;white-space:pre-wrap}
.ev span{font-size:12.5px;color:var(--ink-2)}
.ktiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:8px;max-width:1000px}
.ktile{border:0;background:var(--card);border-radius:16px;padding:16px 16px 14px;text-align:left;box-shadow:var(--shadow)}
.ktile b{display:block;font-size:34px;font-weight:700;letter-spacing:-.04em;line-height:1;color:var(--ink)}
.ktile span{display:block;font-size:13px;color:var(--ink-2);margin-top:6px;line-height:1.3}
.ktile.bad b{color:var(--red)} .ktile.warn b{color:var(--orange)}
.jchips{margin:0 0 14px}
.jchips button{min-height:36px;padding:7px 13px;font-size:14px}
.jchips button i{font-style:normal;opacity:.65;margin-left:4px}
.jchips button[aria-checked="true"]{background:var(--ink);color:var(--bg)}
.tbl2{background:var(--card);border-radius:14px;overflow-x:auto}
.tbl2 table{border-collapse:collapse;width:100%;min-width:780px;font-size:14px}
.tbl2 th{text-align:left;font-size:12px;font-weight:600;color:var(--ink-2);padding:12px 12px 8px;border-bottom:1px solid var(--sep-2);letter-spacing:0}
.tbl2 td{padding:11px 12px;border-bottom:1px solid var(--sep-2);vertical-align:top}
.tbl2 tr:last-child td{border-bottom:0}
.tbl2 tbody tr{cursor:pointer} .tbl2 tbody tr:hover td{background:var(--fill-2)}
.tbl2 td b{font-weight:600} .tbl2 td small{display:block;color:var(--ink-2);font-size:12.5px}
.tbl2 .r{text-align:right}
.wk-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:6px 0 12px}
.wk-nav b{font-size:16px;font-weight:600;letter-spacing:-.015em}
.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.day{background:var(--card);border-radius:14px;padding:10px;min-height:150px;display:flex;flex-direction:column;gap:6px}
.day.wkend{background:var(--fill-2)}
.day.today{box-shadow:0 0 0 2px var(--blue)}
.dh{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:2px}
.dh span{font-size:12px;color:var(--ink-2);font-weight:600} .dh b{font-size:20px;font-weight:600;letter-spacing:-.03em}
.day.today .dh b{color:var(--blue)}
.day .none{color:var(--ink-3);font-size:13px}
.wj{border:0;text-align:left;border-radius:10px;padding:8px 9px;background:var(--blue-soft);display:grid;gap:1px;border-left:3px solid var(--blue)}
.wj b{font-size:13px;font-weight:600;letter-spacing:-.01em;line-height:1.25}
.wj span,.wj em{font-size:11.5px;color:var(--ink-2);font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wj.in_progress{background:color-mix(in srgb,#5E5CE6 14%,transparent);border-left-color:#5E5CE6}
.wj.complete,.wj.invoiced{background:color-mix(in srgb,var(--green) 12%,transparent);border-left-color:var(--green)}
.doc-row{margin-bottom:4px}
@media (max-width:900px){.week{grid-template-columns:1fr}.day{min-height:0}.ktiles{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.fg-card{grid-template-columns:1fr}.note-add{grid-template-columns:1fr}.sec-h{flex-wrap:wrap}}
a.btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.jp{display:grid;grid-template-columns:minmax(0,760px);gap:0 36px;align-items:start}
.jp-side .sec-h:first-child{margin-top:30px}
@media (min-width:1180px){.jp{grid-template-columns:minmax(0,1fr) 380px}.jp-side{position:sticky;top:76px}.jp-side .sec-h:first-child{margin-top:0}.jp-side .note-add{grid-template-columns:1fr}}
.apps{max-width:980px}
