:root{--bg:#f5efe2;--surface:rgba(255,250,241,.92);--text:#231815;--muted:#70645d;--line:rgba(35,24,21,.14);--green:#0c5c52;--green2:#174641;--brown:#432b24;--danger:#8a2b1d;--shadow:0 24px 70px rgba(70,42,28,.13);--r-lg:30px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"PingFang SC","Noto Sans SC","Microsoft YaHei",Arial,sans-serif;color:var(--text);background:radial-gradient(circle at 10% 0%,rgba(189,75,50,.17),transparent 28%),radial-gradient(circle at 90% 4%,rgba(12,92,82,.15),transparent 32%),linear-gradient(180deg,var(--bg),#faf7ef);min-height:100vh}.site-shell{width:min(1220px,calc(100% - 32px));margin:0 auto;padding:22px 0 54px}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0 18px;backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--green),var(--green2));color:#fff;font-family:Georgia,serif;font-size:24px}.brand strong{display:block}.brand small{display:block;color:var(--muted);font-size:12px}.topnav{display:flex;gap:10px}.topnav a,.admin-menu a{color:var(--text);text-decoration:none;border:1px solid var(--line);background:rgba(255,250,240,.65);border-radius:999px;padding:10px 14px;font-size:14px}.topnav .admin-link{background:var(--text);color:#fff}.hero{display:grid;grid-template-columns:1.35fr .9fr;gap:22px;margin:12px 0 24px}.hero-copy,.hero-board,.card{background:var(--surface);border:1px solid rgba(255,255,255,.55);box-shadow:var(--shadow);border-radius:var(--r-lg)}.hero-copy{padding:52px 34px}.eyebrow{margin:0 0 12px;color:var(--green);font-size:12px;letter-spacing:.15em;text-transform:uppercase}.hero h1{font-family:Georgia,"Times New Roman","Songti SC",serif;font-size:clamp(42px,6vw,76px);line-height:.98;margin:0 0 24px}.hero-text{font-size:17px;line-height:1.9;color:var(--muted)}.hero-actions,.trust-row{display:flex;gap:12px;flex-wrap:wrap}.trust-row{margin-top:22px}.trust-row span{border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.45);padding:8px 12px;color:var(--muted);font-size:13px}.primary-button,.secondary-button{border:0;border-radius:999px;padding:13px 18px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.primary-button{background:var(--text);color:#fff}.secondary-button{background:#efe7d9;color:var(--text);border:1px solid var(--line)}.full{grid-column:1/-1;width:100%}.hero-board{padding:20px;display:grid;align-content:center;gap:14px;background:linear-gradient(145deg,#0f675c,#173f3d);color:#fff}.board-header{display:flex;gap:8px}.board-header span{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.45)}.board-card{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:18px}.board-card small{display:block;opacity:.7;margin-bottom:8px}.board-card strong{font-size:26px}.workspace{display:grid;grid-template-columns:400px 1fr;gap:22px;align-items:start}.card{padding:24px}.input-panel{position:sticky;top:86px}.card-head{margin-bottom:18px}.card-head h2{margin:0 0 8px;font-size:24px}.card-head p{margin:0;color:var(--muted);line-height:1.7}.mode-tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:18px}.mode-tab{border:1px solid var(--line);background:#f4ecde;border-radius:16px;padding:12px;cursor:pointer;color:var(--muted);font-weight:700}.mode-tab.active{background:var(--green);color:#fff}.smart-form,.form-two,.compact-form{display:grid;gap:14px}.form-two{grid-template-columns:1fr 1fr}label span,label strong{display:block;font-size:13px;color:var(--muted);margin-bottom:8px}input,select,textarea{width:100%;border:1px solid var(--line);background:rgba(255,255,255,.72);border-radius:16px;padding:13px 14px;color:var(--text);font:inherit;outline:none}textarea{resize:vertical}.upload-box{border:1.5px dashed rgba(12,92,82,.32);background:rgba(12,92,82,.05);border-radius:20px;padding:16px}.upload-box input{background:#fff;margin-bottom:12px}.upload-box span,.upload-preview span{display:block;color:var(--muted);font-size:13px;line-height:1.6}.upload-preview{display:grid;grid-template-columns:84px 1fr;gap:14px;align-items:center}.upload-preview img{width:84px;height:84px;object-fit:cover;border-radius:18px}.form-message{border-radius:16px;padding:12px 14px;background:#f0eadf;color:var(--muted);line-height:1.6}.form-message.error{background:#f6dfd9;color:var(--danger)}.empty-result{text-align:center;min-height:280px;display:grid;place-content:center}.empty-result h2{font-size:34px;margin:0 0 10px}.empty-result p{color:var(--muted);line-height:1.8}.result-stack{display:grid;gap:18px}.action-banner{display:grid;grid-template-columns:1fr 120px;gap:16px;align-items:center;background:var(--brown);color:#fff;border-radius:24px;padding:22px}.action-banner h3{font-size:34px;margin:6px 0 10px}.action-banner p{color:rgba(255,255,255,.72);line-height:1.7;margin:0}.score-ring{width:108px;height:108px;border-radius:50%;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.1);display:grid;place-items:center;text-align:center}.score-ring strong{font-size:32px}.score-ring span{font-size:13px}.reason-list,.next-steps-list,.history-list,.admin-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.reason-list li,.next-steps-list li,.history-list li,.admin-list li{border:1px solid var(--line);background:rgba(255,255,255,.5);border-radius:18px;padding:14px;line-height:1.7}.reason-list strong,.history-list strong,.admin-list strong{display:block;margin-bottom:4px}.reason-list span,.history-list span,.admin-list span{display:block;color:var(--muted)}.question-stack{display:grid;gap:12px}.question-stack label{border:1px solid var(--line);background:rgba(255,255,255,.45);border-radius:18px;padding:14px}.chat-box{display:grid;grid-template-columns:1fr auto;gap:12px;margin-top:14px;align-items:end}.feedback-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.feedback-grid label:not(.full),.checkbox-row{display:flex;gap:10px;align-items:center;border:1px solid var(--line);background:rgba(255,255,255,.48);border-radius:16px;padding:12px}.feedback-grid input[type=checkbox],.checkbox-row input{width:auto}.trend-banner{border-radius:18px;background:rgba(12,92,82,.08);border:1px solid rgba(12,92,82,.16);padding:14px;color:var(--green);line-height:1.7;margin-bottom:12px}.empty-state{color:var(--muted);background:rgba(255,255,255,.45);border:1px dashed var(--line);border-radius:18px;padding:16px;text-align:center}.is-high .action-banner{background:linear-gradient(135deg,#68251b,#432b24)}.is-medium .action-banner{background:linear-gradient(135deg,#7b531b,#432b24)}.is-low .action-banner{background:linear-gradient(135deg,#1e6043,#173f3d)}.admin-layout{display:grid;grid-template-columns:320px 1fr;gap:22px;align-items:start}.admin-sidebar{position:sticky;top:86px}.admin-sidebar h1{font-size:42px;margin:0 0 10px}.admin-menu{display:grid;gap:10px;margin-top:18px}.admin-menu a{display:block;border-radius:16px}.admin-content{display:grid;gap:18px}.compact-form{grid-template-columns:1fr 1fr}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.stat-card{border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(255,255,255,.5)}.stat-card strong{display:block;font-size:26px}.stat-card span{color:var(--muted);font-size:13px}.pick-query{margin-top:10px}@media(max-width:980px){.hero,.workspace,.admin-layout{grid-template-columns:1fr}.input-panel,.admin-sidebar{position:static}.topnav{display:none}.chat-box,.form-two,.feedback-grid,.compact-form{grid-template-columns:1fr}.hero-copy{padding:36px 22px}.action-banner{grid-template-columns:1fr}}@media(max-width:560px){.site-shell{width:min(100% - 20px,1220px);padding-top:10px}.hero h1{font-size:42px}.card,.hero-copy,.hero-board{border-radius:22px;padding:18px}.mode-tabs{grid-template-columns:1fr 1fr}.action-banner h3{font-size:28px}}
.ghost-button{border:1px dashed rgba(44,35,31,.24);background:rgba(255,255,255,.45);color:#3a2d29;border-radius:999px;padding:12px 18px;font-weight:700;cursor:pointer}.toolbar-row{display:flex;gap:12px;align-items:center;margin:10px 0 14px}.code-box{white-space:pre-wrap;word-break:break-word;background:#171311;color:#f4efe7;border-radius:18px;padding:18px;max-height:360px;overflow:auto;font-size:12px;line-height:1.65}.scanner-panel{position:fixed;inset:0;background:rgba(15,12,10,.72);display:grid;place-items:center;z-index:99}.scanner-card{width:min(680px,92vw);background:#fffaf1;border-radius:28px;padding:18px;box-shadow:0 30px 80px rgba(0,0,0,.28)}.scanner-card video{width:100%;max-height:58vh;background:#111;border-radius:20px}.scanner-actions{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-top:12px}.scanner-hint{font-size:13px;color:#75665d}

/* Frontend AI chat experience */
body.chat-page{background:radial-gradient(circle at 8% 0%,rgba(12,92,82,.14),transparent 30%),radial-gradient(circle at 92% 8%,rgba(189,75,50,.13),transparent 32%),linear-gradient(180deg,#f6efe4,#fbf7ef);overflow-x:hidden}.chat-app-shell{width:min(1240px,calc(100% - 28px));margin:0 auto;min-height:100vh;padding:18px 0 32px}.chat-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0 16px}.ai-chat-layout{display:grid;grid-template-columns:360px 1fr;gap:22px;align-items:stretch;min-height:calc(100vh - 96px)}.ai-side-card{border-radius:32px;padding:30px;background:linear-gradient(145deg,#123f3a,#0a5a50);color:#fff;box-shadow:0 28px 80px rgba(22,50,44,.22);display:flex;flex-direction:column;justify-content:flex-start;gap:22px;min-height:620px}.ai-side-card .eyebrow{color:rgba(255,255,255,.72)}.ai-side-card h1{font-family:Georgia,"Times New Roman","Songti SC",serif;font-size:42px;line-height:1.08;margin:0 0 16px}.ai-side-card p{color:rgba(255,255,255,.78);line-height:1.9;margin:0}.side-pills{display:flex;flex-wrap:wrap;gap:9px}.side-pills span{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);border-radius:999px;padding:8px 11px;font-size:12px;color:rgba(255,255,255,.82)}.sample-prompts{display:grid;gap:10px}.sample-prompts button{text-align:left;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:#fff;border-radius:18px;padding:13px 14px;line-height:1.5;cursor:pointer}.sample-prompts button:hover{background:rgba(255,255,255,.16)}.recent-session-card{margin-top:auto;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);border-radius:24px;padding:16px}.section-mini-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.section-mini-head strong{font-size:15px}.section-mini-head span{font-size:12px;color:var(--muted)}.ai-side-card .section-mini-head span{color:rgba(255,255,255,.68)}.recent-query-stats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.recent-query-stats span{display:inline-flex;align-items:center;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);padding:6px 10px;font-size:12px;color:rgba(255,255,255,.82)}.recent-query-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.recent-filter-chip{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:#fff;border-radius:999px;padding:7px 10px;font-size:12px;cursor:pointer}.recent-filter-chip.active,.recent-filter-chip:hover{background:rgba(255,255,255,.18)}.recent-search-wrap{display:block;margin-bottom:10px}.recent-search-wrap input{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.16);color:#fff;padding:11px 12px}.recent-search-wrap input::placeholder{color:rgba(255,255,255,.5)}.recent-empty{border:1px dashed rgba(255,255,255,.18);border-radius:16px;padding:12px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.72)}.recent-query-list{display:grid;gap:10px}.recent-query-item{width:100%;text-align:left;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.1);color:#fff;border-radius:18px;padding:12px 13px;cursor:pointer}.recent-query-item:hover{background:rgba(255,255,255,.16)}.recent-query-top,.recent-query-summary,.recent-query-meta{display:block}.recent-query-top{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.recent-query-top strong{font-size:13px}.recent-query-top em{font-style:normal;font-size:12px;color:rgba(255,255,255,.72)}.recent-query-summary{font-size:13px;line-height:1.6;color:rgba(255,255,255,.88)}.recent-query-meta{margin-top:8px;font-size:11px;color:rgba(255,255,255,.62)}.ai-chat-window{background:rgba(255,250,241,.82);border:1px solid rgba(255,255,255,.62);box-shadow:var(--shadow);border-radius:32px;display:grid;grid-template-rows:auto 1fr auto auto;min-height:620px;max-height:calc(100vh - 98px);overflow:hidden}.chat-window-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.38)}.chat-window-head h2{margin:0;font-size:22px}.chat-status{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(12,92,82,.18);background:rgba(12,92,82,.08);color:var(--green);border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700}.chat-status span{width:8px;height:8px;border-radius:50%;background:#24a477}.chat-thread{padding:22px;overflow:auto;display:flex;flex-direction:column;gap:16px;scroll-behavior:smooth}.msg{display:flex;gap:10px;align-items:flex-start}.user-msg{justify-content:flex-end}.avatar{flex:0 0 34px;width:34px;height:34px;border-radius:13px;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:800;font-family:Georgia,serif}.user-avatar{background:#2f2622;font-family:inherit}.bubble{max-width:min(720px,78%);border:1px solid var(--line);border-radius:22px;padding:14px 16px;background:rgba(255,255,255,.74);line-height:1.75}.ai-msg .bubble{border-top-left-radius:8px}.user-msg .bubble{background:#2f2622;color:#fff;border-color:#2f2622;border-top-right-radius:8px}.bubble p{margin:0}.muted-line{color:var(--muted)!important;font-size:13px;margin-top:8px!important}.user-msg .bubble .muted-line{color:rgba(255,255,255,.7)!important}.msg-image{display:block;max-width:220px;max-height:220px;object-fit:cover;border-radius:16px;margin-bottom:10px}.system-line{align-self:center;font-size:13px;color:var(--muted);background:rgba(255,255,255,.6);border:1px dashed var(--line);border-radius:999px;padding:8px 12px}.system-line.error{color:var(--danger);background:#f6dfd9}.typing{display:flex;gap:5px;align-items:center}.typing span{width:8px;height:8px;border-radius:50%;background:rgba(12,92,82,.55);animation:typingBounce 1s infinite ease-in-out}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes typingBounce{0%,80%,100%{transform:translateY(0);opacity:.35}40%{transform:translateY(-5px);opacity:1}}.thinking-card{display:grid;gap:10px;min-width:min(420px,70vw)}.thinking-progress{height:7px;border-radius:999px;background:rgba(12,92,82,.08);overflow:hidden}.thinking-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#0c5c52,#2aa48d);transition:width .28s ease}.thinking-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.thinking-steps li{padding:8px 10px;border-radius:14px;background:rgba(255,255,255,.62);border:1px solid rgba(12,92,82,.08);font-size:12px;color:var(--muted);text-align:center}.thinking-steps li.active{background:rgba(12,92,82,.1);color:var(--green);border-color:rgba(12,92,82,.18);font-weight:700}.active-result{margin:0 22px 12px;border:1px solid rgba(12,92,82,.18);background:rgba(12,92,82,.06);border-radius:24px;padding:16px}.mini-result-head{display:flex;align-items:center;gap:10px}.mini-result-head span{border-radius:999px;background:var(--green);color:#fff;padding:6px 10px;font-size:12px;font-weight:800}.mini-result-head strong{font-size:18px}.mini-result-head em{margin-left:auto;font-style:normal;font-weight:900;font-size:28px;color:var(--green)}.active-result p{margin:10px 0;color:var(--muted);line-height:1.7}.mini-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mini-result-grid>div{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.58);padding:12px}.mini-result-grid ul{margin:8px 0 0;padding-left:18px;color:var(--muted);line-height:1.65}.mini-result-grid li+li{margin-top:5px}.followup-panel{margin-top:14px;border:1px dashed rgba(12,92,82,.18);background:rgba(255,255,255,.5);border-radius:22px;padding:14px}.followup-chip-list{display:flex;flex-wrap:wrap;gap:10px}.followup-chip{border:1px solid rgba(12,92,82,.14);background:#fff;border-radius:999px;padding:10px 14px;cursor:pointer;color:var(--text);font-size:13px;line-height:1.45}.followup-chip:hover{background:#f6efe4}.chat-result-card{margin-top:10px;border-radius:18px;background:rgba(12,92,82,.06);border:1px solid rgba(12,92,82,.15);padding:14px}.chat-result-title{display:flex;align-items:center;gap:9px}.chat-result-title span{background:var(--green);color:#fff;border-radius:999px;padding:5px 8px;font-size:12px}.chat-result-title b{font-size:18px}.chat-result-title em{margin-left:auto;font-style:normal;font-weight:900;color:var(--green);font-size:24px}.chat-result-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.chat-result-cols ul{margin:6px 0 0;padding-left:18px}.chat-result-cols li{margin:4px 0;color:var(--muted)}.chat-result-cols span{display:block;color:var(--muted);font-size:13px}.chat-composer{margin:0 22px 16px;border:1px solid var(--line);background:#fff;border-radius:24px;padding:10px;box-shadow:0 12px 30px rgba(70,42,28,.08)}.chat-composer textarea{border:0;background:transparent;border-radius:16px;min-height:48px;max-height:180px;padding:12px 12px;resize:none}.composer-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;border-top:1px solid rgba(35,24,21,.08);padding-top:9px}.icon-button,.send-button{border:0;border-radius:999px;padding:10px 14px;font-weight:800;cursor:pointer}.icon-button{background:#f0e8dc;color:var(--text);border:1px solid var(--line)}.send-button{background:var(--text);color:#fff;min-width:84px}.attachment-preview{display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center;margin:2px 2px 8px;padding:8px;border-radius:18px;background:#f6efe4;border:1px solid var(--line)}.attachment-preview img{width:54px;height:54px;object-fit:cover;border-radius:14px}.attachment-preview span{display:block;color:var(--muted);font-size:12px}.attachment-preview button{border:0;background:transparent;color:var(--danger);cursor:pointer}.chat-sub-actions{display:flex;gap:10px;padding:0 22px 18px}.drawer-mask{position:fixed;inset:0;background:rgba(25,20,18,.38);z-index:80}.side-drawer{position:fixed;right:18px;top:18px;bottom:18px;width:min(440px,calc(100vw - 36px));z-index:90;background:#fffaf1;border:1px solid rgba(255,255,255,.7);border-radius:28px;box-shadow:0 30px 80px rgba(0,0,0,.24);padding:20px;overflow:auto}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px}.drawer-head h3{margin:0;font-size:24px}.drawer-head button{border:1px solid var(--line);background:#f0e8dc;border-radius:999px;padding:8px 12px;cursor:pointer}.side-drawer>p{color:var(--muted);line-height:1.7}.side-drawer .feedback-grid{grid-template-columns:1fr}.side-drawer #chat-extra{margin:12px 0}.is-high .mini-result-head span,.is-high .chat-result-title span{background:#8a2b1d}.is-high .mini-result-head em,.is-high .chat-result-title em{color:#8a2b1d}.is-medium .mini-result-head span,.is-medium .chat-result-title span{background:#8a601d}.is-medium .mini-result-head em,.is-medium .chat-result-title em{color:#8a601d}@media(max-width:980px){.ai-chat-layout{grid-template-columns:1fr}.ai-side-card{min-height:auto}.ai-chat-window{max-height:none;min-height:72vh}.chat-result-cols,.mini-result-grid,.thinking-steps{grid-template-columns:1fr}.bubble{max-width:86%}}@media(max-width:560px){.chat-app-shell{width:min(100% - 18px,1240px)}.ai-side-card{display:none}.chat-window-head{padding:16px}.chat-thread{padding:14px}.bubble{max-width:calc(100vw - 92px);padding:12px 13px}.active-result,.chat-composer{margin-left:12px;margin-right:12px}.chat-sub-actions{padding-left:12px;padding-right:12px;flex-direction:column}.chat-status{display:none}.topnav{display:block}.topnav a{font-size:12px;padding:8px 10px}.thinking-card{min-width:0}}
.chat-insight-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 22px 0}.insight-chip{border:1px solid rgba(12,92,82,.12);background:rgba(255,255,255,.55);border-radius:18px;padding:12px 14px;min-height:74px}.insight-chip strong{display:block;font-size:13px;margin-bottom:6px}.insight-chip span{display:block;color:var(--muted);font-size:13px;line-height:1.6}.query-meta-bar{display:flex;gap:10px;flex-wrap:wrap;padding:6px 22px 0}.meta-pill{display:inline-flex;align-items:center;border-radius:999px;background:rgba(12,92,82,.08);border:1px solid rgba(12,92,82,.14);padding:7px 11px;color:var(--green);font-size:12px;font-weight:700}.result-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.metric-card{border:1px solid rgba(12,92,82,.14);background:rgba(255,255,255,.72);border-radius:18px;padding:12px 14px}.metric-card small{display:block;color:var(--muted);margin-bottom:8px}.metric-card strong{display:block;font-size:24px;line-height:1.1}.result-secondary-grid{margin-top:12px}.result-note{margin:8px 0 0!important}.intelligence-panel{margin-top:14px;border:1px solid rgba(12,92,82,.16);background:rgba(255,255,255,.6);border-radius:22px;padding:14px 15px}.intelligence-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.tiny-pill{display:inline-flex;align-items:center;border-radius:999px;background:#efe7d9;padding:6px 10px;font-size:12px;color:var(--muted);font-weight:700}.compact-bullet-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.compact-bullet-list li{position:relative;padding:10px 12px 10px 26px;border:1px solid rgba(35,24,21,.08);border-radius:16px;background:rgba(255,255,255,.52);color:var(--muted);line-height:1.65}.compact-bullet-list li::before{content:"";position:absolute;left:12px;top:17px;width:7px;height:7px;border-radius:50%;background:var(--green)}.compact-bullet-list strong{display:block;color:var(--text);margin-bottom:4px}.compact-bullet-list span,.compact-bullet-list small{display:block}.compact-bullet-list small{margin-top:4px;font-size:12px;color:var(--muted)}.intelligence-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.chat-result-metrics{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.chat-result-metrics span{display:inline-flex;align-items:center;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(12,92,82,.12);padding:6px 10px;font-size:12px;color:var(--green);font-weight:700}.composer-hint-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:4px 4px 0;color:var(--muted);font-size:12px}
.conversation-stage-banner{margin:12px 0 4px;padding:12px 14px;border-radius:18px;border:1px solid rgba(12,92,82,.16);background:rgba(255,255,255,.72)}.conversation-stage-banner strong{display:block;font-size:14px;margin-bottom:6px;color:var(--green)}.conversation-stage-banner p{margin:0 0 6px!important;color:var(--text)}.conversation-stage-banner small{display:block;color:var(--muted);line-height:1.6}.conversation-missing-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.conversation-missing-row span{display:inline-flex;align-items:center;border-radius:999px;background:rgba(12,92,82,.08);border:1px solid rgba(12,92,82,.12);padding:6px 10px;font-size:12px;color:var(--green)}
.result-toggle-button{margin-left:auto;padding:8px 12px;font-size:12px}.active-result.is-collapsed{background:rgba(255,255,255,.72);border-color:rgba(35,24,21,.12)}.active-result.is-collapsed .result-metrics,.active-result.is-collapsed .mini-result-grid,.active-result.is-collapsed .intelligence-panel,.active-result.is-collapsed .followup-panel,.active-result.is-collapsed #summary-text{display:none}.inline-prompt-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
@media(max-width:980px){.chat-insight-strip,.result-metrics,.intelligence-columns{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.chat-insight-strip,.result-metrics,.intelligence-columns{grid-template-columns:1fr}.query-meta-bar{padding-left:12px;padding-right:12px}.composer-hint-row{padding-left:4px;padding-right:4px;flex-direction:column;gap:6px}}

/* Deployment management */
.deploy-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.stat-card.good{border-color:rgba(32,197,125,.35);background:rgba(32,197,125,.08)}.stat-card.bad{border-color:rgba(255,96,96,.36);background:rgba(255,96,96,.08)}.deploy-upload-box{margin:16px 0;padding:16px;border:1px solid rgba(148,163,184,.18);border-radius:18px;background:rgba(15,23,42,.45)}.muted-note{margin:10px 0 0;color:#8fa3bd;font-size:13px;line-height:1.7}.split-grid{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);gap:16px;margin-top:18px}.admin-list.compact li{padding:12px}.log-box{min-height:260px;max-height:420px;overflow:auto;white-space:pre-wrap}.toolbar-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:14px 0}.checkbox-row{display:flex!important;align-items:center;gap:9px}.checkbox-row input{width:auto!important}.deploy-upload-box input[type=file]{padding:12px;border:1px dashed rgba(148,163,184,.3);border-radius:14px;background:rgba(2,6,23,.35);color:#dbeafe}@media (max-width:900px){.deploy-status-grid,.split-grid{grid-template-columns:1fr}.toolbar-row button{width:100%}}

/* Scanner modal reliability fix */
.scanner-panel[hidden], .drawer-mask[hidden], .side-drawer[hidden], .active-result[hidden], .chat-sub-actions[hidden], .attachment-preview[hidden]{display:none!important;}
.scanner-card{position:relative;z-index:100;}
.scanner-actions button{position:relative;z-index:101;cursor:pointer;}
.brain-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.brain-setting-card{border:1px solid var(--line);background:rgba(255,255,255,.52);border-radius:18px;padding:14px}
.brain-setting-card small{display:block;color:var(--muted);margin-top:6px}
.brain-setting-card .setting-section{display:inline-block;border-radius:999px;background:#efe7d9;padding:4px 8px;font-size:12px;color:var(--muted);margin-bottom:8px}
.danger-button{border:1px solid rgba(138,43,29,.22);background:rgba(138,43,29,.08);color:var(--danger);border-radius:999px;padding:12px 18px;font-weight:700;cursor:pointer}
.admin-action-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
@media(max-width:900px){.brain-settings-grid{grid-template-columns:1fr}}
.admin-page-hidden{display:none!important}.admin-menu a.active{background:rgba(66,133,244,.13);border-color:rgba(66,133,244,.35);color:#fff}.chat-page .ai-chat-layout.single-dialog{max-width:980px;margin:0 auto;grid-template-columns:1fr}.chat-page .single-dialog .ai-chat-window{min-height:calc(100vh - 120px)}.minimal-front-note{color:#7d8aa5;font-size:13px;text-align:center;margin:8px 0 0}.chat-topbar.minimal{justify-content:center}.chat-topbar.minimal .topnav{position:absolute;right:24px}.admin-shell .admin-sidebar{position:sticky;top:18px}.admin-menu a{display:block;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;margin:6px 0;text-decoration:none}.danger-button{background:#8f1d2c;color:#fff;border:0;border-radius:12px;padding:12px 14px;cursor:pointer}


/* ===== GEXYRAL AI GPT-style landing + wide chat page override ===== */
body.gpt-home-page,
body.gpt-chat-page{
  background:
    radial-gradient(circle at 18% 18%, rgba(12,92,82,.08), transparent 28%),
    radial-gradient(circle at 82% 12%, rgba(170,120,70,.08), transparent 30%),
    #f7f7f4 !important;
  color:#111827;
}
.gpt-home-shell{min-height:100vh;width:min(1120px,calc(100% - 32px));margin:0 auto;display:flex;flex-direction:column;}
.gpt-home-brand{height:82px;display:flex;align-items:center;justify-content:center;gap:12px;}
.gpt-brand-mark,.brand-mark.gpt-brand-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:#0b6b5e;color:#fff;font-size:24px;font-weight:900;font-family:Georgia,"Times New Roman",serif;box-shadow:0 14px 36px rgba(12,92,82,.18);}
.gpt-brand-text{display:grid;text-align:left;line-height:1.1;}
.gpt-brand-text strong{font-size:17px;letter-spacing:.04em;color:#111827;}
.gpt-brand-text small{margin-top:5px;font-size:12px;color:#6b7280;}
.gpt-home-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:26px 0 74px;text-align:center;}
.gpt-kicker{margin:0 0 16px;font-size:13px;font-weight:800;letter-spacing:.34em;color:#0b6b5e;}
.gpt-home-center h1{margin:0;font-size:clamp(42px,6vw,76px);line-height:1.08;font-weight:900;letter-spacing:-.06em;color:#0f172a;}
.gpt-subtitle{margin:22px 0 34px;font-size:17px;color:#4b5563;}
.gpt-home-composer{width:min(880px,100%);background:#fff;border:1px solid rgba(17,24,39,.1);border-radius:30px;box-shadow:0 24px 80px rgba(17,24,39,.10);padding:18px;}
.gpt-home-composer textarea{width:100%;height:150px;border:0;outline:0;resize:none;background:transparent;box-sizing:border-box;font-size:17px;line-height:1.7;color:#111827;padding:10px 2px;}
.gpt-home-composer textarea::placeholder{color:#9ca3af;}
.gpt-home-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;border-top:1px solid rgba(17,24,39,.08);padding-top:14px;}
.gpt-light-btn,.gpt-send-btn{height:44px;border-radius:999px;padding:0 22px;font-size:15px;font-weight:800;cursor:pointer;transition:.18s ease;}
.gpt-light-btn{background:#fff;border:1px solid rgba(12,92,82,.22);color:#0b6b5e;}
.gpt-light-btn:hover{background:rgba(12,92,82,.06);}
.gpt-send-btn{border:0;background:#17110f;color:#fff;box-shadow:0 12px 26px rgba(23,17,15,.16);}
.gpt-send-btn:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(23,17,15,.22);}
.gpt-home-examples{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px;}
.gpt-home-examples button{border:1px solid rgba(12,92,82,.12);background:rgba(255,255,255,.74);color:#374151;border-radius:999px;padding:10px 15px;cursor:pointer;font-size:13px;}
.gpt-home-examples button:hover{background:#fff;color:#0b6b5e;}
.gpt-home-note{margin:26px 0 0;font-size:12px;color:#8a93a3;}

/* wide chat view */
body.gpt-chat-page .chat-app-shell{width:min(1180px,calc(100% - 28px));padding:14px 0 24px;}
body.gpt-chat-page .chat-topbar.minimal{height:54px;padding:0;justify-content:center;}
body.gpt-chat-page .chat-topbar .brand{gap:10px;text-decoration:none;color:#111827;}
body.gpt-chat-page .chat-topbar .brand-mark{width:36px;height:36px;border-radius:12px;background:#0b6b5e;box-shadow:none;}
body.gpt-chat-page .ai-chat-layout.single-dialog{max-width:1120px;margin:0 auto;grid-template-columns:1fr;min-height:calc(100vh - 86px);}
body.gpt-chat-page .single-dialog .ai-chat-window{min-height:calc(100vh - 90px);max-height:none;border-radius:26px;background:#fff;border:1px solid rgba(17,24,39,.08);box-shadow:0 18px 60px rgba(17,24,39,.08);grid-template-rows:auto 1fr auto auto auto;}
body.gpt-chat-page .chat-window-head{padding:18px 24px;background:#fff;border-bottom:1px solid rgba(17,24,39,.07);}
body.gpt-chat-page .chat-window-head .eyebrow{display:none;}
body.gpt-chat-page .chat-window-head h2{font-size:20px;font-weight:850;}
body.gpt-chat-page .chat-status{display:none;}
body.gpt-chat-page .minimal-front-note{display:none;}
body.gpt-chat-page .chat-thread{padding:28px 34px 18px;gap:18px;background:linear-gradient(180deg,#fff,#fbfbfa);}
body.gpt-chat-page .bubble{max-width:min(820px,82%);background:#f5f5f3;border-color:rgba(17,24,39,.06);border-radius:22px;padding:15px 17px;color:#111827;}
body.gpt-chat-page .ai-msg .bubble{border-top-left-radius:8px;}
body.gpt-chat-page .user-msg .bubble{background:#17110f;color:#fff;border-color:#17110f;border-top-right-radius:8px;}
body.gpt-chat-page .avatar{background:#0b6b5e;border-radius:12px;}
body.gpt-chat-page .user-avatar{background:#17110f;}
body.gpt-chat-page .chat-composer{margin:0 28px 18px;border-radius:26px;border:1px solid rgba(17,24,39,.10);box-shadow:0 14px 42px rgba(17,24,39,.08);background:#fff;padding:12px;}
body.gpt-chat-page .chat-composer textarea{min-height:58px;font-size:16px;padding:12px 14px;}
body.gpt-chat-page .composer-actions{border-top:1px solid rgba(17,24,39,.07);padding-top:10px;}
body.gpt-chat-page .icon-button{background:#fff;border:1px solid rgba(12,92,82,.18);color:#0b6b5e;}
body.gpt-chat-page .send-button{background:#17110f;color:#fff;}
body.gpt-chat-page .composer-hint-row{font-size:12px;color:#9ca3af;padding:0 5px 3px;}
body.gpt-chat-page .query-meta-bar{margin:0 28px 12px;justify-content:flex-start;}
body.gpt-chat-page .active-result{margin:0 28px 14px;background:#f7faf8;border-color:rgba(12,92,82,.14);}
body.gpt-chat-page .chat-sub-actions{padding:0 28px 20px;}
body.gpt-chat-page .recent-session-card{display:none!important;}
body.gpt-chat-page .scanner-panel{z-index:200;}
@media(max-width:720px){
  .gpt-home-brand{justify-content:flex-start;height:72px;}
  .gpt-home-center{justify-content:flex-start;padding-top:54px;}
  .gpt-home-center h1{font-size:38px;letter-spacing:-.04em;}
  .gpt-subtitle{font-size:15px;margin:16px 0 24px;}
  .gpt-home-composer{border-radius:24px;padding:14px;}
  .gpt-home-composer textarea{height:132px;font-size:15px;}
  .gpt-home-actions{gap:8px;}
  .gpt-light-btn,.gpt-send-btn{height:40px;padding:0 14px;font-size:14px;}
  .gpt-home-examples{display:none;}
  body.gpt-chat-page .chat-app-shell{width:100%;padding:0;}
  body.gpt-chat-page .chat-topbar.minimal{height:58px;padding:0 12px;justify-content:flex-start;background:#fff;border-bottom:1px solid rgba(17,24,39,.07);}
  body.gpt-chat-page .ai-chat-layout.single-dialog{min-height:calc(100vh - 58px);}
  body.gpt-chat-page .single-dialog .ai-chat-window{min-height:calc(100vh - 58px);border-radius:0;border-left:0;border-right:0;}
  body.gpt-chat-page .chat-window-head{display:none;}
  body.gpt-chat-page .chat-thread{padding:18px 12px;}
  body.gpt-chat-page .bubble{max-width:calc(100vw - 86px);}
  body.gpt-chat-page .chat-composer{margin:0 10px 10px;border-radius:22px;}
  body.gpt-chat-page .active-result,body.gpt-chat-page .query-meta-bar{margin-left:10px;margin-right:10px;}
}


/* ===== 2026-04-27 final homepage/chat brand + footer fix ===== */
body.gpt-home-page .gpt-home-shell{
  justify-content:center;
}
body.gpt-home-page .gpt-home-center{
  min-height:100vh;
  justify-content:center;
  padding:32px 0 56px;
}
body.gpt-home-page .gpt-hero-brand{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin:0 0 34px;
}
body.gpt-home-page .gpt-hero-brand .gpt-brand-text strong{
  font-size:20px;
}
body.gpt-home-page .gpt-hero-brand .gpt-brand-text small{
  font-size:13px;
}
body.gpt-home-page .gpt-kicker{
  display:none!important;
}
body.gpt-chat-page .chat-app-shell{
  padding-bottom:10px;
}
.gpt-ai-footer{
  width:min(1120px,calc(100% - 28px));
  margin:0 auto 24px;
  padding:8px 12px 0;
  text-align:center;
  color:#7d8aa5;
  font-size:12px;
  line-height:1.7;
}
.gpt-ai-footer p{
  margin:4px 0;
}
.gpt-ai-footer p:first-child{
  padding-top:12px;
  border-top:1px solid rgba(17,24,39,.08);
}
@media(max-width:720px){
  body.gpt-home-page .gpt-home-center{
    min-height:auto;
    justify-content:flex-start;
    padding:28px 0 34px;
  }
  body.gpt-home-page .gpt-hero-brand{
    margin-bottom:24px;
  }
  body.gpt-home-page .gpt-hero-brand .gpt-brand-text strong{
    font-size:17px;
  }
  body.gpt-home-page .gpt-hero-brand .gpt-brand-text small{
    font-size:12px;
  }
  .gpt-ai-footer{
    width:100%;
    box-sizing:border-box;
    margin-bottom:12px;
    padding-left:16px;
    padding-right:16px;
  }
}




/* =========================================================
   GEXYRAL AI UI Patch 06
   入口聚焦：验证结果 / 信息可信度
   能力隐藏扩展：页面、防伪码、截图、商家说明
   ========================================================= */

:root{
  --gex-bg:#f4f1e9;
  --gex-ink:#161411;
  --gex-muted:#6f675f;
  --gex-card:rgba(255,255,255,.78);
  --gex-card-strong:rgba(255,255,255,.94);
  --gex-line:rgba(22,20,17,.1);
  --gex-green:#0e5f55;
  --gex-green-2:#063f39;
  --gex-gold:#ad7a38;
  --gex-soft:#fff9ef;
  --gex-danger:#8b2b1e;
}

body.gex-home-page,
body.gex-chat-page{
  color:var(--gex-ink);
  background:
    radial-gradient(circle at 20% 8%, rgba(14,95,85,.14), transparent 30%),
    radial-gradient(circle at 80% 16%, rgba(173,122,56,.16), transparent 28%),
    linear-gradient(180deg,#f8f4eb 0%,#eee8dc 100%);
}

.gex-home-shell{
  min-height:calc(100vh - 58px);
  width:min(980px,calc(100% - 32px));
  margin:0 auto;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:20px;
  padding:48px 0 24px;
}

.gex-hero-card{
  position:relative;
  overflow:hidden;
  padding:34px;
  border-radius:34px;
  background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,250,241,.82));
  border:1px solid rgba(255,255,255,.74);
  box-shadow:0 30px 90px rgba(46,34,20,.14);
}

.gex-hero-card:before{
  content:"";
  position:absolute;
  inset:-80px -90px auto auto;
  width:260px;
  height:260px;
  border-radius:999px;
  background:rgba(14,95,85,.11);
  filter:blur(4px);
}

.gex-brand-lockup{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:13px;
  margin-bottom:42px;
}

.gex-brand-mark{
  width:46px;
  height:46px;
  border-radius:17px;
  box-shadow:0 14px 32px rgba(14,95,85,.18);
}

.gex-brand-lockup strong{
  display:block;
  font-size:17px;
  letter-spacing:.03em;
}

.gex-brand-lockup small{
  display:block;
  color:var(--gex-muted);
  font-size:13px;
  margin-top:2px;
}

.gex-hero-copy{
  position:relative;
  z-index:1;
  text-align:center;
  margin:0 auto 24px;
}

.gex-hero-copy h1{
  margin:0;
  font-size:clamp(34px,6vw,62px);
  line-height:1.08;
  letter-spacing:-.06em;
  font-weight:850;
}

.gex-hero-copy p{
  margin:18px auto 0;
  max-width:650px;
  color:#49413a;
  font-size:18px;
  line-height:1.8;
}

.gex-home-composer{
  position:relative;
  z-index:1;
  max-width:760px;
  margin:0 auto;
  padding:12px;
  border-radius:28px;
  background:#fff;
  border:1px solid rgba(22,20,17,.08);
  box-shadow:0 18px 50px rgba(36,28,16,.12);
}

.gex-home-composer textarea{
  display:block;
  width:100%;
  min-height:120px;
  resize:none;
  border:0;
  outline:0;
  background:transparent;
  padding:18px 18px 10px;
  color:var(--gex-ink);
  font-size:17px;
  line-height:1.7;
  font-family:inherit;
}

.gex-home-composer textarea::placeholder{
  color:#9b9288;
}

.gex-home-tools{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:0 12px 10px;
}

.gex-home-tools button,
.gex-capability-row button{
  border:1px solid rgba(14,95,85,.16);
  background:#f7fbf8;
  color:#24564f;
  border-radius:999px;
  padding:8px 12px;
  font-size:13px;
  cursor:pointer;
}

.gex-home-tools button:hover,
.gex-capability-row button:hover{
  background:#eef7f3;
  border-color:rgba(14,95,85,.28);
}

.gex-home-actions{
  display:flex;
  gap:10px;
  justify-content:flex-end;
  border-top:1px solid rgba(22,20,17,.08);
  padding:12px;
}

.gex-light-btn,
.gex-primary-btn{
  border:0;
  border-radius:999px;
  padding:12px 18px;
  font-weight:750;
  cursor:pointer;
  font-size:15px;
}

.gex-light-btn{
  background:#f4f1ea;
  color:#4b443e;
}

.gex-primary-btn{
  background:linear-gradient(135deg,var(--gex-green),var(--gex-green-2));
  color:#fff;
  box-shadow:0 14px 28px rgba(14,95,85,.22);
}

.gex-safety-note{
  text-align:center;
  color:var(--gex-muted);
  font-size:13px;
  margin:14px 0 0;
}

.gex-trust-strip{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}

.gex-trust-strip div{
  padding:16px 18px;
  border-radius:22px;
  background:rgba(255,255,255,.64);
  border:1px solid rgba(255,255,255,.68);
  box-shadow:0 12px 34px rgba(46,34,20,.07);
}

.gex-trust-strip b{
  display:block;
  margin-bottom:6px;
}

.gex-trust-strip span{
  display:block;
  font-size:13px;
  color:var(--gex-muted);
  line-height:1.6;
}

.gex-second-line{
  text-align:center;
  color:#403932;
  padding:8px 0 0;
}

.gex-second-line p{
  margin:0 0 6px;
  font-size:20px;
  font-weight:800;
}

.gex-second-line small{
  color:var(--gex-muted);
}

.gex-home-footer{
  text-align:center;
  color:var(--gex-muted);
  font-size:12px;
  padding:0 16px 20px;
}

/* Chat UI */

.gex-chat-shell{
  width:min(1120px,calc(100% - 26px));
  margin:0 auto;
}

.gex-chat-topbar{
  width:100%;
  padding:18px 0 14px;
}

.gex-beta-pill{
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(14,95,85,.18);
  background:rgba(255,255,255,.58);
  color:#23544d;
  border-radius:999px;
  padding:8px 12px;
  font-size:12px;
  font-weight:700;
}

.gex-chat-layout{
  padding:0 0 20px;
}

.gex-chat-window{
  border-radius:30px;
  border:1px solid rgba(255,255,255,.7);
  background:rgba(255,255,255,.72);
  box-shadow:0 26px 80px rgba(38,28,17,.13);
  overflow:hidden;
}

.gex-window-head{
  padding:20px 22px 12px;
  border-bottom:0;
}

.gex-window-head h2{
  letter-spacing:-.03em;
}

.gex-head-desc{
  margin:8px 0 0;
  color:var(--gex-muted);
  font-size:14px;
}

.gex-capability-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:0 22px 12px;
}

.gex-front-note{
  margin:0 22px 12px;
  padding:11px 14px;
  border-radius:16px;
  background:rgba(14,95,85,.06);
  border:1px solid rgba(14,95,85,.1);
  color:#31564f;
}

.gex-chat-window .chat-thread{
  padding:18px 22px;
  background:
    linear-gradient(180deg,rgba(255,250,241,.45),rgba(255,255,255,.55));
}

.gex-chat-window .bubble{
  border-radius:22px;
}

.gex-chat-window .ai-msg .bubble{
  background:#fff;
  border:1px solid rgba(22,20,17,.08);
  box-shadow:0 10px 28px rgba(38,28,17,.06);
}

.gex-chat-window .user-msg .bubble{
  background:linear-gradient(135deg,#0e5f55,#063f39);
  color:#fff;
}

.gex-composer{
  margin:0 22px 18px;
  border-radius:26px;
  background:#fff;
  border:1px solid rgba(22,20,17,.1);
  box-shadow:0 18px 44px rgba(38,28,17,.11);
}

.gex-composer textarea{
  min-height:54px;
  padding:16px 16px 8px;
  font-size:16px;
}

.gex-composer .composer-actions{
  border-top:1px solid rgba(22,20,17,.08);
  padding:10px;
}

.gex-composer .icon-button{
  background:#f5f2eb;
  color:#3f3932;
  border:1px solid rgba(22,20,17,.08);
}

.gex-composer .send-button{
  background:linear-gradient(135deg,var(--gex-green),var(--gex-green-2));
  color:#fff;
  box-shadow:0 12px 24px rgba(14,95,85,.22);
}

.gex-composer .composer-hint-row{
  padding:0 14px 12px;
  color:#8b8178;
}

.gex-result-panel{
  margin:0 22px 16px;
  border-radius:24px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(22,20,17,.08);
}

.gex-chat-footer{
  background:transparent;
  color:#776d63;
}

.thinking-detail{
  margin-top:10px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(14,95,85,.06);
  border:1px solid rgba(14,95,85,.1);
}

.thinking-detail b{
  display:block;
  font-size:12px;
  color:#23544d;
  margin-bottom:4px;
}

.thinking-detail p{
  margin:0;
  color:#4f4942;
  font-size:13px;
  line-height:1.6;
}

.result-card-soft{
  background:#fff;
  border:1px solid rgba(22,20,17,.08);
  border-radius:20px;
  padding:16px;
}

.result-top{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
}

.badge.warn{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  background:#fff4d9;
  color:#8b5e13;
  padding:5px 9px;
  font-size:12px;
  font-weight:800;
}

.error-card{
  border-radius:18px;
  background:#fff5f1;
  color:#7b2118;
  border:1px solid rgba(139,43,30,.18);
  padding:14px;
}

@media (max-width:760px){
  .gex-home-shell{
    width:min(100% - 20px,680px);
    padding:22px 0 16px;
  }

  .gex-hero-card{
    padding:22px;
    border-radius:28px;
  }

  .gex-brand-lockup{
    margin-bottom:30px;
  }

  .gex-hero-copy{
    text-align:left;
  }

  .gex-hero-copy h1{
    font-size:36px;
  }

  .gex-hero-copy p{
    font-size:16px;
  }

  .gex-home-actions{
    justify-content:stretch;
  }

  .gex-home-actions button{
    flex:1;
    padding-left:10px;
    padding-right:10px;
  }

  .gex-trust-strip{
    grid-template-columns:1fr;
  }

  .gex-chat-shell{
    width:100%;
  }

  .gex-chat-topbar{
    padding:12px 14px;
  }

  .gex-beta-pill{
    display:none;
  }

  .gex-chat-window{
    border-radius:0;
    min-height:calc(100vh - 110px);
  }

  .gex-window-head,
  .gex-capability-row{
    padding-left:14px;
    padding-right:14px;
  }

  .gex-front-note,
  .gex-composer,
  .gex-result-panel{
    margin-left:14px;
    margin-right:14px;
  }

  .gex-chat-window .chat-thread{
    padding-left:14px;
    padding-right:14px;
  }
}
/* =========================================================
   GEXYRAL AI Patch 07
   首页首屏 / 移动端优先 / Chat 能力按钮修复
   用法：在 styles.css 最后追加本文件内容，或直接覆盖同名文件后追加。
   ========================================================= */

/* 全局防止横向滚动 */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}

*{
  box-sizing:border-box;
}

/* 首页：PC端尽量一屏，不出现明显滚动条 */
body.gex-home-page{
  min-height:100vh;
  overflow-x:hidden;
}

body.gex-home-page .gex-home-shell{
  min-height:auto;
  width:min(920px, calc(100% - 32px));
  padding:34px 0 10px;
  gap:14px;
}

body.gex-home-page .gex-hero-card{
  padding:26px 28px 24px;
  border-radius:30px;
}

body.gex-home-page .gex-brand-lockup{
  margin-bottom:22px;
}

body.gex-home-page .gex-brand-lockup strong{
  font-size:16px;
}

body.gex-home-page .gex-brand-lockup small{
  font-size:12px;
  line-height:1.3;
}

/* 首页大口号：明显缩小，避免压迫和撑高页面 */
body.gex-home-page .gex-hero-copy h1{
  font-size:clamp(30px, 4.2vw, 46px) !important;
  line-height:1.14;
  letter-spacing:-.05em;
  max-width:780px;
  margin-left:auto;
  margin-right:auto;
}

body.gex-home-page .gex-hero-copy p{
  margin-top:12px;
  font-size:15px;
  line-height:1.7;
}

body.gex-home-page .gex-home-composer{
  max-width:700px;
  border-radius:25px;
}

body.gex-home-page .gex-home-composer textarea{
  min-height:102px;
  padding:16px 16px 8px;
  font-size:15px;
}

body.gex-home-page .gex-home-actions{
  padding:10px;
}

body.gex-home-page .gex-light-btn,
body.gex-home-page .gex-primary-btn{
  padding:10px 16px;
  font-size:14px;
}

body.gex-home-page .gex-safety-note{
  margin-top:10px;
  font-size:12px;
}

body.gex-home-page .gex-trust-strip{
  max-width:900px;
  margin:0 auto;
  gap:10px;
}

body.gex-home-page .gex-trust-strip div{
  padding:12px 15px;
  border-radius:18px;
}

body.gex-home-page .gex-second-line{
  padding-top:2px;
}

body.gex-home-page .gex-second-line p{
  font-size:18px;
  margin-bottom:3px;
}

body.gex-home-page .gex-home-footer{
  padding:0 12px 10px;
  font-size:11px;
}

/* Chat 页面：修复能力按钮被拉成竖条的问题 */
body.gex-chat-page .gex-capability-row{
  display:flex !important;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  padding:0 22px 12px;
}

body.gex-chat-page .gex-capability-row button{
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  writing-mode:horizontal-tb !important;
  white-space:nowrap !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  padding:7px 12px !important;
  border-radius:999px !important;
  line-height:1.25 !important;
  font-size:13px !important;
  flex:0 0 auto !important;
}

/* Chat 首页提示区域减少高度 */
body.gex-chat-page .gex-window-head{
  padding:18px 22px 10px;
}

body.gex-chat-page .gex-window-head h2{
  font-size:24px;
  margin:0;
}

body.gex-chat-page .gex-head-desc{
  font-size:13px;
  margin-top:6px;
}

body.gex-chat-page .gex-front-note{
  font-size:13px;
  padding:9px 12px;
}

/* Chat 输入区更紧凑 */
body.gex-chat-page .gex-composer{
  border-radius:23px;
}

body.gex-chat-page .gex-composer textarea{
  min-height:50px;
  max-height:140px;
}

body.gex-chat-page .gex-composer .composer-actions{
  align-items:center;
}

body.gex-chat-page .gex-composer .composer-hint-row{
  font-size:12px;
}

/* 移动端：重点优化 */
@media (max-width: 760px){
  body.gex-home-page{
    overflow-y:auto;
    background:
      radial-gradient(circle at 16% 0%, rgba(14,95,85,.12), transparent 28%),
      radial-gradient(circle at 86% 8%, rgba(173,122,56,.13), transparent 30%),
      linear-gradient(180deg,#f8f4eb 0%,#eee8dc 100%);
  }

  body.gex-home-page .gex-home-shell{
    width:calc(100% - 20px);
    min-height:100svh;
    justify-content:flex-start;
    padding:14px 0 10px;
    gap:10px;
  }

  body.gex-home-page .gex-hero-card{
    padding:18px 16px 16px;
    border-radius:24px;
    box-shadow:0 18px 48px rgba(38,28,17,.12);
  }

  body.gex-home-page .gex-brand-lockup{
    gap:10px;
    margin-bottom:18px;
  }

  body.gex-home-page .gex-brand-mark{
    width:40px;
    height:40px;
    border-radius:14px;
  }

  body.gex-home-page .gex-brand-lockup strong{
    font-size:15px;
  }

  body.gex-home-page .gex-brand-lockup small{
    font-size:11px;
  }

  body.gex-home-page .gex-hero-copy{
    text-align:left;
    margin-bottom:16px;
  }

  body.gex-home-page .gex-hero-copy h1{
    font-size:30px !important;
    line-height:1.16;
    letter-spacing:-.045em;
  }

  body.gex-home-page .gex-hero-copy p{
    font-size:14px;
    line-height:1.65;
    margin-top:10px;
  }

  body.gex-home-page .gex-home-composer{
    padding:9px;
    border-radius:22px;
    max-width:100%;
  }

  body.gex-home-page .gex-home-composer textarea{
    min-height:96px;
    padding:13px 12px 8px;
    font-size:14px;
    line-height:1.65;
  }

  body.gex-home-page .gex-home-tools{
    padding:0 6px 8px;
    gap:6px;
  }

  body.gex-home-page .gex-home-tools button{
    font-size:12px;
    padding:7px 9px;
  }

  body.gex-home-page .gex-home-actions{
    display:grid;
    grid-template-columns:1fr 1fr 1.15fr;
    gap:7px;
    padding:9px 6px 6px;
  }

  body.gex-home-page .gex-light-btn,
  body.gex-home-page .gex-primary-btn{
    width:100%;
    padding:10px 8px;
    font-size:13px;
  }

  body.gex-home-page .gex-safety-note{
    font-size:11px;
    line-height:1.5;
    margin-top:8px;
  }

  body.gex-home-page .gex-trust-strip{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
  }

  body.gex-home-page .gex-trust-strip div{
    padding:11px 13px;
    border-radius:17px;
  }

  body.gex-home-page .gex-trust-strip b{
    margin-bottom:3px;
  }

  body.gex-home-page .gex-trust-strip span{
    font-size:12px;
  }

  body.gex-home-page .gex-second-line{
    padding:4px 4px 0;
  }

  body.gex-home-page .gex-second-line p{
    font-size:16px;
  }

  body.gex-home-page .gex-second-line small{
    font-size:11px;
    line-height:1.5;
  }

  body.gex-home-page .gex-home-footer{
    padding-bottom:8px;
    font-size:10px;
  }

  /* Chat移动端 */
  body.gex-chat-page .gex-chat-topbar{
    padding:10px 12px;
  }

  body.gex-chat-page .brand{
    gap:9px;
  }

  body.gex-chat-page .brand-mark{
    width:36px;
    height:36px;
    border-radius:13px;
    flex:0 0 36px;
  }

  body.gex-chat-page .brand strong{
    font-size:15px;
  }

  body.gex-chat-page .brand small{
    font-size:11px;
  }

  body.gex-chat-page .gex-chat-window{
    border-radius:22px 22px 0 0;
    min-height:calc(100svh - 58px);
  }

  body.gex-chat-page .gex-window-head{
    padding:15px 14px 8px;
  }

  body.gex-chat-page .gex-window-head .eyebrow{
    font-size:10px;
    letter-spacing:.22em;
  }

  body.gex-chat-page .gex-window-head h2{
    font-size:21px;
    line-height:1.25;
  }

  body.gex-chat-page .chat-status{
    display:none;
  }

  body.gex-chat-page .gex-capability-row{
    padding:0 14px 9px;
    gap:6px;
    overflow-x:auto;
    flex-wrap:nowrap;
    scrollbar-width:none;
  }

  body.gex-chat-page .gex-capability-row::-webkit-scrollbar{
    display:none;
  }

  body.gex-chat-page .gex-capability-row button{
    font-size:12px !important;
    padding:7px 10px !important;
  }

  body.gex-chat-page .gex-front-note{
    margin:0 14px 10px;
    font-size:12px;
    line-height:1.55;
  }

  body.gex-chat-page .gex-chat-window .chat-thread{
    padding:12px 12px 10px;
  }

  body.gex-chat-page .msg{
    gap:8px;
  }

  body.gex-chat-page .avatar{
    width:34px;
    height:34px;
    border-radius:12px;
    flex:0 0 34px;
  }

  body.gex-chat-page .bubble{
    max-width:calc(100vw - 76px);
    padding:13px 14px;
    border-radius:18px;
    font-size:14px;
  }

  body.gex-chat-page .inline-prompt-row,
  body.gex-chat-page .followup-chip-list{
    gap:6px;
  }

  body.gex-chat-page .followup-chip,
  body.gex-chat-page .inline-prompt-row button{
    font-size:12px;
    padding:7px 9px;
  }

  body.gex-chat-page .query-meta-bar{
    margin:0 12px 6px;
    gap:5px;
    overflow-x:auto;
    scrollbar-width:none;
  }

  body.gex-chat-page .query-meta-bar::-webkit-scrollbar{
    display:none;
  }

  body.gex-chat-page .meta-pill{
    white-space:nowrap;
    font-size:11px;
    padding:5px 8px;
  }

  body.gex-chat-page .gex-result-panel{
    margin:0 12px 12px;
    border-radius:20px;
    padding:12px;
  }

  body.gex-chat-page .mini-result-head{
    align-items:flex-start;
    gap:8px;
  }

  body.gex-chat-page .result-metrics{
    grid-template-columns:repeat(2,1fr);
    gap:8px;
  }

  body.gex-chat-page .mini-result-grid,
  body.gex-chat-page .result-secondary-grid,
  body.gex-chat-page .intelligence-columns{
    grid-template-columns:1fr;
    gap:12px;
  }

  body.gex-chat-page .gex-composer{
    margin:0 12px 12px;
    border-radius:22px;
  }

  body.gex-chat-page .gex-composer textarea{
    min-height:46px;
    font-size:14px;
    padding:13px 12px 7px;
  }

  body.gex-chat-page .gex-composer .composer-actions{
    display:grid;
    grid-template-columns:1fr 1fr 1.15fr;
    gap:7px;
    padding:8px;
  }

  body.gex-chat-page .gex-composer .icon-button,
  body.gex-chat-page .gex-composer .send-button{
    width:100%;
    min-width:0;
    padding:10px 6px;
    font-size:13px;
  }

  body.gex-chat-page .gex-composer .composer-hint-row{
    padding:0 10px 10px;
    font-size:11px;
    line-height:1.5;
  }

  body.gex-chat-page .gex-chat-footer{
    padding:8px 12px 12px;
    font-size:10px;
    line-height:1.5;
  }

  body.gex-chat-page .side-drawer{
    width:100%;
    max-width:100%;
    border-radius:22px 22px 0 0;
  }
}

/* 极小屏 */
@media (max-width: 380px){
  body.gex-home-page .gex-hero-copy h1{
    font-size:27px !important;
  }

  body.gex-home-page .gex-home-actions,
  body.gex-chat-page .gex-composer .composer-actions{
    grid-template-columns:1fr;
  }

  body.gex-home-page .gex-light-btn,
  body.gex-home-page .gex-primary-btn,
  body.gex-chat-page .gex-composer .icon-button,
  body.gex-chat-page .gex-composer .send-button{
    padding:11px 10px;
  }
}
/* =========================================================
   GEXYRAL AI Patch 08
   PC首页居中 / LOGO独立居中 / 标题缩小 / Chat高度加大 / 移动端精简
   追加到 app/web/static/styles.css 最底部
   ========================================================= */

/* ---------- INDEX：首页整体居中 ---------- */
body.gex-home-page{
  min-height:100vh !important;
  overflow:hidden !important;
}

body.gex-home-page .gex-home-shell{
  min-height:100vh !important;
  width:min(860px, calc(100% - 32px)) !important;
  margin:0 auto !important;
  padding:18px 0 12px !important;
  justify-content:center !important;
  align-items:center !important;
  gap:12px !important;
}

body.gex-home-page .gex-hero-card{
  width:100% !important;
  padding:24px 28px 22px !important;
  border-radius:30px !important;
}

/* LOGO 独立居中一行 */
body.gex-home-page .gex-brand-lockup{
  justify-content:center !important;
  text-align:center !important;
  margin:0 auto 18px !important;
  flex-direction:column !important;
  gap:8px !important;
}

body.gex-home-page .gex-brand-lockup .gex-brand-mark{
  width:44px !important;
  height:44px !important;
  border-radius:16px !important;
}

body.gex-home-page .gex-brand-lockup strong{
  font-size:16px !important;
  line-height:1.1 !important;
}

body.gex-home-page .gex-brand-lockup small{
  font-size:12px !important;
  line-height:1.2 !important;
}

/* 首页主标题继续缩小 */
body.gex-home-page .gex-hero-copy{
  text-align:center !important;
  margin-bottom:18px !important;
}

body.gex-home-page .gex-hero-copy h1{
  font-size:clamp(28px, 3.6vw, 38px) !important;
  line-height:1.16 !important;
  letter-spacing:-.04em !important;
  max-width:650px !important;
  margin:0 auto !important;
}

body.gex-home-page .gex-hero-copy p{
  font-size:14px !important;
  line-height:1.55 !important;
  margin-top:10px !important;
}

body.gex-home-page .gex-home-composer{
  max-width:660px !important;
  margin:0 auto !important;
  border-radius:24px !important;
}

body.gex-home-page .gex-home-composer textarea{
  min-height:86px !important;
  font-size:14px !important;
  padding:14px 15px 8px !important;
}

body.gex-home-page .gex-home-tools{
  justify-content:flex-start !important;
  padding:0 10px 8px !important;
}

body.gex-home-page .gex-home-tools button{
  padding:6px 10px !important;
  font-size:12px !important;
}

body.gex-home-page .gex-home-actions{
  padding:9px 10px !important;
}

body.gex-home-page .gex-light-btn,
body.gex-home-page .gex-primary-btn{
  padding:9px 15px !important;
  font-size:13px !important;
}

body.gex-home-page .gex-safety-note{
  margin-top:8px !important;
  font-size:11px !important;
}

body.gex-home-page .gex-trust-strip{
  width:100% !important;
  max-width:660px !important;
  grid-template-columns:repeat(3, 1fr) !important;
  gap:8px !important;
}

body.gex-home-page .gex-trust-strip div{
  padding:10px 12px !important;
  border-radius:17px !important;
}

body.gex-home-page .gex-trust-strip b{
  font-size:14px !important;
  margin-bottom:3px !important;
}

body.gex-home-page .gex-trust-strip span{
  font-size:11px !important;
  line-height:1.45 !important;
}

body.gex-home-page .gex-second-line{
  padding:0 !important;
}

body.gex-home-page .gex-second-line p{
  font-size:16px !important;
  margin-bottom:3px !important;
}

body.gex-home-page .gex-second-line small{
  font-size:11px !important;
}

body.gex-home-page .gex-home-footer{
  padding:0 !important;
  font-size:10px !important;
}

/* ---------- CHAT：PC端对话区域增高，顶部变矮 ---------- */
body.gex-chat-page{
  min-height:100vh !important;
  overflow:hidden !important;
}

body.gex-chat-page .gex-chat-shell{
  width:min(980px, calc(100% - 28px)) !important;
  height:calc(100vh - 36px) !important;
  margin:18px auto !important;
  display:flex !important;
  flex-direction:column !important;
}

body.gex-chat-page .gex-chat-topbar{
  padding:0 0 10px !important;
  flex:0 0 auto !important;
  justify-content:center !important;
  gap:14px !important;
}

body.gex-chat-page .gex-chat-layout{
  flex:1 1 auto !important;
  min-height:0 !important;
  padding:0 !important;
}

body.gex-chat-page .gex-chat-window{
  height:100% !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
}

body.gex-chat-page .gex-window-head{
  flex:0 0 auto !important;
  padding:14px 20px 6px !important;
}

body.gex-chat-page .gex-window-head h2{
  font-size:21px !important;
  margin:0 !important;
}

body.gex-chat-page .gex-head-desc{
  font-size:12px !important;
  margin-top:4px !important;
}

/* 顶部能力按钮减少占高 */
body.gex-chat-page .gex-capability-row{
  flex:0 0 auto !important;
  padding:0 20px 7px !important;
  gap:6px !important;
}

body.gex-chat-page .gex-capability-row button{
  padding:6px 10px !important;
  font-size:12px !important;
}

/* 顶部说明压缩 */
body.gex-chat-page .gex-front-note{
  flex:0 0 auto !important;
  margin:0 20px 8px !important;
  padding:8px 12px !important;
  font-size:12px !important;
  line-height:1.45 !important;
}

/* 聊天区明显加高 */
body.gex-chat-page .gex-chat-window .chat-thread{
  flex:1 1 auto !important;
  min-height:360px !important;
  overflow-y:auto !important;
  padding:14px 20px !important;
}

/* 结果区域不能把输入框挤没 */
body.gex-chat-page .gex-result-panel{
  flex:0 1 auto !important;
  max-height:42vh !important;
  overflow-y:auto !important;
  margin:0 20px 10px !important;
}

/* 底部输入固定占位，别太大 */
body.gex-chat-page .query-meta-bar{
  flex:0 0 auto !important;
  margin:0 20px 5px !important;
}

body.gex-chat-page .gex-composer{
  flex:0 0 auto !important;
  margin:0 20px 10px !important;
}

body.gex-chat-page .gex-composer textarea{
  min-height:42px !important;
  max-height:100px !important;
  font-size:14px !important;
}

body.gex-chat-page .gex-composer .composer-actions{
  padding:7px 9px !important;
}

body.gex-chat-page .gex-composer .composer-hint-row{
  padding:0 11px 8px !important;
  font-size:11px !important;
}

body.gex-chat-page .chat-sub-actions{
  flex:0 0 auto !important;
  margin:0 20px 8px !important;
}

body.gex-chat-page .gex-chat-footer{
  display:none !important;
}

/* ---------- 移动端：文字更少，chat更高，index不出现内部滚动框 ---------- */
@media (max-width:760px){
  body.gex-home-page{
    overflow:hidden !important;
    height:100svh !important;
  }

  body.gex-home-page .gex-home-shell{
    width:calc(100% - 18px) !important;
    height:100svh !important;
    min-height:100svh !important;
    padding:10px 0 8px !important;
    gap:8px !important;
    justify-content:center !important;
  }

  body.gex-home-page .gex-hero-card{
    padding:15px 14px 13px !important;
    border-radius:22px !important;
  }

  body.gex-home-page .gex-brand-lockup{
    margin-bottom:12px !important;
    gap:6px !important;
  }

  body.gex-home-page .gex-brand-lockup .gex-brand-mark{
    width:38px !important;
    height:38px !important;
    border-radius:14px !important;
  }

  body.gex-home-page .gex-brand-lockup strong{
    font-size:14px !important;
  }

  body.gex-home-page .gex-brand-lockup small{
    font-size:10px !important;
  }

  body.gex-home-page .gex-hero-copy{
    margin-bottom:12px !important;
  }

  body.gex-home-page .gex-hero-copy h1{
    font-size:24px !important;
    line-height:1.16 !important;
    max-width:320px !important;
  }

  /* 手机端副说明压缩 */
  body.gex-home-page .gex-hero-copy p{
    font-size:12px !important;
    line-height:1.45 !important;
    max-width:320px !important;
    margin-top:7px !important;
  }

  body.gex-home-page .gex-home-composer{
    padding:8px !important;
    border-radius:20px !important;
  }

  body.gex-home-page .gex-home-composer textarea{
    min-height:72px !important;
    font-size:13px !important;
    line-height:1.5 !important;
    padding:11px 10px 6px !important;
  }

  body.gex-home-page .gex-home-tools{
    padding:0 4px 6px !important;
    gap:5px !important;
    overflow-x:auto !important;
    flex-wrap:nowrap !important;
    scrollbar-width:none !important;
  }

  body.gex-home-page .gex-home-tools::-webkit-scrollbar{
    display:none !important;
  }

  body.gex-home-page .gex-home-tools button{
    white-space:nowrap !important;
    flex:0 0 auto !important;
    font-size:11px !important;
    padding:6px 8px !important;
  }

  body.gex-home-page .gex-home-actions{
    grid-template-columns:1fr 1fr 1.1fr !important;
    padding:7px 4px 4px !important;
    gap:6px !important;
  }

  body.gex-home-page .gex-light-btn,
  body.gex-home-page .gex-primary-btn{
    padding:9px 5px !important;
    font-size:12px !important;
  }

  body.gex-home-page .gex-safety-note{
    font-size:10px !important;
    line-height:1.3 !important;
    margin-top:6px !important;
  }

  /* 手机端隐藏三张说明卡，减少文字和高度 */
  body.gex-home-page .gex-trust-strip{
    display:none !important;
  }

  body.gex-home-page .gex-second-line{
    display:none !important;
  }

  body.gex-home-page .gex-home-footer{
    font-size:9px !important;
    line-height:1.25 !important;
  }

  /* CHAT移动端：整体一屏布局 */
  body.gex-chat-page{
    height:100svh !important;
    overflow:hidden !important;
  }

  body.gex-chat-page .gex-chat-shell{
    width:100% !important;
    height:100svh !important;
    margin:0 !important;
  }

  body.gex-chat-page .gex-chat-topbar{
    padding:8px 12px !important;
    justify-content:flex-start !important;
    height:52px !important;
  }

  body.gex-chat-page .gex-beta-pill{
    display:none !important;
  }

  body.gex-chat-page .brand-mark{
    width:34px !important;
    height:34px !important;
    flex-basis:34px !important;
  }

  body.gex-chat-page .brand strong{
    font-size:14px !important;
  }

  body.gex-chat-page .brand small{
    font-size:10px !important;
  }

  body.gex-chat-page .gex-chat-window{
    height:calc(100svh - 52px) !important;
    border-radius:20px 20px 0 0 !important;
  }

  /* 手机端减少顶部文字 */
  body.gex-chat-page .gex-window-head{
    padding:10px 12px 5px !important;
  }

  body.gex-chat-page .gex-window-head .eyebrow{
    display:none !important;
  }

  body.gex-chat-page .gex-window-head h2{
    font-size:18px !important;
    line-height:1.25 !important;
  }

  body.gex-chat-page .gex-head-desc{
    display:none !important;
  }

  body.gex-chat-page .gex-capability-row{
    padding:0 12px 6px !important;
    gap:5px !important;
    overflow-x:auto !important;
    flex-wrap:nowrap !important;
    scrollbar-width:none !important;
  }

  body.gex-chat-page .gex-capability-row::-webkit-scrollbar{
    display:none !important;
  }

  body.gex-chat-page .gex-capability-row button{
    font-size:11px !important;
    padding:6px 8px !important;
  }

  body.gex-chat-page .gex-front-note{
    display:none !important;
  }

  body.gex-chat-page .gex-chat-window .chat-thread{
    min-height:0 !important;
    flex:1 1 auto !important;
    padding:10px 10px !important;
  }

  body.gex-chat-page .bubble{
    font-size:13px !important;
    line-height:1.55 !important;
    padding:11px 12px !important;
    max-width:calc(100vw - 68px) !important;
  }

  body.gex-chat-page .bubble p{
    margin-top:5px !important;
  }

  body.gex-chat-page .avatar{
    width:32px !important;
    height:32px !important;
    flex-basis:32px !important;
  }

  body.gex-chat-page .inline-prompt-row{
    display:flex !important;
    overflow-x:auto !important;
    flex-wrap:nowrap !important;
    gap:5px !important;
    scrollbar-width:none !important;
  }

  body.gex-chat-page .inline-prompt-row::-webkit-scrollbar{
    display:none !important;
  }

  body.gex-chat-page .followup-chip{
    white-space:nowrap !important;
    font-size:11px !important;
    padding:6px 8px !important;
  }

  body.gex-chat-page .query-meta-bar{
    margin:0 10px 5px !important;
  }

  body.gex-chat-page .gex-result-panel{
    max-height:36vh !important;
    margin:0 10px 8px !important;
    padding:10px !important;
  }

  body.gex-chat-page .gex-composer{
    margin:0 10px 8px !important;
    border-radius:19px !important;
  }

  body.gex-chat-page .gex-composer textarea{
    min-height:42px !important;
    max-height:86px !important;
    font-size:13px !important;
    padding:11px 10px 5px !important;
  }

  body.gex-chat-page .gex-composer .composer-actions{
    grid-template-columns:1fr 1fr 1.05fr !important;
    gap:6px !important;
    padding:7px !important;
  }

  body.gex-chat-page .gex-composer .icon-button,
  body.gex-chat-page .gex-composer .send-button{
    font-size:12px !important;
    padding:9px 5px !important;
  }

  body.gex-chat-page .gex-composer .composer-hint-row{
    display:none !important;
  }

  body.gex-chat-page .chat-sub-actions{
    margin:0 10px 7px !important;
    gap:6px !important;
  }

  body.gex-chat-page .chat-sub-actions .secondary-button{
    font-size:12px !important;
    padding:9px 10px !important;
  }
}

@media (max-width:380px){
  body.gex-home-page .gex-hero-copy h1{
    font-size:22px !important;
  }

  body.gex-home-page .gex-hero-copy p{
    font-size:11px !important;
  }

  body.gex-home-page .gex-home-composer textarea{
    min-height:66px !important;
  }
}




/* =========================================================
   GEXYRAL AI FINAL GPT-LIKE UI
   2026-04-28
   覆盖旧样式；保留旧样式给后台兼容。
   ========================================================= */

:root{
  --gpt-bg:#f7f7f8;
  --gpt-panel:#ffffff;
  --gpt-text:#111827;
  --gpt-muted:#6b7280;
  --gpt-line:#e5e7eb;
  --gpt-soft:#f3f4f6;
  --gpt-green:#0b6b5f;
  --gpt-green-dark:#084e45;
  --gpt-shadow:0 18px 45px rgba(17,24,39,.08);
  --gpt-radius:24px;
}

html,body{
  width:100%;
  max-width:100%;
  margin:0;
  overflow-x:hidden;
  font-family:"Inter","PingFang SC","Microsoft YaHei",Arial,sans-serif;
}

.gpt-ui-page,
.gpt-chat-page{
  background:var(--gpt-bg) !important;
  color:var(--gpt-text) !important;
}

/* ========== HOME LIKE GPT ========== */

body.gex-home-page.gpt-ui-page{
  height:100svh !important;
  min-height:100svh !important;
  overflow:hidden !important;
}

.gpt-home{
  height:100svh;
  width:100%;
  display:grid;
  grid-template-rows:1fr auto;
  padding:22px 18px max(14px,env(safe-area-inset-bottom));
}

.gpt-home-center{
  width:min(760px,100%);
  margin:0 auto;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  min-height:0;
}

.gpt-logo-block{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:6px;
  margin-bottom:26px;
}

.gpt-logo-mark,
.gpt-chat-brand .brand-mark,
.gpt-empty-logo{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:14px;
  background:linear-gradient(135deg,var(--gpt-green),var(--gpt-green-dark));
  color:#fff;
  font-family:Georgia,serif;
  font-size:24px;
  font-weight:700;
  box-shadow:none;
  flex:0 0 auto;
}

.gpt-logo-block strong{
  font-size:18px;
  letter-spacing:.01em;
  line-height:1;
}

.gpt-logo-block small{
  color:var(--gpt-muted);
  font-size:13px;
  line-height:1.2;
}

.gpt-title-block{
  text-align:center;
  margin-bottom:22px;
}

.gpt-title-block h1{
  margin:0;
  font-size:clamp(28px,4.2vw,40px);
  line-height:1.15;
  letter-spacing:-.04em;
  font-weight:750;
}

.gpt-title-block p{
  margin:10px 0 0;
  color:var(--gpt-muted);
  font-size:15px;
  line-height:1.6;
}

.gpt-home-composer{
  width:min(680px,100%);
  background:var(--gpt-panel);
  border:1px solid var(--gpt-line);
  border-radius:26px;
  box-shadow:var(--gpt-shadow);
  padding:12px;
}

.gpt-home-composer textarea{
  width:100%;
  min-height:116px;
  max-height:180px;
  border:0;
  outline:0;
  resize:none;
  background:transparent;
  padding:12px 12px 8px;
  font:inherit;
  font-size:15px;
  line-height:1.65;
  color:var(--gpt-text);
}

.gpt-home-composer textarea::placeholder{
  color:#9ca3af;
}

.gpt-chip-row{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:0 6px 10px;
}

.gpt-chip-row button,
.gpt-suggestion-row button,
.inline-prompt-row button,
.followup-chip,
.followup-chip-list button{
  border:1px solid var(--gpt-line);
  background:#fff;
  color:#374151;
  border-radius:999px;
  padding:8px 12px;
  font-size:13px;
  line-height:1;
  cursor:pointer;
}

.gpt-chip-row button:hover,
.gpt-suggestion-row button:hover,
.inline-prompt-row button:hover,
.followup-chip:hover,
.followup-chip-list button:hover{
  background:var(--gpt-soft);
}

.gpt-composer-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  border-top:1px solid var(--gpt-line);
  padding:10px 6px 0;
}

.gpt-sub-btn,
.gpt-main-btn{
  border:0;
  border-radius:999px;
  padding:10px 16px;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
}

.gpt-sub-btn{
  background:var(--gpt-soft);
  color:#374151;
}

.gpt-main-btn{
  background:var(--gpt-text);
  color:#fff;
}

.gpt-home-note{
  margin:13px 0 0;
  color:var(--gpt-muted);
  font-size:12px;
  text-align:center;
}

.gpt-home-footer{
  width:min(760px,100%);
  margin:18px auto 0;
  text-align:center;
  color:var(--gpt-muted);
  font-size:12px;
  line-height:1.6;
}

.gpt-home-footer span{
  display:block;
  color:#374151;
  font-weight:700;
  margin-bottom:2px;
}

.gpt-home-footer small{
  display:block;
}

/* ========== CHAT LIKE GPT ========== */

body.gpt-chat-page{
  height:100svh !important;
  min-height:100svh !important;
  overflow:hidden !important;
}

.gpt-chat-app{
  height:100svh;
  display:grid;
  grid-template-rows:56px minmax(0,1fr) 24px;
  background:var(--gpt-bg);
}

.gpt-chat-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:min(980px,100%);
  margin:0 auto;
  padding:0 18px;
}

.gpt-chat-brand{
  display:flex;
  align-items:center;
  gap:10px;
  color:inherit;
  text-decoration:none;
}

.gpt-chat-brand .brand-mark{
  width:36px;
  height:36px;
  border-radius:12px;
  font-size:20px;
}

.gpt-chat-brand strong{
  display:block;
  font-size:15px;
  line-height:1.1;
}

.gpt-chat-brand small{
  display:block;
  color:var(--gpt-muted);
  font-size:12px;
  margin-top:2px;
}

.gpt-status-dot{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#065f46;
  background:#ecfdf5;
  border:1px solid #bbf7d0;
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  font-weight:700;
}

.gpt-chat-main{
  min-height:0;
  width:min(980px,100%);
  margin:0 auto;
  padding:0 18px;
}

.gpt-chat-panel{
  height:100%;
  min-height:0;
  display:grid;
  grid-template-rows:minmax(0,1fr) auto auto auto;
  background:var(--gpt-panel);
  border:1px solid var(--gpt-line);
  border-radius:24px;
  box-shadow:var(--gpt-shadow);
  overflow:hidden;
}

.gpt-chat-thread{
  min-height:0 !important;
  overflow-y:auto !important;
  padding:24px 24px 18px !important;
  background:#fff !important;
}

.gpt-chat-thread::-webkit-scrollbar,
.gpt-result-panel::-webkit-scrollbar{
  width:8px;
}
.gpt-chat-thread::-webkit-scrollbar-thumb,
.gpt-result-panel::-webkit-scrollbar-thumb{
  background:#d1d5db;
  border-radius:999px;
}

.gpt-empty-state{
  min-height:36vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:10px;
  color:var(--gpt-text);
}

.gpt-empty-state h1{
  margin:6px 0 0;
  font-size:30px;
  letter-spacing:-.04em;
  line-height:1.1;
}

.gpt-empty-state p{
  margin:0;
  color:var(--gpt-muted);
  font-size:15px;
}

.gpt-empty-state small{
  color:#9ca3af;
  font-size:12px;
}

.gpt-empty-logo{
  width:46px;
  height:46px;
}

.gpt-suggestion-row{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:center;
  margin:8px 0 0;
}

.gpt-initial-msg{
  margin-top:8px !important;
}

.msg{
  display:flex;
  gap:12px;
  margin:12px 0;
}

.avatar{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:12px;
  background:var(--gpt-green);
  color:#fff;
  font-family:Georgia,serif;
  font-weight:700;
}

.bubble{
  max-width:min(720px,calc(100% - 46px));
  border-radius:18px;
  padding:13px 15px;
  line-height:1.65;
  font-size:14px;
  border:1px solid var(--gpt-line);
  background:#fff;
  color:var(--gpt-text);
}

.ai-msg .bubble{
  background:#fff;
}

.user-msg{
  justify-content:flex-end;
}

.user-msg .avatar{
  order:2;
  background:#111827;
}

.user-msg .bubble{
  background:#111827;
  color:#fff;
  border-color:#111827;
}

.bubble p{
  margin:5px 0 0;
}

.inline-prompt-row,
.followup-chip-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

.gpt-meta-bar{
  display:flex;
  gap:6px;
  overflow-x:auto;
  padding:0 18px 8px;
  background:#fff;
}

.meta-pill{
  display:inline-flex;
  white-space:nowrap;
  align-items:center;
  border:1px solid var(--gpt-line);
  background:var(--gpt-soft);
  color:#374151;
  border-radius:999px;
  padding:6px 9px;
  font-size:12px;
  font-weight:700;
}

.gpt-result-panel{
  max-height:38vh;
  overflow-y:auto;
  margin:0 18px 10px;
  padding:14px;
  border:1px solid var(--gpt-line);
  border-radius:18px;
  background:#fbfbfb;
}

.mini-result-head{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.mini-result-head strong{
  flex:1;
}

.mini-result-head em{
  font-style:normal;
  font-size:24px;
  font-weight:800;
  color:var(--gpt-green);
}

#summary-text{
  color:#374151;
  line-height:1.7;
  margin:9px 0 12px;
}

.result-metrics{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  margin:10px 0;
}

.metric-card{
  border:1px solid var(--gpt-line);
  background:#fff;
  border-radius:14px;
  padding:10px;
}

.metric-card small{
  display:block;
  color:var(--gpt-muted);
  font-size:11px;
}

.metric-card strong{
  display:block;
  margin-top:5px;
}

.mini-result-grid,
.result-secondary-grid,
.intelligence-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:12px;
}

.mini-result-grid > div,
.intelligence-panel,
.followup-panel{
  border:1px solid var(--gpt-line);
  background:#fff;
  border-radius:14px;
  padding:12px;
}

.compact-bullet-list,
.mini-result-grid ul{
  margin:8px 0 0;
  padding-left:18px;
  color:#4b5563;
  line-height:1.7;
  font-size:13px;
}

.result-note{
  color:var(--gpt-muted);
  font-size:13px;
}

.tiny-pill,
#risk-level-badge{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  background:#ecfdf5;
  color:#047857;
  padding:5px 8px;
  font-size:12px;
  font-weight:800;
}

.ghost-button,
.secondary-button,
.primary-button{
  border:1px solid var(--gpt-line);
  background:#fff;
  color:#374151;
  border-radius:999px;
  padding:8px 12px;
  font-weight:700;
  cursor:pointer;
}

.primary-button,
.send-button{
  background:var(--gpt-text);
  color:#fff;
  border-color:var(--gpt-text);
}

.gpt-chat-composer{
  margin:0 18px 10px;
  background:#fff;
  border:1px solid var(--gpt-line);
  border-radius:22px;
  box-shadow:0 12px 24px rgba(17,24,39,.06);
  padding:10px;
}

.gpt-chat-composer textarea{
  width:100%;
  min-height:52px;
  max-height:130px;
  resize:none;
  border:0;
  outline:0;
  background:transparent;
  font:inherit;
  font-size:15px;
  line-height:1.55;
  padding:8px 8px 5px;
  color:var(--gpt-text);
}

.gpt-chat-composer textarea::placeholder{
  color:#9ca3af;
}

.composer-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  padding-top:8px;
  border-top:1px solid var(--gpt-line);
}

.icon-button,
.send-button{
  border:0;
  border-radius:999px;
  padding:9px 14px;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
}

.icon-button{
  background:var(--gpt-soft);
  color:#374151;
}

.send-button{
  background:var(--gpt-text);
  color:#fff;
}

.composer-hint-row{
  padding:7px 6px 0;
  color:#9ca3af;
  font-size:12px;
}

.attachment-preview{
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid var(--gpt-line);
  background:var(--gpt-soft);
  border-radius:14px;
  padding:8px;
  margin-bottom:8px;
}

.attachment-preview img{
  width:44px;
  height:44px;
  object-fit:cover;
  border-radius:10px;
}

.chat-sub-actions{
  display:flex;
  gap:8px;
  padding:0 18px 10px;
  background:#fff;
}

.gpt-chat-footer{
  display:grid;
  place-items:center;
  color:#9ca3af;
  font-size:11px;
}

/* thinking / error */
.thinking-card,
.result-card-soft,
.error-card{
  border:1px solid var(--gpt-line);
  background:#fff;
  border-radius:18px;
  padding:14px;
  max-width:720px;
}

.thinking-progress{
  height:6px;
  background:var(--gpt-soft);
  border-radius:999px;
  overflow:hidden;
  margin:10px 0;
}
.thinking-progress span{
  display:block;
  height:100%;
  width:20%;
  background:var(--gpt-green);
  transition:.3s;
}
.thinking-steps{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  padding:0;
  margin:8px 0 0;
  list-style:none;
}
.thinking-steps li{
  border:1px solid var(--gpt-line);
  border-radius:999px;
  padding:5px 8px;
  color:var(--gpt-muted);
  font-size:12px;
}
.thinking-steps li.active{
  background:#ecfdf5;
  color:#047857;
}
.thinking-detail{
  margin-top:10px;
  background:var(--gpt-soft);
  border-radius:14px;
  padding:10px;
}
.thinking-detail b{
  display:block;
  font-size:12px;
  margin-bottom:4px;
}
.thinking-detail p{
  margin:0;
  color:#4b5563;
  font-size:13px;
}

.error-card{
  color:#991b1b;
  background:#fff7f7;
  border-color:#fecaca;
}

/* drawers */
.drawer-mask{
  position:fixed;
  inset:0;
  background:rgba(17,24,39,.35);
  z-index:50;
}
.side-drawer{
  position:fixed;
  right:18px;
  top:70px;
  bottom:18px;
  width:min(420px,calc(100% - 36px));
  background:#fff;
  border:1px solid var(--gpt-line);
  border-radius:22px;
  box-shadow:0 24px 70px rgba(17,24,39,.22);
  z-index:60;
  padding:16px;
  overflow-y:auto;
}
.drawer-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.feedback-grid,
.question-stack{
  display:grid;
  gap:10px;
}
.feedback-grid label{
  display:flex;
  align-items:center;
  gap:8px;
  border:1px solid var(--gpt-line);
  border-radius:14px;
  padding:10px;
}
.feedback-grid .full{
  display:grid;
}
.feedback-grid textarea,
.feedback-grid select,
#chat-extra{
  width:100%;
  border:1px solid var(--gpt-line);
  border-radius:14px;
  padding:10px;
  font:inherit;
}

/* scanner */
.scanner-panel{
  position:fixed;
  inset:0;
  display:grid;
  place-items:center;
  background:rgba(17,24,39,.75);
  z-index:80;
}
.scanner-card{
  width:min(520px,calc(100% - 28px));
  background:#fff;
  border-radius:22px;
  padding:14px;
}
.scanner-card video{
  width:100%;
  border-radius:16px;
  background:#000;
}
.scanner-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:10px;
}

/* hidden utility */
[hidden]{
  display:none !important;
}

/* ========== MOBILE FIRST EXPERIENCE ========== */
@media (max-width:760px){
  .gpt-home{
    padding:12px 12px max(8px,env(safe-area-inset-bottom));
  }

  .gpt-logo-block{
    margin-bottom:18px;
    gap:5px;
  }

  .gpt-logo-mark{
    width:40px;
    height:40px;
    border-radius:13px;
    font-size:22px;
  }

  .gpt-logo-block strong{
    font-size:16px;
  }

  .gpt-logo-block small{
    font-size:12px;
  }

  .gpt-title-block{
    margin-bottom:16px;
  }

  .gpt-title-block h1{
    font-size:26px;
  }

  .gpt-title-block p{
    font-size:13px;
    margin-top:7px;
  }

  .gpt-home-composer{
    border-radius:22px;
    padding:9px;
  }

  .gpt-home-composer textarea{
    min-height:96px;
    max-height:120px;
    font-size:14px;
    padding:10px 9px 6px;
  }

  .gpt-chip-row{
    flex-wrap:nowrap;
    overflow-x:auto;
    gap:6px;
    padding:0 3px 8px;
    scrollbar-width:none;
  }
  .gpt-chip-row::-webkit-scrollbar{
    display:none;
  }
  .gpt-chip-row button{
    flex:0 0 auto;
    font-size:12px;
    padding:7px 10px;
  }

  .gpt-composer-actions{
    display:grid;
    grid-template-columns:1fr 1fr 1.15fr;
    gap:6px;
    padding:8px 3px 0;
  }

  .gpt-sub-btn,
  .gpt-main-btn{
    width:100%;
    padding:10px 6px;
    font-size:13px;
  }

  .gpt-home-note{
    font-size:11px;
    margin-top:10px;
  }

  .gpt-home-footer{
    margin-top:12px;
    font-size:10px;
  }

  .gpt-home-footer span{
    font-size:12px;
  }

  .gpt-chat-app{
    grid-template-rows:50px minmax(0,1fr) 0;
  }

  .gpt-chat-header{
    padding:0 12px;
  }

  .gpt-chat-brand .brand-mark{
    width:34px;
    height:34px;
    border-radius:12px;
  }

  .gpt-chat-brand strong{
    font-size:14px;
  }

  .gpt-chat-brand small{
    font-size:10px;
  }

  .gpt-status-dot{
    display:none;
  }

  .gpt-chat-main{
    padding:0;
  }

  .gpt-chat-panel{
    border-radius:20px 20px 0 0;
    border-left:0;
    border-right:0;
    border-bottom:0;
  }

  .gpt-chat-thread{
    padding:14px 12px 10px !important;
  }

  .gpt-empty-state{
    min-height:28vh;
    gap:7px;
  }

  .gpt-empty-logo{
    width:38px;
    height:38px;
  }

  .gpt-empty-state h1{
    font-size:22px;
  }

  .gpt-empty-state p{
    font-size:13px;
  }

  .gpt-empty-state small{
    font-size:11px;
  }

  .gpt-suggestion-row{
    flex-wrap:nowrap;
    overflow-x:auto;
    justify-content:flex-start;
    width:100%;
    padding-bottom:2px;
    scrollbar-width:none;
  }
  .gpt-suggestion-row::-webkit-scrollbar{
    display:none;
  }
  .gpt-suggestion-row button{
    flex:0 0 auto;
    font-size:12px;
    padding:7px 10px;
  }

  .msg{
    gap:8px;
    margin:10px 0;
  }

  .avatar{
    width:30px;
    height:30px;
    flex-basis:30px;
    border-radius:10px;
  }

  .bubble{
    max-width:calc(100vw - 58px);
    padding:11px 12px;
    font-size:13px;
    line-height:1.55;
    border-radius:16px;
  }

  .gpt-initial-msg .bubble p{
    display:none;
  }

  .inline-prompt-row,
  .followup-chip-list{
    flex-wrap:nowrap;
    overflow-x:auto;
    gap:6px;
    scrollbar-width:none;
  }
  .inline-prompt-row::-webkit-scrollbar,
  .followup-chip-list::-webkit-scrollbar{
    display:none;
  }
  .inline-prompt-row button,
  .followup-chip,
  .followup-chip-list button{
    flex:0 0 auto;
    font-size:11px;
    padding:7px 9px;
  }

  .gpt-meta-bar{
    padding:0 10px 6px;
  }

  .meta-pill{
    font-size:11px;
    padding:5px 8px;
  }

  .gpt-result-panel{
    max-height:34vh;
    margin:0 10px 8px;
    padding:10px;
    border-radius:16px;
  }

  .result-metrics{
    grid-template-columns:repeat(2,1fr);
  }

  .mini-result-grid,
  .result-secondary-grid,
  .intelligence-columns{
    grid-template-columns:1fr;
    gap:8px;
  }

  .gpt-chat-composer{
    margin:0 10px 8px;
    border-radius:20px;
    padding:8px;
  }

  .gpt-chat-composer textarea{
    min-height:44px;
    max-height:94px;
    font-size:13px;
    padding:8px 7px 4px;
  }

  .composer-actions{
    display:grid;
    grid-template-columns:1fr 1fr 1.1fr;
    gap:6px;
    padding-top:7px;
  }

  .icon-button,
  .send-button{
    padding:9px 4px;
    font-size:12px;
  }

  .composer-hint-row{
    display:none;
  }

  .chat-sub-actions{
    padding:0 10px 8px;
    gap:6px;
  }

  .chat-sub-actions .secondary-button{
    flex:1;
    padding:8px 6px;
    font-size:12px;
  }

  .gpt-chat-footer{
    display:none;
  }

  .side-drawer{
    inset:auto 0 0 0;
    width:100%;
    max-height:82vh;
    border-radius:22px 22px 0 0;
  }
}

@media (max-width:380px){
  .gpt-title-block h1{
    font-size:23px;
  }
  .gpt-home-composer textarea{
    min-height:82px;
  }
  .gpt-composer-actions,
  .composer-actions{
    grid-template-columns:1fr 1fr 1fr;
  }
}

/* 第11批：防伪 URL 深度分析块 */
.deep-verification-block{margin-top:12px;padding:12px;border:1px solid rgba(0,96,80,.14);border-radius:16px;background:rgba(0,96,80,.04)}
.deep-verification-block .check-ok{color:#08745f}.deep-verification-block .check-warn{color:#8a5b00}.deep-verification-block .check-bad{color:#a12828}
.deep-verification-block .muted-line span{display:inline-block;margin:2px 4px 2px 0;padding:3px 8px;border:1px solid rgba(0,0,0,.08);border-radius:999px;background:#fff;font-size:12px}

/* Verification semantic status fix */
.semantic-result-line{
  margin:10px 0 12px;
  padding:10px 12px;
  border:1px solid rgba(0,112,96,.18);
  border-radius:14px;
  background:rgba(0,112,96,.06);
  color:#10342f;
  line-height:1.65;
}
.semantic-result-line strong{color:#006b5d;margin-right:4px;}
