/* SPMC Business Communication v0.13.0 */
.spmc-comm-shell{margin-bottom:18px;border:1px solid var(--border);border-radius:20px;background:var(--surface);overflow:hidden}.spmc-comm-hero{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 14%,var(--surface)),var(--surface))}.spmc-comm-hero h3{margin:0 0 5px}.spmc-comm-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800;letter-spacing:.06em}.spmc-comm-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:12px 16px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface2)}.spmc-comm-tabs button.active{background:var(--primary);color:white;border-color:var(--primary)}.spmc-comm-panel{display:none;padding:16px}.spmc-comm-panel.active{display:block}.spmc-comm-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px}.spmc-comm-card{border:1px solid var(--border);border-radius:16px;background:var(--surface2);padding:14px;min-width:0}.spmc-comm-list{display:flex;flex-direction:column;gap:8px}.spmc-comm-item{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--surface);cursor:pointer}.spmc-comm-item.active{outline:2px solid color-mix(in srgb,var(--primary) 65%,transparent)}.spmc-comm-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 14%,var(--surface));font-weight:800;flex:none}.spmc-comm-chat{display:flex;flex-direction:column;height:560px}.spmc-comm-chat-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--border)}.spmc-comm-messages{flex:1;overflow:auto;padding:14px 2px;display:flex;flex-direction:column;gap:10px}.spmc-comm-bubble{max-width:min(78%,680px);padding:10px 12px;border-radius:15px;background:var(--surface);border:1px solid var(--border);align-self:flex-start;overflow-wrap:anywhere}.spmc-comm-bubble.me{align-self:flex-end;background:color-mix(in srgb,var(--primary) 15%,var(--surface));border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.spmc-comm-bubble small{display:block;margin-top:5px;color:var(--muted)}.spmc-comm-compose{display:grid;grid-template-columns:1fr auto;gap:8px;padding-top:12px;border-top:1px solid var(--border)}.spmc-comm-compose textarea{min-height:52px;max-height:140px;resize:vertical;width:100%;box-sizing:border-box}.spmc-comm-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.spmc-comm-kpi{padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface2)}.spmc-comm-kpi strong{font-size:22px;display:block}.spmc-comm-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.spmc-comm-form .full{grid-column:1/-1}.spmc-comm-table{width:100%;border-collapse:collapse}.spmc-comm-table th,.spmc-comm-table td{text-align:left;padding:10px;border-bottom:1px solid var(--border);vertical-align:top}.spmc-comm-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:4px 8px;border:1px solid var(--border);border-radius:999px}.spmc-comm-dot{width:8px;height:8px;border-radius:50%;background:#22c55e}.spmc-comm-note{padding:12px;border-radius:12px;background:color-mix(in srgb,var(--primary) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));font-size:13px}.spmc-comm-actions{display:flex;gap:8px;flex-wrap:wrap}.spmc-comm-empty{text-align:center;color:var(--muted);padding:30px 12px}.spmc-comm-pill{font-size:11px;padding:3px 7px;border-radius:999px;background:var(--surface2);border:1px solid var(--border)}
@media(max-width:900px){.spmc-comm-grid{grid-template-columns:1fr}.spmc-comm-chat{height:500px}.spmc-comm-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.spmc-comm-hero{align-items:flex-start;flex-direction:column}.spmc-comm-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.spmc-comm-tabs button{width:100%}.spmc-comm-panel{padding:10px}.spmc-comm-form,.spmc-comm-kpis{grid-template-columns:1fr}.spmc-comm-compose{grid-template-columns:1fr}.spmc-comm-compose button{width:100%}.spmc-comm-chat{height:62vh}.spmc-comm-bubble{max-width:92%}.spmc-comm-table-wrap{overflow:auto}.spmc-comm-table{min-width:620px}}
/* v0.13.2 HR + employee workspace integration */
.spmc-comm-dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.spmc-comm-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.spmc-comm-module{cursor:pointer;min-height:145px}.spmc-comm-module .big{font-size:30px}.spmc-comm-filter{display:flex;gap:8px;flex-wrap:wrap;align-items:end}.spmc-comm-form textarea{min-height:90px}.spmc-comm-badge{display:inline-flex;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800;background:#eef2ff}.spmc-comm-badge.pending{background:#fff7d6;color:#865d00}.spmc-comm-badge.approved,.spmc-comm-badge.done{background:#dcfce7;color:#166534}.spmc-comm-badge.declined{background:#fee2e2;color:#991b1b}.spmc-comm-row-actions{display:flex;gap:6px;flex-wrap:wrap}.spmc-comm-person-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--border,#dbe2ee);border-radius:14px;margin-bottom:8px}.spmc-comm-mini{font-size:12px}.spmc-comm-empty{padding:22px;text-align:center;color:#718096}.spmc-comm-tabs{overflow:auto;scrollbar-width:thin}.spmc-comm-tabs .soft-btn{white-space:nowrap}.spmc-comm-card h3{margin-top:0}@media(max-width:900px){.spmc-comm-dashboard-grid{grid-template-columns:repeat(2,1fr)}.spmc-comm-module-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.spmc-comm-dashboard-grid,.spmc-comm-module-grid{grid-template-columns:1fr}.spmc-comm-person-card{grid-template-columns:auto 1fr}.spmc-comm-person-card>:last-child{grid-column:1/-1}.spmc-comm-grid{grid-template-columns:1fr!important}.spmc-comm-table{min-width:680px}}
.spmc-comm-audio-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px}.spmc-comm-audio-status{font-size:12px;font-weight:800}.spmc-comm-audio-status.green{color:#15803d}.spmc-comm-audio-status.orange{color:#c2410c}.spmc-comm-audio-status.red{color:#dc2626}.spmc-comm-employee-item{cursor:pointer}.spmc-comm-employee-item.active{outline:2px solid #7c3aed;background:#f5f3ff}.spmc-comm-private-note{font-size:12px;color:#6b7280;margin-top:4px}

/* SPMC Media Engine v1 */
.spmc-media-recorder{margin-top:10px;border:1px solid #d8deea;border-radius:16px;padding:12px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 8px 22px rgba(15,23,42,.06)}
.spmc-media-recorder.recording{border-color:#fb7185;box-shadow:0 10px 28px rgba(225,29,72,.12)}
.spmc-media-recorder-main{display:flex;align-items:center;gap:10px;min-width:0}.spmc-media-mic{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#eef2ff;font-size:20px}.spmc-media-copy{display:flex;flex-direction:column;min-width:0;flex:1}.spmc-media-copy strong{font-size:13px}.spmc-media-clock{min-width:58px;text-align:center;font:800 18px/1 ui-monospace,SFMono-Regular,Menlo,monospace;padding:8px 9px;border-radius:10px;background:#ecfdf5;color:#15803d}.spmc-media-clock.orange{background:#fff7ed;color:#c2410c}.spmc-media-clock.red{background:#fef2f2;color:#dc2626}.spmc-media-scale{display:grid;grid-template-columns:3fr 1fr 2fr auto;align-items:center;font-size:10px;color:#64748b;margin:7px 3px 0;border-top:4px solid transparent;border-image:linear-gradient(90deg,#22c55e 0 50%,#f59e0b 50% 67%,#ef4444 67% 100%) 1}.spmc-media-scale span:last-child{text-align:right}.spmc-media-recorder .spmc-comm-audio-row{margin-top:10px}.spmc-media-recorder.recording .spmc-media-mic{animation:spmcMediaPulse 1s infinite}@keyframes spmcMediaPulse{50%{transform:scale(1.09);box-shadow:0 0 0 8px rgba(239,68,68,.08)}}
@media(max-width:640px){.spmc-media-recorder{padding:10px}.spmc-media-clock{font-size:16px;min-width:52px}.spmc-media-recorder .spmc-comm-audio-row{display:grid;grid-template-columns:1fr 1fr}.spmc-media-recorder .spmc-comm-audio-row button:last-of-type{grid-column:1/-1}}
/* v0.20.0 clean media runtime */
.spmc-media-engine-badge{display:block;text-align:right;margin-top:4px;font-size:10px;line-height:1;color:#64748b;font-weight:700;letter-spacing:.02em}
.spmc-media-progress{height:4px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin:8px 0 2px}
.spmc-media-progress>span{display:block;height:100%;width:0;background:linear-gradient(90deg,#22c55e 0 50%,#f59e0b 68%,#ef4444 100%);transition:width .16s linear}
