:root{
  --bg:#f0ebf3;--panel:rgba(251,247,252,.94);--paper:#fffafd;--paper2:#f6eff8;
  --ink:#37303a;--muted:#918596;--line:rgba(91,64,98,.13);
  --accent:#806287;--accent-deep:#624a68;--accent2:#a58aad;--accent-soft:#eaddec;--sage:#aeb7a8;--rose:#a25a6f;--gold:#a78c61;
  --shadow:0 18px 50px rgba(62,48,74,.10);--soft-shadow:0 8px 24px rgba(62,48,74,.07);--radius:22px;--safe-top:env(safe-area-inset-top);
  --font-scale:1;--message-width:880px;--content-font:"Songti SC","STSong","Noto Serif SC",serif;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC","Microsoft YaHei",sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box} html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--ink)}
button,input,textarea,select{font:inherit;color:inherit} button{touch-action:manipulation} img{user-select:none;-webkit-user-drag:none}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 48%,transparent);outline-offset:2px}
button:disabled{opacity:.48;cursor:not-allowed}

/* 12 套语义主题，与 Windows 锦书保持同一套命名 */
body[data-theme="porcelain"]{--bg:#efede7;--panel:rgba(250,249,246,.92);--paper:#fffefb;--paper2:#f8f5ef;--ink:#2d3431;--muted:#878b87;--line:rgba(48,59,55,.12);--accent:#315d55;--accent-deep:#254b45;--accent2:#7b9a92;--accent-soft:#dce7e3;--rose:#9a5149;--gold:#a9874e}
body[data-theme="peony"]{--bg:#f1ebe8;--panel:rgba(253,249,248,.94);--paper:#fffaf8;--paper2:#f8efec;--ink:#3b3034;--muted:#94858a;--line:rgba(91,61,72,.13);--accent:#7f4c58;--accent-deep:#613943;--accent2:#aa7b86;--accent-soft:#efdee1;--rose:#a05255;--gold:#a27e50}
body[data-theme="bamboo"]{--bg:#e9efea;--panel:rgba(247,251,247,.94);--paper:#fcfefb;--paper2:#f0f6ef;--ink:#2d3831;--muted:#7f8981;--line:rgba(52,76,60,.13);--accent:#47705a;--accent-deep:#345642;--accent2:#789382;--accent-soft:#dce9df;--rose:#a45d52;--gold:#9b8150}
body[data-theme="parchment"]{--bg:#eee7da;--panel:rgba(253,249,240,.94);--paper:#fffaf0;--paper2:#f6eddd;--ink:#3d352e;--muted:#92877a;--line:rgba(80,61,42,.14);--accent:#765b48;--accent-deep:#5b4333;--accent2:#9f846e;--accent-soft:#eadbca;--rose:#9f5147;--gold:#a17b3f}
body[data-theme="moon"]{--bg:#ececf3;--panel:rgba(248,248,252,.95);--paper:#ffffff;--paper2:#f2f3f8;--ink:#30313a;--muted:#8a8b98;--line:rgba(71,73,98,.13);--accent:#6672a8;--accent-deep:#4d5789;--accent2:#939bc2;--accent-soft:#e1e4f2;--rose:#a95e6c;--gold:#a78a5f}
body[data-theme="wisteria"]{--bg:#f0ebf3;--panel:rgba(251,247,252,.94);--paper:#fffafd;--paper2:#f6eff8;--ink:#37303a;--muted:#918596;--line:rgba(91,64,98,.13);--accent:#806287;--accent-deep:#624a68;--accent2:#a58aad;--accent-soft:#eaddec;--rose:#a25a6f;--gold:#a78c61}
body[data-theme="azure"]{--bg:#e8eef4;--panel:rgba(247,251,254,.95);--paper:#fbfdff;--paper2:#eef4f8;--ink:#293844;--muted:#7f8f9c;--line:rgba(53,87,112,.13);--accent:#3f6688;--accent-deep:#31516d;--accent2:#7795ad;--accent-soft:#dce8f1;--rose:#a45e58;--gold:#a78b5a}
body[data-theme="apricot"]{--bg:#f3ece3;--panel:rgba(253,249,244,.95);--paper:#fffaf4;--paper2:#f8efe5;--ink:#403630;--muted:#95867c;--line:rgba(98,67,51,.13);--accent:#b06f59;--accent-deep:#8e5543;--accent2:#ca9885;--accent-soft:#f0ddd3;--rose:#a65349;--gold:#aa834e}
body[data-theme="cinnabar"]{--bg:#f2e7e3;--panel:rgba(253,248,246,.95);--paper:#fffaf7;--paper2:#f8ece8;--ink:#40312e;--muted:#957f79;--line:rgba(111,58,51,.14);--accent:#8d443c;--accent-deep:#6d302a;--accent2:#b5756e;--accent-soft:#edd8d3;--rose:#a9433d;--gold:#b18b52}
body[data-theme="midnight"]{--bg:#181b1e;--panel:rgba(30,34,36,.96);--paper:#222629;--paper2:#292e31;--ink:#e9e2d5;--muted:#a09b93;--line:rgba(231,221,202,.13);--accent:#b79a65;--accent-deep:#d0b479;--accent2:#9c865c;--accent-soft:#3c382f;--rose:#bd7266;--gold:#c1a26a;--shadow:0 22px 60px rgba(0,0,0,.32);--soft-shadow:0 8px 28px rgba(0,0,0,.22);color-scheme:dark}
body[data-theme="inkjade"]{--bg:#131c1c;--panel:rgba(24,35,35,.96);--paper:#1d2929;--paper2:#243232;--ink:#e2e9e6;--muted:#94a29e;--line:rgba(206,226,219,.12);--accent:#7fa99b;--accent-deep:#a4c5ba;--accent2:#6d9185;--accent-soft:#29413c;--rose:#c4766e;--gold:#c0a269;--shadow:0 22px 60px rgba(0,0,0,.32);--soft-shadow:0 8px 28px rgba(0,0,0,.22);color-scheme:dark}
body[data-theme="starlight"]{--bg:#171824;--panel:rgba(29,30,44,.96);--paper:#202131;--paper2:#292a3d;--ink:#ece9f3;--muted:#9d99ac;--line:rgba(224,218,239,.12);--accent:#9b8ac4;--accent-deep:#c0b1df;--accent2:#8072a8;--accent-soft:#37334e;--rose:#c97983;--gold:#c0a8d4;--shadow:0 22px 60px rgba(0,0,0,.34);--soft-shadow:0 8px 28px rgba(0,0,0,.23);color-scheme:dark}
body.custom-colors{--bg:var(--custom-bg);--paper:var(--custom-paper);--accent:var(--custom-accent);--accent-deep:color-mix(in srgb,var(--custom-accent) 78%,black);--accent-soft:color-mix(in srgb,var(--custom-accent) 15%,var(--custom-paper));--panel:color-mix(in srgb,var(--custom-paper) 93%,transparent);--paper2:color-mix(in srgb,var(--custom-paper) 91%,var(--custom-accent));}

body{background:radial-gradient(circle at 88% 5%,color-mix(in srgb,var(--accent-soft) 48%,transparent),transparent 28%),radial-gradient(circle at 6% 88%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 30%),var(--bg);transition:background .22s,color .22s}
body[data-font="serif"]{--content-font:"Songti SC","STSong","Noto Serif SC",serif}body[data-font="kai"]{--content-font:"STKaiti","KaiTi","Kaiti SC",serif}body[data-font="system"]{--content-font:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Microsoft YaHei",sans-serif}

.app-shell{height:100dvh;display:grid;grid-template-columns:260px minmax(420px,1fr) 330px;grid-template-rows:54px minmax(0,1fr);gap:10px;padding:calc(8px + var(--safe-top)) 10px 10px;transition:grid-template-columns .2s,gap .2s,padding .2s}
.topbar{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:0 7px 0 4px}
.brand{display:flex;align-items:center;gap:10px}.app-icon{width:38px;height:38px;border-radius:11px;box-shadow:0 7px 18px color-mix(in srgb,var(--accent) 18%,transparent)}
.brand div{display:flex;align-items:baseline;gap:8px}.brand strong{font-family:var(--content-font);font-size:18px;letter-spacing:.14em}.brand span{font-size:9px;letter-spacing:.12em;color:var(--muted)}
.top-actions{display:flex;align-items:center;gap:5px}.panel{min-width:0;min-height:0;background:var(--panel);border:1px solid color-mix(in srgb,var(--paper) 62%,var(--line));border-radius:var(--radius);box-shadow:var(--shadow);backdrop-filter:saturate(108%) blur(5px);transition:background .22s,border-color .22s,box-shadow .22s}
.sidebar{grid-column:1;display:flex;flex-direction:column;padding:18px 14px 12px}.chat-area{grid-column:2;display:flex;flex-direction:column;overflow:hidden}.context{grid-column:3;display:flex;flex-direction:column;padding:17px 13px 12px;overflow:hidden}
.sidebar-head{display:flex;justify-content:space-between;gap:8px;padding:2px 5px 12px}.sidebar-head h1,.context-head h2,.sheet-head h2{margin:5px 0 3px;font:600 19px/1.3 var(--content-font)}.sidebar-head p{margin:0;color:var(--muted);font-size:11px}.eyebrow{font-size:8px;letter-spacing:.22em;color:var(--gold);font-weight:700}.round-add{width:34px;height:34px;border:0;border-radius:11px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 88%,white),var(--accent-deep));color:white;font-size:20px;box-shadow:0 7px 16px color-mix(in srgb,var(--accent) 23%,transparent)}
.searchbox{height:37px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--line);border-radius:11px;background:var(--paper2);color:var(--muted)}.searchbox input{min-width:0;width:100%;border:0;outline:0;background:transparent;font-size:12px}.searchbox.compact{height:33px}.searchbox.compact input{font-size:10px}
.conversation-list{flex:1;min-height:0;overflow:auto;margin-top:13px;padding-right:2px}.conversation-item{width:100%;display:block;text-align:left;border:0;padding:11px 10px;margin-bottom:5px;border-radius:12px;background:transparent;cursor:pointer}.conversation-item:hover{background:var(--paper2)}.conversation-item.active{background:linear-gradient(110deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 25%,transparent));box-shadow:inset 3px 0 var(--accent)}.conversation-item strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.conversation-item span{display:block;margin-top:5px;color:var(--muted);font-size:9px}.sidebar-foot{display:flex;justify-content:space-between;gap:6px;padding:10px 5px 0;border-top:1px solid var(--line);color:var(--muted);font-size:9px}
.chat-head{height:54px;display:flex;align-items:center;gap:8px;padding:0 13px;border-bottom:1px solid var(--line)}.chat-title-wrap{min-width:0}.chat-title-wrap strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.chat-title-wrap span{display:block;margin-top:3px;color:var(--muted);font-size:9px}.chat-head-actions{margin-left:auto;display:flex;gap:3px}.icon-button{width:35px;height:35px;display:grid;place-items:center;border:0;border-radius:10px;background:transparent;color:var(--muted);font-size:17px}.icon-button:hover{background:var(--paper2);color:var(--ink)}.ghost-button{height:32px;padding:0 11px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--muted);font-size:10px}
.messages{flex:1;min-height:0;overflow:auto;padding:18px clamp(15px,3vw,38px) 30px;scroll-behavior:smooth}.message{display:grid;grid-template-columns:35px minmax(0,1fr);gap:10px;max-width:var(--message-width);margin:0 auto 17px}.avatar{width:33px;height:33px;border-radius:11px;object-fit:cover;border:1px solid color-mix(in srgb,var(--accent) 13%,var(--line));box-shadow:0 5px 14px color-mix(in srgb,var(--accent) 11%,transparent)}.message-bubble{min-width:0;padding:14px 15px;border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:var(--soft-shadow)}.message.user .message-bubble{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft) 56%,var(--paper)),var(--paper))}.message-head{display:flex;align-items:center;gap:7px;margin-bottom:8px}.message-head strong{font-size:11px}.message-head span{color:var(--muted);font-size:8px}.message-content{font-family:var(--content-font);font-size:calc(14px * var(--font-scale));line-height:1.82;white-space:pre-wrap;overflow-wrap:anywhere}.message-content h1,.message-content h2,.message-content h3{font-family:inherit}.message-content pre{overflow:auto;padding:10px;border-radius:9px;background:color-mix(in srgb,var(--ink) 88%,black);color:var(--paper)}.message-content blockquote{margin:10px 0;padding:5px 10px;border-left:3px solid var(--accent2);background:var(--paper2)}.message-content code{font-size:.9em}.message.system .message-bubble{border-style:dashed;color:var(--muted)}
.typing{display:inline-flex;gap:4px}.typing i{width:5px;height:5px;border-radius:50%;background:var(--accent);animation:dot 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes dot{50%{opacity:.25;transform:translateY(-2px)}}
.composer-wrap{padding:8px 12px 10px;border-top:1px solid var(--line)}.composer{border:1px solid var(--line);border-radius:17px;background:var(--paper);box-shadow:var(--soft-shadow)}.composer textarea{display:block;width:100%;max-height:180px;min-height:54px;padding:13px 14px 7px;border:0;outline:0;resize:none;background:transparent;font-size:14px;line-height:1.55}.composer-tools{display:flex;align-items:center;gap:5px;padding:6px 8px 8px}.chip-button,.small-button,.master-toggle{border:1px solid var(--line);border-radius:9px;background:var(--paper2);color:var(--muted);font-size:9px;padding:6px 8px}.chip-button.active,.master-toggle.active{color:var(--accent-deep);border-color:color-mix(in srgb,var(--accent) 25%,var(--line));background:var(--accent-soft)}.spacer{flex:1}.send-button{min-width:68px;height:36px;border:0;border-radius:10px;color:white;background:var(--accent);font-size:11px;font-weight:700;box-shadow:0 6px 14px color-mix(in srgb,var(--accent) 20%,transparent)}.send-button:disabled{opacity:.5}.composer-caption{text-align:center;color:var(--muted);font-size:8px;margin-top:6px}
.context-head{display:flex;align-items:flex-start;justify-content:space-between;padding:2px 5px 10px}.context-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:11px;background:var(--paper2);margin-bottom:9px}.context-tabs button{height:31px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:10px}.context-tabs button.active{background:var(--paper);color:var(--accent-deep);box-shadow:0 4px 13px color-mix(in srgb,var(--accent) 8%,transparent)}.context-tabs i{font-style:normal;margin-left:4px}.context-toolbar{display:grid;grid-template-columns:1fr auto;gap:5px;margin-bottom:10px}.master-toggle{padding:0 8px}.context-view{display:none;min-height:0;flex:1;overflow:auto}.context-view.active{display:block}.context-section-head{display:flex;align-items:center;justify-content:space-between;padding:3px 4px 8px}.context-section-head strong,.context-section-head span{display:block}.context-section-head strong{font-size:11px}.context-section-head span{margin-top:3px;color:var(--muted);font-size:8px}.entry-navigator{display:flex;gap:5px;overflow-x:auto;padding:0 2px 8px}.entry-nav-item{flex:none;max-width:180px;padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:var(--paper);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-nav-item:hover{border-color:color-mix(in srgb,var(--accent) 32%,var(--line));background:var(--accent-soft)}.context-cards{display:grid;gap:8px;padding:0 2px 8px}.context-card{content-visibility:auto;contain-intrinsic-size:260px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.context-card-head{display:flex;align-items:center;gap:6px}.context-card-head input[type=text]{flex:1;min-width:0;border:0;border-bottom:1px solid var(--line);outline:0;background:transparent;font-weight:650;font-size:10px;padding:4px}.context-card textarea{width:100%;min-height:82px;margin-top:7px;padding:8px;border:1px solid var(--line);border-radius:9px;outline:0;resize:vertical;background:var(--paper2);font:11px/1.6 var(--content-font)}.ctx-field-label{display:block;margin-top:7px;color:var(--muted);font-size:8px}.ctx-field-label input{display:block;width:100%;margin-top:3px;padding:5px 0;border:0;border-bottom:1px solid var(--line);outline:0;background:transparent;color:var(--muted);font-size:9px}.card-options{display:flex;align-items:center;gap:9px;margin-top:7px;color:var(--muted);font-size:8px}.card-options label{display:flex;align-items:center;gap:4px}.card-options input[type=number]{width:47px;height:24px;padding:0 4px;border:1px solid var(--line);border-radius:6px;background:var(--paper2);font-size:8px}.delete-mini{margin-left:auto;border:0;background:transparent;color:var(--rose)}.toggle{appearance:none;width:30px;height:17px;border-radius:999px;background:color-mix(in srgb,var(--muted) 35%,var(--paper2));position:relative;transition:.2s}.toggle:after{content:"";position:absolute;width:13px;height:13px;left:2px;top:2px;border-radius:50%;background:white;box-shadow:0 2px 5px rgba(0,0,0,.14);transition:.2s}.toggle:checked{background:var(--accent)}.toggle:checked:after{transform:translateX(13px)}.context-empty{color:var(--muted);font-size:10px}

/* 设置 / 弹层 */
.backdrop{position:fixed;inset:0;background:rgba(25,20,29,.28);z-index:80}.sheet{position:fixed;z-index:90;left:50%;top:50%;transform:translate(-50%,-50%);width:min(760px,calc(100vw - 34px));max-height:min(820px,calc(100dvh - 50px));overflow:auto;padding:18px;border:1px solid color-mix(in srgb,var(--paper) 68%,var(--line));border-radius:24px;background:color-mix(in srgb,var(--paper) 97%,transparent);box-shadow:0 30px 80px rgba(28,22,33,.24)}.settings-sheet{width:min(960px,calc(100vw - 34px));overflow:hidden;display:flex;flex-direction:column}.small-sheet{width:min(520px,calc(100vw - 34px))}.sheet-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.sheet-subtitle{margin:3px 0 0;color:var(--muted);font-size:9px}.settings-tabs{flex:none;display:flex;gap:4px;padding:4px;margin-bottom:12px;border-radius:12px;background:var(--paper2);overflow-x:auto}.settings-tabs button{flex:1;min-width:76px;height:34px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:10px}.settings-tabs button.active{color:var(--accent-deep);background:var(--paper);box-shadow:0 4px 13px color-mix(in srgb,var(--accent) 9%,transparent)}.settings-pane{display:none;min-height:0;overflow:auto;padding-right:2px}.settings-pane.active{display:block}.settings-grid{display:grid;gap:10px}.settings-grid.two-col{grid-template-columns:1fr 1fr}.setting-card{padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--paper2)}.setting-card h3{margin:0 0 5px;font-size:12px}.setting-card p{margin:0 0 10px;color:var(--muted);font-size:9px;line-height:1.65}.setting-card label{display:block;margin:9px 0;color:var(--muted);font-size:9px}.setting-card input,.setting-card select,.setting-card textarea{width:100%;margin-top:4px;padding:0 8px;border:1px solid var(--line);border-radius:9px;outline:0;background:var(--paper);font-size:10px}.setting-card input,.setting-card select{height:35px}.setting-card textarea{min-height:70px;padding:8px;resize:vertical;line-height:1.55}.setting-card input[type=range]{padding:0;border:0;background:transparent}.setting-card input[type=checkbox]{width:auto;height:auto;margin:0}.setting-card input[type=color]{height:36px;padding:3px}.featured-card{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft) 48%,var(--paper2)),var(--paper2))}.row{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.primary-button,.secondary-button{min-height:34px;padding:0 11px;border-radius:10px;font-size:10px}.primary-button{border:0;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 90%,white),var(--accent-deep));color:white}.secondary-button{border:1px solid var(--line);background:var(--paper);color:var(--muted)}.danger-link{margin-top:8px;border:0;background:transparent;color:var(--rose);font-size:9px}.switch-line{display:flex!important;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px dashed var(--line)}.switch-line>span{display:block;color:var(--ink)}.switch-line b,.switch-line small{display:block}.switch-line small{margin-top:3px;color:var(--muted);font-size:8px;font-weight:400}.switch-line input{flex:none}.range-value{float:right;color:var(--accent-deep);font-weight:700}.info-stack{display:grid;gap:7px;margin-top:8px}.info-stack span{padding:8px 9px;border-radius:9px;background:var(--paper);color:var(--muted);font-size:9px}.agent-preview{display:flex;align-items:center;gap:10px;margin-top:12px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.agent-preview img{width:48px;height:48px;border-radius:14px;object-fit:cover}.agent-preview b,.agent-preview span{display:block}.agent-preview b{font-size:11px}.agent-preview span{margin-top:4px;color:var(--muted);font-size:8px}.prompt-card{grid-row:span 2}

.appearance-hero{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;margin-bottom:9px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--line));border-radius:15px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft) 54%,var(--paper2)),var(--paper))}.appearance-hero h3{margin:4px 0 3px;font:600 15px var(--content-font)}.appearance-hero p{margin:0;color:var(--muted);font-size:9px}.beauty-filter{display:flex;gap:5px;overflow-x:auto;margin-bottom:9px}.beauty-filter button{flex:none;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--muted);font-size:9px}.beauty-filter button.active{color:var(--accent-deep);border-color:color-mix(in srgb,var(--accent) 36%,var(--line));background:var(--accent-soft)}.beauty-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}.beauty-card{min-height:105px;padding:10px;border:1px solid var(--line);border-radius:13px;background:var(--paper);text-align:left;cursor:pointer}.beauty-card.active{border-color:color-mix(in srgb,var(--accent) 46%,var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 16%,transparent),0 8px 22px color-mix(in srgb,var(--accent) 10%,transparent)}.beauty-card-top{display:flex;justify-content:space-between;gap:6px}.beauty-card-top b{font:600 11px var(--content-font)}.beauty-card-top small{color:var(--gold);font-size:8px}.palette-dots{display:flex;gap:4px;margin:9px 0 7px}.palette-dots i{width:18px;height:18px;border-radius:50%;border:1px solid rgba(127,116,131,.14)}.beauty-desc{display:block;color:var(--muted);font-size:8px;line-height:1.55}.appearance-detail-grid{margin-top:4px}.theme-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}.theme-mini-grid button{padding:7px;border:1px solid var(--line);border-radius:10px;background:var(--paper);text-align:left}.theme-mini-grid button.active{border-color:color-mix(in srgb,var(--accent) 42%,var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 14%,transparent)}.theme-mini-grid button span{display:flex;width:100%;height:17px;border-radius:6px;background:linear-gradient(90deg,var(--c1) 0 33%,var(--c2) 33% 66%,var(--c3) 66%)}.theme-mini-grid button b{display:block;margin-top:5px;font-size:8px}.color-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;transition:.18s}.color-grid.disabled{opacity:.38;pointer-events:none}

