:is(body.locked:has(.dash),body.locked:has(.login)){overflow:auto}.dash{background:var(--ink);min-height:100vh;color:var(--paper);grid-template-columns:244px 1fr;display:grid}.dash-side{border-right:1px solid var(--line);background:var(--panel);flex-direction:column;gap:28px;height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.dash-brand{align-items:center;gap:11px;padding:0 6px;display:flex}.dash-brand .mk{aspect-ratio:548/542;flex:none;width:30px;position:relative}.dash-brand .mk .layer{position:absolute;inset:0}.dash-brand .mk .ring{filter:none}.dash-brand .mk .play{opacity:1;transform:none}.dash-brand b{color:#fff;font-size:15px;font-weight:800;display:block}.dash-brand em{font-style:normal;font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:2px;font-size:9.5px;display:block}.dash-nav{flex-direction:column;gap:2px;display:flex}.dash-nav a{color:#c6d4e8;border-radius:9px;align-items:center;gap:11px;padding:10px 12px;font-size:14.5px;transition:background .18s,color .18s;display:flex}.dash-nav a:hover{color:#fff;background:#c6d4e812}.dash-nav a[aria-current=page]{color:#fff;background:#1c6fd629}.dash-nav svg{stroke:currentColor;fill:none;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;opacity:.85;flex:none;width:17px;height:17px}.dash-user{border-top:1px solid var(--line);margin-top:auto;padding-top:16px}.dash-user p{color:#fff;overflow-wrap:anywhere;font-size:13.5px;font-weight:600}.dash-user span{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--brand-lift);border:1px solid #1c6fd666;border-radius:999px;margin-top:5px;padding:3px 9px;font-size:9.5px;display:inline-block}.dash-signout{border:1px solid var(--line);width:100%;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:9px;margin-top:14px;padding:9px 12px;font-size:13.5px;transition:color .2s,border-color .2s,background .2s}.dash-signout:hover{color:var(--paper);border-color:var(--brand-lift);background:#1c6fd61a}.dash-main{min-width:0;padding:clamp(22px,3.4vw,40px)}.dash-head{margin-bottom:28px}.dash-head h1{font-family:var(--display);letter-spacing:-.01em;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:800}.dash-head p{color:var(--muted);margin-top:7px;font-size:14.5px}.dash-cards{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:28px;display:grid}.dash-card{border:1px solid var(--line);background:var(--panel);border-radius:13px;padding:18px 20px}.dash-card span{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:10px;display:block}.dash-card b{margin-top:10px;font-size:30px;font-weight:800;line-height:1;display:block}.dash-card i{color:var(--muted);margin-top:8px;font-size:12.5px;font-style:normal;display:block}.dash-panel{border:1px solid var(--line);background:var(--panel);border-radius:13px;padding:clamp(20px,3vw,30px)}.dash-empty{text-align:center;color:var(--muted);padding:34px 12px;font-size:14.5px}@media (max-width:900px){.dash{grid-template-columns:1fr}.dash-side{border-right:0;border-bottom:1px solid var(--line);height:auto;position:static}.dash-nav{flex-flow:wrap}.dash-user{margin-top:0}}.dash-filters{flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:18px;display:flex}.dash-filters input[type=search]{flex:240px;min-width:0}.dash-filters input,.dash-filters select{border:1px solid var(--line);color:var(--paper);font:inherit;background:#050b1899;border-radius:9px;padding:9px 12px;font-size:14px}.dash-filters input:focus,.dash-filters select:focus{border-color:var(--brand-lift);outline:none}.dash-filters button{border:1px solid var(--brand-lift);background:var(--brand-lift);color:#fff;font:inherit;cursor:pointer;border-radius:9px;padding:9px 18px;font-size:14px;font-weight:600}.dash-filters button:hover{background:#2f83e8}.dash-filters-reset,.dash-filters-export{color:var(--muted);padding:9px 4px;font-size:13.5px}.dash-filters-reset:hover,.dash-filters-export:hover{color:var(--paper)}.dash-filters-export{margin-left:auto}.dash-tablewrap{border:1px solid var(--line);background:var(--panel);border-radius:13px;overflow-x:auto}.dash-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:14px}.dash-table th{text-align:left;font-family:var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding:13px 16px;font-size:10px;font-weight:400}.dash-table td{vertical-align:middle;border-bottom:1px solid #6e86a81f;padding:13px 16px}.dash-table tr:last-child td{border-bottom:0}.dash-table tbody tr:hover{background:#c6d4e80a}.dash-table .num{text-align:right;font-variant-numeric:tabular-nums}.dash-table td b{font-weight:600;display:block}.dash-table td em{color:var(--muted);margin-top:2px;font-size:12.5px;font-style:normal;display:block}.dash-dim{color:var(--muted)}.dash-ref{font-family:var(--mono);color:var(--brand-lift);font-size:12.5px}.dash-ref:hover{color:#fff;text-decoration:underline}.dash-badge{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;border:1px solid;border-radius:999px;padding:4px 9px;font-size:9.5px;display:inline-block}.dash-badge.is-new{color:#6fb2ff}.dash-badge.is-contacted{color:#b79bff}.dash-badge.is-quoted{color:#f0c26b}.dash-badge.is-won{color:#6fd8a4}.dash-badge.is-lost{color:#e88a8a}.dash-badge.is-archived{color:var(--muted)}.dash-pager{color:var(--muted);justify-content:center;align-items:center;gap:18px;margin-top:18px;font-size:13.5px;display:flex}.dash-pager a{border:1px solid var(--line);color:var(--paper);border-radius:9px;padding:7px 14px}.dash-pager a:hover{border-color:var(--brand-lift)}.dash-pager a.is-off{opacity:.35;pointer-events:none}.dash-detail-head{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.dash-back{color:var(--muted);margin-bottom:10px;font-size:13.5px;display:inline-block}.dash-back:hover{color:var(--paper)}.dash-mono{font-family:var(--mono);color:var(--brand-lift);font-size:12.5px}.dash-detail{grid-template-columns:minmax(0,1.6fr) minmax(260px,.9fr);align-items:start;gap:18px;display:grid}.dash-detail-main,.dash-detail-side{gap:18px;min-width:0;display:grid}.dash-panel h2{margin-bottom:15px;font-size:15px;font-weight:700}.dash-panel h3{color:var(--muted);margin:20px 0 8px;font-size:13px;font-weight:700}.dash-dl{grid-template-columns:116px 1fr;gap:9px 14px;font-size:14px;display:grid}.dash-dl dt{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);padding-top:3px;font-size:10px}.dash-dl dd{overflow-wrap:anywhere}.dash-dl a{color:var(--brand-lift)}.dash-dl a:hover{text-decoration:underline}.dash-brief{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14.5px;line-height:1.65}.dash-inline{gap:7px;margin-bottom:16px;display:grid}.dash-inline:last-child{margin-bottom:0}.dash-inline label{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-size:10px}.dash-inline select,.dash-inline input{border:1px solid var(--line);color:var(--paper);font:inherit;background:#050b1899;border-radius:9px;padding:9px 12px;font-size:14px}.dash-inline select:focus,.dash-inline input:focus{border-color:var(--brand-lift);outline:none}.dash-inline button{border:1px solid var(--line);color:var(--paper);font:inherit;cursor:pointer;background:0 0;border-radius:8px;justify-self:start;padding:7px 15px;font-size:13px}.dash-inline button:hover{border-color:var(--brand-lift);background:#1c6fd61f}.dash-noteform{gap:9px;margin-bottom:18px;display:grid}.dash-noteform textarea{border:1px solid var(--line);color:var(--paper);font:inherit;resize:vertical;background:#050b1899;border-radius:10px;padding:11px 13px;font-size:14px}.dash-noteform textarea:focus{border-color:var(--brand-lift);outline:none}.dash-noteform button{border:1px solid var(--brand-lift);background:var(--brand-lift);color:#fff;font:inherit;cursor:pointer;border-radius:9px;justify-self:start;padding:9px 18px;font-size:14px;font-weight:600}.dash-noteform button:hover{background:#2f83e8}.dash-notes,.dash-timeline{gap:13px;list-style:none;display:grid}.dash-notes li{border-left:2px solid var(--line);padding-left:13px}.dash-notes p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.6}.dash-notes span,.dash-timeline span{font-family:var(--mono);letter-spacing:.06em;color:var(--muted);margin-top:5px;font-size:10px;display:block}.dash-timeline li{border-left:2px solid #1c6fd659;padding-left:13px}.dash-timeline p{font-size:13.5px}@media (max-width:1080px){.dash-detail{grid-template-columns:1fr}}@media (max-width:560px){.dash-filters-export{margin-left:0}.dash-dl{grid-template-columns:1fr;gap:3px 0}.dash-dl dd{margin-bottom:9px}}.login{background:var(--ink);min-height:100vh;color:var(--paper);place-items:center;padding:28px 20px;display:grid}.login-card{border:1px solid var(--line);background:var(--panel);border-radius:16px;width:min(400px,100%);padding:clamp(26px,4vw,38px)}.login-card .dash-brand{justify-content:center;margin-bottom:22px}.login-card h1{font-family:var(--display);text-align:center;font-size:21px;font-weight:800}.login-card>p{text-align:center;color:var(--muted);margin-top:7px;margin-bottom:24px;font-size:13.5px}.login-field{margin-bottom:15px}.login-field label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:7px;font-size:10.5px;display:block}.login-field input{border:1px solid var(--line);width:100%;color:var(--paper);font:inherit;background:#050b1899;border-radius:10px;padding:12px 14px;font-size:15px;transition:border-color .2s}.login-field input:focus{border-color:var(--brand-lift);outline:none}.login-error{color:#ffc9c9;background:#dc58581a;border:1px solid #dc585866;border-radius:9px;margin-bottom:15px;padding:11px 13px;font-size:13.5px}.login-submit{border:1px solid var(--brand-lift);background:var(--brand-lift);color:#fff;width:100%;font:inherit;cursor:pointer;border-radius:10px;padding:13px;font-size:15px;font-weight:600;transition:background .22s}.login-submit:hover:not(:disabled){background:#2f83e8}.login-submit:disabled{opacity:.6;cursor:default}.login-note{text-align:center;color:var(--muted);margin-top:18px;font-size:12.5px}
