:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#14213d;background:radial-gradient(circle at top left,rgba(166,199,255,.35),transparent 30%),linear-gradient(180deg,#f4f7fb,#eef3f7);line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--navy: #17324d;--teal: #1f6f78;--teal-soft: #d9eef0;--panel: rgba(255, 255, 255, .9);--border: rgba(20, 33, 61, .12);--shadow: 0 24px 50px rgba(20, 33, 61, .1);--muted: #5f6f81;--success: #1f7a5c;--danger: #c0392b}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea{font:inherit}.app-shell{position:relative;min-height:100vh;overflow:hidden}.background-orb{position:absolute;width:420px;height:420px;border-radius:50%;filter:blur(18px);opacity:.45}.background-orb-left{top:-130px;left:-140px;background:#41919e47}.background-orb-right{right:-120px;bottom:-160px;background:#f0b8753d}.app-layout{position:relative;max-width:1380px;margin:0 auto;padding:32px 20px 40px}.hero-card,.panel-card,.chat-window,.composer{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.hero-card{display:flex;justify-content:space-between;gap:24px;padding:28px;border-radius:28px;margin-bottom:24px}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.16em;color:var(--teal);font-size:.78rem;font-weight:700}.hero-card h1{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1.1}.hero-copy{max-width:760px;margin:14px 0 0;color:var(--muted)}.hero-meta{display:grid;gap:12px;align-content:start;min-width:280px}.meta-card{padding:16px 18px;border-radius:18px;background:linear-gradient(180deg,#fff,#f3f9fb);border:1px solid rgba(31,111,120,.15)}.meta-label{display:block;color:var(--muted);font-size:.85rem;margin-bottom:6px}.workspace-grid{display:grid;grid-template-columns:360px minmax(0,1fr);gap:24px;align-items:start}.sidebar-panel,.chat-panel{display:grid;gap:20px}.panel-card{border-radius:24px;padding:22px}.panel-heading h2,.chat-window-header h2,.selected-files-header h3{margin:0;font-size:1.05rem}.panel-heading p,.chat-window-header p,.selected-files-header span,.empty-state,.source-item p,.output-card p,.status-banner p,.selected-file-item p{margin:6px 0 0;color:var(--muted);font-size:.94rem}.upload-box{margin-top:18px;display:block;border:1.5px dashed rgba(31,111,120,.35);border-radius:20px;padding:24px 18px;background:linear-gradient(180deg,#d9eef073,#ffffffe6);cursor:pointer;transition:transform .18s ease,border-color .18s ease}.upload-box:hover{transform:translateY(-1px);border-color:#1f6f788c}.upload-box-title{display:block;font-weight:700}.upload-box-copy{display:block;margin-top:6px;color:var(--muted)}.selected-files{margin-top:18px}.selected-files-header,.message-bubble-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.selected-file-item,.source-item,.output-card{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:14px 0;border-bottom:1px solid rgba(20,33,61,.08)}.selected-file-item:last-child,.source-item:last-child,.output-card:last-child{border-bottom:0;padding-bottom:0}.ghost-button,.download-button,.send-button{border:0;border-radius:14px;padding:10px 16px;font-weight:700;cursor:pointer;transition:transform .18s ease,opacity .18s ease,background .18s ease}.ghost-button{background:#14213d14;color:var(--navy)}.download-button,.send-button{text-decoration:none;background:linear-gradient(135deg,#17324d,#1f6f78);color:#fff}.ghost-button:hover,.download-button:hover,.send-button:hover{transform:translateY(-1px)}.ghost-button:disabled,.download-button:disabled,.send-button:disabled{opacity:.6;cursor:not-allowed}.status-banner{display:flex;gap:14px;align-items:flex-start;margin-top:18px;padding:16px;border-radius:18px}.status-banner.busy{background:#d9eef0b3}.status-banner.idle{background:#17324d0f}.status-dot{width:12px;height:12px;border-radius:50%;margin-top:6px;background:var(--success);box-shadow:0 0 0 6px #1f7a5c1f}.error-text{margin:14px 0 0;color:var(--danger)}.chat-window{min-height:640px;border-radius:28px;overflow:hidden}.chat-window-header{padding:22px 24px;border-bottom:1px solid rgba(20,33,61,.08);background:linear-gradient(180deg,#f4f7fbf5,#ffffffd9)}.messages-list{padding:24px;display:grid;gap:16px;max-height:620px;overflow-y:auto;background:linear-gradient(180deg,#ffffffe6,#f6f9fce6),repeating-linear-gradient(0deg,rgba(23,50,77,.025),rgba(23,50,77,.025) 1px,transparent 1px,transparent 28px)}.message-row{display:flex}.message-row.user{justify-content:flex-end}.message-row.assistant{justify-content:flex-start}.message-bubble{max-width:min(720px,88%);border-radius:22px;padding:16px 18px;border:1px solid rgba(20,33,61,.08)}.message-bubble.user{background:linear-gradient(135deg,#17324d,#205c75);color:#fff;border-bottom-right-radius:8px}.message-bubble.assistant{background:#fff;color:var(--navy);border-bottom-left-radius:8px}.message-bubble p{margin:10px 0 0;white-space:pre-wrap}.message-rich-text{margin-top:10px}.message-rich-text p,.message-rich-text ul,.message-rich-text table,.message-rich-text h1,.message-rich-text h2,.message-rich-text h3,.message-rich-text h4,.message-rich-text h5,.message-rich-text h6{margin:0}.message-rich-text p+p,.message-rich-text p+ul,.message-rich-text p+.message-table-wrapper,.message-rich-text p+h1,.message-rich-text p+h2,.message-rich-text p+h3,.message-rich-text p+h4,.message-rich-text p+h5,.message-rich-text p+h6,.message-rich-text ul+p,.message-rich-text ul+ul,.message-rich-text ul+.message-table-wrapper,.message-rich-text ul+h1,.message-rich-text ul+h2,.message-rich-text ul+h3,.message-rich-text ul+h4,.message-rich-text ul+h5,.message-rich-text ul+h6,.message-rich-text h1+p,.message-rich-text h2+p,.message-rich-text h3+p,.message-rich-text h4+p,.message-rich-text h5+p,.message-rich-text h6+p,.message-rich-text h1+ul,.message-rich-text h2+ul,.message-rich-text h3+ul,.message-rich-text h4+ul,.message-rich-text h5+ul,.message-rich-text h6+ul,.message-rich-text h1+h2,.message-rich-text h2+h3,.message-rich-text h3+h4,.message-rich-text h4+h5,.message-rich-text h5+h6,.message-rich-text h1+.message-table-wrapper,.message-rich-text h2+.message-table-wrapper,.message-rich-text h3+.message-table-wrapper,.message-rich-text h4+.message-table-wrapper,.message-rich-text h5+.message-table-wrapper,.message-rich-text h6+.message-table-wrapper,.message-rich-text .message-table-wrapper+p,.message-rich-text .message-table-wrapper+ul,.message-rich-text .message-table-wrapper+h1,.message-rich-text .message-table-wrapper+h2,.message-rich-text .message-table-wrapper+h3,.message-rich-text .message-table-wrapper+h4,.message-rich-text .message-table-wrapper+h5,.message-rich-text .message-table-wrapper+h6,.message-rich-text .message-table-wrapper+.message-table-wrapper{margin-top:12px}.message-rich-text ul{padding-left:20px}.message-rich-text h1,.message-rich-text h2,.message-rich-text h3,.message-rich-text h4,.message-rich-text h5,.message-rich-text h6{line-height:1.25;font-weight:800}.message-rich-text h1{font-size:1.35rem}.message-rich-text h2{font-size:1.2rem}.message-rich-text h3{font-size:1.06rem}.message-rich-text h4,.message-rich-text h5,.message-rich-text h6{font-size:1rem}.message-rich-text li+li{margin-top:6px}.message-rich-text strong{font-weight:700}.message-table-wrapper{width:100%;overflow-x:auto;border:1px solid rgba(20,33,61,.1);border-radius:16px}.message-table{width:100%;min-width:680px;border-collapse:collapse;background:#ffffffeb}.message-table th,.message-table td{padding:10px 12px;text-align:left;vertical-align:top;border-bottom:1px solid rgba(20,33,61,.08)}.message-table th{font-size:.9rem;font-weight:800;background:#17324d0f}.message-table td{font-size:.92rem;line-height:1.45}.message-table tr:last-child td{border-bottom:0}.message-role,.message-time{font-size:.82rem}.message-role{font-weight:700}.message-bubble.user .message-time,.message-bubble.user .attachment-chip small{color:#ffffffc2}.attachment-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.attachment-chip{display:inline-flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:14px;background:#ffffff1f}.message-bubble.assistant .attachment-chip{background:#17324d0f}.typing-bubble{display:inline-flex;gap:6px;align-items:center;min-width:90px}.typing-bubble span{width:8px;height:8px;border-radius:50%;background:#1f6f788c;animation:pulse 1.2s infinite ease-in-out}.typing-bubble span:nth-child(2){animation-delay:.2s}.typing-bubble span:nth-child(3){animation-delay:.4s}.composer{border-radius:24px;padding:18px}.composer-label{display:block;margin-bottom:12px;font-weight:700}.composer-row{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:14px}.composer-input{width:100%;resize:vertical;padding:14px 16px;border-radius:18px;border:1px solid rgba(20,33,61,.12);background:#ffffffe0;color:var(--navy)}.composer-input:focus{outline:2px solid rgba(31,111,120,.2);border-color:#1f6f7873}@keyframes pulse{0%,80%,to{opacity:.35;transform:scale(.9)}40%{opacity:1;transform:scale(1)}}@media (max-width: 1100px){.workspace-grid{grid-template-columns:1fr}.sidebar-panel{order:2}.chat-panel{order:1}}@media (max-width: 760px){.app-layout{padding:18px 14px 30px}.hero-card{padding:22px;border-radius:24px;flex-direction:column}.hero-meta{min-width:0}.chat-window{min-height:520px}.messages-list{max-height:500px;padding:18px}.message-bubble{max-width:94%}.composer-row{grid-template-columns:1fr}.send-button{width:100%}}