.sync-hero{display:flex;gap:12px;align-items:center;padding:14px;margin-bottom:13px;border-radius:15px;background:linear-gradient(135deg,var(--accent-soft),var(--paper2))}.cloud-orb{width:50px;height:50px;display:grid;place-items:center;border-radius:16px;background:var(--paper);color:var(--accent);font-size:25px;box-shadow:var(--soft-shadow)}.sync-hero strong{font-size:12px}.sync-hero p{margin:5px 0 0;color:var(--muted);font-size:9px;line-height:1.65}.install-steps{margin:0;padding-left:22px;color:var(--muted);font-size:11px;line-height:2}.hidden{display:none!important}.toast{position:fixed;z-index:110;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translateX(-50%);padding:9px 13px;border-radius:11px;background:color-mix(in srgb,var(--ink) 92%,black);color:var(--paper);font-size:10px;box-shadow:0 12px 30px rgba(0,0,0,.18)}.mobile-only{display:none}

/* 布局与密度 */
body[data-layout="focus"] .app-shell{grid-template-columns:220px minmax(480px,1fr) 300px}body[data-layout="focus"] .panel{box-shadow:0 10px 32px color-mix(in srgb,var(--accent) 8%,transparent)}
body[data-layout="cards"] .app-shell{gap:12px;padding:calc(10px + var(--safe-top)) 12px 12px}body[data-layout="cards"] .panel{border-radius:24px;box-shadow:0 20px 55px color-mix(in srgb,var(--accent) 13%,transparent)}body[data-layout="cards"] .message-bubble{border-radius:18px}
body[data-layout="compact"] .app-shell{grid-template-columns:225px minmax(420px,1fr) 300px;gap:7px;padding:calc(6px + var(--safe-top)) 7px 7px}body[data-layout="compact"] .sidebar{padding:13px 10px 9px}body[data-layout="compact"] .context{padding:12px 9px 9px}body[data-layout="compact"] .conversation-item{padding:8px}body[data-layout="compact"] .messages{padding-top:12px}body[data-layout="compact"] .message{margin-bottom:11px}
body[data-density="compact"] .message-bubble{padding:10px 12px}body[data-density="compact"] .message-content{line-height:1.66}body[data-density="compact"] .context-card{padding:8px}body[data-density="compact"] .composer textarea{min-height:46px}

