/* Native model catalogue and mobile composer interactions. Website presentation only. */
.px-catalog-scroll{max-height:285px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#cbc6ba transparent}
.px-provider-group{margin:0;padding:0}
.px-provider-group>.px-provider-label{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:30px;text-align:left}
.px-provider-group>.px-provider-label .codicon{font-size:11px;transition:transform .16s}
.px-provider-group>.px-provider-label[aria-expanded=false] .codicon{transform:rotate(-90deg)}
.px-provider-group>.px-provider-label:hover{color:#111114;background:#f1efe9}
.px-model-menu [hidden],.px-phone [hidden]{display:none!important}
.cap-preview.model-visual{height:640px}
@media(min-width:601px){.model-visual>.px-model-control{transform:scale(1.05)}}
.px-phone-base{position:absolute;inset:0}
.px-starters>button{display:flex;width:100%;text-align:left;align-items:center;gap:15px;padding:17px 0;border-bottom:1px solid #e1ded5;border-radius:0;transition:background .18s}
.px-starters>button:last-child{border-bottom:0}
.px-starters>button:hover{background:#e8e5dd}
.px-starters>button:active{background:#dedad0}
.px-starters>button>.px-mobile-icon{width:21px;height:21px;opacity:.7}
.px-starters>button>.px-mobile-icon:last-child{width:17px;height:17px;margin-left:auto;transform:rotate(-90deg)}
.px-phone-toolbar{height:auto;min-height:44px;gap:5px;margin-bottom:5px}
.px-phone-model-trigger{display:flex;align-items:center;gap:6px;min-height:44px;max-width:236px;min-width:0;padding:0 6px 0 10px;border-radius:8px;text-align:left;font-size:12px;color:#6e6a60}
.px-phone-model-trigger>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.px-phone-model-trigger>.px-mobile-icon{width:19px;height:19px;opacity:.65}
.px-phone-model-trigger>.px-mobile-icon:last-child{width:14px;height:14px}
.px-phone-model-trigger:hover{background:#edeae2}
.px-phone-input{height:auto;align-items:flex-end}
.px-phone-input>div{height:auto;min-height:48px;align-items:flex-end;gap:5px;padding:0 2px 0 14px}
.px-phone-input textarea{display:block;flex:1;min-width:0;width:100%;resize:none;height:48px;max-height:128px;padding:13px 0;border:0;background:transparent;color:#111114;font:16px/22px Peixing,-apple-system,sans-serif;outline:none}
.px-phone-input textarea::placeholder{color:#857f72}
.px-phone-input>div>.px-mobile-icon{margin-bottom:14px}
.px-phone-send{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:#c2402a;margin:4px 2px 4px 0;transition:background .18s,transform .18s}
.px-phone-send .px-mobile-icon{width:22px;height:22px;filter:brightness(0) invert(1)}
.px-phone-send:disabled{background:#e1ded7;cursor:default}
.px-phone-send:disabled .px-mobile-icon{filter:none;opacity:.38}
.px-phone-send:not(:disabled):active{transform:scale(.94)}
.px-phone-overlay{position:absolute;inset:62px 0 0;z-index:5;isolation:isolate}
.px-phone-scrim{position:absolute;inset:0;background:#11111445;animation:phone-shade .2s ease-out}
.px-phone-popup{position:absolute;left:24px;bottom:166px;width:292px;padding:6px;background:#fdfcf9;border:1px solid #d9d5cc;border-radius:14px;box-shadow:0 8px 30px #11111429;animation:phone-popup .18s ease-out}
.px-phone-popup>button{display:flex;align-items:center;gap:12px;min-height:54px;width:100%;text-align:left;padding:8px 12px;border-radius:9px;font-size:14px}
.px-phone-popup>button:hover{background:#edeae2}
.px-phone-popup>button>span{flex:1}
.px-phone-popup small{display:block;font-size:12px;color:#857f72;margin-top:2px}
.px-phone-popup>button:last-child{min-height:44px;border-top:1px solid #edeae2;justify-content:center;color:#6e6a60}
.px-phone-sheet{position:absolute;bottom:0;left:0;right:0;height:72%;max-height:690px;background:#f1efe9;border-radius:22px 22px 0 0;box-shadow:0 -10px 32px #11111410;display:flex;flex-direction:column;padding:0 16px 28px;animation:phone-sheet .28s cubic-bezier(.22,.8,.3,1)}
.px-sheet-handle{width:34px;height:4px;background:#b5afa3;border-radius:9px;flex-shrink:0;margin:10px auto 4px}
.px-phone-sheet>header{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;height:48px}
.px-phone-sheet h3{font-size:16px;font-weight:700;letter-spacing:0;margin:0}
.px-phone-sheet>header>button{width:44px;height:44px;border-radius:50%;font:26px/1 system-ui;color:#6e6a60}
.px-phone-sheet>header>button:hover{background:#e4e0d7}
.px-phone-scopes{display:flex;padding:3px;gap:3px;border:1px solid #dedad1;border-radius:10px;background:#eae7df;flex-shrink:0;margin-top:8px}
.px-phone-scopes button{flex:1;min-height:38px;font-size:13px;border-radius:7px;color:#6e6a60}
.px-phone-scopes button[aria-pressed=true]{color:#111114;background:#fdfcf9;box-shadow:0 1px 3px #11111412}
.px-phone-scope-note{font-size:11.5px;line-height:1.6;color:#857f72;margin:9px 2px 13px;flex-shrink:0}
.px-phone-model-list{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c4beb2 transparent;min-height:0;padding-bottom:12px}
.px-phone-model-group{padding:0;margin:0 0 10px}
.px-phone-model-group h4{font-size:12px;color:#857f72;font-weight:500;letter-spacing:0;margin:9px 8px 5px}
.px-phone-model-row{width:100%;display:flex;align-items:center;gap:12px;text-align:left;min-height:48px;padding:10px 8px;border-radius:8px;font-size:13px;line-height:1.5}
.px-phone-model-row>i{width:18px;height:18px;border-radius:50%;border:1.5px solid #b9b3a7;position:relative;flex-shrink:0}
.px-phone-model-row[aria-pressed=true]{font-weight:600;background:#e7e3da}
.px-phone-model-row[aria-pressed=true]>i{border-color:#c2402a}
.px-phone-model-row[aria-pressed=true]>i:after{content:'';position:absolute;inset:3px;border-radius:50%;background:#c2402a}
.px-phone-model-row:hover{background:#e7e3da}
.px-phone-feedback{position:absolute;left:24px;right:24px;bottom:202px;background:#292a28;color:#fdfcf9;font-size:13px;line-height:1.7;padding:14px 16px;border-radius:12px;box-shadow:0 6px 20px #11111425;z-index:6;animation:phone-popup .18s ease-out}
.px-phone button{touch-action:manipulation}
.px-phone button:focus-visible{outline:2px solid #c2402a;outline-offset:2px}
.px-phone textarea:focus-visible{outline:none}
.px-phone-input>div:has(textarea:focus-visible){outline:1.5px solid #c2402a;outline-offset:3px}
.phone-interaction-hint{font-size:12px;color:var(--muted);line-height:1.8;margin-top:16px;text-align:center}
.hero-figure .phone-interaction-hint{display:none}
@keyframes phone-sheet{from{transform:translateY(28px);opacity:.4}to{transform:none;opacity:1}}
@keyframes phone-shade{from{opacity:0}to{opacity:1}}
@keyframes phone-popup{from{transform:translateY(5px);opacity:0}to{transform:none;opacity:1}}
@media(max-width:600px){
 .hero-phone{width:min(320px,100%)}
 .hero-stage{padding:24px 10px}
 .hero-figure .phone-interaction-hint{display:block;text-align:left}
 .px-catalog-scroll{max-height:262px}
 .model-visual .px-model-rows>button{min-height:40px}
 .model-visual .px-provider-label{min-height:32px}
 .model-visual .px-model-menu{width:min(300px,calc(100vw - 64px))}
 .cap-preview.model-visual{height:580px}
 .px-phone-model-row{min-height:56px}
 .px-phone-sheet>header>button{width:56px;height:56px}
 .px-phone-scopes button{min-height:48px}
 .px-phone-model-trigger{min-height:56px}
 .px-phone-send{width:48px;height:48px;margin-top:0;margin-bottom:0}
 .px-phone-input>div{min-height:50px}
 .px-phone-input textarea{min-height:50px}
}
@media(prefers-reduced-motion:reduce){.px-phone-overlay *,.px-phone-feedback{animation:none!important;transition:none!important}}
