.ask-result-card{margin-top:0}.ask-result-card .signal-card{margin:0}.ask-result-card.partial{opacity:.88}.score-pending{padding:15px;border:1px dashed #cbdadb;border-radius:14px;color:#72858e;text-align:center}.ask-score-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.ask-score-row>b{display:grid;padding:14px;border:1px solid #dce7e8;border-radius:14px;background:#fff;font-size:1.15rem}.ask-score-row small{margin-top:4px;color:#71858f;font-size:.64rem}.generated-note{display:block;margin:10px 2px;color:#71858f}.ask-card-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.ask-card-actions button,.ask-own{min-height:44px;border:1px solid #d5e2e3;border-radius:11px;background:#fff;color:#173749;font-weight:850}.ask-card-actions button:first-child{background:#10293d;color:#fff}.ask-own{display:flex;align-items:center;justify-content:center;margin-top:12px;text-decoration:none}@media(max-width:520px){.ask-card-actions{grid-template-columns:1fr}}
.my-research-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid #edf1f2}.my-research-row>div:first-child{display:grid;gap:4px;min-width:0}.my-research-row b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.my-research-row span{color:#738690;font-size:.65rem}.my-research-row a{flex:0 0 auto;border-radius:9px;padding:8px 10px;background:#eef5f4;color:#087c69;font-size:.68rem;font-weight:850;text-decoration:none}
.research-status{display:inline-block;margin-top:2px;font-style:normal;font-size:.62rem;font-weight:800;letter-spacing:.02em}
.research-status-PUBLISHED{color:#087c69}
.research-status-DRAFT{color:#a08a4a}
.research-resume{flex:0 0 auto;border:0;border-radius:9px;padding:8px 10px;background:#eef5f4;color:#087c69;font-size:.68rem;font-weight:850}
.research-abandon{flex:0 0 auto;border:1px solid #efc9c9;border-radius:9px;padding:8px 10px;background:#fff5f5;color:#a92d4d;font-size:.68rem;font-weight:850}
.ask-abandon-btn{background:transparent!important;border:1px solid #efc9c9!important;color:#a92d4d!important}
.ask-abandoned-note{padding:10px;text-align:center;border-radius:10px;background:#f7f9fa;color:#8fa9b5;font-size:.85rem;font-weight:800}
.ask-result-card.ask-abandoned{opacity:.55}
.my-research-actions{flex:0 0 auto;display:flex;align-items:center;gap:6px}
.ask-source-tag{margin-bottom:8px;font-size:.68rem;font-weight:800;letter-spacing:.03em;color:#087c69;text-transform:uppercase}
.signal-ask{display:inline-flex;margin-top:10px;border-radius:9px;padding:8px 10px;background:#eef5f4;color:#087c69;font-size:.72rem;font-weight:850;text-decoration:none}
.ask-modal{display:none;padding:0;border:0;border-radius:20px 20px 0 0;width:100%;max-width:640px;height:88vh;max-height:820px;margin:auto auto 0;background:#fff;color:#10293d;box-shadow:0 -20px 60px rgba(16,41,61,.25)}
.ask-modal[open]{display:flex;flex-direction:column;overflow:hidden}
.ask-modal::backdrop{background:rgba(6,15,25,.55)}
.ask-modal-head{flex:none;padding:14px 18px 10px;border-bottom:1px solid #dce5e8}
.ask-modal-head-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.ask-modal-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:900;font-size:.95rem;letter-spacing:.02em}
.ask-modal-head-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin-top:8px}
.ask-modal-head-meta:empty{display:none;margin-top:0}
.ask-modal-version{flex:none;display:inline-flex;align-items:center;gap:4px;font-size:.66rem;font-weight:800;color:#5e717d;background:#f1f5f6;border:1px solid #dce5e8;border-radius:999px;padding:3px 8px 3px 6px}
.ask-modal-version code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:900;color:#173749}
.ask-model-icon{flex:none;vertical-align:-1px}
.ask-modal-close{flex:none;border:0;background:transparent;font-size:1.2rem;line-height:1;color:#8fa9b5;padding:4px 8px;cursor:pointer}
.ask-font-ctl{flex:none;display:flex;gap:4px;margin-right:6px}
.ask-font-ctl button{border:1px solid #dce5e8;background:#fff;color:#173749;border-radius:8px;padding:5px 8px;font-size:.72rem;font-weight:800;cursor:pointer}
.ask-font-ctl button:disabled{opacity:.35;cursor:default}
.ask-modal-context{flex:none;padding:8px 18px;font-size:.7rem;font-weight:800;color:#087c69;background:#eef8f5;border-bottom:1px solid #dce5e8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ask-modal-messages{flex:1;overflow-y:auto;padding:16px 18px;display:flex;flex-direction:column;gap:12px;-webkit-overflow-scrolling:touch}
.ask-modal-hint{color:#8fa9b5;font-size:.9rem;text-align:center;padding:40px 10px}
.ask-modal-gpt-link{display:block;margin:14px auto 0;border:1px solid #dce5e8;background:#fff;color:#5e717d;border-radius:999px;padding:8px 16px;font-size:.78rem;font-weight:850;cursor:pointer}
.chat-turn{display:flex;flex-direction:column;gap:4px;max-width:88%}
.chat-turn-user{align-self:flex-end;align-items:flex-end}
.chat-turn-user .chat-user{max-width:100%}
.chat-user-actions{display:flex;gap:4px;opacity:.55}
.chat-user-action{border:0;background:transparent;color:#5e717d;font-size:.78rem;padding:2px 5px;cursor:pointer;border-radius:6px}
.chat-user-action:hover,.chat-user-action:focus-visible{opacity:1;background:#f1f5f6}
.chat-model-note{display:block;margin-top:10px;font-size:.68rem;color:#8b8f98}
.chat-model-note code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:800;color:#5e717d}
.chat-assistant-actions{display:flex;gap:8px;margin-top:8px;padding-top:10px;border-top:1px solid rgba(0,0,0,.08)}
.chat-assistant-action{border:1px solid rgba(0,0,0,.12);background:transparent;color:#5e717d;font-size:.72rem;font-weight:800;padding:5px 11px;border-radius:999px;cursor:pointer}
.chat-assistant-action:hover,.chat-assistant-action:focus-visible{background:rgba(0,0,0,.05)}
.chat-bubble{max-width:88%;padding:13px 15px;border-radius:16px;font-size:1rem;line-height:1.7}
.chat-bubble p{margin:0 0 9px}
.chat-bubble p:last-child{margin-bottom:0}
.chat-bubble ul,.chat-bubble ol{margin:7px 0;padding-left:22px}
.chat-bubble h3,.chat-bubble h4{margin:11px 0 5px;font-size:1rem}
.chat-bubble code{background:rgba(0,0,0,.06);padding:1px 6px;border-radius:5px;font-size:.9em}
.chat-user{align-self:flex-end;background:#19a990;color:#fff;border-bottom-right-radius:4px}
.chat-assistant{align-self:flex-start;background:#f1f5f6;color:#10293d;border-bottom-left-radius:4px;max-width:94%}
.chat-assistant.chat-card,.chat-assistant.chat-card-partial{background:transparent;padding:0;max-width:100%}
.chat-assistant.chat-card-partial{opacity:.85}
.chat-status{display:block;font-size:.7rem;color:#8fa9b5;margin-bottom:6px}
.chat-error{color:#a92d4d}
.chat-dots{display:inline-flex;gap:4px;padding:4px 2px}
.chat-dots i{width:6px;height:6px;border-radius:50%;background:#8fa9b5;animation:chatDot 1.2s infinite ease-in-out}
.chat-dots i:nth-child(2){animation-delay:.15s}
.chat-dots i:nth-child(3){animation-delay:.3s}
@keyframes chatDot{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.ask-modal-form{flex:none;display:flex;align-items:flex-end;gap:8px;padding:12px 14px;padding-bottom:calc(12px + env(safe-area-inset-bottom));border-top:1px solid #dce5e8;background:#fff}
.ask-modal-form textarea{flex:1;resize:none;max-height:160px;min-height:24px;border:1px solid #dce5e8;border-radius:14px;padding:11px 14px;font:inherit;font-size:1rem;line-height:1.5;background:#f7f9fa;color:#10293d}
.ask-modal-form textarea:focus{outline:none;border-color:#19a990}
.ask-modal-send{flex:none;width:38px;height:38px;border:0;border-radius:50%;background:#19a990;color:#fff;font-size:.8rem;display:grid;place-items:center;cursor:pointer}
.ask-modal-send:disabled{opacity:.5}
.ask-modal-quota{flex:none;font-size:.7rem;font-weight:800;color:#8fa9b5}
.ask-quote-chip{flex:none;display:flex;align-items:center;gap:8px;margin:0 14px;padding:8px 10px;border-radius:10px;background:#eef8f5;border:1px solid #cfe9e2;font-size:.8rem;color:#087c69}
.ask-modal-warn{flex:none;margin:0 14px;padding:7px 10px;border-radius:9px;background:#fff8ec;border:1px solid #f0dfb8;font-size:.78rem;color:#8a6d1f}
.ask-quote-chip span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ask-quote-chip button{flex:none;border:0;background:transparent;color:#087c69;font-size:.85rem;cursor:pointer;padding:2px 4px}
.quote-select-btn{position:absolute;z-index:5;border:0;border-radius:8px;padding:7px 11px;background:#10293d;color:#fff;font-size:.75rem;font-weight:800;box-shadow:0 6px 16px rgba(16,41,61,.3);cursor:pointer}
.chat-bubble blockquote{margin:0 0 8px;padding:6px 10px;border-left:3px solid rgba(0,0,0,.15);background:rgba(0,0,0,.04);border-radius:6px;font-size:.9em;color:inherit;opacity:.85}
.ask-sources{margin:12px 0;padding:12px;border:1px solid #dce7e8;border-radius:12px;background:#fafcfc}
.ask-sources>b{display:block;font-size:.65rem;letter-spacing:.03em;color:#71858f;margin-bottom:8px;font-weight:800;text-transform:uppercase}
.ask-source-row{display:flex;align-items:center;gap:8px;padding:7px 0;border-top:1px solid #edf1f2;cursor:pointer}
.ask-source-row:first-of-type{border-top:0}
.ask-source-row span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;color:#173749}
.ask-source-row a{flex:none;color:#19a990;text-decoration:none;font-size:.85rem}
.json-render{display:grid;gap:9px}
.json-field{display:grid;gap:2px}
.json-field>b{font-size:.68rem;font-weight:800;letter-spacing:.03em;color:#71858f;text-transform:uppercase}
.json-field>p{margin:0}
.json-field .json-render{margin-top:4px;padding-left:10px;border-left:2px solid #edf1f2}
@media(max-width:640px){.ask-modal{max-width:100%;height:var(--vh-modal,100dvh);max-height:var(--vh-modal,100dvh);border-radius:0;margin:0;position:fixed;left:0;top:var(--top-modal,0)}}

.gpt-modal{display:none;padding:0;border:0;border-radius:20px 20px 0 0;width:100%;max-width:640px;height:88vh;max-height:820px;margin:auto auto 0;background:#fff;color:#20242b;box-shadow:0 -20px 60px rgba(16,41,61,.25)}
.gpt-modal[open]{display:flex;flex-direction:column;overflow:hidden}
.gpt-modal::backdrop{background:rgba(6,15,25,.55)}
.gpt-modal-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 18px;border-bottom:1px solid #e2e2e6}
.gpt-modal-title{display:inline-flex;align-items:center;gap:7px;font-weight:900;font-size:.95rem;letter-spacing:.02em;color:#20242b}
.gpt-modal-close{flex:none;border:0;background:transparent;font-size:1.2rem;line-height:1;color:#8b8f98;padding:4px 8px;cursor:pointer}
.gpt-modal-messages{flex:1;overflow-y:auto;padding:16px 18px;display:flex;flex-direction:column;gap:12px;-webkit-overflow-scrolling:touch}
.gpt-modal-hint{color:#8a6d1f;background:#fdf3e3;border:1px solid #f0dcb3;border-radius:12px;padding:14px 16px;text-align:left;line-height:1.6;font-size:.85rem}
.gpt-modal-form{flex:none;display:flex;align-items:flex-end;gap:8px;padding:12px 14px;padding-bottom:calc(12px + env(safe-area-inset-bottom));border-top:1px solid #e2e2e6;background:#fff}
.gpt-modal-form textarea{flex:1;resize:none;max-height:160px;min-height:24px;border:1px solid #e2e2e6;border-radius:14px;padding:11px 14px;font:inherit;font-size:1rem;line-height:1.5;background:#f7f7f8;color:#20242b}
.gpt-modal-form textarea:focus{outline:none;border-color:#20242b}
.gpt-modal-send{flex:none;width:38px;height:38px;border:0;border-radius:50%;background:#20242b;color:#fff;font-size:.8rem;display:grid;place-items:center;cursor:pointer}
.gpt-modal-send:disabled{opacity:.5}
@media(max-width:640px){.gpt-modal{max-width:100%;height:var(--vh-modal,100dvh);max-height:var(--vh-modal,100dvh);border-radius:0;margin:0;position:fixed;left:0;top:var(--top-modal,0)}}