@media(max-width:1050px){
  .app-shell,body[data-layout="focus"] .app-shell,body[data-layout="compact"] .app-shell{grid-template-columns:240px minmax(420px,1fr)}
  .context{position:fixed;z-index:65;right:10px;top:calc(63px + var(--safe-top));bottom:10px;width:min(380px,calc(100vw - 30px));transform:translateX(calc(100% + 20px));transition:.22s}.context.open{transform:none}.mobile-only{display:grid}.beauty-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .app-shell,.app-shell body[data-layout="focus"],body[data-layout="focus"] .app-shell,body[data-layout="compact"] .app-shell{grid-template-columns:1fr;padding:calc(6px + var(--safe-top)) 7px 7px;gap:7px}.topbar{grid-column:1}.sidebar{position:fixed;z-index:66;left:7px;top:calc(62px + var(--safe-top));bottom:7px;width:min(320px,calc(100vw - 28px));transform:translateX(calc(-100% - 16px));transition:.22s}.sidebar.open{transform:none}.chat-area{grid-column:1}.brand span{display:none}.ghost-button{display:none}.messages{padding:14px 11px 24px}.message{grid-template-columns:30px 1fr;gap:7px}.avatar{width:29px;height:29px;border-radius:9px}.message-bubble{padding:12px}.message-content{font-size:calc(13px * var(--font-scale))}.composer-wrap{padding:7px}.composer-caption{display:none}.sheet{padding:15px}.settings-sheet{width:calc(100vw - 18px);max-height:calc(100dvh - 20px)}.settings-grid.two-col{grid-template-columns:1fr}.prompt-card{grid-row:auto}.beauty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-mini-grid{grid-template-columns:repeat(2,1fr)}.appearance-hero{align-items:flex-start}.appearance-hero p{display:none}.topbar{height:48px}.app-shell{grid-template-rows:48px minmax(0,1fr)}
}
@media(max-width:500px){.beauty-grid{grid-template-columns:1fr}.settings-tabs button{min-width:64px}.composer-tools{overflow-x:auto}.chip-button{flex:none}.color-grid{grid-template-columns:1fr 1fr 1fr}}
@media(display-mode:standalone){.topbar{padding-top:2px}.ghost-button{display:none}}

