/* Scoped, conversational Lix UI. Application-owned components; never model HTML. */
.px-lix{--lix-brand:var(--px-brand,#f26b1d);--lix-ink:var(--px-ink-900,#18212f);--lix-muted:var(--px-ink-500,#64748b);--lix-line:var(--px-surface-200,#e2e8f0);--lix-soft:var(--px-brand-subtle,#feefe4);font:14px/1.6 var(--px-font-sans,'BR Hendrix',system-ui,sans-serif);color:var(--lix-ink)}
.px-lix *{box-sizing:border-box}.px-lix [hidden]{display:none!important}.px-lix h2,.px-lix h3,.px-lix h4,.px-lix p,.px-lix a{font-family:inherit}.px-lix button,.px-lix textarea,.px-lix input{font:inherit}.px-lix button,.px-lix summary{cursor:pointer}.px-lix button{background:var(--lix-surface,#fff);color:var(--lix-ink);border:1px solid var(--lix-line);border-radius:10px;padding:8px 12px}.px-lix button:disabled{cursor:default;opacity:.45}.px-lix :focus-visible{outline:3px solid #e78c48;outline-offset:3px}.px-lix svg{display:block;flex-shrink:0}.px-lix .px-lix-primary{color:#fff;background:var(--lix-brand);border-color:var(--lix-brand);font-weight:600}
.px-lix-composer{position:relative;z-index:1;background:var(--lix-surface,#fff)}
.px-lix .px-lix-launch{position:fixed;right:24px;bottom:28px;z-index:calc(var(--px-z-modal,9999) - 1);display:flex;align-items:center;gap:9px;padding:7px 17px 7px 7px;border:2px solid transparent;border-radius:40px;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(125deg,#ffb65b 5%,#f07852 42%,#d587c6 72%,#8c78e7) border-box;box-shadow:0 8px 28px #c65c3526,0 2px 8px #27324717;font-size:13px;font-weight:650}.px-lix-launch img{width:42px;height:42px;border-radius:50%;background:var(--lix-soft);object-fit:contain}
.px-lix-panel{position:fixed;inset:auto 20px 20px auto;width:min(440px,calc(100vw - 32px));height:min(680px,calc(100dvh - 40px));max-width:none;max-height:none;margin:0;padding:0;border:2px solid transparent;border-radius:22px;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(145deg,#ffb86b,#ed956f 35%,#d6a7e3 70%,#9f9ae8) border-box;color:var(--lix-ink);box-shadow:0 24px 80px #27324730,0 5px 24px #de8b5f24;overflow:hidden}.px-lix-panel[open]{display:flex;flex-direction:column}.px-lix-panel::backdrop,.px-lix-credit-modal::backdrop{background:#14213030;backdrop-filter:blur(1px)}
.px-lix-head{display:flex;align-items:center;gap:10px;min-height:76px;padding:16px 18px;border-bottom:1px solid var(--lix-line);flex-shrink:0}.px-lix-avatar{width:40px;height:40px;object-fit:contain;border-radius:14px;background:var(--lix-soft)}.px-lix-head h2{font-size:19px;font-weight:700;letter-spacing:-.4px;line-height:1.2;margin:0 auto 0 0}.px-lix .px-lix-balance{border:0;background:var(--lix-surface-alt,#f6f7f9);font-size:11px;padding:6px 9px;white-space:nowrap}.px-lix .px-lix-icon{display:grid;place-items:center;min-width:36px;min-height:40px;padding:6px;border:0;background:transparent}.px-lix-menu{position:relative}.px-lix-menu>summary{display:grid;place-items:center;width:36px;height:40px;list-style:none;border-radius:9px}.px-lix-menu>summary::-webkit-details-marker{display:none}.px-lix-menu[open]>summary,.px-lix-menu>summary:hover,.px-lix .px-lix-icon:hover{background:var(--lix-surface-alt,#f6f7f9)}.px-lix-menu>div{position:absolute;right:0;top:44px;z-index:5;min-width:165px;padding:6px;background:var(--lix-surface,#fff);border:1px solid var(--lix-line);border-radius:13px;box-shadow:0 8px 28px #172b3a1a}.px-lix-menu button{display:block;width:100%;border:0;text-align:left;font-size:13px}.px-lix-menu button:hover{background:var(--lix-surface-alt,#f6f7f9)}
.px-lix-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px;scrollbar-width:thin}.px-lix-welcome{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:270px;height:100%;text-align:center;padding:24px 0}.px-lix-welcome>img{width:88px;height:88px;object-fit:contain;margin-bottom:12px}.px-lix-welcome h3{font-size:23px;font-weight:600;letter-spacing:-.6px;margin:4px 0 22px;line-height:1.3}.px-lix-starters{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;max-width:340px}.px-lix .px-lix-starters button{border-radius:20px;font-size:11px;padding:7px 11px;background:var(--lix-surface,#fff)}.px-lix-starters button:hover{border-color:#efbf9a;background:var(--lix-soft)}
.px-lix-availability{margin:0 0 16px;padding:10px 12px;background:var(--lix-surface-alt,#f7f8fa);border-radius:10px;font-size:12px;color:var(--lix-muted)}.px-lix-availability button,.px-lix-availability a{font-size:12px;color:#aa4510;margin-left:5px;border:0;background:none;padding:3px}.px-lix-scroll:has(.px-lix-availability:not([hidden])) .px-lix-welcome{height:auto;min-height:200px}.px-lix-scroll:has(.px-lix-availability:not([hidden])) .px-lix-starters{display:none}
.px-lix-user{margin:0 0 22px auto;padding:10px 14px;max-width:88%;width:fit-content;background:var(--lix-surface-alt,#f1f3f6);border-radius:16px 16px 4px 16px;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.px-lix-answer{position:relative;margin:0 0 25px;padding:0 0 0 30px;font-size:14px;overflow-wrap:anywhere}.px-lix-answer>.px-lix-reply-avatar{position:absolute;left:0;top:0;width:24px;height:24px;object-fit:contain}.px-lix-answer h3{font-weight:650;font-size:17px;letter-spacing:-.3px;line-height:1.4;margin:0 0 10px}.px-lix-answer h4{font-weight:650;font-size:14px;margin:17px 0 5px}.px-lix-answer p{margin:0 0 11px;white-space:pre-wrap}.px-lix-answer .px-lix-summary{font-size:14px}.px-lix-answer p:last-child{margin-bottom:0}.px-lix-scenario{border-inline-start:2px solid #edc6aa;padding-inline-start:12px}.px-lix-checklist{padding-inline-start:18px;margin:8px 0}.px-lix-checklist li{margin:5px 0;white-space:pre-wrap}.px-lix-next{margin:12px 0;padding:0;background:none;border-radius:0;font-size:inherit}.px-lix-next p{margin:4px 0 0}.px-lix-limitations{font-size:12px;color:var(--lix-muted)}
.px-lix-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:7px;margin:12px 0}.px-lix-metric{padding:10px;background:var(--lix-surface-alt,#f6f7f9);border-radius:10px}.px-lix-metric span{display:block;font-size:10px;color:var(--lix-muted)}.px-lix-metric strong{font-size:18px}.px-lix-chart{margin:14px 0;padding:10px;background:var(--lix-surface-alt,#f6f7f9);border-radius:10px}.px-lix-chart svg{width:100%;height:auto}.px-lix-chart figcaption{font-size:10px;color:var(--lix-muted)}.px-lix-sources{font-size:11px;color:var(--lix-muted);margin:12px 0}.px-lix-sources a{display:block;margin-top:5px;color:#9a410e;text-decoration:underline}.px-lix-feedback{display:flex;gap:3px;margin-top:8px}.px-lix-feedback button{border:0;padding:5px 7px;color:var(--lix-muted);font-size:14px;min-width:30px;min-height:30px;background:transparent}.px-lix-feedback button:hover{background:#f3f4f6}.px-lix-thinking{padding-left:30px;color:var(--lix-muted);font-size:13px;margin:0 0 18px}
.px-lix-composer{padding:10px 16px 0;flex-shrink:0}.px-lix-input{display:flex;align-items:flex-end;gap:8px;padding:6px 6px 6px 13px;border:1px solid #dce1e6;border-radius:17px;background:var(--lix-surface,#fff)}.px-lix-input:focus-within{border-color:#e6aa7d;box-shadow:0 0 0 2px #ffede0}.px-lix .px-lix-input textarea{resize:none;border:0;background:transparent;outline:none;width:100%;min-height:40px;max-height:136px;padding:9px 0;line-height:1.5;font-size:14px;color:var(--lix-ink);box-shadow:none}.px-lix textarea::placeholder{color:#8a919a}.px-lix .px-lix-send{display:flex;justify-content:center;align-items:center;gap:3px;flex-shrink:0;min-height:40px;min-width:46px;padding:8px;border:0;border-radius:12px;background:var(--lix-brand);color:#fff}.px-lix-send-cost{font-size:10px;line-height:1}.px-lix-quote{display:flex;align-items:center;gap:7px;padding:10px;margin-bottom:8px;border-radius:12px;background:var(--lix-soft);font-size:12px}.px-lix-quote>span{flex:1}.px-lix-quote button{font-size:12px;padding:6px 9px}.px-lix-foot{text-align:center;font-size:10px;line-height:1.4;color:#8a919a;padding:9px 14px 12px;flex-shrink:0}.px-lix-status{font-size:12px;line-height:1.5;padding:0 18px;margin:8px 0 0;color:#8f431b;flex-shrink:0}.px-lix-status:empty{display:none}
.px-lix-clarify{font-size:13px;padding:12px;background:var(--lix-surface-alt,#f7f8fa);border-radius:12px;margin:10px 0}.px-lix-clarify p{margin:0 0 8px}.px-lix-clarify>div{display:flex;gap:6px;flex-wrap:wrap}.px-lix-clarify button{font-size:12px;padding:7px 10px}
.px-lix-history h3,.px-lix-data h3{font-size:19px;font-weight:650;margin:12px 0}.px-lix-history>div{display:flex;gap:5px;padding:8px 0;border-bottom:1px solid var(--lix-line)}.px-lix-history>div button:first-child{flex:1;text-align:left;overflow-wrap:anywhere}.px-lix-history button,.px-lix-data button{font-size:12px}.px-lix-history details{margin-top:20px;font-size:12px}.px-lix-history details p{margin:8px 0}.px-lix-data p{font-size:13px;color:var(--lix-muted)}.px-lix-data label{display:flex;align-items:center;gap:9px;margin:16px 0;font-size:13px}.px-lix-data input[type=checkbox]{width:17px;height:17px;accent-color:var(--lix-brand)}.px-lix-data details{margin:18px 0;font-size:12px}.px-lix-data textarea{width:100%;border:1px solid var(--lix-line);border-radius:10px;margin-top:8px;padding:10px}.px-lix-data form>button{margin-bottom:16px}.px-lix .px-lix-back{display:flex;gap:7px;align-items:center;padding:5px 0;border:0;background:transparent;font-size:12px;color:var(--lix-muted)}
.px-lix-credit-modal{max-height:calc(100dvh - 32px);overflow-y:auto;width:min(460px,calc(100vw - 24px));padding:24px;border:1px solid var(--lix-line);border-radius:22px;color:var(--lix-ink);background:var(--lix-surface,#fff)}.px-lix-credit-modal>.px-lix-icon{float:right}.px-lix-credit-modal h2{font-size:23px;font-weight:650;letter-spacing:-.5px;margin:8px 0 12px}.px-lix-credit-modal p,.px-lix-credit-modal details{font-size:12px;color:var(--lix-muted)}.px-lix-packs{display:grid;gap:9px;margin:18px 0}.px-lix .px-lix-pack{display:flex;justify-content:space-between;align-items:center;padding:14px;border-radius:12px;text-align:left}.px-lix-pack strong{font-size:15px}.px-lix-pack span{display:block;font-size:11px;color:var(--lix-muted)}.px-lix-test-badge{font-size:11px!important}.px-lix-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.px-lix--workspace{max-width:920px;margin:auto;min-height:560px}.px-lix--workspace .px-lix-panel{position:relative;inset:auto;width:100%;height:calc(100dvh - 145px);min-height:540px;box-shadow:0 8px 35px #152a4009}.px-lix--workspace .px-lix-head>[data-lix-close]{display:none}.px-lix--workspace .px-lix-scroll{padding:28px max(22px,calc((100% - 700px)/2))}.px-lix--workspace .px-lix-composer{padding-left:max(16px,calc((100% - 700px)/2));padding-right:max(16px,calc((100% - 700px)/2))}
@media(max-width:600px){.px-lix .px-lix-launch{bottom:calc(84px + env(safe-area-inset-bottom));right:14px;padding:6px 13px 6px 6px;font-size:12px}.px-lix-launch img{width:38px;height:38px}.px-lix-panel{inset:0;width:100vw;height:100dvh;border:0;border-radius:0}.px-lix-head{padding:12px 14px;min-height:68px;gap:8px}.px-lix-head h2{font-size:18px}.px-lix-head .px-lix-avatar{width:36px;height:36px}.px-lix-scroll{padding:20px 16px}.px-lix-welcome{min-height:220px}.px-lix-welcome h3{font-size:22px}.px-lix-composer{padding:8px 12px 0}.px-lix .px-lix-input textarea{font-size:16px}.px-lix-foot{padding-bottom:calc(12px + env(safe-area-inset-bottom))}.px-lix-credit-modal{padding:20px}.px-lix-quote{flex-wrap:wrap}.px-lix-quote>span{min-width:150px}.px-lix--workspace .px-lix-panel{height:calc(100dvh - 140px);min-height:520px}}
@media(prefers-reduced-motion:no-preference){.px-lix-launch{transition:transform .15s}.px-lix-launch:hover{transform:translateY(-2px);box-shadow:0 12px 34px #c65c3533,0 4px 12px #2732471f}}

/* Keep local Yii debugging controls clear of the chat entry. */
@media(min-width:601px){body:has(#yii-debug-toolbar) .px-lix-launch{bottom:56px}}
@media(forced-colors:active){.px-lix .px-lix-launch,.px-lix-panel{border-color:ButtonText;background:Canvas;box-shadow:none}}

/* Quiet, compact entry. Only the border rotates; the icon stays still. */
@property --lix-ring-angle{syntax:"<angle>";initial-value:0deg;inherits:false}
.px-lix .px-lix-launch{width:54px;height:54px;min-width:54px;padding:0;justify-content:center;gap:0;border-radius:50%;color:#c95414;background:linear-gradient(#fff,#fff) padding-box,conic-gradient(from var(--lix-ring-angle),#ffb65b,#e99bc2,#a799ed,#ffb65b) border-box;box-shadow:0 5px 20px #b9783924}
.px-lix-launch svg{width:25px;height:25px}
@media(prefers-reduced-motion:no-preference){.px-lix .px-lix-launch,.tl-terminal .tl-tool-rail>.tl-lix-trigger{animation:lix-ring-drift 14s linear infinite}}
@keyframes lix-ring-drift{to{--lix-ring-angle:360deg}}
@media(max-width:600px){.px-lix .px-lix-launch{width:48px;height:48px;min-width:48px;padding:0}}
/* Ask Lix uses the available product canvas, with a comfortable reading column. */
.px-shell__content:has(.px-lix--workspace){padding:0;overflow:hidden}
.px-shell__container:has(.px-lix--workspace){max-width:none;height:100%;padding:0;display:flex}
.px-lix--workspace{flex:1;max-width:none;width:100%;min-height:0;height:var(--lix-page-height,calc(100dvh - 80px));margin:0}
.px-lix--workspace .px-lix-panel{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;border:0;border-radius:0;box-shadow:none;background:#fff}
.px-lix--workspace .px-lix-head{padding-inline:clamp(18px,4vw,64px)}
.px-lix--workspace .px-lix-scroll{padding:32px max(24px,calc((100% - 820px)/2))}
.px-lix--workspace .px-lix-composer{padding-inline:max(24px,calc((100% - 820px)/2))}
/* Native workspace tab: inherit the chart's light/dark palette. */
.tl-lix-context{height:100%;min-height:0;display:flex;flex-direction:column}
.tl-product-context__body:has(>.tl-lix-context:not([hidden])){display:flex;overflow:hidden;padding-bottom:0}
.px-lix--embedded{--lix-surface:var(--tl-bg-1,#fff);--lix-surface-alt:var(--tl-surface-2,#f5f6f8);--lix-ink:var(--tl-ink-hi,#18212f);--lix-muted:var(--tl-ink-lo,#64748b);--lix-line:var(--tl-border,#e2e8f0);--lix-soft:var(--tl-surface-2,#feefe4);--lix-brand:var(--tl-accent,#ee762c);display:flex;flex:1;min-height:0;width:100%;color:var(--lix-ink);background:var(--lix-surface)}
.px-lix--embedded .px-lix-panel{display:flex;flex:1;flex-direction:column;position:static;inset:auto;width:100%;height:100%;min-height:0;max-height:none;border:0;border-radius:0;box-shadow:none;background:var(--lix-surface);color:var(--lix-ink)}
.px-lix--embedded .px-lix-head{min-height:65px;padding:12px;gap:7px}
.px-lix--embedded .px-lix-head h2{font-size:17px}
.px-lix--embedded .px-lix-head .px-lix-avatar{width:32px;height:32px}
.px-lix--embedded .px-lix-scroll{padding:20px 14px}
.px-lix--embedded .px-lix-welcome{padding:16px 0;min-height:180px}
.px-lix--embedded .px-lix-welcome>img{width:64px;height:64px}
.px-lix--embedded .px-lix-welcome h3{font-size:21px}
.px-lix--embedded .px-lix-composer{padding:8px 10px 0}
.px-lix--embedded .px-lix-input{border-color:var(--lix-line)}
.px-lix--embedded .px-lix-status{color:var(--lix-ink)}
.px-lix--embedded .px-lix-availability :is(a,button),.px-lix--embedded .px-lix-sources a{color:var(--lix-ink);text-decoration:underline}
.px-lix--embedded .px-lix-foot{color:var(--lix-muted);font-size:10px;padding:8px 12px 12px}
.px-lix--embedded .px-lix-answer{padding-left:27px}
.px-lix--embedded .px-lix-starters{gap:6px}
.px-lix--embedded .px-lix-menu button:hover,.px-lix--embedded .px-lix-icon:hover{background:var(--lix-surface-alt)}
.px-lix--embedded .px-lix-credit-modal{--lix-surface:var(--tl-bg-1,#fff);background:var(--lix-surface);color:var(--lix-ink)}
.tl-terminal .tl-tool-rail>.tl-lix-trigger{border:1.5px solid transparent;background:linear-gradient(var(--tl-bg-1),var(--tl-bg-1)) padding-box,conic-gradient(from var(--lix-ring-angle),#edaa64,#cb91bb,#a397d9,#edaa64) border-box;color:var(--tl-ink-hi);box-shadow:0 0 14px #c98d6830;border-radius:12px;margin:4px}
.tl-terminal .tl-tool-rail>.tl-lix-trigger.is-active{background:linear-gradient(var(--tl-surface-2),var(--tl-surface-2)) padding-box,conic-gradient(from var(--lix-ring-angle),#edaa64,#cb91bb,#a397d9,#edaa64) border-box}
.tl-terminal--live.has-product-context{grid-template-rows:auto auto minmax(0,1fr) auto auto}
.tl-terminal--live.has-product-context>.tl-arena-fairstrip{grid-column:1;grid-row:2}
.tl-terminal--live.has-product-context>.tl-main{grid-row:3}
@media(max-width:767px){.tl-terminal .tl-tool-rail>.tl-lix-trigger{margin:2px}.px-lix--workspace .px-lix-panel{height:100%;min-height:0}.px-lix--workspace .px-lix-scroll{padding:20px 16px}.px-lix--workspace .px-lix-composer{padding-inline:12px}}
@media(forced-colors:active){.px-lix .px-lix-launch,.tl-terminal .tl-tool-rail>.tl-lix-trigger{border:2px solid ButtonText;background:Canvas;color:ButtonText;box-shadow:none;animation:none}}

@media(max-width:1023px){.tl-product-context:has(.tl-lix-context:not([hidden]))>.tl-product-context__dismiss{display:none}}

@media(max-width:767px){.tl-terminal .tl-tool-rail>.tl-lix-trigger{position:sticky;right:52px;z-index:2}.tl-terminal .tl-tool-rail>[id$="-chart-settings"]{position:sticky;right:0;z-index:2;background:var(--tl-bg-1)}}
.px-lix-inline-refs { display: flex; flex-wrap: wrap; gap: 6px 12px; margin-top: 8px; }
.px-lix-inline-refs a { color: var(--lix-muted, #64748b); font-size: 11px; line-height: 1.5; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.px-lix-next-link { display: inline-flex; padding: 4px 0; margin: 0 0 10px; border-radius: 0; color: var(--lix-ink, #172033); background: none; text-decoration: underline; text-underline-offset: 3px; font-weight: 600; font-size: 13px; }
.px-lix-reference-page { width: min(100% - 32px, 820px); margin: 32px auto; line-height: 1.8; }
.px-lix-clarify a { color: var(--lix-ink); font-size: 12px; text-decoration: underline; text-underline-offset: 3px; }

.px-lix-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

.px-lix-permission-link{display:block;margin:8px 0 12px;padding:4px 0;border:0;background:none;color:var(--lix-ink,#172033);font:inherit;font-size:13px;text-align:start;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.px-lix-permission-link:focus-visible{outline:2px solid var(--lix-accent,#f97316);outline-offset:3px}.px-lix-permission-link:disabled{opacity:.6;cursor:wait}

/* Compact account-data controls: clear pending/saved state without extra cards. */
.px-lix-data{max-width:520px;margin:0 auto}.px-lix-data h3{margin:22px 0 8px}.px-lix-data>p{line-height:1.6;margin-bottom:18px}.px-lix-data .px-lix-data-row{display:flex;justify-content:space-between;gap:16px;margin:0;padding:16px 0;border-bottom:1px solid var(--lix-line);cursor:pointer}.px-lix-data-row span{min-width:0}.px-lix-data-row strong{display:block;font-size:14px;font-weight:600}.px-lix-data-row small{display:block;font-size:12px;color:var(--lix-muted);line-height:1.5;margin-top:3px}.px-lix-data .px-lix-data-row input{appearance:none;flex-shrink:0;position:relative;width:38px;height:22px;margin:0;border:1px solid var(--lix-muted);border-radius:20px;background:var(--lix-surface-alt,#eef0f4);cursor:pointer}.px-lix-data-row input:before{content:'';position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:var(--lix-muted)}.px-lix-data .px-lix-data-row input:checked{background:var(--lix-brand);border-color:var(--lix-brand)}.px-lix-data-row input:checked:before{left:19px;background:#fff}.px-lix-data-row input:focus-visible{outline:2px solid var(--lix-brand);outline-offset:4px}.px-lix-data-save{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0 12px}.px-lix-data-save span{font-size:11px;color:var(--lix-muted)}.px-lix-data-save button:disabled{opacity:.5;cursor:default}.px-lix-data [data-lix-export]{border:0;padding:8px 0;background:none;color:var(--lix-muted);text-decoration:underline;text-underline-offset:3px}.px-lix-data textarea{background:var(--lix-surface);color:var(--lix-ink)}
@media(forced-colors:active){.px-lix-data .px-lix-data-row input{appearance:auto}}

.px-lix-inline-citations { font-size: .75rem; line-height: 1.6; opacity: .85; overflow-wrap: anywhere; margin: .25rem 0 .75rem; }
.px-lix-inline-citations a { color: inherit; text-decoration: underline; text-underline-offset: .18em; }
