/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-wider:.05em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-4{margin-left:calc(var(--spacing) * 4)}.block{display:block}.flex{display:flex}.grid{display:grid}.h-2{height:calc(var(--spacing) * 2)}.h-10{height:calc(var(--spacing) * 10)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.w-2{width:calc(var(--spacing) * 2)}.w-10{width:calc(var(--spacing) * 10)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-full{width:100%}.max-w-lg{max-width:var(--container-lg)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize-none{resize:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}*,:before,:after{box-sizing:border-box}:root{--bg-page:#eef2f7;--bg-chat:#fff;--bg-header:#fff;--bg-footer:#f8fafc;--bg-modal:#0f172a80;--border:#dde4ed;--text-primary:#1a2540;--text-secondary:#4a5872;--text-muted:#8897ab;--text-inverse:#fff;--primary:#1a6fe8;--primary-hover:#1459c0;--primary-bg:#e8f0fe;--primary-border:#b3cef9;--primary-text:#fff;--success:#059669;--success-hover:#047857;--success-bg:#d1fae5;--success-border:#6ee7b7;--success-text:#fff;--success-label:#065f46;--danger:#dc2626;--danger-hover:#b91c1c;--danger-bg:#fee2e2;--danger-border:#fca5a5;--danger-text:#fff;--danger-label:#7f1d1d;--warning:#d97706;--warning-hover:#b45309;--warning-bg:#fef3c7;--warning-border:#fcd34d;--warning-text:#fff;--warning-label:#78350f;--bubble-user-bg:#1a6fe8;--bubble-user-text:#fff;--bubble-ai-bg:#f0f4f8;--bubble-ai-text:#1a2540;--bubble-ai-border:#dde4ed;--input-bg:#f8fafc;--input-border:#c8d3e0;--input-text:#1a2540;--input-placeholder:#8897ab;--input-focus:#1a6fe8;--input-focus-ring:#1a6fe82e;--btn-outline-bg:transparent;--btn-outline-text:#4a5872;--btn-outline-border:#c8d3e0;--btn-outline-bg-hover:#f0f4f8;--btn-outline-text-hover:#1a2540;--scrollbar:#c8d3e0;--shadow-sm:0 1px 3px #00000012, 0 1px 6px #0000000a;--shadow-md:0 4px 14px #00000017;--shadow-lg:0 8px 32px #0000001f}[data-theme=dark]{--bg-page:#0d1526;--bg-chat:#1a2540;--bg-header:#1a2540;--bg-footer:#141d35;--bg-modal:#050d1ae0;--border:#2a3a57;--text-primary:#e2e8f0;--text-secondary:#94a3b8;--text-muted:#566880;--text-inverse:#0d1526;--primary:#3b9eff;--primary-hover:#60b4ff;--primary-bg:#3b9eff21;--primary-border:#3b9eff52;--primary-text:#0d1526;--success:#10b981;--success-hover:#34d399;--success-bg:#10b9811c;--success-border:#10b98152;--success-text:#0d1526;--success-label:#34d399;--danger:#ef4444;--danger-hover:#f87171;--danger-bg:#ef44441c;--danger-border:#ef444461;--danger-text:#0d1526;--danger-label:#f87171;--warning:#f59e0b;--warning-hover:#fbbf24;--warning-bg:#f59e0b1c;--warning-border:#f59e0b59;--warning-text:#0d1526;--warning-label:#fbbf24;--bubble-user-bg:#3b9eff;--bubble-user-text:#0d1526;--bubble-ai-bg:#ffffff0f;--bubble-ai-text:#e2e8f0;--bubble-ai-border:#ffffff14;--input-bg:#ffffff0f;--input-border:#2a3a57;--input-text:#e2e8f0;--input-placeholder:#566880;--input-focus:#3b9eff;--input-focus-ring:#3b9eff33;--btn-outline-bg:transparent;--btn-outline-text:#94a3b8;--btn-outline-border:#2a3a57;--btn-outline-bg-hover:#ffffff0f;--btn-outline-text-hover:#e2e8f0;--scrollbar:#2a3a57;--shadow-sm:0 1px 4px #00000047;--shadow-md:0 4px 16px #00000061;--shadow-lg:0 8px 32px #0000008c}body{background:var(--bg-page);color:var(--text-primary);margin:0;font-family:Inter,system-ui,Segoe UI,sans-serif;font-size:16px}#root{min-height:100vh}body,.chat-container,.card,.card-header,.card-body,.input-field,.bubble-ai,.bubble-user,.modal-card,.chat-header,.chat-footer,.btn-outline,.theme-toggle{transition:background-color .22s,border-color .22s,color .22s}.chat-container{background:var(--bg-chat);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:1.25rem;overflow:hidden}.chat-header{background:var(--bg-header);border-bottom:1px solid var(--border)}.chat-footer{background:var(--bg-footer);border-top:1px solid var(--border)}.card{background:var(--bg-chat);border:1.5px solid var(--border);box-shadow:var(--shadow-sm);border-radius:1rem;overflow:hidden}.card-success{background:var(--success-bg);border-color:var(--success-border)}.card-danger{background:var(--danger-bg);border-color:var(--danger-border)}.card-warning{background:var(--warning-bg);border-color:var(--warning-border)}.card-neutral{background:var(--input-bg);border-color:var(--border)}.card-header{border-bottom:1px solid var(--border);padding:.875rem 1rem}.card-header-success{border-bottom-color:var(--success-border)}.card-header-danger{border-bottom-color:var(--danger-border)}.card-header-warning{border-bottom-color:var(--warning-border)}.bubble-user{background:var(--bubble-user-bg);color:var(--bubble-user-text);border-radius:1.25rem 1.25rem .25rem;max-width:75%;padding:.75rem 1rem;font-size:.9375rem;font-weight:500;line-height:1.65}.bubble-ai{background:var(--bubble-ai-bg);color:var(--bubble-ai-text);border:1px solid var(--bubble-ai-border);border-radius:1.25rem 1.25rem 1.25rem .25rem;max-width:75%;padding:.75rem 1rem;font-size:.9375rem;line-height:1.65}.bubble-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;margin-top:.125rem;font-size:.75rem;font-weight:700;display:flex}.bubble-avatar-ai{background:var(--primary);color:var(--primary-text)}.bubble-avatar-user{background:var(--input-bg);border:1.5px solid var(--border);color:var(--text-secondary)}.input-field{background:var(--input-bg);border:1.5px solid var(--input-border);color:var(--input-text);border-radius:.75rem;outline:none;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:1rem}.input-field::placeholder{color:var(--input-placeholder)}.input-field:focus{border-color:var(--input-focus);box-shadow:0 0 0 3px var(--input-focus-ring)}.input-field:disabled{opacity:.45;cursor:not-allowed}select.input-field{cursor:pointer}select.input-field option{background:var(--bg-chat);color:var(--text-primary)}.btn{cursor:pointer;border:none;border-radius:.625rem;justify-content:center;align-items:center;gap:.4rem;min-height:44px;padding:0 1.25rem;font-family:inherit;font-size:1rem;font-weight:600;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.97)}.btn-primary{background:var(--primary);color:var(--primary-text);transition:background .18s,box-shadow .18s,transform .12s;box-shadow:0 2px 8px #1a6fe838}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 14px #1a6fe852}.btn-success{background:var(--success);color:var(--success-text);transition:background .18s,box-shadow .18s,transform .12s;box-shadow:0 2px 8px #05966938}.btn-success:hover:not(:disabled){background:var(--success-hover);transform:translateY(-1px);box-shadow:0 4px 14px #05966952}.btn-danger{background:var(--danger);color:var(--danger-text);transition:background .18s,transform .12s}.btn-danger:hover:not(:disabled){background:var(--danger-hover);transform:translateY(-1px)}.btn-outline{background:var(--btn-outline-bg);color:var(--btn-outline-text);border:1.5px solid var(--btn-outline-border);font-weight:500;transition:background .18s,color .18s,border-color .18s}.btn-outline:hover:not(:disabled){background:var(--btn-outline-bg-hover);color:var(--btn-outline-text-hover);border-color:var(--primary-border)}.theme-toggle{border:1.5px solid var(--border);background:var(--input-bg);width:2.25rem;height:2.25rem;color:var(--text-secondary);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.05rem;transition:background .18s,border-color .18s,color .18s;display:flex}.theme-toggle:hover{background:var(--btn-outline-bg-hover);border-color:var(--primary)}.modal-overlay{background:var(--bg-modal);-webkit-backdrop-filter:blur(8px);z-index:100;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-out fade-in;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.modal-card{background:var(--bg-chat);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:1.25rem;width:100%;max-width:28rem;overflow:hidden}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.modal-close{background:var(--input-bg);border:1px solid var(--border);width:2rem;height:2rem;color:var(--text-secondary);cursor:pointer;border-radius:.5rem;justify-content:center;align-items:center;font-size:1.25rem;transition:background .15s,color .15s;display:flex}.modal-close:hover{background:var(--btn-outline-bg-hover);color:var(--text-primary)}.hint-chip{border:1.5px solid var(--primary-border);background:var(--primary-bg);color:var(--primary);cursor:pointer;border-radius:999px;padding:.5rem 1rem;font-family:inherit;font-size:.9rem;font-weight:500;transition:background .18s,color .18s,border-color .18s}.hint-chip:hover{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}.feedback-link{color:var(--text-muted);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:.875rem;transition:color .15s}.feedback-link:hover{color:var(--text-secondary)}.disclaimer{color:var(--text-muted);text-align:center;margin-top:.5rem;font-size:.8rem;font-style:italic}.dot{background:var(--primary);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite dot-bounce}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}.slot-item{background:var(--input-bg);border:1px solid var(--border);border-radius:.75rem;justify-content:space-between;align-items:center;padding:.75rem;transition:border-color .18s;display:flex}.slot-item:hover{border-color:var(--primary-border)}.info-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.875rem;display:flex}.info-row:last-child{border-bottom:none}.star-btn{cursor:pointer;color:var(--border);background:0 0;border:none;padding:0 2px;font-size:1.75rem;transition:transform .1s,color .1s}.star-btn.active{color:#f59e0b;filter:drop-shadow(0 0 4px #f59e0b80);transform:scale(1.15)}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:3px}@keyframes pulse-danger{0%,to{border-color:var(--danger-border);box-shadow:0 0 #ef444400}50%{border-color:var(--danger);box-shadow:0 0 0 6px #ef444400}}@keyframes slide-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes dot-bounce{0%,80%,to{opacity:.35;transform:scale(.5)}40%{opacity:1;transform:scale(1)}}.animate-slide-up{animation:.3s ease-out forwards slide-up}.animate-fade-in{animation:.2s ease-out forwards fade-in}.animate-pulse-danger{animation:2s ease-in-out infinite pulse-danger}.app-layout{background:var(--bg-page);justify-content:center;align-items:stretch;gap:1rem;min-height:100vh;padding:1rem;display:flex}.app-layout .chat-container{flex:0 32rem;max-width:32rem;height:92vh}.log-panel{background:var(--bg-chat);border:1px solid var(--border);max-width:22rem;height:92vh;box-shadow:var(--shadow-lg);border-radius:1.25rem;flex-direction:column;flex:0 22rem;transition:background-color .22s,border-color .22s;display:flex;overflow:hidden}.log-panel-header{border-bottom:1px solid var(--border);background:var(--bg-header);flex-shrink:0;justify-content:space-between;align-items:center;padding:.875rem 1rem;display:flex}.log-panel-header h2{color:var(--text-primary);margin:0;font-size:.9375rem;font-weight:700}.log-refresh-btn{border:1px solid var(--border);background:var(--input-bg);cursor:pointer;border-radius:.5rem;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.9rem;transition:background .18s,transform .3s;display:flex}.log-refresh-btn:hover{background:var(--btn-outline-bg-hover);transform:rotate(180deg)}.log-panel-body{flex:1;padding:.5rem;overflow-y:auto}.log-empty{color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:2rem 1rem;display:flex}.log-spinner{border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:1.5rem;height:1.5rem;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.log-session-list{flex-direction:column;gap:.375rem;display:flex}.log-session-item{text-align:left;border:1px solid var(--border);background:var(--input-bg);cursor:pointer;border-radius:.75rem;width:100%;padding:.75rem;font-family:inherit;transition:border-color .18s,background .18s,box-shadow .18s;display:block}.log-session-item:hover{border-color:var(--primary-border);background:var(--primary-bg);box-shadow:var(--shadow-sm)}.log-session-current{border-color:var(--primary-border);background:var(--primary-bg)}.log-session-top{justify-content:space-between;align-items:center;margin-bottom:.375rem;display:flex}.log-level-badge{letter-spacing:.01em;border-radius:999px;padding:.125rem .5rem;font-size:.6875rem;font-weight:600}.log-session-time{color:var(--text-muted);font-size:.6875rem}.log-session-preview{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.8125rem;line-height:1.4;overflow:hidden}.log-session-meta{color:var(--text-muted);align-items:center;gap:.5rem;margin-top:.375rem;font-size:.6875rem;display:flex}.log-current-tag{background:var(--primary);color:var(--primary-text);border-radius:999px;padding:.0625rem .375rem;font-size:.625rem;font-weight:600}.log-detail-overlay{background:var(--bg-modal);-webkit-backdrop-filter:blur(8px);z-index:200;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-out fade-in;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.log-detail-modal{background:var(--bg-chat);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:1.25rem;flex-direction:column;width:100%;max-width:36rem;max-height:80vh;animation:.25s ease-out slide-up;display:flex;overflow:hidden}.log-detail-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.log-detail-header h3{color:var(--text-primary);margin:0;font-size:1rem;font-weight:700}.log-detail-close{background:var(--input-bg);border:1px solid var(--border);width:2rem;height:2rem;color:var(--text-secondary);cursor:pointer;border-radius:.5rem;justify-content:center;align-items:center;font-size:1rem;transition:background .15s,color .15s;display:flex}.log-detail-close:hover{background:var(--btn-outline-bg-hover);color:var(--text-primary)}.log-detail-body{flex-direction:column;flex:1;gap:.75rem;padding:1rem;display:flex;overflow-y:auto}.log-msg{border:1px solid var(--border);border-radius:.75rem;padding:.75rem}.log-msg-user{background:var(--primary-bg);border-color:var(--primary-border)}.log-msg-assistant{background:var(--input-bg)}.log-msg-header{justify-content:space-between;align-items:center;margin-bottom:.375rem;display:flex}.log-msg-role{color:var(--text-secondary);font-size:.75rem;font-weight:600}.log-msg-time{color:var(--text-muted);font-size:.6875rem}.log-msg-content{color:var(--text-primary);white-space:pre-wrap;word-break:break-word;margin:0;font-size:.875rem;line-height:1.6}.log-msg-meta{flex-wrap:wrap;gap:.375rem;margin-top:.5rem;display:flex}.log-meta-tag{background:var(--primary-bg);color:var(--primary);border:1px solid var(--primary-border);border-radius:999px;padding:.125rem .5rem;font-size:.625rem;font-weight:600}.log-toggle-btn{background:var(--primary);width:3rem;height:3rem;color:var(--primary-text);box-shadow:var(--shadow-md);cursor:pointer;z-index:50;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.25rem;transition:transform .18s,box-shadow .18s;display:none;position:fixed;bottom:1rem;right:1rem}.log-toggle-btn:hover{box-shadow:var(--shadow-lg);transform:scale(1.1)}@media (max-width:900px){.app-layout{flex-direction:column;align-items:center}.app-layout .chat-container{flex:none;width:100%;max-width:100%}.log-panel{width:100%;max-width:100%;height:auto;max-height:70vh;display:none}.log-panel.log-panel-open{z-index:60;border-radius:1.25rem 1.25rem 0 0;animation:.25s ease-out slide-up;display:flex;position:fixed;bottom:0;left:0;right:0}.log-toggle-btn{display:flex}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
