*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--brand: #675ad6;--brand-dark: #5745ba;--brand-light: #ede9f9;--header-bg: #7B8FB5;--accent: #675ad6;--accent-dark: #5745ba;--success: #4a9c59;--danger: #d9534f;--danger-dark: #c9302c;--warn: #e8a020;--text: #2d2d2d;--text-mid: #444444;--text-muted: #666666;--text-faint: #999999;--border: #d8d4e8;--surface: #F8F7FC;--bg: #EDEAF4;--bg-hover: #E4E0F0;--bg-subtle: #F4F2FA;--radius-sm: 4px;--radius: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 4px rgba(107,94,168,.12);--shadow-md: 0 2px 8px rgba(107,94,168,.12);--shadow-lg: 0 4px 16px rgba(107,94,168,.18);--font: "Aptos", "Segoe UI", "Helvetica Neue", Helvetica, sans-serif;--font-display: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;--font-mono: "Courier New", monospace}html{font-size:16px}body{font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}h1{font-size:1.8em;font-weight:600}h2{font-size:1.3em;font-weight:600;color:var(--text)}h3{font-size:1.1em;font-weight:600;color:var(--text)}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:10px 20px;border:1px solid transparent;border-radius:var(--radius-sm);font-family:var(--font);font-size:.95em;font-weight:500;cursor:pointer;transition:background .15s ease,box-shadow .15s ease,border-color .15s ease;white-space:nowrap;text-decoration:none;letter-spacing:.01em}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--brand);color:#fff;border-color:var(--brand)}.btn-primary:hover:not(:disabled){background:var(--brand-dark);border-color:var(--brand-dark)}.btn-secondary{background:var(--brand-light);color:var(--brand);border-color:#d0c8f0}.btn-secondary:hover:not(:disabled){background:#ddd8f4;border-color:var(--brand)}.btn-success{background:var(--brand);color:#fff;border-color:var(--brand)}.btn-success:hover:not(:disabled){background:var(--brand-dark);border-color:var(--brand-dark)}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger-dark);border-color:var(--danger-dark)}.btn-ghost{background:transparent;color:var(--text-mid);border-color:var(--border)}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);border-color:#b8b0d8;color:var(--brand)}.btn-ghost-white{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5)}.btn-ghost-white:hover:not(:disabled){background:#ffffff26}.btn-sm{padding:5px 12px;font-size:.85em}.btn-lg{padding:12px 26px;font-size:1.02em}.btn-full{width:100%;justify-content:center}.btn-format{padding:10px 20px;border:2px solid var(--border);background:#fff;border-radius:var(--radius);cursor:pointer;font-weight:500;font-size:.95em;transition:all .3s ease;font-family:var(--font)}.btn-format:hover{border-color:var(--brand);color:var(--brand)}.btn-format.active{background:var(--brand);color:#fff;border-color:var(--brand)}.form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:20px}.form-label{font-size:.95em;font-weight:500;color:var(--text-mid);display:block;margin-bottom:8px}.form-input,.form-select,.form-textarea{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font);font-size:1em;color:var(--text);background:var(--surface);transition:border-color .15s,box-shadow .15s;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #667eea1a}.form-textarea{resize:vertical;min-height:250px;line-height:1.6}.form-error{font-size:.85em;color:var(--danger)}.form-hint{font-size:.85em;color:var(--text-muted)}.section{background:#fff;padding:25px;border-radius:var(--radius-lg);margin-bottom:30px;box-shadow:var(--shadow-sm)}.section h2{margin-bottom:15px}.card{background:var(--surface);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm);transition:box-shadow .3s ease,background .3s ease}.card:hover{box-shadow:var(--shadow-md)}.session-item{display:flex;justify-content:space-between;align-items:flex-start;padding:15px;background:var(--bg-subtle);border-left:4px solid var(--brand);border-radius:var(--radius);transition:all .3s ease}.session-item:hover{background:var(--bg-hover);box-shadow:var(--shadow-md);cursor:pointer}.session-item .session-info{flex:1}.session-item strong{color:var(--brand);font-size:1em}.session-timestamp{color:var(--text-faint);font-size:.85em;margin:5px 0}.session-preview{color:var(--text-muted);font-size:.9em;margin:8px 0 0;line-height:1.4}.client-item{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:#fff;border-left:4px solid var(--brand);border-radius:var(--radius);margin-bottom:12px;box-shadow:var(--shadow-sm);cursor:pointer;transition:all .3s ease}.client-item:hover{background:var(--bg-hover);box-shadow:var(--shadow-md)}.badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:.9em;font-weight:600}.badge-success{background:#4caf50;color:#fff}.badge-warn{background:#ff9800;color:#fff}.badge-danger{background:var(--danger);color:#fff}.badge-muted{background:#999;color:#fff}.badge-brand{background:var(--brand);color:#fff}.progress{height:8px;background:var(--border);border-radius:4px;overflow:hidden}.progress-bar{height:100%;background:var(--brand);border-radius:4px;transition:width .3s ease}.alert{padding:12px 16px;border-radius:var(--radius);font-size:.95em;margin-bottom:20px}.alert-error{background:#ffebee;color:#c62828;border:1px solid #ffcdd2}.alert-success{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.alert-info{background:var(--brand-light);color:#3949ab;border:1px solid #c5cae9}.alert-warn{background:#fff3e0;color:#e65100;border:1px solid #ffe0b2}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background:var(--surface);border-radius:var(--radius-lg);padding:30px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal-title{font-size:1.2rem;font-weight:700;margin-bottom:20px;color:var(--text)}.tabs{display:flex;gap:0;border-bottom:2px solid var(--border);margin-bottom:25px}.tab-btn{padding:10px 20px;border:none;background:none;font-family:var(--font);font-size:.95em;font-weight:500;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s ease}.tab-btn:hover{color:var(--brand)}.tab-btn.active{color:var(--brand);border-bottom-color:var(--brand);font-weight:600}.recording-section{background:#fff5f5;padding:20px;border-radius:var(--radius);margin-bottom:20px;border-left:4px solid #ff6b6b}.recording-section h3{color:#ff6b6b;margin-bottom:12px}.recording-controls{display:flex;gap:15px;align-items:center;margin-bottom:10px}.recording-timer{background:#fed7d7;color:#c53030;padding:8px 15px;border-radius:var(--radius);font-family:var(--font-mono);font-weight:600;font-size:1.1em}.recording-info{color:#c53030;font-size:.9em;margin:0}@keyframes pulse{0%{box-shadow:0 0 #f56565b3}70%{box-shadow:0 0 0 10px #f5656500}to{box-shadow:0 0 #f5656500}}.btn-record{background:#f56565;color:#fff;padding:12px 25px;border:none;border-radius:var(--radius);cursor:pointer;font-size:1em;font-weight:600;transition:all .3s ease;animation:pulse 2s infinite}.btn-record:hover{background:#e53e3e;transform:translateY(-2px);box-shadow:0 4px 12px #f5656566}.btn-stop{background:#ed8936;color:#fff;padding:12px 25px;border:none;border-radius:var(--radius);cursor:pointer;font-size:1em;font-weight:600;transition:all .3s ease}.btn-stop:hover{background:#dd6b20;transform:translateY(-2px);box-shadow:0 4px 12px #ed893666}@keyframes spin{to{transform:rotate(360deg)}}.spinner{display:inline-block;width:1.1em;height:1.1em;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .7s linear infinite;vertical-align:middle}.chat-container{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;max-height:600px}.chat-header{padding:15px;border-bottom:1px solid var(--border);background:var(--brand);color:#fff;font-weight:600;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.chat-messages{flex:1;overflow-y:auto;padding:15px;background:var(--bg-subtle);min-height:300px;display:flex;flex-direction:column;gap:10px}.chat-msg-user{background:var(--brand-light);padding:10px 14px;border-radius:var(--radius);align-self:flex-end;max-width:80%}.chat-msg-ai{background:var(--bg-hover);padding:10px 14px;border-radius:var(--radius);align-self:flex-start;max-width:80%;font-size:.95em;line-height:1.5}.chat-input-area{padding:12px;border-top:1px solid var(--border);display:flex;gap:8px}.text-muted{color:var(--text-muted)}.text-faint{color:var(--text-faint)}.text-brand{color:var(--brand)}.text-sm{font-size:.9em}.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:.5rem}.gap-2{gap:1rem}.w-full{width:100%}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.grid-2col{display:grid;grid-template-columns:1fr 350px;gap:20px}@media (max-width: 768px){.grid-2col,.grid-cards{grid-template-columns:1fr}.btn-full-mobile{width:100%;justify-content:center}}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.page-header h1{font-size:1.5em;font-weight:700;margin-bottom:4px}.page-header p{color:var(--text-muted);font-size:.95em}.empty-state{text-align:center;padding:50px 20px;color:var(--text-muted);background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.empty-state .empty-icon{font-size:3em;margin-bottom:15px}.empty-state p{margin-bottom:20px;font-size:1.05em}.button-group{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap}.goose-launch-btn{position:fixed;width:96px;height:96px;border-radius:50%;background:#bd7070;border:none;cursor:grab;display:flex;align-items:center;justify-content:center;padding:0;overflow:hidden;box-shadow:0 4px 18px #bd707080;z-index:1200;transition:transform .15s ease,box-shadow .15s ease;-webkit-user-select:none;user-select:none;touch-action:none}.goose-launch-btn img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%;filter:hue-rotate(155deg) saturate(.68) brightness(.94);pointer-events:none}.goose-launch-btn:hover{transform:scale(1.08);box-shadow:0 6px 26px #bd7070a6}.goose-launch-btn:active{transform:scale(.97)}.goose-launch-btn--dragging{cursor:grabbing;transform:scale(1.06);transition:none}.goose-mini-btn{position:fixed;width:44px;height:44px;border-radius:50%;background:#ffffffd9;border:2px solid rgba(189,112,112,.4);cursor:grab;display:flex;align-items:center;justify-content:center;padding:4px;box-shadow:0 2px 10px #bd707040;z-index:1200;transition:background .2s,transform .2s,box-shadow .2s,opacity .2s;opacity:.75;animation:gooseFadeIn .3s ease;touch-action:none;overflow:hidden}.goose-mini-btn img{pointer-events:none}.goose-mini-btn:hover{background:#fff;border-color:#bd7070b3;box-shadow:0 4px 16px #bd707066;transform:scale(1.14);opacity:1}.goose-mini-btn--dragging{cursor:grabbing;opacity:1;transform:scale(1.08);transition:none}@keyframes gooseFadeIn{0%{opacity:0;transform:scale(.7)}to{opacity:.65;transform:scale(1)}}.goose-panel{position:fixed;height:600px;background:#fff;border-radius:14px;box-shadow:0 14px 52px #0003;display:flex;flex-direction:column;z-index:1200;overflow:hidden;animation:gooseSlideIn .22s ease;-webkit-user-select:none;user-select:none}.goose-panel--dragging{box-shadow:0 24px 72px #00000047}@keyframes gooseSlideIn{0%{opacity:0;transform:scale(.96) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.goose-header{padding:11px 12px 11px 14px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;display:flex;justify-content:space-between;align-items:center;flex-shrink:0;cursor:grab;border-bottom:1px solid rgba(255,255,255,.15)}.goose-panel--dragging .goose-header{cursor:grabbing}.goose-header-left{display:flex;align-items:center;gap:9px;pointer-events:none}.goose-header-emoji{font-size:1.35rem}.goose-header-title{font-weight:700;font-size:.93rem;line-height:1.1}.goose-header-page{font-size:.68rem;opacity:.72;margin-top:2px}.goose-header-actions{display:flex;gap:4px;flex-shrink:0}.goose-header-btn{background:#ffffff2e;border:none;color:#fff;cursor:pointer;width:26px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:background .15s;pointer-events:auto}.goose-header-btn:hover{background:#ffffff4d}.goose-header-btn--close:hover{background:#ef44448c}.goose-quick-prompts{display:flex;gap:6px;padding:8px 12px;overflow-x:auto;flex-shrink:0;border-bottom:1px solid #f0f0f0;scrollbar-width:none;background:#fafafa}.goose-quick-prompts::-webkit-scrollbar{display:none}.goose-chip{white-space:nowrap;background:#ede9fe;color:#6d28d9;border:none;padding:4px 10px;border-radius:20px;font-size:.74rem;font-weight:500;cursor:pointer;transition:background .15s;font-family:inherit;flex-shrink:0;-webkit-user-select:none;user-select:none}.goose-chip:hover:not(:disabled){background:#ddd6fe}.goose-chip:disabled{opacity:.45;cursor:not-allowed}.goose-messages{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px;background:#f9fafb;min-height:0;-webkit-user-select:text;user-select:text}.goose-messages::-webkit-scrollbar{width:5px}.goose-messages::-webkit-scrollbar-track{background:transparent}.goose-messages::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.goose-messages::-webkit-scrollbar-thumb:hover{background:#9ca3af}.goose-message{display:flex;gap:8px;align-items:flex-start}.user-message{justify-content:flex-end}.bot-message{justify-content:flex-start}.user-message .message-bubble{background:#6366f1;color:#fff}.bot-message .message-bubble{background:#fff;color:#1f2937;border:1px solid #e5e7eb}.goose-avatar{flex-shrink:0;margin-top:1px;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.12))}.goose-header-avatar{flex-shrink:0;-webkit-user-select:none;user-select:none;border-radius:50%;overflow:hidden;filter:drop-shadow(0 1px 3px rgba(0,0,0,.25))}.message-bubble{padding:9px 13px;border-radius:12px;max-width:87%;word-break:break-word;line-height:1.55;font-size:.875rem}.message-bubble p{margin:.25em 0}.message-bubble ul,.message-bubble ol{margin:.35em 0}.message-bubble.loading{display:flex;align-items:center;gap:8px;color:#6b7280;font-style:italic}@keyframes gooseSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.goose-spin{animation:gooseSpin 1s linear infinite}.goose-error{padding:7px 14px;background:#fee2e2;border-top:1px solid #fca5a5;color:#b91c1c;font-size:.81rem;flex-shrink:0}.goose-input-row{display:flex;gap:8px;padding:10px 12px;background:#fff;border-top:1px solid #e5e7eb;flex-shrink:0;align-items:flex-end;-webkit-user-select:text;user-select:text}.goose-input{flex:1;border:1px solid #d1d5db;border-radius:8px;padding:8px 11px;font-size:.875rem;font-family:inherit;resize:none;line-height:1.45;transition:border-color .15s,box-shadow .15s}.goose-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f121}.goose-input:disabled{background:#f3f4f6;color:#9ca3af}.goose-send-btn{background:#6366f1;color:#fff;border:none;border-radius:8px;width:38px;height:38px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0}.goose-send-btn:hover:not(:disabled){background:#4f46e5}.goose-send-btn:disabled{background:#d1d5db;cursor:not-allowed}@media (max-width: 520px){.goose-panel{width:calc(100vw - 16px)!important;left:8px!important;top:8px!important;height:calc(100vh - 16px)}.goose-launch-btn{width:76px;height:76px}.goose-mini-btn{width:38px;height:38px}}
