:root{--background:#f6f7f4;--surface:#fff;--surface-muted:#eef3ed;--text:#19211b;--muted:#667064;--border:#d9dfd5;--accent:#147d5b;--accent-strong:#0d5d44;--accent-soft:#dcefe7;--success:#157347;--success-soft:#e7f6ee;--danger:#b42318;--danger-soft:#fff0ed;--shadow:0 18px 50px #19211b1a}*{box-sizing:border-box}html,body{min-height:100%}body{background:linear-gradient(180deg, #dcefe7b3, #f6f7f400 34rem), var(--background);color:var(--text);margin:0;font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif}button,textarea,input{font:inherit}a{color:inherit}.page-shell{min-height:100vh;padding:48px 20px}.workspace{width:min(1120px,100%);margin:0 auto}.intro{max-width:100%;margin-bottom:28px}.intro-head{align-items:flex-center;justify-content:space-between;gap:16px;width:min(1120px,100%);margin-bottom:18px;display:flex}.product-mark{color:var(--accent-strong);align-items:center;gap:10px;font-size:20px;font-weight:700;display:inline-flex}h1,h2,p{margin:0}h1{letter-spacing:0;max-width:680px;font-size:48px;line-height:1.1}.intro p{max-width:620px;color:var(--muted);margin-top:16px;font-size:18px;line-height:1.7}.page-actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.page-actions a{border:1px solid var(--border);background:var(--surface);min-height:40px;color:var(--accent-strong);border-radius:8px;justify-content:center;align-items:center;padding:0 14px;font-size:14px;font-weight:700;text-decoration:none;transition:border-color .16s,background .16s;display:inline-flex}.page-actions a:hover{border-color:var(--accent);background:var(--accent-soft)}.qa-grid,.upload-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:stretch;gap:20px;display:grid}.question-panel,.upload-panel,.answer-panel{border:1px solid var(--border);background:var(--surface);min-height:360px;box-shadow:var(--shadow);border-radius:8px}.question-panel,.upload-panel{flex-direction:column;gap:14px;padding:22px;display:flex}.question-panel label,.upload-panel label:not(.file-drop){color:var(--text);font-size:15px;font-weight:700}textarea{resize:vertical;border:1px solid var(--border);width:100%;min-height:214px;color:var(--text);background:#fbfcfa;border-radius:8px;outline:none;padding:14px 16px;line-height:1.6;transition:border-color .16s,box-shadow .16s}textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}textarea:disabled{cursor:not-allowed;opacity:.72}button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:46px;font-weight:700;transition:background .16s,transform .16s;display:inline-flex}button:hover:not(:disabled){background:var(--accent-strong);transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.76}input{border:1px solid var(--border);width:100%;min-height:46px;color:var(--text);background:#fbfcfa;border-radius:8px;outline:none;padding:0 14px;transition:border-color .16s,box-shadow .16s}input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.answer-panel{padding:24px}.panel-heading{align-items:center;gap:10px;margin-bottom:20px;display:flex}.panel-heading h2{letter-spacing:0;font-size:20px}.notice{border-radius:8px;align-items:flex-start;gap:10px;padding:14px;line-height:1.6;display:flex}.notice.error{background:var(--danger-soft);color:var(--danger);border:1px solid #b4231838}.notice.success{background:var(--success-soft);color:var(--success);border:1px solid #15734733}.answer-text{white-space:pre-wrap;color:var(--text);font-size:17px;line-height:1.8}.empty-state{border:1px dashed var(--border);background:var(--surface-muted);min-height:238px;color:var(--muted);text-align:center;border-radius:8px;place-items:center;display:grid}.empty-state.compact{min-height:118px}.file-drop{border:1px dashed var(--accent);background:var(--accent-soft);min-height:150px;color:var(--accent-strong);cursor:pointer;text-align:center;border-radius:8px;place-items:center;padding:18px;display:grid}.file-drop span{margin-top:8px;font-weight:800}.file-drop small{max-width:360px;color:var(--muted);margin-top:6px;line-height:1.5}.file-input{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.upload-summary{flex-direction:column;gap:16px;display:flex}.pending-summary{border:1px solid var(--border);color:var(--muted);background:#fbfcfa;border-radius:8px;padding:12px 14px;font-size:14px;line-height:1.6}.format-list{flex-wrap:wrap;gap:8px;display:flex}.format-list span{border:1px solid var(--border);color:var(--muted);background:#fbfcfa;border-radius:8px;align-items:center;gap:6px;padding:7px 10px;font-size:14px;font-weight:700;display:inline-flex}.file-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.file-list li{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.file-list span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upload-result-list li{background:0 0;border:0;padding:0}.file-meta{min-width:0}.file-meta span{font-weight:700;display:block}.path-link{color:var(--accent-strong);word-break:break-all;margin-top:6px;font-size:13px;line-height:1.6;display:block}.history-card{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;overflow:hidden}.history-link{color:inherit;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px;text-decoration:none;transition:background .16s,border-color .16s;display:grid}.history-link:hover{background:var(--accent-soft)}.history-meta{color:var(--muted);flex-wrap:wrap;gap:8px 12px;margin-top:8px;font-size:13px;display:flex}.history-time{align-items:center;gap:5px;display:inline-flex}.file-list small,.text-count{color:var(--muted);font-size:14px}.spin{animation:.9s linear infinite spin}.session-banner{border:1px solid var(--border);color:var(--muted);background:#ffffffd1;border-radius:999px;align-items:center;gap:12px;padding:8px 10px 8px 14px;font-size:14px;display:inline-flex}.secondary-button{border:1px solid var(--border);background:var(--surface);width:auto;min-height:34px;color:var(--accent-strong);padding:0 12px}.secondary-button:hover:not(:disabled){background:var(--accent-soft)}.loading-copy{min-height:240px;color:var(--muted);place-items:center;font-size:16px;display:grid}.auth-workspace{width:min(520px,100%)}.auth-panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:12px;padding:28px}.auth-copy{color:var(--muted);margin-top:14px;line-height:1.7}.auth-form{gap:14px;margin-top:24px;display:grid}.auth-form label{font-size:15px;font-weight:700}.auth-actions{margin-top:18px}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:760px){.page-shell{padding:28px 14px}h1{font-size:36px}.intro p{font-size:16px}.qa-grid,.upload-grid{grid-template-columns:1fr}.question-panel,.upload-panel,.answer-panel{min-height:auto}.file-list li{grid-template-columns:auto minmax(0,1fr)}.file-list small{grid-column:2}.history-link{grid-template-columns:auto minmax(0,1fr)}}