/* 0.3.0 · 随身版增强 */
.agent-switch-row{display:flex;align-items:center;gap:5px;margin:4px 0 5px}.agent-switch-row select{min-width:0;max-width:160px;height:29px;padding:0 8px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font-size:9px}.mini-square{width:28px;height:28px;flex:none;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--accent-deep);font-size:15px}.mini-square.danger-soft{color:var(--rose)}
.context-section-actions{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.ai-action{color:var(--accent-deep)!important;background:linear-gradient(135deg,var(--accent-soft),var(--paper))!important;border-color:color-mix(in srgb,var(--accent) 24%,var(--line))!important}
.answer-actions{display:flex;align-items:center;gap:5px;margin-top:10px;padding-top:8px;border-top:1px dashed var(--line);color:var(--muted);font-size:10px}.answer-actions button{height:32px;min-width:32px;padding:0 9px;border:1px solid var(--line);border-radius:9px;background:var(--paper2);color:var(--muted);font-size:10px;cursor:pointer}.answer-actions button:hover:not(:disabled){color:var(--accent-deep);background:var(--accent-soft)}.answer-actions span{min-width:34px;text-align:center;font-size:10px}.answer-actions .copy-answer,.answer-actions .regen-answer{height:34px;padding:0 11px;font-size:11px}.answer-actions .regen-answer{margin-left:auto;color:var(--accent-deep)}
.sync-sheet{width:min(900px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow:auto}.sync-detail{margin-top:12px;padding:10px;border:1px dashed var(--line);border-radius:10px;background:var(--paper);color:var(--muted);font-size:9px;line-height:1.6}
.small-button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:760px){.agent-switch-row select{max-width:190px}.sync-sheet{width:calc(100vw - 18px);padding:14px}.sync-sheet .settings-grid.two-col{grid-template-columns:1fr}.context-section-actions{max-width:210px;justify-content:flex-end}.answer-actions{flex-wrap:wrap}.answer-actions .regen-answer{margin-left:auto}}
@media(max-width:500px){.brand strong{font-size:16px}.top-actions .icon-button{width:32px;height:32px}.chat-title-wrap span{max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message{grid-template-columns:27px 1fr}.avatar{width:27px;height:27px}.context-section-head{align-items:flex-start}.context-section-actions{gap:3px}.small-button{font-size:8px!important;padding:5px 6px!important}.agent-switch-row select{max-width:175px}}

/* 0.3.2 · 手机端模型切换 */
.model-bar{min-height:40px;display:grid;grid-template-columns:auto minmax(120px,1fr) 34px;align-items:center;gap:6px;padding:5px 11px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,color-mix(in srgb,var(--accent-soft) 44%,var(--paper)),var(--paper))}
.model-provider{min-width:0;max-width:180px;height:30px;display:flex;align-items:center;gap:6px;padding:0 9px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--line));border-radius:9px;background:var(--paper);cursor:pointer}.model-provider span{flex:none;color:var(--muted);font-size:8px}.model-provider b{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--accent-deep);font-size:9px}
#chatModelSelect{width:100%;height:30px;padding:0 28px 0 9px;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));border-radius:9px;outline:0;background:var(--paper);color:var(--ink);font-size:10px}
.model-refresh{width:32px;height:30px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--line));border-radius:9px;background:var(--paper);color:var(--accent-deep);font-size:15px;cursor:pointer}.model-refresh.loading{animation:model-spin .8s linear infinite}@keyframes model-spin{to{transform:rotate(360deg)}}
.setting-hint{margin:9px 0 0!important;padding:8px 9px;border:1px dashed color-mix(in srgb,var(--accent) 18%,var(--line));border-radius:9px;background:var(--paper);color:var(--muted);font-size:8px!important;line-height:1.6!important}
@media(max-width:760px){.model-bar{grid-template-columns:minmax(76px,auto) minmax(0,1fr) 32px;padding:5px 8px}.model-provider{max-width:116px;padding:0 7px}.model-provider span{display:none}#chatModelSelect{font-size:10px}}
@media(max-width:420px){.model-bar{grid-template-columns:76px minmax(0,1fr) 30px;gap:4px;padding:4px 7px}.model-provider{max-width:76px}.model-provider b{font-size:8px}.model-refresh{width:30px}#chatModelSelect{padding-left:7px}}

/* 0.4.0 · 移动端原生感与多服务商 */
.model-bar{grid-template-columns:minmax(110px,.72fr) minmax(150px,1.28fr) 34px 34px}
.chat-provider-select{width:100%;height:30px;padding:0 24px 0 9px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--line));border-radius:9px;outline:0;background:var(--paper);color:var(--accent-deep);font-size:9px;font-weight:650}
.setting-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.setting-title-row>div:first-child{min-width:0}.setting-title-row h3{margin-bottom:4px}
.mobile-reasoning{margin:7px 0 10px;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--accent-soft) 34%,var(--paper2));overflow:hidden}.mobile-reasoning summary{padding:8px 10px;cursor:pointer;color:var(--accent-deep);font-size:9px;font-weight:650}.mobile-reasoning>div{padding:0 10px 8px;color:var(--muted);font-size:10px;line-height:1.65}.mobile-reasoning p{margin:0}.message-usage{margin-top:8px;color:var(--muted);font-size:8px;line-height:1.5}

