:root{--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--pad-x: clamp(12px, 3.5vw, 20px);--pad-y: 12px;--touch: 44px;--content-max: 720px;--font-chat: clamp(14px, 3.2vw, 16px);--font-manual-title: clamp(14px, 3vw, 15px)}@media(min-width:600px){:root{--pad-y: 14px;--content-max: 680px}}@media(min-width:900px){:root{--content-max: 720px}}.app-root{width:100%;height:100%;min-height:0;flex:1;display:flex;flex-direction:column;align-items:stretch;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.app-frame{width:100%;max-width:var(--content-max);margin:0 auto;height:100%;min-height:0;display:flex;flex-direction:column;flex:1;box-sizing:border-box}@media(min-width:600px){.app-frame{border-left:1px solid rgba(0,0,0,.06);border-right:1px solid rgba(0,0,0,.06)}}.app-header{display:flex;align-items:center;gap:8px;flex-shrink:0;padding:calc(var(--pad-y) + var(--safe-top)) var(--pad-x) var(--pad-y);padding-left:calc(var(--pad-x) + var(--safe-left));padding-right:calc(var(--pad-x) + var(--safe-right));background:#fafaf8d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.app-header__logo{height:clamp(28px,7vw,36px);width:auto;max-width:min(220px,58vw);object-fit:contain;display:block}.app-btn-icon{min-width:var(--touch);min-height:var(--touch);padding:0;display:flex;align-items:center;justify-content:center;border-radius:10px;border:none;background:#fff;box-shadow:0 1px 3px #0000000f;cursor:pointer}.app-btn-tab{min-height:var(--touch);padding:8px 14px;border-radius:10px;border:none;background:#1a1a1a;color:#fff;font-size:clamp(12px,3vw,14px);font-weight:600;cursor:pointer}.app-btn-tab--icon{display:flex;align-items:center;justify-content:center;min-width:var(--touch);padding:0}.app-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overflow-anchor:none;touch-action:pan-y;padding:var(--pad-y) var(--pad-x);padding-bottom:calc(var(--pad-y) + var(--safe-bottom));padding-left:calc(var(--pad-x) + var(--safe-left));padding-right:calc(var(--pad-x) + var(--safe-right))}.app-scroll--chat{padding-bottom:8px}.app-input-bar{flex-shrink:0;padding:8px var(--pad-x) max(20px,var(--safe-bottom));padding-left:calc(var(--pad-x) + var(--safe-left));padding-right:calc(var(--pad-x) + var(--safe-right))}.app-manual-search-footer{flex-shrink:0;padding:8px var(--pad-x) max(20px,var(--safe-bottom));padding-left:calc(var(--pad-x) + var(--safe-left));padding-right:calc(var(--pad-x) + var(--safe-right));background:#fafaf8;border-top:1px solid rgba(0,0,0,.06)}.app-search-row--footer{margin-bottom:0}.app-input-row{display:flex;gap:8px;align-items:center;background:#fff;border-radius:24px;padding:6px 6px 6px 12px;border:1px solid #e8e8e8;box-shadow:0 2px 8px #0000000a;min-height:var(--touch)}.app-input-row input[type=text]{font-size:16px!important;min-height:40px;color:#1a1a1a;caret-color:#1a1a1a;-webkit-text-fill-color:#1a1a1a;background:transparent;min-width:0;line-height:1.5;opacity:1}.app-btn-send{min-width:var(--touch);min-height:var(--touch);border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer}.app-btn-attach{min-width:var(--touch);min-height:var(--touch);border-radius:50%;border:none;background:#f5f5f0;display:flex;align-items:center;justify-content:center;cursor:pointer}.app-search-row{display:flex;align-items:center;gap:8px;background:#fff;border-radius:12px;padding:12px 14px;margin-bottom:12px;border:1px solid #e8e8e8;min-height:var(--touch)}.app-search-row input{font-size:16px!important;min-height:40px;color:#1a1a1a;caret-color:#1a1a1a;-webkit-text-fill-color:#1a1a1a;background:transparent;min-width:0;line-height:1.5;opacity:1}.app-section-btn{display:flex;align-items:center;gap:10px;width:100%;min-height:var(--touch);padding:14px 16px;border-radius:12px;border:1px solid #e8e8e8;background:#fff;cursor:pointer;text-align:left;font-size:var(--font-manual-title);font-weight:500;-webkit-tap-highlight-color:rgba(0,0,0,.04)}.app-section-btn:active{background:#f8f8f6}.app-sidebar-panel{position:relative;width:min(78vw,380px);max-width:100%;background:#fff;height:100%;box-shadow:4px 0 24px #00000014;display:flex;flex-direction:column;padding-top:var(--safe-top)}.app-sidebar-panel .app-scroll{padding-bottom:var(--safe-bottom)}.app-bubble-user{max-width:min(80%,520px)}.app-bubble-ai{max-width:min(88%,560px)}.markdown-body{font-size:var(--font-chat);line-height:1.75;color:inherit;word-break:break-word}.markdown-body>:first-child{margin-top:0}.markdown-body>:last-child{margin-bottom:0}.markdown-body h1{font-size:1.25em;font-weight:700;margin:.85em 0 .45em;line-height:1.35}.markdown-body h2{font-size:1.15em;font-weight:700;margin:.85em 0 .4em;line-height:1.35}.markdown-body h3{font-size:1.05em;font-weight:600;margin:.75em 0 .35em;line-height:1.4}.markdown-body h4,.markdown-body h5,.markdown-body h6{font-size:1em;font-weight:600;margin:.65em 0 .3em}.markdown-body p{margin:.5em 0}.markdown-body ul,.markdown-body ol{margin:.5em 0;padding-left:1.35em}.markdown-body li{margin:.25em 0}.markdown-body li>p{margin:.25em 0}.markdown-body strong{font-weight:700}.markdown-body a{color:#2563eb;text-decoration:underline;text-underline-offset:2px}.markdown-body code{font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,monospace;font-size:.9em;background:#0000000f;padding:.15em .4em;border-radius:4px}.markdown-body pre{margin:.65em 0;padding:10px 12px;background:#f4f4f0;border-radius:8px;overflow-x:auto;font-size:.88em;line-height:1.5}.markdown-body pre code{background:none;padding:0;font-size:inherit}.markdown-body .table-wrapper{overflow-x:auto;margin:.65em 0;-webkit-overflow-scrolling:touch}.markdown-body table{width:100%;border-collapse:collapse;font-size:.92em;min-width:min(100%,320px)}.markdown-body th,.markdown-body td{border:1px solid #e0e0dc;padding:6px 8px;text-align:left;vertical-align:top}.markdown-body th{background:#f5f5f0;font-weight:600}.markdown-body blockquote{margin:.5em 0;padding-left:.85em;border-left:3px solid #ccc;color:#555}.markdown-body hr{margin:1em 0;border:none;border-top:1px solid #e8e8e8}.markdown-body img{max-width:100%;height:auto;border-radius:.5em}.scroll-area{scrollbar-width:none;-ms-overflow-style:none}.scroll-area::-webkit-scrollbar{display:none}
