.ch-app{display:grid;grid-template-columns:270px minmax(0,1fr);height:calc(100dvh - 130px);min-height:550px;max-height:1100px;border:1px solid var(--brand-line);border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 12px 36px #532c3510}.ch-app button svg{width:20px;height:20px;flex-shrink:0}.ch-history{display:flex;flex-direction:column;min-width:0;padding:22px 16px;background:#faf5ed;border-right:1px solid var(--brand-line)}.ch-eyebrow{font-size:10px;letter-spacing:1.7px;color:var(--brand-muted);font-weight:700}.ch-history-heading h2{font-size:20px;margin:9px 0 23px}.ch-history-heading{display:flex;justify-content:space-between}.ch-new{width:100%;justify-content:center;min-height:44px}.ch-search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--brand-line);border-radius:10px;padding:0 10px;margin:16px 0}.ch-search>svg{width:18px;flex-shrink:0;color:var(--brand-muted)}.ch-search input{border:0;background:none;min-width:0;width:100%;padding:12px 0;font-size:13px;box-shadow:none}.ch-history-list{overflow:auto;flex:1;min-height:0}.ch-history-list>button{width:100%;display:flex;gap:10px;align-items:flex-start;text-align:left;border:1px solid transparent;border-radius:10px;padding:13px 10px;background:transparent;color:var(--brand-ink);cursor:pointer;margin:3px 0}.ch-history-list>button.selected{background:#fff;border-color:#e6c5bd;color:var(--brand-deep);box-shadow:0 3px 10px #44212a06}.ch-history-list>button>span{font-size:13px;line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow-wrap:anywhere}.ch-history-list small{display:block;font-size:11px;color:var(--brand-muted);margin-top:5px}.ch-history-footer{font-size:11px;color:var(--brand-muted);line-height:1.6;border-top:1px solid var(--brand-line);padding-top:18px}.ch-history-footer>svg{width:13px;vertical-align:middle}.ch-history-footer .btn{margin-top:15px;width:100%;font-size:12px;padding:10px}.ch-conversation{min-width:0;min-height:0;display:flex;flex-direction:column}.ch-header{display:flex;gap:12px;align-items:center;padding:18px 24px;border-bottom:1px solid #f1e8e1}.ch-header>div:first-of-type{flex:1;min-width:0}.ch-header h1{font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 0 6px}.ch-header span{font-size:11px;color:var(--brand-muted);display:flex;align-items:center;gap:5px}.ch-header span svg{width:13px;height:13px}.ch-header-actions{display:flex;gap:3px}.ch-header-actions .icon-btn{width:36px;height:38px}.ch-quota{padding:10px 24px;display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;background:#fffaf4;border-bottom:1px solid #f4e9dc;font-size:11px;color:#785835}.ch-quota>span{display:flex;gap:5px;align-items:center}.ch-quota svg{width:14px;height:14px}.ch-quota details{font-size:11px;max-width:100%;line-height:1.6}.ch-quota summary{cursor:pointer}.ch-quota p{max-width:600px}.ch-messages{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:24px 32px;scroll-behavior:smooth}.ch-welcome{max-width:680px;text-align:center;margin:clamp(16px,4vh,60px) auto 0}.ch-emblem{display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,#fdebc3,#fbe0dc);border:1px solid #f2d1bc;color:var(--brand-primary);width:56px;height:56px;border-radius:18px;margin:0 auto 22px}.ch-emblem svg{width:29px;height:29px}.ch-welcome h2{font-size:clamp(23px,2.4vw,34px);line-height:1.3;margin:14px 0;color:var(--brand-ink)}.ch-welcome>p{font-size:14px;line-height:1.7;color:var(--brand-muted);margin:0 auto 24px;max-width:450px}.ch-suggestions{display:grid;grid-template-columns:1fr;gap:9px;margin:25px auto;max-width:490px}.ch-suggestions button{border:1px solid var(--brand-line);background:#fff;border-radius:12px;display:flex;align-items:center;gap:12px;padding:15px 16px;text-align:left;cursor:pointer;color:var(--brand-ink);font-size:13px;line-height:1.5}.ch-suggestions button:hover{border-color:#cb807c;background:#fffaf5}.ch-suggestions button>span{flex:1}.ch-suggestions button>svg:first-child{color:var(--brand-primary)}.ch-private{font-size:11px!important}.ch-private svg{width:13px;height:13px;vertical-align:middle;margin-right:5px}.ch-compose-area{background:#fff;padding:12px 24px 14px;border-top:1px solid #f5ece7}.ch-compose-area form{border:1px solid #d9bfb5;border-radius:15px;overflow:hidden;box-shadow:0 3px 14px #522a3408;padding:12px 14px}.ch-compose-area textarea{width:100%;max-height:160px;min-height:52px;resize:vertical;border:0;box-shadow:none;background:#fff;font-family:inherit;font-size:15px;line-height:1.5;padding:0;color:var(--brand-ink)}.ch-compose-area textarea:focus{outline:none;box-shadow:none}.ch-compose-area form:focus-within{border-color:var(--brand-primary);box-shadow:0 0 0 2px #b8243810}.ch-compose-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}.ch-compose-bottom>span{font-size:10px;color:var(--brand-muted)}.ch-compose-bottom .btn{min-height:40px;border-radius:10px;padding:8px 18px;font-size:13px}.ch-disclaimer{font-size:10px;color:var(--brand-muted);text-align:center;line-height:1.5;margin:9px 0 0}.ch-turn{max-width:850px;margin:0 auto 32px}.ch-user{margin-left:10%;text-align:right}.ch-user>span{font-size:10px;display:block;margin-bottom:7px;color:var(--brand-muted)}.ch-user>div{display:inline-block;background:#f9eee6;border:1px solid #efded0;border-radius:16px 16px 3px 16px;padding:14px 18px;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.6}.ch-assistant{padding-top:24px}.ch-ai-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--brand-primary);margin-bottom:14px}.ch-ai-label>svg{width:23px;height:23px}.ch-ai-label small{font-size:10px;color:var(--brand-muted);font-weight:400}.ch-answer{font-size:15px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.ch-answer pre{padding:15px;background:#302b31;color:#f6e6df;border-radius:10px;overflow:auto;white-space:pre;max-width:100%;font-size:12px}.ch-answer code{font-family:ui-monospace,monospace}.ch-subheading{font-size:17px}.ch-copy{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:var(--brand-muted);font-size:11px;cursor:pointer;margin-top:12px;padding:7px}.ch-copy svg{width:14px!important;height:14px!important}.ch-message-note,.ch-error{font-size:13px;line-height:1.6;border:1px solid #edcbb3;border-radius:9px;padding:10px 12px;background:#fff5e8;color:#804722;margin:0 0 10px}.ch-error .btn{margin:6px 0}.ch-thinking{font-size:13px;color:var(--brand-muted);display:flex;align-items:center;gap:8px}.ch-thinking i{width:8px;height:8px;border-radius:50%;background:var(--brand-gold);animation:ch-pulse 1.2s ease-in-out infinite}@keyframes ch-pulse{50%{opacity:.3}}.ch-history-toggle,.ch-history-close{display:none}.ch-muted{font-size:13px;color:var(--brand-muted);padding:12px;line-height:1.6}.ch-personal-entry{display:flex;gap:20px;align-items:center;background:#fff;border:1px solid #e4cbc1;border-radius:20px;padding:24px;margin:24px 0 85px}.ch-personal-entry .ch-emblem{margin:0;flex-shrink:0}.ch-personal-entry>div:nth-child(2){flex:1}.ch-personal-entry h2{margin:0 0 8px;font-size:21px}.ch-personal-entry p{color:var(--brand-muted);font-size:14px;line-height:1.6;margin:0}.ch-admin-note{padding:18px;border:1px solid var(--brand-line);border-radius:12px;background:#fffaf2;font-size:14px;line-height:1.7;margin-bottom:24px}.ch-limit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-bottom:80px}.ch-limit-card{min-width:0;background:#fff;border:1px solid var(--brand-line);border-radius:18px;padding:20px}.ch-limit-card.pool{border-color:var(--brand-primary);background:#fff8f3}.ch-limit-card header{display:flex;gap:10px;justify-content:space-between}.ch-limit-card header small{font-size:10px;color:var(--brand-muted);letter-spacing:1px}.ch-limit-card h2{font-size:18px;margin:8px 0 14px}.ch-limit-state{font-size:10px;white-space:nowrap;color:var(--brand-primary)}.ch-limit-card dl{font-size:12px}.ch-limit-card dl>div{display:flex;justify-content:space-between;gap:8px;margin:14px 0}.ch-limit-card dd{font-weight:600;margin:0}.ch-limit-card progress{width:100%;height:7px;accent-color:var(--brand-primary)}.ch-limit-card>small{display:block;font-size:10px;color:var(--brand-muted);margin:10px 0 20px}.ch-limit-card>.btn{width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:761px) and (max-width:1150px){.ch-app{grid-template-columns:220px minmax(0,1fr)}.ch-messages{padding:20px}.ch-header{padding:16px}.ch-limit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){body.ch-route{overflow:hidden}.ch-route .main{padding:0!important}.ch-app{position:relative;display:block;border:0;border-radius:0;min-height:0;height:calc(100dvh - 153px - env(safe-area-inset-bottom));max-height:none;box-shadow:none}.ch-conversation{height:100%}.ch-header{padding:10px 12px;gap:7px}.ch-header h1{font-size:16px;max-width:100%}.ch-header span{font-size:10px}.ch-header-actions .icon-btn{width:32px;min-width:32px}.ch-header-actions{gap:0}.ch-history-toggle,.ch-history-close{display:flex;flex-shrink:0}.ch-history{display:none;position:absolute;inset:0;z-index:25;border:0;padding:18px}.ch-show-history .ch-history{display:flex}.ch-quota{padding:8px 14px;gap:4px 12px;font-size:10px}.ch-quota details{font-size:10px;width:100%}.ch-messages{padding:18px 16px}.ch-welcome{margin:8px auto 0}.ch-welcome h2{font-size:23px}.ch-welcome .ch-emblem{width:44px;height:44px;border-radius:14px;margin-bottom:15px}.ch-welcome>p{font-size:12px;margin-bottom:12px}.ch-suggestions{margin:15px 0}.ch-suggestions button{padding:12px;font-size:12px}.ch-compose-area{padding:8px 12px 10px}.ch-compose-area form{padding:10px 12px}.ch-compose-area textarea{font-size:16px;min-height:44px;max-height:110px}.ch-disclaimer{font-size:9px}.ch-answer,.ch-user>div{font-size:14px}.ch-user{margin-left:6%}.ch-personal-entry{display:block;padding:20px}.ch-personal-entry .ch-emblem{margin-bottom:15px}.ch-personal-entry .btn{margin-top:18px;width:100%}.ch-limit-grid{grid-template-columns:1fr}.ch-admin .ws-heading h1{font-size:26px}.ch-compose-bottom>span{font-size:9px}.ch-route .ux-bottom-nav{padding-top:7px;padding-bottom:calc(7px + env(safe-area-inset-bottom));min-height:74px}}
@media(prefers-reduced-motion:reduce){.ch-thinking i{animation:none}.ch-messages{scroll-behavior:auto}}

@media(max-width:760px){.ch-route.ch-keyboard .ux-bottom-nav{display:none}}