@media(max-width:760px){
  html,body{background:var(--paper)}
  body{background:var(--paper)}
  .app-shell,.app-shell body[data-layout="focus"],body[data-layout="focus"] .app-shell,body[data-layout="compact"] .app-shell{padding:0;gap:0;grid-template-rows:minmax(0,1fr);background:var(--paper)}
  .topbar{display:none}
  .chat-area{border:0;border-radius:0;box-shadow:none;background:var(--paper)}
  .chat-head{height:calc(58px + var(--safe-top));padding:var(--safe-top) 15px 0;border-bottom:0;background:var(--paper);position:relative;z-index:5}
  .chat-title-wrap strong{font-size:16px;font-weight:700}.chat-title-wrap span{font-size:9px;margin-top:2px;color:var(--muted)}
  .chat-head .icon-button{width:32px;height:32px;border-radius:999px;color:var(--ink)}
  .model-bar{min-height:42px;grid-template-columns:minmax(86px,.8fr) minmax(0,1.2fr) 30px 30px;gap:4px;padding:4px 12px 7px;border-bottom:1px solid color-mix(in srgb,var(--line) 75%,transparent);background:var(--paper)}
  .chat-provider-select,#chatModelSelect,.model-refresh{height:31px;border-color:color-mix(in srgb,var(--line) 82%,transparent);background:var(--paper2);border-radius:10px}
  .chat-provider-select{font-size:9px;padding-left:8px}#chatModelSelect{font-size:9px;padding-left:8px}.model-refresh{width:30px;font-size:14px}
  .messages{padding:16px 16px calc(132px + env(safe-area-inset-bottom));background:var(--paper)}
  .message{display:block;max-width:var(--message-width);margin:0 auto 22px}.message>.avatar{display:none}
  .message-bubble{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
  .message.user{display:flex;justify-content:flex-end}.message.user .message-bubble{width:auto;max-width:min(82%,680px);padding:10px 13px;border-radius:15px;background:var(--paper2)}
  .message-head{margin-bottom:7px}.message.user .message-head{display:none}.message.assistant .message-head strong{display:none}.message.assistant .message-head span{font-size:8px;color:var(--muted)}
  .message-content{font-size:calc(14px * var(--font-scale));line-height:1.78}.message-content h1{font-size:1.42em}.message-content h2{font-size:1.28em}.message-content h3{font-size:1.14em}
  .answer-actions{border-top:0;padding-top:6px;margin-top:9px;gap:6px}.answer-actions button{height:34px;min-width:34px;padding:0 9px;border:0;background:transparent;border-radius:9px;font-size:11px}.answer-actions .copy-answer,.answer-actions .regen-answer{height:40px;padding:0 14px;background:var(--accent-soft);color:var(--accent-deep);font-size:12px;font-weight:650}.answer-actions .regen-answer{margin-left:0}
  .composer-wrap{position:absolute;left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:8;padding:0;background:transparent;border:0}.composer{border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--paper) 96%,transparent);box-shadow:0 8px 28px rgba(30,30,35,.08);overflow:hidden}.composer textarea{min-height:58px;padding:12px 14px 7px;background:transparent}.composer-tools{padding:5px 8px 8px}.composer .chip-button{border:0;background:transparent;padding:5px 6px}.composer .chip-button.active{color:var(--accent-deep);background:var(--accent-soft)}.send-button{width:44px;min-width:44px;height:44px;padding:0;border-radius:10px;background:var(--accent);box-shadow:none;font-size:0}.send-button:after{content:'↑';font-size:21px;font-weight:800}.composer-caption{display:none}
  .sidebar{left:0;top:0;bottom:0;width:min(78vw,360px);padding:calc(18px + var(--safe-top)) 15px calc(16px + env(safe-area-inset-bottom));border:0;border-radius:0 18px 18px 0;box-shadow:18px 0 50px rgba(20,20,25,.12);background:var(--paper);transform:translateX(-104%)}
  .sidebar-head{padding:0 4px 12px}.sidebar-head .eyebrow{display:none}.sidebar-head h1{font-size:17px;margin:8px 0 2px}.sidebar-head p{display:none}.agent-switch-row{margin:0}.agent-switch-row select{height:34px;max-width:210px;border:0;background:var(--paper2);font-size:11px}.mini-square{height:34px;width:34px;border:0;background:var(--paper2)}.round-add{width:34px;height:34px;border-radius:50%;box-shadow:none}
  .sidebar>.searchbox{height:40px;margin:0 0 6px;border:0;background:var(--paper2);border-radius:13px}.conversation-list{margin-top:7px}.conversation-item{padding:11px 10px;border-radius:11px}.conversation-item.active{box-shadow:none;background:var(--accent-soft)}.conversation-item strong{font-size:12px}.conversation-item span{font-size:8px}.sidebar-foot{font-size:8px}
  .context{right:0;top:0;bottom:0;width:min(92vw,520px);padding:calc(18px + var(--safe-top)) 15px calc(16px + env(safe-area-inset-bottom));border:0;border-radius:18px 0 0 18px;box-shadow:-18px 0 50px rgba(20,20,25,.12);background:var(--paper);transform:translateX(104%)}
  .context-head{padding:0 3px 12px}.context-head .eyebrow{display:none}.context-head h2{font-size:19px;margin:0}.context-tabs{background:var(--paper2);border-radius:12px}.context-toolbar{position:sticky;top:0;z-index:2;background:var(--paper);padding:4px 0 8px}.context-card{border:0;border-radius:13px;background:var(--paper2);box-shadow:none}.entry-nav-item{border:0;background:var(--paper2)}
  .sheet{inset:0;left:0;top:0;transform:none;width:100vw!important;max-width:none!important;height:100dvh;max-height:none!important;padding:calc(18px + var(--safe-top)) 17px calc(18px + env(safe-area-inset-bottom));border:0;border-radius:0;box-shadow:none;background:var(--paper)}
  .sheet-head{align-items:center;margin-bottom:14px}.sheet-head .eyebrow,.sheet-head .sheet-subtitle{display:none}.sheet-head h2{font:700 22px/1.2 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.sheet-head .icon-button{order:-1;width:34px;height:34px;font-size:21px}
  .settings-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:3px;margin-bottom:16px;background:var(--paper2);border-radius:12px}.settings-tabs button{min-width:0;height:34px;font-size:9px}.settings-tabs button.active{box-shadow:none;background:var(--paper);color:var(--accent-deep)}
  .settings-pane{padding-right:0}.settings-grid.two-col{grid-template-columns:1fr;gap:14px}.setting-card{padding:0 0 1px;border:0;border-radius:0;background:transparent}.setting-card+.setting-card{padding-top:16px;border-top:8px solid var(--paper2)}.setting-card h3{font-size:14px;margin:0 0 9px}.setting-card>p{font-size:9px}.setting-card label{margin:0;padding:11px 2px;border-bottom:1px solid var(--line);font-size:11px}.setting-card label:last-of-type{border-bottom:0}.setting-card input,.setting-card select,.setting-card textarea{margin-top:6px;background:var(--paper2);border:0;border-radius:10px}.switch-line{border-bottom:1px solid var(--line)!important}.featured-card{background:transparent}.setting-title-row{align-items:center}.setting-title-row .row{flex:none}.appearance-hero{padding:13px;border-radius:14px;background:var(--paper2)}.beauty-grid{grid-template-columns:1fr 1fr}.beauty-card{background:var(--paper2);border:0}.theme-mini-grid button{background:var(--paper2);border:0}
}

