/* Section-specific styles for product showcases & story arts */

.shot-stage { padding: 0; background: linear-gradient(180deg, var(--paper), var(--ink-100)); min-height: 460px; }
.shot-pad { padding: 28px 32px; }

.shot-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.shot-kpi {
  background: white; border: 1px solid var(--ink-200); border-radius: 14px; padding: 16px;
  display: flex; flex-direction: column; gap: 4px;
}
.shot-kpi .l { font-size: 12px; color: var(--ink-500); }
.shot-kpi strong { font-family: 'Inter Tight'; font-weight: 800; font-size: 30px; color: var(--ink-950); letter-spacing: -0.02em; }
.shot-kpi strong.a { color: var(--plum-700); }
.shot-kpi .d { font-size: 11px; font-family: 'JetBrains Mono', monospace; color: var(--ok); }

.shot-card { margin-top: 18px; background: white; border: 1px solid var(--ink-200); border-radius: 14px; padding: 22px; }
.shot-card-head { display: flex; justify-content: space-between; align-items: center; }
.shot-card-head strong { font-family: 'Inter Tight'; font-weight: 700; font-size: 16px; }
.shot-legend { display: flex; gap: 14px; font-size: 12px; color: var(--ink-500); }
.shot-legend i { width: 10px; height: 10px; border-radius: 3px; display: inline-block; margin-right: 6px; vertical-align: middle; }
.shot-bars { display: flex; align-items: flex-end; gap: 12px; margin-top: 22px; height: 180px; }
.shot-bar-col { flex: 1; display: flex; flex-direction: column; align-items: stretch; gap: 2px; height: 100%; justify-content: flex-end; }
.shot-bar-col span { font-size: 11px; color: var(--ink-500); text-align: center; margin-top: 6px; font-family: 'JetBrains Mono', monospace; }
.shot-bar-rev { background: linear-gradient(180deg, var(--plum-500), var(--plum-700)); border-radius: 4px 4px 0 0; }
.shot-bar-exp { background: oklch(0.78 0.13 25); border-radius: 4px 4px 0 0; opacity: 0.75; }

/* Calendar shot */
.cal-head { display: flex; justify-content: space-between; align-items: center; }
.cal-head strong { font-family: 'Inter Tight'; font-size: 18px; }
.cal-actions { display: flex; gap: 8px; }
.chip { padding: 5px 12px; border-radius: 999px; font-size: 12px; font-weight: 600; font-family: 'JetBrains Mono', monospace; }
.chip.soft { background: var(--ink-100); color: var(--ink-700); }
.chip.plum { background: color-mix(in oklch, var(--plum-300) 50%, transparent); color: var(--plum-800); }
.chip.ok { background: color-mix(in oklch, var(--ok) 18%, transparent); color: var(--ok); }
.chip.small { font-size: 10px; padding: 3px 8px; }
.cal-week { display: grid; grid-template-columns: repeat(7, 1fr); margin-top: 22px; gap: 6px; }
.cal-week span { font-size: 11px; color: var(--ink-500); text-align: center; font-family: 'JetBrains Mono', monospace; text-transform: uppercase; letter-spacing: 0.1em; }
.cal-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px; margin-top: 8px; }
.cal-cell { aspect-ratio: 1.2 / 1; border-radius: 8px; padding: 8px; display: flex; flex-direction: column; gap: 2px; position: relative; font-size: 11px; }
.cal-cell.booked { background: color-mix(in oklch, oklch(0.88 0.13 155) 35%, white); }
.cal-cell.booked .cal-p { color: oklch(0.45 0.15 150); }
.cal-cell.high { background: color-mix(in oklch, var(--plum-300) 50%, white); }
.cal-cell.high .cal-p { color: var(--plum-800); }
.cal-cell.empty { background: var(--ink-100); }
.cal-cell.empty .cal-p { color: var(--ink-400); }
.cal-d { font-weight: 700; color: var(--ink-800); font-size: 12px; }
.cal-p { font-family: 'JetBrains Mono', monospace; font-weight: 600; }
.cal-tag { position: absolute; bottom: 6px; left: 6px; right: 6px; font-size: 9px; padding: 2px 5px; border-radius: 4px; background: rgba(0,0,0,.05); color: var(--ink-700); font-family: 'JetBrains Mono', monospace; }

