*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #f8f9fa;--color-surface: #ffffff;--color-border: #e2e8f0;--color-text: #1a202c;--color-text-muted: #718096;--color-accent: #3b82f6;--color-pass: #22c55e;--color-partial: #f59e0b;--color-fail: #ef4444;--color-pass-bg: #dcfce7;--color-partial-bg: #fef9c3;--color-fail-bg: #fee2e2;--shadow: 0 1px 3px rgba(0,0,0,.08);--radius: 8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.6;color:var(--color-text);background:var(--color-bg)}html,body{height:100%}#root{height:100%;display:flex;flex-direction:column}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.78rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.badge--pass{background:var(--color-pass-bg);color:#166534}.badge--partial{background:var(--color-partial-bg);color:#92400e}.badge--fail{background:var(--color-fail-bg);color:#991b1b}.badge--call-type{background:#dbeafe;color:#1e40af;font-size:.85rem;padding:4px 14px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 24px}.call-type-card{margin-bottom:16px;border-left:4px solid var(--color-accent)}.call-type-card__label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:6px}.call-type-card__name{font-size:1rem;font-weight:700;color:var(--color-accent);margin-bottom:8px}.call-type-card__rationale{font-size:.88rem;color:var(--color-text);line-height:1.55}.compliance-score__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.compliance-score__title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:4px}.compliance-score__number{font-size:2.2rem;font-weight:800;line-height:1;color:var(--color-text)}.compliance-score__number span{font-size:.95rem;color:var(--color-text-muted);font-weight:400}.compliance-score__partial{font-size:.82rem;color:var(--color-text-muted);margin-top:4px}.compliance-score__avg{text-align:right;line-height:1}.compliance-score__avg-number{display:block;font-size:2.2rem;font-weight:800;color:var(--color-accent)}.compliance-score__avg-label{font-size:.78rem;color:var(--color-text-muted)}.compliance-score__stages{display:flex;flex-direction:column;gap:12px}.compliance-score__stage-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.compliance-score__stage-name{font-size:.88rem;color:var(--color-text)}.compliance-score__stage-right{display:flex;align-items:center;gap:8px}.compliance-score__stage-num{font-size:.8rem;font-weight:700;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.compliance-score__bar-track{height:5px;background:var(--color-border);border-radius:3px;overflow:hidden}.compliance-score__bar-fill{height:100%;border-radius:3px;transition:width .4s ease}.sales-insights__title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:12px}.sales-insights__list{list-style:none;display:flex;flex-direction:column;gap:10px}.sales-insights__item{display:flex;gap:10px;align-items:flex-start;font-size:.9rem}.sales-insights__icon{font-size:1rem;flex-shrink:0;margin-top:2px}.sales-insights__text{color:var(--color-text)}.sales-insights__label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:2px}.sales-insights__label--missed{color:var(--color-fail)}.sales-insights__label--done{color:var(--color-pass)}.sidebar{overflow-y:auto;background:var(--color-surface);border-right:1px solid var(--color-border);-webkit-overflow-scrolling:touch}.sidebar__inner{padding:20px 16px;display:flex;flex-direction:column;gap:14px}.sidebar__inner .card{margin-bottom:0}.transcript-line{display:grid;grid-template-columns:7rem 5rem 1fr;gap:8px;padding:5px 0;border-bottom:1px solid var(--color-border);align-items:baseline}.transcript-line:last-child{border-bottom:none}.transcript-line__speaker{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-accent)}.transcript-line__speaker--customer{color:var(--color-text-muted)}.transcript-line__time{font-size:.75rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.transcript-line__text{font-size:.93rem;color:var(--color-text)}.stage-section{margin-bottom:28px}.stage-section__header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.stage-section__title{font-size:1rem;font-weight:700;color:var(--color-text)}.stage-section__transcript{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);padding:12px 16px;margin-bottom:10px}.stage-section__empty{font-size:.85rem;color:var(--color-text-muted);font-style:italic;padding:8px 0}.stage-section__annotation{border-left:3px solid;padding:8px 14px;border-radius:0 var(--radius) var(--radius) 0;font-size:.9rem}.stage-section__annotation--pass{border-color:var(--color-pass);background:var(--color-pass-bg);color:#166534}.stage-section__annotation--partial{border-color:var(--color-partial);background:var(--color-partial-bg);color:#78350f}.stage-section__annotation--fail{border-color:var(--color-fail);background:var(--color-fail-bg);color:#7f1d1d}.transcript-panel{overflow-y:auto;padding:28px 32px 48px;background:var(--color-bg);-webkit-overflow-scrolling:touch}.transcript-panel__header{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:24px}.app{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--color-bg)}.app__header{flex-shrink:0;padding:14px 28px;background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:0 2px 6px #0000000d;z-index:10;display:flex;align-items:baseline;gap:16px}.app__title{font-size:1.2rem;font-weight:800;color:var(--color-text);white-space:nowrap}.app__subtitle{color:var(--color-text-muted);font-size:.85rem}.app__body{flex:1;min-height:0;display:grid;grid-template-columns:340px 1fr;overflow:hidden}@media(max-width:780px){html,body,#root{height:auto}.app{height:auto;overflow:visible}.app__header{flex-direction:column;align-items:flex-start;gap:2px}.app__body{grid-template-columns:1fr;overflow:visible;min-height:unset}}