@media(max-width:430px){
  .model-bar{grid-template-columns:74px minmax(0,1fr) 29px 29px;padding-left:9px;padding-right:9px}
  .chat-provider-select,#chatModelSelect{font-size:8px}.messages{padding-left:13px;padding-right:13px}.message.user .message-bubble{max-width:88%}.settings-tabs{grid-template-columns:repeat(5,68px);overflow-x:auto;justify-content:flex-start}.beauty-grid{grid-template-columns:1fr}
}
.context-tabs.three-tabs{grid-template-columns:repeat(3,1fr)}
.phrase-actions-mobile{display:flex;justify-content:flex-end;margin-top:8px}.phrase-actions-mobile .small-button{color:var(--accent-deep);background:var(--accent-soft)}
.sidebar-foot>div:first-child{display:grid;gap:3px}.sidebar-foot-actions{display:flex;gap:2px;margin-left:auto}.sidebar-foot-actions .icon-button{width:30px;height:30px;font-size:15px}

/* 0.5.0 · 随身版一次性移动端抛光 */
:root{--keyboard-offset:0px}
html,body{overscroll-behavior:none;-webkit-text-size-adjust:100%}
.messages,.conversation-list,.context-view,.sheet,.global-search-results{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.conversation-row-mobile{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;border-radius:12px;margin-bottom:5px}
.conversation-row-mobile.active{background:linear-gradient(110deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 25%,transparent))}
.conversation-row-mobile .conversation-item{margin:0;background:transparent!important;box-shadow:none!important;min-width:0}
.conversation-row-menu{width:30px;height:30px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:16px;cursor:pointer}
.conversation-row-menu:hover{background:var(--paper2);color:var(--ink)}
.user-message-actions{display:flex;justify-content:flex-end;gap:3px;margin-top:6px;opacity:.34;transition:.15s}
.message:hover .user-message-actions,.message:focus-within .user-message-actions{opacity:1}
.user-message-actions button{width:27px;height:27px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}
.user-message-actions button:hover{background:var(--accent-soft);color:var(--accent-deep)}
.group-filter{min-width:100px;height:33px;padding:0 7px;border:1px solid var(--line);border-radius:10px;background:var(--paper2);font-size:9px;outline:0}
.context-toolbar:has(.group-filter:not(.hidden)){grid-template-columns:minmax(100px,1fr) minmax(86px,.55fr) auto}
.search-sheet{width:min(820px,calc(100vw - 28px));overflow:hidden;display:flex;flex-direction:column}
.search-scope-row{display:flex;gap:5px;padding:4px;margin-bottom:10px;border-radius:12px;background:var(--paper2)}
.search-scope-row button{flex:1;min-height:32px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:9px}
.search-scope-row button.active{background:var(--paper);color:var(--accent-deep);font-weight:650;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 8%,transparent)}
.global-searchbox{height:43px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line);border-radius:13px;background:var(--paper2);color:var(--muted)}
.global-searchbox input{width:100%;min-width:0;border:0;outline:0;background:transparent;font-size:12px}
.global-search-results{min-height:180px;overflow:auto;margin-top:10px;display:grid;gap:6px;padding-right:2px}
.global-search-result{width:100%;display:grid;grid-template-columns:52px minmax(0,1fr);gap:9px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--paper);text-align:left;cursor:pointer}
.global-search-result:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--line));background:color-mix(in srgb,var(--accent-soft) 26%,var(--paper))}
.global-search-result>span:last-child{min-width:0}.global-search-result b,.global-search-result small,.global-search-result p{display:block;margin:0;overflow:hidden;text-overflow:ellipsis}.global-search-result b{font-size:10px}.global-search-result small{margin-top:3px;color:var(--muted);font-size:8px;white-space:nowrap}.global-search-result p{margin-top:5px;color:color-mix(in srgb,var(--ink) 75%,var(--muted));font-size:9px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.search-kind{align-self:start;padding:4px 6px;border-radius:7px;background:var(--accent-soft);color:var(--accent-deep);font-size:8px;text-align:center}
.search-empty{padding:28px 12px;text-align:center;color:var(--muted);font-size:10px;line-height:1.7}
.action-sheet{width:min(520px,calc(100vw - 28px))}
.action-list{display:grid;gap:5px}.action-list>button{width:100%;display:grid;grid-template-columns:28px 1fr;align-items:center;gap:7px;padding:11px;border:0;border-radius:12px;background:var(--paper2);text-align:left;cursor:pointer}.action-list>button>span b,.action-list>button>span small{display:block}.action-list>button>span b{font-size:10px}.action-list>button>span small{margin-top:3px;color:var(--muted);font-size:8px}.action-list .danger-action{color:var(--rose);background:color-mix(in srgb,var(--rose) 7%,var(--paper2))}
.preview-sheet{width:min(720px,calc(100vw - 28px))}.preview-body{display:grid;gap:14px}.preview-summary{padding:10px 12px;border-radius:12px;background:var(--accent-soft);color:var(--accent-deep);font-size:10px}.preview-body section h3{margin:0 0 7px;font-size:11px}.preview-item{padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--paper2)}.preview-item>span{display:inline-block;margin-bottom:5px;padding:2px 5px;border-radius:5px;background:var(--paper);color:var(--muted);font-size:7px}.preview-item b{display:block;font-size:10px}.preview-item p{margin:5px 0 0;color:var(--muted);font-size:9px;line-height:1.55;white-space:pre-wrap}
.scroll-navigator{display:none;position:fixed;z-index:32;right:max(10px,env(safe-area-inset-right));bottom:calc(112px + env(safe-area-inset-bottom) + var(--keyboard-offset));display:grid;gap:5px;transition:bottom .18s ease,opacity .18s}
.scroll-navigator button{width:31px;height:31px;border:1px solid var(--line);border-radius:50%;background:color-mix(in srgb,var(--paper) 94%,transparent);color:var(--muted);box-shadow:0 5px 14px rgba(30,30,35,.07);font-size:14px;backdrop-filter:blur(4px)}
.scroll-navigator button:hover{color:var(--accent-deep);border-color:color-mix(in srgb,var(--accent) 25%,var(--line))}
.keyboard-open .scroll-navigator{opacity:.25;pointer-events:none}

