*,*:before,*:after{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{color-scheme:dark;--bg-void: #0a0a0c;--red-500: #e31934;--red-600: #c01329;--red-700: #8f0e1e;--red-tint: rgba(227, 25, 52, .14);--ink-900: #f6f6f8;--ink-600: #b8b8c2;--ink-400: #86868f;--panel-bg: rgba(12, 12, 15, .72);--panel-border: rgba(255, 255, 255, .09);--card-bg: rgba(255, 255, 255, .045);--card-bg-hover: rgba(255, 255, 255, .07);--card-border: rgba(255, 255, 255, .09);--input-bg: rgba(255, 255, 255, .06);--input-border: rgba(255, 255, 255, .14);--radius-lg: 18px;--radius-md: 12px;--radius-sm: 8px;--shadow-panel: 0 24px 70px rgba(0, 0, 0, .5);--shadow-soft: 0 2px 10px rgba(0, 0, 0, .25)}body{color:var(--ink-900);background:var(--bg-void)}.App{min-height:100vh;background:var(--bg-void)}.hero{position:relative;height:clamp(220px,26vw,320px);background-image:linear-gradient(90deg,#060608f0,#060608ad 38%,#0606081f 68%,#06060805),linear-gradient(180deg,#00000026,#0000 40%,#06060859),url(/truck-back.png);background-size:cover;background-position:right center;background-repeat:no-repeat;border-bottom:1px solid var(--panel-border)}.hero-inner{max-width:480px;height:100%;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:0 clamp(20px,4vw,56px)}.app-logo{height:2.5rem;margin-bottom:6px;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5))}.hero-title{margin:0;color:var(--ink-900);font-weight:700;font-size:clamp(24px,3vw,32px);letter-spacing:.01em;position:relative;padding-left:14px}.hero-title:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:4px;background:var(--red-500);border-radius:2px}.hero-tagline{margin:0;padding-left:14px;color:var(--ink-600);font-size:14px}.page-content{padding:2.5% 2% 4%}.audio{display:flex;justify-content:center}.voice-generator{max-width:1400px;margin:0 auto 40px;padding:32px clamp(18px,3vw,40px);border:1px solid var(--panel-border);border-radius:var(--radius-lg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--panel-bg);box-shadow:var(--shadow-panel)}.layout-row{display:flex;align-items:flex-start;gap:clamp(20px,3vw,40px)}.settings-column{flex:2;min-width:0}.dialer{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:14px;position:sticky;top:20px;padding:22px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}h1{margin-top:0;padding-top:20px;text-align:center}h2{margin:0 0 8px;font-size:24px}.group{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-bottom:8px}.form-group{width:100%;padding:14px 16px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);box-sizing:border-box;transition:background .15s ease,border-color .15s ease}.form-group:focus-within{background:var(--card-bg-hover);border-color:#e3193466}.form-group label{color:var(--ink-900)}.audio-preview{width:100%;height:34px;margin-top:8px;border-radius:var(--radius-sm)}.dial{width:100%;text-align:center}@media screen and (max-width:1024px){.layout-row{flex-direction:column}.dialer{width:100%;position:static;order:-1}.settings-column{order:1}}@media screen and (max-width:640px){.hero{height:auto;min-height:190px;background-image:linear-gradient(180deg,#060608d9,#060608ad 55%,#060608e6),url(/truck-back.png);background-position:82% center}.hero-inner{max-width:none;padding:24px clamp(16px,5vw,28px);gap:8px}.hero-title{font-size:22px}.hero-tagline{font-size:13px}}.full-width{width:100%;display:block}label{display:block;font-weight:700;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;margin-bottom:8px;color:var(--ink-600)}.prompt-sections{display:flex;flex-direction:column;gap:16px;margin:8px 0 4px}.prompt-sections-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.prompt-sections-header h3{margin:0;font-size:15px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-600)}.reset-button{flex-shrink:0;font-size:13px;font-weight:600;color:var(--ink-600);background:transparent;border:1px solid var(--card-border);border-radius:var(--radius-sm);padding:7px 14px;cursor:pointer;transition:color .12s ease,border-color .12s ease,background .12s ease}.reset-button:hover{color:var(--red-500);border-color:#e3193466;background:var(--red-tint)}.field-block{padding:14px 16px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);transition:background .15s ease,border-color .15s ease}.field-block:focus-within{background:var(--card-bg-hover);border-color:#e3193466}.field-block label{margin-bottom:10px;color:var(--ink-900)}select,textarea,input:not([type=range]):not([type=checkbox]){width:100%;padding:10px 12px;font-size:14px;color:var(--ink-900);background:var(--input-bg);border-radius:var(--radius-sm);border:1px solid var(--input-border);box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}select:hover,textarea:hover,input:not([type=range]):not([type=checkbox]):hover{border-color:#ffffff3d}select:focus,textarea:focus,input:not([type=range]):not([type=checkbox]):focus{outline:none;border-color:var(--red-500);box-shadow:0 0 0 3px var(--red-tint);background:#ffffff14}select{cursor:pointer}select option{background:#17171b;color:var(--ink-900)}textarea{min-height:80px;resize:vertical;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;line-height:1.5}input::placeholder,textarea::placeholder{color:var(--ink-400)}input[type=range]{width:100%;padding:0;-webkit-appearance:none;appearance:none;height:20px;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:4px;background:#ffffff29}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;margin-top:-7px;width:20px;height:20px;border-radius:50%;background:var(--red-500);border:3px solid var(--ink-900);box-shadow:0 2px 8px #0006;transition:transform .1s ease}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}input[type=range]::-moz-range-track{height:6px;border-radius:4px;background:#ffffff29}input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--red-500);border:3px solid var(--ink-900);box-shadow:0 2px 8px #0006}.subtext{font-size:12px;color:var(--ink-400);margin-top:4px}.range-field{margin-top:12px}.range-field label{color:var(--ink-900);text-transform:none;letter-spacing:0;font-size:14px}.range-labels{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-400);margin-top:4px}.field-warning{margin:8px 0 0;padding:6px 10px;font-size:12px;color:#fbbf24;background:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:var(--radius-sm)}.generate-button,.clear-history-button{width:100%;font-size:16px;font-weight:700;border:none;border-radius:var(--radius-sm);padding:13px;cursor:pointer;transition:transform .08s ease,filter .15s ease,opacity .15s ease}.generate-button:active,.clear-history-button:active{transform:translateY(1px)}.generate-button{background:linear-gradient(180deg,#3fd657,#2bb944);color:#0a1c0e;box-shadow:0 4px 16px #2bb94459}.generate-button:hover:not(:disabled){filter:brightness(1.08)}.generate-button:disabled,.clear-history-button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.clear-history-button{background:transparent;color:var(--ink-600);border:1px solid var(--card-border)}.clear-history-button:hover:not(:disabled){color:var(--ink-900);border-color:#ffffff47;background:#ffffff0a}.dialer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px auto 1rem;max-width:200px;width:100%}.dial-row{display:flex;justify-content:center;gap:10px;width:100%}.dialer-input{width:100%;font-size:1.2rem;text-align:center}.dialer-num{font-size:1.05rem;font-weight:600;aspect-ratio:1;color:var(--ink-900);background:#ffffff0f;border:1px solid var(--card-border);border-radius:50%;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .08s ease}.dialer-num:hover{background:#ffffff1f;border-color:#ffffff3d}.dialer-num:active{transform:scale(.94)}.dial-backspace{flex-shrink:0;width:40px;font-size:1.05rem;color:var(--ink-600);background:#ffffff0f;border:1px solid var(--card-border);border-radius:var(--radius-sm);cursor:pointer;transition:background .12s ease,color .12s ease}.dial-backspace:hover{background:var(--red-tint);color:var(--red-500);border-color:#e3193466}.files-section{margin-top:8px;padding:18px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);color:var(--ink-900);max-width:100%}.files-table-wrap{width:100%;overflow-x:auto}.files-section h4{margin:0 0 14px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-600)}.file-upload-form{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:15px}.file-input{flex:1;min-width:0;padding:8px;border-radius:var(--radius-sm);border:1px solid var(--input-border);background-color:var(--input-bg);color:var(--ink-900)}.file-input::file-selector-button{padding:6px 12px;margin-right:10px;border-radius:var(--radius-sm);border:none;background:#ffffff24;color:var(--ink-900);cursor:pointer;transition:background .12s ease}.file-input::file-selector-button:hover{background:#ffffff38}.upload-button{background:#3b82f6;color:#fff;border:none;padding:10px 18px;border-radius:var(--radius-sm);cursor:pointer;font-weight:700;transition:filter .15s ease}.upload-button:hover{filter:brightness(1.1)}.delete-button{background:#ef444426;color:#f87171;border:1px solid rgba(239,68,68,.3);padding:6px 12px;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;transition:background .12s ease}.delete-button:hover{background:#ef444447}.view-button{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.3);padding:6px 12px;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;margin-left:8px;transition:background .12s ease}.view-button:hover{background:#3b82f647}.no-files{color:var(--ink-400);text-align:center;padding:16px}.files-table{width:100%;border-collapse:collapse}.files-table th,.files-table td{padding:10px;border-bottom:1px solid rgba(255,255,255,.08)}.files-table th{text-align:left;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-400)}.files-table td{color:var(--ink-600);font-size:14px}.react-international-phone-country-selector{position:relative}.react-international-phone-country-selector-button{display:flex;height:var(--react-international-phone-height, 36px);box-sizing:border-box;align-items:center;justify-content:center;padding:0;border:1px solid var(--react-international-phone-country-selector-border-color, var(--react-international-phone-border-color, gainsboro));margin:0;appearance:button;-webkit-appearance:button;background-color:var(--react-international-phone-country-selector-background-color, var(--react-international-phone-background-color, white));cursor:pointer;text-transform:none;-webkit-user-select:none;user-select:none}.react-international-phone-country-selector-button:hover{background-color:var(--react-international-phone-country-selector-background-color-hover, whitesmoke)}.react-international-phone-country-selector-button--hide-dropdown{cursor:auto}.react-international-phone-country-selector-button--hide-dropdown:hover{background-color:transparent}.react-international-phone-country-selector-button__button-content{display:flex;align-items:center;justify-content:center}.react-international-phone-country-selector-button__flag-emoji{margin:0 4px}.react-international-phone-country-selector-button__flag-emoji--disabled{opacity:.75}.react-international-phone-country-selector-button__dropdown-arrow{border-top:var(--react-international-phone-country-selector-arrow-size, 4px) solid var(--react-international-phone-country-selector-arrow-color, #777);border-right:var(--react-international-phone-country-selector-arrow-size, 4px) solid transparent;border-left:var(--react-international-phone-country-selector-arrow-size, 4px) solid transparent;margin-right:4px;transition:all .1s ease-out}.react-international-phone-country-selector-button__dropdown-arrow--active{transform:rotateX(180deg)}.react-international-phone-country-selector-button__dropdown-arrow--disabled{border-top-color:var(--react-international-phone-disabled-country-selector-arrow-color, #999)}.react-international-phone-country-selector-button--disabled,.react-international-phone-country-selector-button--disabled:hover{background-color:var(--react-international-phone-disabled-country-selector-background-color, var(--react-international-phone-disabled-background-color, whitesmoke))}.react-international-phone-country-selector-button--disabled{cursor:auto}.react-international-phone-flag-emoji{width:var(--react-international-phone-flag-width, 24px);height:var(--react-international-phone-flag-height, 24px);box-sizing:border-box}.react-international-phone-country-selector-dropdown{position:absolute;z-index:1;top:var(--react-international-phone-dropdown-top, 44px);left:var(--react-international-phone-dropdown-left, 0);display:flex;width:300px;max-height:200px;flex-direction:column;padding:4px 0;margin:0;background-color:var(--react-international-phone-dropdown-item-background-color, var(--react-international-phone-background-color, white));box-shadow:var(--react-international-phone-dropdown-shadow, 2px 2px 16px rgba(0, 0, 0, .25));color:var(--react-international-phone-dropdown-item-text-color, var(--react-international-phone-text-color, #222));list-style:none;overflow-y:scroll}.react-international-phone-country-selector-dropdown__preferred-list-divider{height:1px;border:none;margin:var(--react-international-phone-dropdown-preferred-list-divider-margin, 0);background:var(--react-international-phone-dropdown-preferred-list-divider-color, var(--react-international-phone-border-color, gainsboro))}.react-international-phone-country-selector-dropdown__list-item{display:flex;min-height:var(--react-international-phone-dropdown-item-height, 28px);box-sizing:border-box;align-items:center;padding:2px 8px}.react-international-phone-country-selector-dropdown__list-item-flag-emoji{margin-right:8px}.react-international-phone-country-selector-dropdown__list-item-country-name{overflow:hidden;margin-right:8px;font-size:var(--react-international-phone-dropdown-item-font-size, 14px);text-overflow:ellipsis;white-space:nowrap}.react-international-phone-country-selector-dropdown__list-item-dial-code{color:var(--react-international-phone-dropdown-item-dial-code-color, gray);font-size:var(--react-international-phone-dropdown-item-font-size, 14px)}.react-international-phone-country-selector-dropdown__list-item:hover{background-color:var(--react-international-phone-selected-dropdown-item-background-color, var(--react-international-phone-selected-dropdown-item-background-color, whitesmoke));cursor:pointer}.react-international-phone-country-selector-dropdown__list-item--selected,.react-international-phone-country-selector-dropdown__list-item--focused{background-color:var(--react-international-phone-selected-dropdown-item-background-color, whitesmoke);color:var(--react-international-phone-selected-dropdown-item-text-color, var(--react-international-phone-text-color, #222))}.react-international-phone-country-selector-dropdown__list-item--selected .react-international-phone-country-selector-dropdown__list-item-dial-code,.react-international-phone-country-selector-dropdown__list-item--focused .react-international-phone-country-selector-dropdown__list-item-dial-code{color:var(--react-international-phone-selected-dropdown-item-dial-code-color, var(--react-international-phone-dropdown-item-dial-code-color, gray))}.react-international-phone-country-selector-dropdown__list-item--focused{background-color:var(--react-international-phone-selected-dropdown-item-background-color, var(--react-international-phone-selected-dropdown-item-background-color, whitesmoke))}.react-international-phone-dial-code-preview{display:flex;align-items:center;justify-content:center;padding:0 8px;border:1px solid var(--react-international-phone-dial-code-preview-border-color, var(--react-international-phone-border-color, gainsboro));margin-right:-1px;background-color:var(--react-international-phone-dial-code-preview-background-color, var(--react-international-phone-background-color, white));color:var(--react-international-phone-dial-code-preview-text-color, var(--react-international-phone-text-color, #222));font-size:var(--react-international-phone-dial-code-preview-font-size, var(--react-international-phone-font-size, 13px))}.react-international-phone-dial-code-preview--disabled{background-color:var(--react-international-phone-dial-code-preview-disabled-background-color, var(--react-international-phone-disabled-background-color, whitesmoke));color:var(--react-international-phone-dial-code-preview-disabled-text-color, var(--react-international-phone-disabled-text-color, #666))}.react-international-phone-input-container{display:flex}.react-international-phone-input-container .react-international-phone-country-selector-button{border-radius:var(--react-international-phone-border-radius, 4px);margin-right:-1px;border-bottom-right-radius:0;border-top-right-radius:0}.react-international-phone-input-container .react-international-phone-input{overflow:visible;height:var(--react-international-phone-height, 36px);box-sizing:border-box;padding:0 8px;border:1px solid var(--react-international-phone-border-color, gainsboro);border-radius:var(--react-international-phone-border-radius, 4px);margin:0;background-color:var(--react-international-phone-background-color, white);border-bottom-left-radius:0;border-top-left-radius:0;color:var(--react-international-phone-text-color, #222);font-family:inherit;font-size:var(--react-international-phone-font-size, 13px)}.react-international-phone-input-container .react-international-phone-input:focus{outline:none}.react-international-phone-input-container .react-international-phone-input--disabled{background-color:var(--react-international-phone-disabled-background-color, whitesmoke);color:var(--react-international-phone-disabled-text-color, #666)}.summary-wrapper{width:100%;margin-top:20px;margin-bottom:20px;padding:20px;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;box-sizing:border-box}.summary-header{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}.header-icon{color:#4cafef;width:24px;height:24px;flex-shrink:0}.summary-header h3{margin:0;font-size:20px;font-weight:700;color:#fff}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:15px;width:100%}.summary-card{background:#ffffff14;border-radius:8px;padding:15px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease;min-width:0;overflow:hidden}.summary-card:hover{background:#ffffff1f;border-color:var(--card-color)}.summary-card.full-width{grid-column:1 / -1}.card-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.card-icon{color:var(--card-color);flex-shrink:0}.card-label{font-size:13px;font-weight:700;color:#ccc;text-transform:uppercase;letter-spacing:.5px}.card-content{color:#fff;font-size:15px;line-height:1.5;word-break:break-word;overflow-wrap:break-word}.summary-card.full-width .card-content{font-size:14px;color:#eee}.summary-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:0}.summary-tab{background:none;border:none;color:#aaa;cursor:pointer;padding:8px 16px;font-size:14px;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .2s,border-color .2s}.summary-tab:hover{color:#fff}.summary-tab.active{color:#4cafef;border-bottom-color:#4cafef}.empty-state{color:#888;font-size:14px;padding:20px 0;text-align:center}.transcript-list{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto;padding-right:4px}.transcript-msg{display:flex;gap:10px;padding:10px 12px;border-radius:8px;font-size:14px;line-height:1.5}.transcript-msg.user{background:#4cafef1a;border-left:3px solid #4cafef}.transcript-msg.assistant{background:#10b9811a;border-left:3px solid #10b981}.transcript-role{font-weight:700;min-width:36px;color:#ccc;font-size:12px;padding-top:1px}.transcript-content{color:#fff}.logs-table-wrapper{max-height:400px;overflow-y:auto}.logs-table{width:100%;border-collapse:collapse;font-size:12px}.logs-table th{text-align:left;padding:6px 8px;color:#aaa;border-bottom:1px solid rgba(255,255,255,.1);position:sticky;top:0;background:#1a1a2e}.logs-table td{padding:4px 8px;vertical-align:top}.log-ts{color:#888;white-space:nowrap;font-family:monospace}.log-level{font-weight:700;white-space:nowrap}.log-msg{color:#ddd;word-break:break-word}.log-row.log-info .log-level{color:#4cafef}.log-row.log-warn .log-level{color:#f59e0b}.log-row.log-error .log-level{color:#ef4444}.log-row:nth-child(2n){background:#ffffff05}.perf-wrapper{display:flex;flex-direction:column;gap:16px}.perf-providers{display:flex;gap:24px;font-size:13px;color:#ccc;padding:8px 12px;background:#ffffff0d;border-radius:6px}.perf-table{width:100%;border-collapse:collapse;font-size:13px}.perf-table th,.perf-table td{padding:6px 10px;text-align:left;border-bottom:1px solid rgba(255,255,255,.08)}.perf-table th{color:#aaa}.perf-table td{color:#fff}.millis-perf h4{color:#aaa;font-size:13px;margin-bottom:8px}.millis-perf pre{background:#0000004d;border-radius:6px;padding:12px;font-size:12px;color:#4cafef;overflow-x:auto;max-height:300px;overflow-y:auto}@media screen and (max-width:1024px){.summary-wrapper{padding:18px}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.summary-header h3{font-size:18px}.card-content{font-size:14px}}@media screen and (max-width:768px){.summary-wrapper{padding:15px;margin-top:15px}.summary-grid{grid-template-columns:1fr;gap:12px}.summary-header{gap:8px;margin-bottom:15px;padding-bottom:10px}.summary-header h3{font-size:17px}.header-icon{width:20px;height:20px}.summary-card{padding:12px}.card-header{gap:6px;margin-bottom:8px}.card-label{font-size:12px}.card-content{font-size:14px}.summary-card.full-width .card-content{font-size:13px}}@media screen and (max-width:480px){.summary-wrapper{padding:12px;margin-top:12px}.summary-header h3{font-size:16px}.summary-card{padding:10px}.card-label{font-size:11px}.card-content{font-size:13px}.summary-card.full-width .card-content{font-size:12px}}
