/* Optional AI workspace: self-contained, accessible, and theme-aware. */
:root{--ai-width:410px;--ai-accent:#7754bb;--ai-soft:#f4effc}
body[data-theme=dark]{--ai-accent:#b39ae4;--ai-soft:#302a3a}
.ai-spark{color:var(--ai-accent);font-size:19px;line-height:1;flex-shrink:0}
.ai-launch{margin-top:3px}.ai-optional{margin-left:auto;color:var(--muted);font-size:10px;border:1px solid var(--line);border-radius:4px;padding:0 4px}
.ai-toolbar-launch{color:var(--ai-accent);font-size:12px!important;gap:4px!important;margin-right:4px}
.ai-inline{color:var(--ai-accent);display:flex!important;align-items:center;gap:5px;white-space:nowrap;min-width:75px;font-size:12px!important}
.format-toolbar{max-width:calc(100vw - 20px);flex-wrap:wrap}.ai-panel-open .main{margin-right:var(--ai-width)}
.ai-panel-open .page-outline{right:calc(var(--ai-width) + 12px)}
.ai-panel{position:fixed;inset:0 0 0 auto;width:var(--ai-width);z-index:45;display:flex;flex-direction:column;background:var(--bg);border-left:1px solid var(--line);box-shadow:-4px 0 18px #00000004;color:var(--text);font-size:13px;line-height:1.5}
.ai-panel *{box-sizing:border-box}.ai-panel button,.ai-review button{font-family:var(--font)}
.ai-header{height:53px;min-height:53px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.ai-brand{display:flex;align-items:center;gap:8px;font-size:14px}.ai-brand b{font-weight:600}.ai-beta{border:1px solid var(--line);border-radius:4px;padding:1px 5px;font-size:10px;color:var(--muted);margin-left:3px}
.ai-btn{border:1px solid var(--line);border-radius:5px;padding:5px 9px;min-height:29px;display:inline-flex;align-items:center;justify-content:center;gap:5px;background:var(--bg);color:var(--text);font-size:12px;line-height:1.5;cursor:pointer;white-space:nowrap;touch-action:manipulation}
.ai-btn:hover{background:var(--hover)}.ai-btn:disabled{opacity:.45;cursor:not-allowed}.ai-btn.primary{background:var(--ai-accent);border-color:var(--ai-accent);color:white}.ai-btn.primary:hover{filter:brightness(.93)}
body[data-theme=dark] .ai-btn.primary{background:#7952b8;border-color:#7952b8}
.ai-btn.danger{color:#c7544c}.ai-btn.ai-link{padding:0;border-color:transparent;background:transparent;font-size:11px;color:var(--sub);min-height:24px;white-space:normal;text-align:left}.ai-btn.ai-link:hover{color:var(--ai-accent)}
.ai-btn.ai-icon{width:28px;height:29px;min-height:29px;padding:0;border-color:transparent;font-size:20px;background:transparent}.ai-btn.ai-icon:hover{background:var(--hover)}
.ai-tabs{display:flex;gap:4px;padding:8px 12px;border-bottom:1px solid var(--line)}.ai-tabs .ai-btn{border:0;background:none;color:var(--sub);padding:4px 10px;font-size:12px}.ai-tabs .ai-btn.active{color:var(--ai-accent);background:var(--ai-soft);font-weight:600}
.ai-scroll{overflow:auto;flex:1;min-height:0;padding:20px;overscroll-behavior:contain;scrollbar-width:thin}.ai-panel h2{font-size:19px;font-weight:600;letter-spacing:-.4px;line-height:1.3;margin:3px 0 10px}.ai-panel h3{font-size:14px;margin:0 0 6px;font-weight:600}.ai-panel p{margin:0 0 15px;color:var(--sub);line-height:1.6;font-size:13px}
.ai-panel label{display:block;font-size:12px;font-weight:500;margin:14px 0 5px}.ai-panel input:not([type=checkbox]),.ai-panel textarea,.ai-panel select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:5px;padding:8px 9px;background:var(--sidebar);color:var(--text);font-family:var(--font);font-size:13px;min-width:0}
.ai-panel textarea{resize:vertical;line-height:1.5}.ai-panel input[type=checkbox]{accent-color:var(--ai-accent);width:14px;height:14px;margin:2px 0 0;flex-shrink:0}
.ai-panel label.ai-check{display:flex;align-items:flex-start;gap:8px;line-height:1.5;font-weight:400;margin:12px 0}
.ai-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0}.ai-help{font-size:11px!important;line-height:1.5;color:var(--muted);font-weight:400;overflow-wrap:anywhere}.ai-panel code{font-family:ui-monospace,monospace;font-size:11px;background:var(--hover);border-radius:3px;padding:1px 4px}
.ai-privacy{padding:13px;background:var(--sidebar);border:1px solid var(--line);border-radius:6px;margin:18px 0}.ai-privacy>b{font-size:12px;font-weight:600}.ai-privacy p{font-size:11px;margin:7px 0 0;line-height:1.6}
.ai-advanced{border-top:1px solid var(--line);padding-top:12px;margin-top:16px}.ai-advanced summary{cursor:pointer;color:var(--sub);font-size:12px;user-select:none}.ai-alert-zone:empty{display:none}.ai-alert-zone{flex-shrink:0;max-height:150px;overflow:auto}.ai-error,.ai-notice{margin:10px 12px 0;padding:10px 12px;border-radius:5px;line-height:1.5;font-size:12px;overflow-wrap:anywhere}.ai-error{background:#fff0ed;color:#a8463d;border:1px solid #ecd2cc}.ai-notice{background:var(--ai-soft);color:var(--ai-accent);border:1px solid var(--line)}
body[data-theme=dark] .ai-error{background:#392a28;border-color:#5c3833;color:#efa79d}
.ai-modelbar{padding:10px 14px;display:flex;gap:7px;align-items:center;flex-shrink:0}.ai-modelbar input{margin:0!important;background:transparent!important;border:0!important;padding:4px!important;font-size:12px!important}.ai-modelbar .ai-icon{font-size:16px}.ai-status{width:6px;height:6px;border-radius:50%;background:var(--muted);flex-shrink:0}.ai-status.on{background:var(--ai-accent)}
.ai-context{margin:0 12px 8px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--sidebar);flex-shrink:0}.ai-context .ai-row{margin:0;justify-content:space-between;gap:4px}.ai-mini-label{font-size:9px;font-weight:600;letter-spacing:.7px;color:var(--muted)}.ai-context select{padding:2px 4px;width:auto;max-width:185px;margin:0;background:transparent;border:0;font-size:11px}.ai-context-name{font-size:12px;margin:6px 0;color:var(--sub);display:flex;justify-content:space-between;gap:8px;overflow-wrap:anywhere}.ai-context .ai-help{font-size:10px!important;line-height:1.5}.ai-page-picker{max-height:130px;overflow:auto;border-top:1px solid var(--line);margin:6px 0}.ai-page-picker label{display:flex;gap:6px;font-size:12px;margin:7px 0;font-weight:400}
.ai-thread{flex:1;min-height:60px;overflow:auto;padding:14px 18px 24px;scrollbar-width:thin;overscroll-behavior:contain}.ai-welcome{padding-top:13px}.ai-orb{color:var(--ai-accent);background:var(--ai-soft);height:42px;width:42px;font-size:30px;display:flex;align-items:center;justify-content:center;border-radius:11px;margin:0 0 18px}.ai-welcome h2{font-size:21px;max-width:270px;line-height:1.3;letter-spacing:-.5px}.ai-welcome p{font-size:13px;max-width:310px;line-height:1.6;color:var(--sub);margin-bottom:18px}.ai-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.ai-quick-grid .ai-btn{justify-content:flex-start;font-size:12px;padding:8px 10px;white-space:normal;text-align:left;min-height:36px;color:var(--sub)}.ai-quick-grid .ai-btn:hover{color:var(--ai-accent);background:var(--ai-soft);border-color:transparent}
.ai-turn{margin:3px 0 24px}.ai-turn-label{font-size:12px;font-weight:600;margin-bottom:7px;color:var(--ai-accent)}.ai-turn.user .ai-turn-label{color:var(--sub)}.ai-turn-label>span{font-size:10px;color:var(--muted);font-weight:400;margin-left:4px}.ai-prose{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.65}.ai-turn.user .ai-prose{background:var(--sidebar);border:1px solid var(--line);border-radius:6px;padding:10px 12px;line-height:1.55}.ai-draft{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65;font-size:14px;border-left:2px solid var(--ai-accent);padding:2px 0 2px 12px;margin:12px 0}.ai-result-actions{display:flex;flex-wrap:wrap;gap:5px}.ai-result-actions .ai-btn{font-size:11px;padding:4px 7px;min-height:27px}.ai-plan-card{border:1px solid var(--line);border-radius:6px;padding:12px;margin-top:12px;background:var(--sidebar);font-size:12px}.ai-plan-card>b{display:block;margin-bottom:8px;font-size:12px}.ai-plan-card>div{font-size:11px;color:var(--sub);margin:5px 0;overflow-wrap:anywhere}.ai-plan-card .ai-btn{margin-top:9px}.ai-usage{margin-top:9px;font-size:10px!important}.ai-thinking{display:flex;gap:8px;align-items:center;color:var(--sub);font-size:12px;margin:15px 0}.ai-pulse{color:var(--ai-accent);animation:ai-pulse 1.4s ease-in-out infinite}.ai-thinking .ai-btn{margin-left:auto}.ai-applied{font-size:11px;color:var(--ai-accent);margin-top:8px}
.ai-compose{border-top:1px solid var(--line);padding:10px 14px 13px;background:var(--bg);flex-shrink:0}.ai-compose label.ai-send-consent{font-size:10px;line-height:1.5;display:flex;gap:7px;align-items:flex-start;font-weight:400;margin:0 0 8px;flex-wrap:wrap;color:var(--sub)}.ai-send-consent input{height:12px!important;width:12px!important}.ai-send-consent b{font-weight:500;overflow-wrap:anywhere}.ai-compose textarea{background:var(--sidebar);margin:0;min-height:73px;max-height:220px;font-size:13px;padding:10px 11px}.ai-compose-actions{display:flex;align-items:center;gap:8px;margin-top:8px}.ai-compose-actions .ai-help{margin-left:auto;font-size:10px!important}.ai-compose-actions .primary{font-size:12px;padding:4px 11px}.ai-footnote{font-size:9px;line-height:1.4;text-align:center;color:var(--muted);margin-top:8px}
.ai-recipe-form{padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:16px}.ai-recipe-form>.ai-btn{margin-top:12px}.ai-recipes{margin-top:18px}.ai-recipe{border:1px solid var(--line);border-radius:6px;background:var(--sidebar);padding:13px;margin-bottom:11px}.ai-recipe p{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:8px}.ai-recipe .ai-row{margin-bottom:0}.ai-arm{font-size:11px!important;color:var(--sub);padding-top:7px;border-top:1px solid var(--line)}.ai-empty{text-align:center;color:var(--muted);font-size:12px;padding:20px 0}
.ai-review-backdrop{position:fixed;inset:0;z-index:160;background:#0005;display:flex;align-items:center;justify-content:center;padding:25px}.ai-review{background:var(--bg);color:var(--text);border:1px solid var(--line);box-shadow:0 20px 80px #0003;border-radius:10px;width:760px;max-width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;font-family:var(--font);font-size:13px;outline:none}.ai-review>header{display:flex;justify-content:space-between;align-items:center;padding:17px 22px;border-bottom:1px solid var(--line);flex-shrink:0}.ai-review h2{margin:0;font-size:18px;font-weight:600;letter-spacing:-.4px}.ai-review-body{padding:18px 22px;overflow:auto;min-height:0}.ai-review-body>p{font-size:12px;line-height:1.65;color:var(--sub);margin:0 0 15px}.ai-review pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.65;background:var(--sidebar);padding:10px 12px;border:1px solid var(--line);border-radius:5px;margin:8px 0 12px}.ai-review-action{border-top:1px solid var(--line);padding:16px 0 8px}.ai-review-action h3{font-size:14px;line-height:1.5;margin:0 0 12px;font-weight:600}.ai-review-action h4{font-size:12px;color:var(--sub);font-weight:500;margin:8px 0}.ai-review details summary{cursor:pointer;font-size:11px;color:var(--muted)}.ai-action-content>div>span{font-size:10px;color:var(--muted);text-transform:uppercase}.ai-action-content pre{font-family:var(--font);font-size:14px;line-height:1.6}.ai-review>footer{display:flex;gap:8px;justify-content:flex-end;padding:14px 22px;border-top:1px solid var(--line);flex-shrink:0}.ai-review>footer .ai-btn{font-size:13px;min-height:32px}
@keyframes ai-pulse{50%{opacity:.3;transform:scale(.85)}}
@media(min-width:1250px){.ai-panel-open .document{padding-left:50px;padding-right:42px}.ai-panel-open .document.wide{padding-left:45px;padding-right:40px}.ai-panel-open .save-status{display:none}.ai-panel-open .breadcrumb-private{display:none}}
@media(max-width:1250px){.ai-panel-open .main{margin-right:0}.ai-panel{box-shadow:-15px 0 55px #00000012}.ai-panel-open .page-outline{display:none}}
@media(max-width:760px){.ai-panel{width:100%;height:100dvh}.ai-header{height:51px;min-height:51px}.ai-thread{padding:13px 20px 18px}.ai-toolbar-launch{font-size:0!important;margin-right:1px!important;padding:4px!important}.ai-toolbar-launch .ai-spark{font-size:19px}.ai-optional{font-size:10px}.ai-context{margin-bottom:3px}.ai-compose{padding-bottom:max(12px,env(safe-area-inset-bottom))}.ai-quick-grid{gap:7px}.ai-btn{min-height:34px}.ai-compose textarea{font-size:16px}.ai-settings input,.ai-settings select,.ai-workflows input,.ai-workflows select,.ai-workflows textarea{font-size:16px!important}.ai-compose-actions .ai-help{display:none}.ai-compose-actions .primary{margin-left:auto}.ai-review-backdrop{padding:10px}.ai-review{max-height:94dvh}.ai-review>header,.ai-review>footer{padding:13px 15px}.ai-review-body{padding:15px}.ai-review>footer{flex-wrap:wrap}.ai-review>footer .primary{flex:1}}
@media(prefers-reduced-motion:reduce){.ai-pulse{animation:none}}
@media print{#ai-root,.ai-launch,.ai-toolbar-launch,.ai-inline{display:none!important}.ai-panel-open .main{margin-right:0}}