@media(max-width:760px){
  .composer-wrap{bottom:calc(8px + env(safe-area-inset-bottom) + var(--keyboard-offset))}
  .messages{padding-bottom:calc(132px + env(safe-area-inset-bottom) + var(--keyboard-offset))}
  .conversation-row-mobile{grid-template-columns:minmax(0,1fr) 32px;margin-bottom:2px}.conversation-row-mobile.active{background:var(--accent-soft)}
  .conversation-row-menu{width:28px;height:28px}
  .conversation-item.active{background:transparent!important}
  .user-message-actions{opacity:.55}.user-message-actions button{width:25px;height:25px}
  .search-sheet,.action-sheet,.preview-sheet{padding-bottom:calc(18px + env(safe-area-inset-bottom))}
  .search-scope-row{position:sticky;top:0;z-index:2}.global-searchbox{height:45px}.global-search-results{flex:1;min-height:0}.global-search-result{border:0;background:var(--paper2);grid-template-columns:48px minmax(0,1fr)}
  .action-list>button{background:var(--paper2);padding:13px 11px}
  .preview-item{border:0;background:var(--paper2)}
  .context-toolbar:has(.group-filter:not(.hidden)){grid-template-columns:minmax(0,1fr) 105px}.context-toolbar:has(.group-filter:not(.hidden)) .master-toggle{grid-column:1/-1;height:30px}
  .scroll-navigator{display:grid;right:9px;bottom:calc(116px + env(safe-area-inset-bottom) + var(--keyboard-offset))}
}
@media(max-width:430px){
  .chat-head-actions{gap:0}.chat-head .icon-button{width:29px;height:29px}.chat-title-wrap strong{font-size:15px}
  .scroll-navigator button{width:29px;height:29px}
  .global-search-result{padding:9px 7px;grid-template-columns:43px minmax(0,1fr)}
  .context-toolbar:has(.group-filter:not(.hidden)){grid-template-columns:1fr}.context-toolbar:has(.group-filter:not(.hidden)) .master-toggle{grid-column:auto}
  .group-filter{width:100%}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.load-older-messages{display:block;margin:0 auto 16px;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--paper2);color:var(--muted);font-size:9px;cursor:pointer}.load-older-messages:hover{color:var(--accent-deep);border-color:color-mix(in srgb,var(--accent) 28%,var(--line))}