/* Inbox */
.inbox { display: grid; grid-template-columns: 220px 1fr; gap: 0; padding: 0; min-height: 400px; }
.inbox-side { background: white; border-right: 1px solid var(--ink-200); padding: 18px 14px; }
.inbox-cat { padding: 10px 12px; border-radius: 8px; font-size: 13px; color: var(--ink-700); display: flex; align-items: center; gap: 10px; cursor: pointer; }
.inbox-cat em { font-style: normal; margin-left: auto; background: var(--ink-100); padding: 2px 8px; border-radius: 999px; font-size: 11px; font-family: 'JetBrains Mono', monospace; }
.inbox-cat.active { background: var(--plum-100); color: var(--plum-800); font-weight: 600; }
.inbox-cat.active em { background: white; }
.inbox-list { padding: 12px; display: flex; flex-direction: column; gap: 8px; background: var(--ink-100); }
.inbox-item { display: flex; gap: 12px; padding: 14px; background: white; border-radius: 10px; border: 1px solid var(--ink-200); }
.inbox-item.sel { border-color: var(--plum-400); background: color-mix(in oklch, var(--plum-100) 40%, white); }
.inbox-av { width: 36px; height: 36px; border-radius: 50%; background: linear-gradient(135deg, var(--plum-400), var(--plum-700)); color: white; display: grid; place-items: center; font-weight: 700; font-family: 'Inter Tight'; flex-shrink: 0; }
.inbox-body { flex: 1; min-width: 0; }
.inbox-row1 { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.inbox-row1 strong { font-size: 13px; }
.inbox-prop { font-size: 11px; color: var(--ink-500); font-family: 'JetBrains Mono', monospace; }
.inbox-time { margin-left: auto; font-size: 11px; color: var(--ink-500); font-family: 'JetBrains Mono', monospace; }
.inbox-body p { margin: 6px 0 0; font-size: 13px; color: var(--ink-700); line-height: 1.45; }
.auto-pill { display: inline-block; margin-top: 8px; font-size: 11px; padding: 3px 10px; border-radius: 999px; background: color-mix(in oklch, var(--lime) 35%, transparent); color: var(--lime-ink); font-family: 'JetBrains Mono', monospace; font-weight: 600; }

/* Reports */
.rep-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; }
.rep-head strong { font-family: 'Inter Tight'; font-size: 18px; }
.rep-totals { display: flex; gap: 22px; font-size: 12px; color: var(--ink-500); }
.rep-totals span strong { font-family: 'Inter Tight'; font-size: 16px; color: var(--ink-950); margin-left: 6px; }
.rep-totals .lucro strong { color: var(--ok); }
.rep-table { width: 100%; border-collapse: collapse; background: white; border-radius: 14px; overflow: hidden; border: 1px solid var(--ink-200); }
.rep-table th, .rep-table td { padding: 14px 18px; text-align: left; font-size: 13px; border-bottom: 1px solid var(--ink-200); }
.rep-table th { font-family: 'JetBrains Mono', monospace; font-size: 11px; color: var(--ink-500); text-transform: uppercase; letter-spacing: 0.08em; font-weight: 600; background: var(--ink-100); }
.rep-table tr:last-child td { border-bottom: 0; }
.rep-table td.muted { color: var(--ink-500); }
.rep-table td.ok { color: var(--ok); font-weight: 600; }
.rep-occ { width: 80px; height: 6px; background: var(--ink-100); border-radius: 999px; overflow: hidden; display: inline-block; vertical-align: middle; margin-right: 10px; }
.rep-occ div { height: 100%; background: linear-gradient(90deg, var(--plum-500), var(--plum-700)); }

/* Story arts */
.art-msg { display: flex; flex-direction: column; gap: 12px; }
.art-msg-head { display: flex; justify-content: space-between; align-items: center; }
.art-time { font-family: 'JetBrains Mono', monospace; font-size: 12px; color: var(--ink-500); }
.art-bubble { padding: 12px 16px; border-radius: 14px; font-size: 14px; line-height: 1.45; max-width: 80%; }
.art-bubble.in { background: var(--ink-100); color: var(--ink-800); align-self: flex-start; border-bottom-left-radius: 4px; }
.art-bubble.out { background: var(--plum-800); color: white; align-self: flex-end; border-bottom-right-radius: 4px; }
.art-bubble.out .auto-pill { display: block; margin-bottom: 6px; background: var(--lime); color: var(--lime-ink); width: fit-content; }
.art-typing { font-size: 12px; color: var(--ink-500); font-family: 'JetBrains Mono', monospace; text-align: center; margin-top: 4px; }

.art-price { display: flex; flex-direction: column; gap: 8px; }
.art-price-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.art-price-head strong { font-family: 'Inter Tight'; font-size: 16px; }
.art-price-row { display: flex; justify-content: space-between; padding: 10px 12px; background: var(--ink-100); border-radius: 8px; font-size: 13px; }
.art-price-row em { font-style: normal; font-size: 11px; color: var(--ink-500); margin-left: 6px; font-family: 'JetBrains Mono', monospace; }
.art-price-row.total { background: var(--plum-900); color: white; }
.art-price-row.total .art-price-l { color: color-mix(in oklch, var(--plum-200) 90%, transparent); }
.art-price-l { color: var(--ink-700); }
.art-price-v { font-family: 'JetBrains Mono', monospace; font-weight: 700; color: var(--ink-950); }
.art-price-v.old { color: var(--ink-400); text-decoration: line-through; }
.art-price-v.hi { color: var(--lime); font-size: 18px; }
.art-price-foot { display: flex; gap: 8px; align-items: center; margin-top: 6px; font-size: 12px; color: var(--ink-500); flex-wrap: wrap; }

.art-owner-head { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; }
.art-owner-head strong { display: block; font-size: 14px; }
.art-owner-head span { display: block; color: var(--ink-500); font-size: 12px; }
.art-owner-head > .chip { margin-left: auto; }
.avatar.small { width: 36px; height: 36px; font-size: 13px; }
.art-owner-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 16px; }
.art-owner-grid > div { background: var(--ink-100); padding: 12px; border-radius: 10px; }
.art-owner-grid span { font-size: 11px; color: var(--ink-500); display: block; }
.art-owner-grid strong { font-family: 'Inter Tight'; font-weight: 800; font-size: 20px; display: block; margin-top: 4px; }
.art-owner-grid strong.ok { color: var(--ok); }
.art-owner-bars { display: flex; gap: 6px; align-items: flex-end; height: 70px; padding: 8px; background: var(--ink-100); border-radius: 10px; }
.art-owner-bars div { flex: 1; background: linear-gradient(180deg, var(--plum-400), var(--plum-700)); border-radius: 4px 4px 0 0; }
.art-owner-foot { font-family: 'JetBrains Mono', monospace; font-size: 11px; color: var(--ink-500); text-align: center; margin-top: 12px; }
