@import "https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";
.ticketflow *{box-sizing:border-box}:root{--tf-primary:#1a365d;--tf-primary-light:#2c5282;--tf-primary-dark:#0d1a2d;--vv-orange:#f69a5d;--vv-purple:#d2a6fe;--vv-gradient:linear-gradient(135deg,#f69a5d 0%,#d2a6fe 100%);--tf-status-draft:#6b7280;--tf-status-draft-bg:#f3f4f6;--tf-status-pending:#d97706;--tf-status-pending-bg:#fef3c7;--tf-status-issued:#059669;--tf-status-issued-bg:#d1fae5;--tf-status-voided:#dc2626;--tf-status-voided-bg:#fee2e2;--tf-bg-primary:#f1f5f9;--tf-bg-sidebar:#0f172a;--tf-bg-sidebar-hover:#1e293b;--tf-bg-card:#fff;--tf-bg-input:#f8fafc;--tf-text-primary:#0f172a;--tf-text-secondary:#475569;--tf-text-muted:#94a3b8;--tf-text-inverse:#f8fafc;--tf-border:#e2e8f0;--tf-border-dark:#cbd5e1;--tf-shadow-sm:0 1px 2px 0 #0000000d;--tf-shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--tf-shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tf-space-1:.25rem;--tf-space-2:.5rem;--tf-space-3:.75rem;--tf-space-4:1rem;--tf-space-5:1.25rem;--tf-space-6:1.5rem;--tf-space-8:2rem;--tf-radius-sm:.25rem;--tf-radius-md:.375rem;--tf-radius-lg:.5rem;--tf-radius-xl:.75rem;--tf-font-display:"Syne",system-ui,sans-serif;--tf-font-sans:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--tf-font-mono:"IBM Plex Mono","SF Mono",Consolas,monospace;--tf-sidebar-width:280px;--tf-header-height:56px}.ticketflow{font-family:var(--tf-font-sans);color:var(--tf-text-primary);background-color:var(--tf-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-size:14px;line-height:1.5}.ticketflow h1,.ticketflow h2,.ticketflow h3,.ticketflow h4,.ticketflow h5,.ticketflow h6{font-family:var(--tf-font-display);font-weight:600}.tf-text-mono{font-family:var(--tf-font-mono)}.tf-text-display{font-family:var(--tf-font-display)}.tf-text-xs{font-size:.75rem;line-height:1rem}.tf-text-sm{font-size:.875rem;line-height:1.25rem}.tf-text-base{font-size:1rem;line-height:1.5rem}.tf-text-lg{font-size:1.125rem;line-height:1.75rem}.tf-text-xl{font-size:1.25rem;line-height:1.75rem}.tf-text-2xl{font-size:1.5rem;line-height:2rem}.tf-font-medium{font-weight:500}.tf-font-semibold{font-weight:600}.tf-font-bold{font-weight:700}.tf-card{background:var(--tf-bg-card);border:1px solid var(--tf-border);border-radius:var(--tf-radius-lg);box-shadow:var(--tf-shadow-sm)}.tf-card-header{padding:var(--tf-space-4);border-bottom:1px solid var(--tf-border);font-family:var(--tf-font-display);align-items:center;gap:var(--tf-space-2);font-weight:600;display:flex}.tf-card-body{padding:var(--tf-space-4)}.tf-input{width:100%;padding:var(--tf-space-2)var(--tf-space-3);font-family:var(--tf-font-sans);color:var(--tf-text-primary);background:var(--tf-bg-input);border:1px solid var(--tf-border);border-radius:var(--tf-radius-md);font-size:.875rem;transition:border-color .15s,box-shadow .15s}.tf-input:focus{border-color:var(--tf-primary-light);outline:none;box-shadow:0 0 0 3px #1a365d1a}.tf-input:disabled{opacity:.6;cursor:not-allowed}.tf-input-mono{font-family:var(--tf-font-mono);letter-spacing:.05em}.tf-textarea{resize:vertical;min-height:80px}.tf-select{appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}.tf-btn{justify-content:center;align-items:center;gap:var(--tf-space-2);padding:var(--tf-space-2)var(--tf-space-4);font-family:var(--tf-font-sans);border-radius:var(--tf-radius-md);cursor:pointer;border:1px solid #0000;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.tf-btn:disabled{opacity:.6;cursor:not-allowed}.tf-btn-primary{background:var(--tf-primary);color:var(--tf-text-inverse)}.tf-btn-primary:hover:not(:disabled){background:var(--tf-primary-dark)}.tf-btn-secondary{background:var(--tf-bg-card);color:var(--tf-text-primary);border-color:var(--tf-border)}.tf-btn-secondary:hover:not(:disabled){background:var(--tf-bg-input)}.tf-btn-success{background:var(--tf-status-issued);color:var(--tf-text-inverse)}.tf-btn-success:hover:not(:disabled){background:#047857}.tf-btn-sm{padding:var(--tf-space-1)var(--tf-space-3);font-size:.75rem}.tf-btn-lg{padding:var(--tf-space-3)var(--tf-space-6);font-size:1rem}.tf-label{color:var(--tf-text-secondary);margin-bottom:var(--tf-space-1);text-transform:uppercase;letter-spacing:.025em;font-size:.75rem;font-weight:500;display:block}.tf-label-required:after{content:"*";color:var(--tf-status-voided);margin-left:2px}.tf-layout{min-height:100vh;display:flex}.tf-sidebar{width:var(--tf-sidebar-width);background:var(--tf-bg-sidebar);color:var(--tf-text-inverse);z-index:40;flex-direction:column;flex-shrink:0;transition:transform .3s;display:flex;position:fixed;top:0;bottom:0;left:0}.tf-main{margin-left:var(--tf-sidebar-width);flex-direction:column;flex:1;min-height:100vh;display:flex}.tf-header{height:var(--tf-header-height);background:var(--tf-bg-card);border-bottom:1px solid var(--tf-border);padding:0 var(--tf-space-6);flex-shrink:0;align-items:center;display:flex}.tf-content{padding:var(--tf-space-6);flex:1;overflow-y:auto}.tf-grid{gap:var(--tf-space-4);display:grid}.tf-grid-2{grid-template-columns:repeat(2,1fr)}.tf-grid-3{grid-template-columns:repeat(3,1fr)}.tf-grid-4{grid-template-columns:repeat(4,1fr)}.tf-status-badge{align-items:center;gap:var(--tf-space-1);padding:var(--tf-space-1)var(--tf-space-2);border-radius:9999px;font-size:.75rem;font-weight:500;display:inline-flex}.tf-status-draft{background:var(--tf-status-draft-bg);color:var(--tf-status-draft)}.tf-status-pending{background:var(--tf-status-pending-bg);color:var(--tf-status-pending)}.tf-status-issued{background:var(--tf-status-issued-bg);color:var(--tf-status-issued)}.tf-status-voided{background:var(--tf-status-voided-bg);color:var(--tf-status-voided)}.tf-wizard-nav{align-items:center;gap:var(--tf-space-2);padding:var(--tf-space-4);background:var(--tf-bg-card);border-bottom:1px solid var(--tf-border);display:flex;overflow-x:auto}.tf-wizard-step{align-items:center;gap:var(--tf-space-2);padding:var(--tf-space-2)var(--tf-space-3);color:var(--tf-text-muted);border-radius:var(--tf-radius-md);cursor:pointer;white-space:nowrap;background:0 0;border:none;font-size:.875rem;transition:all .15s;display:flex}.tf-wizard-step:hover{color:var(--tf-text-secondary);background:var(--tf-bg-input)}.tf-wizard-step.active{color:var(--tf-primary);background:#1a365d14}.tf-wizard-step.completed{color:var(--tf-status-issued)}.tf-wizard-step-number{background:var(--tf-border);width:24px;height:24px;color:var(--tf-text-secondary);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:flex}.tf-wizard-step.active .tf-wizard-step-number{background:var(--tf-primary);color:var(--tf-text-inverse)}.tf-wizard-step.completed .tf-wizard-step-number{background:var(--tf-status-issued);color:var(--tf-text-inverse)}.tf-wizard-step-divider{background:var(--tf-border);flex-shrink:0;width:20px;height:2px}.tf-field-group{position:relative}.tf-field-group.ai-extracted:after{content:"";border:2px solid var(--vv-orange);border-radius:calc(var(--tf-radius-md) + 2px);pointer-events:none;animation:2s ease-out forwards tf-field-highlight;position:absolute;inset:-2px}@keyframes tf-field-highlight{0%{border-color:var(--vv-orange);box-shadow:0 0 8px #f69a5d66}to{border-color:#0000;box-shadow:0 0 #f69a5d00}}.tf-field-ai-indicator{color:var(--vv-orange);z-index:1;background:linear-gradient(135deg,#f69a5d26 0%,#d2a6fe26 100%);border-radius:4px;padding:2px 6px;font-size:.625rem;font-weight:600;position:absolute;top:-6px;right:8px}.tf-narrative{padding:var(--tf-space-4);border-radius:var(--tf-radius-lg);background:linear-gradient(135deg,#f69a5d08 0%,#d2a6fe08 100%);border:1px solid #f69a5d33;position:relative}.tf-narrative-header{align-items:center;gap:var(--tf-space-2);margin-bottom:var(--tf-space-3);color:var(--vv-purple);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600;display:flex}.tf-narrative-content{color:var(--tf-text-primary);white-space:pre-wrap;font-size:.875rem;line-height:1.6}@media (max-width:1023px){.tf-sidebar{transform:translate(-100%)}.tf-sidebar.open{transform:translate(0)}.tf-main{margin-left:0}.tf-grid-4{grid-template-columns:repeat(2,1fr)}.tf-wizard-nav{padding:var(--tf-space-3)}.tf-wizard-step{padding:var(--tf-space-1)var(--tf-space-2);font-size:.75rem}.tf-wizard-step-name{display:none}}@media (max-width:639px){.tf-content{padding:var(--tf-space-4)}.tf-grid-2,.tf-grid-3,.tf-grid-4{grid-template-columns:1fr}}.tf-overlay{z-index:30;opacity:0;pointer-events:none;background:#00000080;transition:opacity .3s;position:fixed;inset:0}.tf-overlay.visible{opacity:1;pointer-events:auto}.ticketflow ::-webkit-scrollbar{width:8px;height:8px}.ticketflow ::-webkit-scrollbar-track{background:var(--tf-bg-input)}.ticketflow ::-webkit-scrollbar-thumb{background:var(--tf-border-dark);border-radius:4px}.ticketflow ::-webkit-scrollbar-thumb:hover{background:var(--tf-text-muted)}@keyframes tf-pulse{0%,to{opacity:1}50%{opacity:.7}}.tf-pulse{animation:2s ease-in-out infinite tf-pulse}.tf-citation-card{padding:var(--tf-space-3);border-radius:var(--tf-radius-md);cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;transition:all .15s;position:relative}.tf-citation-card:hover{background:#ffffff0f;border-color:#ffffff1f}.tf-citation-card.active{border-color:var(--tf-primary-light);background:#1a365d33;border-left-width:3px}@keyframes vv-live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}@keyframes vv-pulse-ring{0%{opacity:.8;transform:scale(.8)}to{opacity:0;transform:scale(1.4)}}@keyframes vv-processing-pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ticketflow [id=vitalvoice-content] ::-webkit-scrollbar{width:4px}.ticketflow [id=vitalvoice-content] ::-webkit-scrollbar-track{background:0 0}.ticketflow [id=vitalvoice-content] ::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.ticketflow [id=vitalvoice-content] ::-webkit-scrollbar-thumb:hover{background:#ffffff40}.vv-pop-out-btn:hover{color:var(--vv-orange)!important;background:#ffffff14!important;border-color:#ffffff26!important}.vv-pop-out-btn:active{transform:scale(.95)}.vv-floating-panel{animation:.25s cubic-bezier(.16,1,.3,1) forwards vv-float-in}@keyframes vv-float-in{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.vv-resize-corner .vv-resize-arc-path{transition:stroke .2s}.vv-resize-corner .vv-resize-arc{transition:filter .2s}.vv-resize-corner:hover .vv-resize-arc-path{stroke:#f69a5db3}.vv-resize-corner:hover .vv-resize-arc{filter:drop-shadow(0 0 6px #f69a5d66)}.vv-placeholder:hover{background:#f69a5d0d!important;border-color:#f69a5d66!important}.vv-placeholder:active{transform:scale(.98)}.vv-placeholder{transition:all .2s!important}.vv-floating-panel:before{content:"";z-index:-1;opacity:0;background:linear-gradient(135deg,#f69a5d26 0%,#d2a6fe1a 50%,#f69a5d26 100%);border-radius:17px;transition:opacity .3s;position:absolute;inset:-1px}.vv-floating-panel:hover:before{opacity:1}.tf-section-divider{margin:var(--tf-space-6)0;padding-top:var(--tf-space-4);border-top:1px solid var(--tf-border)}.tf-section-title{font-family:var(--tf-font-display);color:var(--tf-text-secondary);margin-bottom:var(--tf-space-4);align-items:center;gap:var(--tf-space-2);font-size:.875rem;font-weight:600;display:flex}.tf-collapsible-header{padding:var(--tf-space-2)0;cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;display:flex}.tf-collapsible-header:hover{color:var(--tf-primary)}.tf-collapsible-content{transition:max-height .2s;overflow:hidden}.tf-violation-list{border:1px solid var(--tf-border);border-radius:var(--tf-radius-md);max-height:240px;overflow-y:auto}.tf-violation-item{align-items:flex-start;gap:var(--tf-space-3);padding:var(--tf-space-3);cursor:pointer;transition:background .15s;display:flex}.tf-violation-item:hover{background:var(--tf-bg-input)}.tf-violation-item.selected{background:#1a365d14}.tf-violation-code{font-family:var(--tf-font-mono);color:var(--tf-primary);white-space:nowrap;font-size:.75rem;font-weight:500}.tf-violation-description{color:var(--tf-text-primary);font-size:.875rem}.tf-violation-fine{color:var(--tf-text-muted);font-size:.75rem}.ticketflow :focus-visible{outline:2px solid var(--tf-primary-light);outline-offset:2px}.tf-speed-display{align-items:center;gap:var(--tf-space-4);display:flex}.tf-speed-value{font-family:var(--tf-font-mono);font-size:2rem;font-weight:600}.tf-speed-value.over-limit{color:var(--tf-status-voided)}.tf-speed-label{color:var(--tf-text-muted);text-transform:uppercase;font-size:.75rem}.tf-review-section{padding:var(--tf-space-4);background:var(--tf-bg-card);border:1px solid var(--tf-border);border-radius:var(--tf-radius-lg);margin-bottom:var(--tf-space-4)}.tf-review-section-header{margin-bottom:var(--tf-space-3);justify-content:space-between;align-items:center;display:flex}.tf-review-section-title{font-family:var(--tf-font-display);color:var(--tf-text-secondary);font-size:.875rem;font-weight:600}.tf-review-row{padding:var(--tf-space-2)0;border-bottom:1px solid var(--tf-border);display:flex}.tf-review-row:last-child{border-bottom:none}.tf-review-label{color:var(--tf-text-muted);text-transform:uppercase;flex:0 0 140px;font-size:.75rem}.tf-review-value{color:var(--tf-text-primary);flex:1;font-size:.875rem}