/* 0.5.3 · Instagram-inspired light action controls: quiet, tactile, no chunky fills */
@media (max-width: 820px){
  .answer-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:7px;
    margin-top:12px;
    padding-top:8px;
    border-top:0;
    color:var(--muted);
  }
  .answer-actions button{
    appearance:none;
    -webkit-appearance:none;
    height:36px;
    min-width:36px;
    padding:0;
    border:1px solid color-mix(in srgb,var(--ink) 10%,var(--line));
    border-radius:999px;
    background:color-mix(in srgb,var(--paper) 97%,var(--bg));
    color:color-mix(in srgb,var(--ink) 72%,var(--muted));
    box-shadow:0 1px 2px rgba(25,22,28,.035);
    font-size:12px;
    font-weight:600;
    line-height:1;
    transition:transform .12s ease, background .12s ease, border-color .12s ease, color .12s ease;
    -webkit-tap-highlight-color:transparent;
  }
  .answer-actions button:active:not(:disabled){
    transform:scale(.96);
    background:color-mix(in srgb,var(--accent-soft) 34%,var(--paper));
  }
  .answer-actions button:disabled{opacity:.28;background:transparent;box-shadow:none}
  .answer-actions .action-pill{
    width:auto;
    min-width:0;
    height:36px;
    padding:0 13px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    border-radius:999px;
    background:var(--paper);
    color:var(--ink);
    font-size:11.5px;
    font-weight:650;
    letter-spacing:.01em;
  }
  .answer-actions .action-pill .action-icon{
    color:var(--accent-deep);
    font-size:14px;
    font-weight:700;
    line-height:1;
  }
  .answer-actions .regen-answer{
    margin-left:0;
    border-color:color-mix(in srgb,var(--accent) 25%,var(--line));
    color:var(--ink);
  }
  .answer-actions .copy-answer{
    border-color:color-mix(in srgb,var(--ink) 12%,var(--line));
  }
  .answer-actions .action-icon-button{
    width:36px;
    min-width:36px;
    padding:0;
    display:grid;
    place-items:center;
    font-size:15px;
    font-weight:500;
    background:transparent;
    box-shadow:none;
  }
  .answer-actions .share-answer,.answer-actions .branch-answer,.answer-actions .delete-answer{
    color:var(--muted);
  }
  .answer-actions .delete-answer{font-size:13px}
  .answer-actions .answer-version{
    min-width:32px;
    padding:0 1px;
    text-align:center;
    color:color-mix(in srgb,var(--ink) 52%,var(--muted));
    font-size:10px;
    font-weight:600;
    letter-spacing:.02em;
  }

  .composer .chip-button{
    min-height:31px;
    padding:0 8px;
    border:1px solid transparent;
    border-radius:999px;
    background:transparent;
    color:var(--muted);
    font-size:9.5px;
    font-weight:560;
  }
  .composer .chip-button.active{
    border-color:color-mix(in srgb,var(--accent) 16%,var(--line));
    background:color-mix(in srgb,var(--accent-soft) 42%,var(--paper));
    color:var(--accent-deep);
  }
  .send-button{
    width:46px;
    min-width:46px;
    height:46px;
    padding:0;
    border:1px solid color-mix(in srgb,var(--accent-deep) 18%,var(--accent));
    border-radius:14px;
    background:var(--accent);
    color:#fff;
    box-shadow:0 2px 7px color-mix(in srgb,var(--accent) 16%,transparent);
  }
  .send-button:hover{background:var(--accent)}
  .send-button:active:not(:disabled){transform:scale(.96);background:var(--accent-deep)}
  .send-button:after{content:'↑';font-size:22px;font-weight:750;line-height:1}
}

/* 0.5.4 · iOS-like message toolbar: icon-only, quiet, native-feeling */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.ios-action-svg{display:block;pointer-events:none}

@media (max-width:820px){
  .answer-actions.ios-message-toolbar{
    display:flex;
    align-items:center;
    flex-wrap:nowrap;
    gap:5px;
    margin-top:11px;
    padding:4px 0 0;
    border:0;
    min-height:38px;
    overflow-x:auto;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .answer-actions.ios-message-toolbar::-webkit-scrollbar{display:none}
  .answer-actions.ios-message-toolbar button,
  .answer-actions.ios-message-toolbar .action-icon-button,
  .answer-actions.ios-message-toolbar .copy-answer,
  .answer-actions.ios-message-toolbar .regen-answer{
    width:34px;
    min-width:34px;
    height:34px;
    padding:0;
    display:grid;
    place-items:center;
    border:0;
    border-radius:10px;
    background:transparent;
    color:color-mix(in srgb,var(--ink) 62%,var(--muted));
    box-shadow:none;
    margin:0;
    font-size:0;
    font-weight:400;
    -webkit-tap-highlight-color:transparent;
    transition:background .12s ease,color .12s ease,transform .1s ease;
  }
  .answer-actions.ios-message-toolbar button:active:not(:disabled){
    transform:scale(.94);
    background:color-mix(in srgb,var(--ink) 6%,var(--paper));
    color:var(--ink);
  }
  .answer-actions.ios-message-toolbar button:disabled{
    opacity:.22;
    background:transparent;
  }
  .answer-actions.ios-message-toolbar .copy-answer,
  .answer-actions.ios-message-toolbar .regen-answer{
    color:var(--accent-deep);
  }
  .answer-actions.ios-message-toolbar .delete-answer{color:var(--muted)}
  .answer-actions.ios-message-toolbar .delete-answer:active{color:var(--rose)}
  .answer-actions.ios-message-toolbar .answer-version{
    min-width:31px;
    height:26px;
    display:grid;
    place-items:center;
    padding:0 5px;
    border-radius:8px;
    background:color-mix(in srgb,var(--ink) 4%,transparent);
    color:color-mix(in srgb,var(--ink) 48%,var(--muted));
    font-size:9.5px;
    font-weight:600;
    line-height:1;
  }
  .answer-actions.ios-message-toolbar .ios-action-svg{width:18px;height:18px}

  .user-message-actions.ios-user-toolbar{
    gap:2px;
    opacity:.48;
  }
  .message:hover .user-message-actions.ios-user-toolbar,
  .message:focus-within .user-message-actions.ios-user-toolbar{opacity:.8}
  .user-message-actions.ios-user-toolbar button{
    width:31px;
    height:31px;
    display:grid;
    place-items:center;
    padding:0;
    border:0;
    border-radius:9px;
    background:transparent;
    color:var(--muted);
  }
  .user-message-actions.ios-user-toolbar button:active{
    background:color-mix(in srgb,var(--ink) 6%,var(--paper));
    color:var(--ink);
  }

  .send-button{
    width:42px;
    min-width:42px;
    height:42px;
    padding:0;
    display:grid;
    place-items:center;
    border:1px solid color-mix(in srgb,var(--accent) 18%,var(--line));
    border-radius:50%;
    background:color-mix(in srgb,var(--accent) 34%,var(--paper));
    color:color-mix(in srgb,var(--accent-deep) 82%,var(--ink));
    box-shadow:none;
    opacity:1;
    -webkit-tap-highlight-color:transparent;
    transition:transform .1s ease,background .12s ease,border-color .12s ease,color .12s ease;
  }
  .send-button:after{content:none!important}
  .send-button svg{display:block;width:18px;height:18px;stroke-width:1.9}
  .send-button:hover{background:color-mix(in srgb,var(--accent) 38%,var(--paper));}
  .send-button:active:not(:disabled){
    transform:scale(.94);
    background:color-mix(in srgb,var(--accent) 46%,var(--paper));
    border-color:color-mix(in srgb,var(--accent) 28%,var(--line));
  }
  .send-button:disabled{
    background:color-mix(in srgb,var(--muted) 10%,var(--paper));
    color:color-mix(in srgb,var(--muted) 70%,var(--paper));
    border-color:var(--line);
    opacity:.72;
  }
}

/* 0.5.5 · softer iOS send control: circular, pastel, theme-adaptive */
