/* linq · product mockup styles. Paired with _kit/mocks.js.
   Everything here is chrome for a fake-but-honest product surface: no invented
   metrics beyond illustrative sample data, no logos, no customer names in use. */
.pm{--pmbg:#FBFBFC;--pmln:rgba(24,24,27,.10);--pmink:#18181B;--pmmu:#6E7076;--pmfa:#A1A1AA;background:var(--pmbg);color:var(--pmink);border:1px solid var(--pmln);border-radius:14px;overflow:hidden;font-size:.82rem;line-height:1.45;box-shadow:0 20px 48px -30px rgba(24,24,27,.4)}
.pm-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--pmln);background:linear-gradient(#FDFDFE,#F6F6F8)}
.pm-bar i{width:8px;height:8px;border-radius:50%;background:#E1E1E5;flex:0 0 auto}
.pm-u{margin-left:8px;flex:1;font:600 .64rem/1 var(--mono);letter-spacing:.05em;color:var(--pmfa);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pm-tag{font:700 .55rem/1 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--pmfa);background:rgba(24,24,27,.05);padding:4px 7px;border-radius:4px;font-style:normal;flex:0 0 auto}
.pm-tag.pm-live{color:var(--signal);background:rgba(234,106,44,.11)}
.pm-body{padding:14px}
.pm-k{display:block;font:700 .55rem/1 var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--pmfa);margin-bottom:6px}
/* board */
.pm-board{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;position:relative}
.pm-ch{display:flex;align-items:baseline;justify-content:space-between;gap:6px;font-weight:700;font-size:.78rem;padding-bottom:7px;margin-bottom:7px;border-bottom:1px solid var(--pmln)}
.pm-ch span{font:600 .58rem/1 var(--mono);letter-spacing:.08em;color:var(--pmfa)}
.pm-job{position:relative;background:#fff;border:1px solid var(--pmln);border-radius:7px;padding:7px 8px;margin-bottom:5px;font-size:.72rem;line-height:1.35;color:var(--pmmu)}
.pm-job b{display:block;font:700 .58rem/1 var(--mono);letter-spacing:.06em;color:var(--pmink);margin-bottom:3px}
.pm-job.pm-hot{border-color:var(--signal);background:rgba(234,106,44,.07);box-shadow:0 6px 16px -8px rgba(234,106,44,.5)}
.pm-job.pm-hot em{display:block;margin-top:4px;font:700 .52rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--signal);font-style:normal}
.pm-job.pm-ghost{border-style:dashed;color:var(--pmfa);text-align:center;padding:12px 8px}
.pm-float{position:absolute;right:6px;bottom:-6px;width:min(200px,62%);background:var(--night);color:#fff;border-radius:10px;padding:10px 12px;box-shadow:0 14px 30px -12px rgba(10,12,20,.6)}
.pm-float .pm-k{color:rgba(255,255,255,.42);margin-bottom:5px}
.pm-float p{font-size:.74rem;line-height:1.4}
/* call */
.pm-callhead{display:flex;align-items:center;gap:10px;padding-bottom:11px;border-bottom:1px solid var(--pmln);margin-bottom:11px}
.pm-av{width:30px;height:30px;border-radius:50%;background:rgba(59,91,219,.12);color:var(--ocean);display:flex;align-items:center;justify-content:center;font:700 .64rem/1 var(--mono);flex:0 0 auto}
.pm-callhead b{display:block;font-size:.82rem;font-weight:700}
.pm-callhead span{display:block;font-size:.7rem;color:var(--pmfa)}
.pm-badge{white-space:nowrap;margin-left:auto;font:700 .53rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--signal);background:rgba(234,106,44,.11);padding:5px 8px;border-radius:999px;flex:0 0 auto}
.pm-badge.pm-quiet{color:var(--green);background:rgba(31,138,91,.11)}
.pm-wave{display:flex;align-items:center;gap:2px;height:26px;margin-bottom:12px}
.pm-wave i{flex:1;align-self:center;background:rgba(59,91,219,.32);border-radius:1px;min-height:3px}
.pm-wave i:nth-child(3n){background:rgba(234,106,44,.42)}
.pm-tr{display:flex;flex-direction:column;gap:7px}
.pm-line{display:flex}
.pm-line span{max-width:82%;padding:8px 11px;border-radius:11px;font-size:.75rem;line-height:1.45}
.pm-line em{align-self:flex-end;margin-left:8px;font:700 .52rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--pmfa);font-style:normal;white-space:nowrap}
.pm-them span{background:rgba(24,24,27,.055);color:var(--pmink);border-bottom-left-radius:3px}
.pm-ai{justify-content:flex-end}
.pm-ai span{background:var(--ocean);color:#fff;border-bottom-right-radius:3px}
.pm-result{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:13px;padding-top:11px;border-top:1px solid var(--pmln)}
.pm-result b{font-size:.78rem;font-weight:700}
.pm-result span:not(.pm-ok){font-size:.72rem;color:var(--pmmu)}
.pm-ok{width:17px;height:17px;border-radius:50%;background:rgba(31,138,91,.13);color:var(--green);display:flex;align-items:center;justify-content:center;font-size:.65rem;flex:0 0 auto}
/* record */
.pm-tabs{display:flex;gap:16px;border-bottom:1px solid var(--pmln);margin-bottom:11px}
.pm-tabs span{padding-bottom:8px;font-size:.73rem;font-weight:600;color:var(--pmfa)}
.pm-tabs span.on{color:var(--pmink);box-shadow:inset 0 -2px 0 var(--ocean)}
.pm-hist{list-style:none}
.pm-hist li{display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--pmln);font-size:.75rem;color:var(--pmmu)}
.pm-hist li:last-child{border-bottom:0}
.pm-hist b{font:700 .58rem/1 var(--mono);letter-spacing:.06em;color:var(--pmfa)}
.pm-hist em{font-style:normal;font-weight:700;color:var(--pmink)}
.pm-note{margin-top:11px;background:rgba(24,24,27,.035);border-radius:9px;padding:10px 12px}
.pm-note p{font-size:.74rem;line-height:1.45;color:var(--pmmu)}
/* estimate + invoice */
.pm-rows{border-top:1px solid var(--pmln)}
.pm-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--pmln);font-size:.76rem;color:var(--pmmu)}
.pm-row b{color:var(--pmink);font-weight:700;white-space:nowrap}
.pm-total{display:flex;justify-content:space-between;align-items:baseline;padding:11px 0;font-size:.76rem;color:var(--pmfa)}
.pm-total b{font-size:1.3rem;font-weight:800;letter-spacing:-.03em;color:var(--pmink)}
.pm-sig{background:rgba(24,24,27,.035);border-radius:9px;padding:10px 12px}
.pm-sig svg{display:block;width:100%;height:38px;margin-top:2px}
.pm-pay{text-align:center}
.pm-amt b{display:block;font-size:2rem;font-weight:800;letter-spacing:-.04em;line-height:1.1}
.pm-sub{display:block;font-size:.72rem;color:var(--pmfa);margin-top:4px}
.pm-tapzone{position:relative;margin:16px auto;width:min(190px,70%);height:96px;display:flex;align-items:center;justify-content:center}
.pm-card{position:relative;z-index:2;width:120px;height:76px;border-radius:9px;background:linear-gradient(135deg,#1B1C22,#33353F);box-shadow:0 12px 26px -12px rgba(10,12,20,.7);padding:10px;text-align:left}
.pm-chip{display:block;width:22px;height:16px;border-radius:3px;background:linear-gradient(135deg,#E8C87A,#B9913F)}
.pm-cn{position:absolute;left:10px;bottom:9px;font:600 .6rem/1 var(--mono);letter-spacing:.1em;color:rgba(255,255,255,.75)}
.pm-ripple{position:absolute;inset:0;border-radius:50%;border:1.5px solid rgba(59,91,219,.35);animation:pmr 2.6s ease-out infinite}
@keyframes pmr{0%{transform:scale(.5);opacity:0}35%{opacity:1}100%{transform:scale(1.12);opacity:0}}
.pm-tapmsg{position:absolute;bottom:-4px;left:0;right:0;font:700 .53rem/1 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--pmfa)}
.pm-pay .pm-result{justify-content:center}
/* thread */
.pm-missed{display:flex;align-items:center;gap:9px;background:rgba(234,106,44,.07);border-radius:9px;padding:9px 11px;margin-bottom:11px}
.pm-x{width:22px;height:22px;border-radius:50%;background:rgba(234,106,44,.16);color:var(--signal);display:flex;align-items:center;justify-content:center;font-size:.75rem;flex:0 0 auto}
.pm-missed b{display:block;font-size:.76rem}
.pm-missed span{display:block;font-size:.7rem;color:var(--pmmu)}
/* reports */
.pm-sentence{font-size:.92rem;line-height:1.55;color:var(--pmmu)}
.pm-sentence b{color:var(--pmink);font-weight:700}
.pm-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:12px;background:var(--pmln);border:1px solid var(--pmln);border-radius:9px;overflow:hidden}
.pm-kpis>div{background:#fff;padding:10px 11px}
.pm-kpis b{font-size:1rem;font-weight:800;letter-spacing:-.025em}
.pm-chart{display:flex;align-items:flex-end;gap:5px;height:66px;margin-top:14px}
.pm-chart i{flex:1;background:rgba(59,91,219,.25);border-radius:2px 2px 0 0}
.pm-chart i:nth-child(6){background:var(--signal)}
.pm-legend{display:flex;gap:5px;margin-top:6px}
.pm-legend span{flex:1;text-align:center;font:600 .53rem/1 var(--mono);letter-spacing:.06em;color:var(--pmfa)}
/* booking */
.pm-bh{padding-bottom:11px;border-bottom:1px solid var(--pmln);margin-bottom:11px}
.pm-bh b{display:block;font-size:.95rem;font-weight:800;letter-spacing:-.02em}
.pm-bh span{font-size:.72rem;color:var(--pmfa)}
.pm-field{margin-bottom:10px}
.pm-input{background:#fff;border:1px solid var(--pmln);border-radius:7px;padding:9px 11px;font-size:.76rem;color:var(--pmink)}
.pm-slots{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}
.pm-slots span{background:#fff;border:1px solid var(--pmln);border-radius:7px;padding:8px;text-align:center;font-size:.72rem;font-weight:600;color:var(--pmmu)}
.pm-slots span.on{border-color:var(--ocean);background:rgba(59,91,219,.07);color:var(--ocean)}
.pm-cta{margin-top:12px;background:var(--ocean);color:#fff;border-radius:999px;padding:10px;text-align:center;font-size:.78rem;font-weight:700}
/* tech phone */
.pm-phone{display:flex;justify-content:center;background:repeating-linear-gradient(135deg,rgba(24,24,27,.025) 0 9px,transparent 9px 18px)}
.pm-pscreen{width:min(240px,88%);background:#fff;border:1px solid var(--pmln);border-radius:18px;padding:13px}
/* inbox */
.pm-inbox{border-top:1px solid var(--pmln)}
.pm-msg{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--pmln)}
.pm-msg b{display:block;font-size:.78rem}
.pm-msg span{display:block;font-size:.72rem;color:var(--pmmu);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:26ch}
.pm-msg em{margin-left:auto;font:600 .58rem/1 var(--mono);color:var(--pmfa);font-style:normal;flex:0 0 auto}
.pm-msg.pm-unread{position:relative}
.pm-msg.pm-unread b::after{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--signal);margin-left:7px;vertical-align:1px}
/* dark surfaces */
.sp.dk .pm,.band.night .pm,.midcta .pm{--pmbg:#12141C;--pmln:rgba(244,240,232,.13);--pmink:var(--bone);--pmmu:rgba(244,240,232,.6);--pmfa:rgba(244,240,232,.4)}
.sp.dk .pm-bar,.band.night .pm-bar{background:rgba(255,255,255,.035)}
.sp.dk .pm-job,.band.night .pm-job,.sp.dk .pm-input,.band.night .pm-input,.sp.dk .pm-slots span,.band.night .pm-slots span,.sp.dk .pm-kpis>div,.band.night .pm-kpis>div,.sp.dk .pm-pscreen,.band.night .pm-pscreen{background:#171A24}
@media (max-width:520px){.pm-board{grid-template-columns:1fr}.pm-float{position:static;width:auto;margin-top:8px}}
