.home-app{background:#f8f8f8;color:#252e3b;min-height:100vh}.home-header{position:absolute;top:0;left:0;right:0;z-index:20}.home-header-inner{max-width:1140px;margin:auto;display:flex;align-items:center;justify-content:space-between;height:64px;padding:0}.home-header .tupo-logo{font-size:32px;color:#4075ee}.home-header-actions{display:flex;align-items:center;gap:40px}.get-app{font-size:14px}.language-switch{display:flex;border:1px solid #a8b7cf66;border-radius:24px;padding:3px;align-items:center;gap:2px;font-size:12px}.language-switch a{padding:4px 13px;border-radius:18px}.language-switch .active{background:#fff7;box-shadow:0 1px 4px #6685b31a}.mobile-menu-toggle{display:none;background:none;border:0;padding:8px}.home-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:150px 24px 100px;isolation:isolate;overflow:hidden;--pointer-x: 50%;--pointer-y: 45%}.hero-atmosphere{position:absolute;inset:0;z-index:-1;background:linear-gradient(#f4f9fe,#eaf3fc 47%,#f8f8f8);overflow:hidden}.hero-cloud{position:absolute;filter:blur(58px);border-radius:50%;opacity:.72;animation:cloud-drift 26s ease-in-out infinite alternate}.cloud-one{background:radial-gradient(ellipse,#7799d1 0%,#a6bddf 38%,transparent 69%);width:1200px;height:730px;left:-500px;top:32%}.cloud-two{background:radial-gradient(ellipse,#88a4d2 0%,#b5c8e5 42%,transparent 72%);width:1200px;height:700px;right:-400px;top:-430px;animation-delay:-10s}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(#8eaace0b 1px,transparent 1px),linear-gradient(90deg,#8eaace0b 1px,transparent 1px);background-size:91px 90px;background-position:center -40px;-webkit-mask-image:linear-gradient(#000 15%,transparent 78%);mask-image:linear-gradient(#000 15%,transparent 78%)}.hero-atmosphere:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at var(--pointer-x) var(--pointer-y),#c3d5ee24,transparent 45%);transition:background 1s}.hero-content{width:min(880px,100%);text-align:center;margin-top:9px}.hero-announcement{display:block;max-width:820px;margin:0 auto 30px;color:#7b8592;font-size:15px;line-height:24px}.sparkle{color:#7396fb;margin-right:6px}.hero-announcement:hover{color:#4b6faf}.hero-announcement svg{margin-left:3px;display:inline-block}.home-hero h1{font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:46px;line-height:1.55;letter-spacing:.16em;font-weight:400;color:#273b5d;margin:0 0 40px;padding-left:.16em}.hero-composer{border:2px solid #ffffff6b;border-radius:24px;background:#f7fbff91;text-align:left;padding:6px 10px 10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1px #fff3;min-height:138px}.hero-composer textarea{display:block;width:100%;height:80px;resize:none;max-height:300px;padding:12px;border:0;background:none;color:#283648;font-size:16px;line-height:23px;outline:none}.hero-composer textarea:focus,.hero-composer textarea:focus-visible{outline:none;outline-offset:0}.hero-composer textarea::placeholder{color:#777f8e}.hero-composer-tools{display:flex;align-items:center;justify-content:space-between}.hero-pills{display:flex;gap:8px}.hero-pills button{border:1px solid #b0c5f2;border-radius:24px;display:flex;gap:4px;align-items:center;padding:8px 12px;background:transparent;color:#566c8e;font-size:13px;line-height:16px}.hero-pills button.selected{background:#82a6ff20;color:#4075f8}.hero-pills button:hover{background:#80a7ff33}.hero-send{border:0;border-radius:50%;width:36px;height:36px;background:#3e77ed;color:#fff;display:grid;place-items:center}.hero-send:hover{background:#2b60d6}.hero-destinations{display:flex;justify-content:center;gap:16px;margin-top:40px}.hero-destinations a{display:flex;align-items:center;gap:9px;padding:11px 20px;border:1px solid #cbd6e5;background:#f7fbff80;border-radius:30px;font-size:15px;line-height:20px;transition:background .2s,transform .2s}.hero-destinations a:hover{background:#fff;transform:translateY(-2px)}.home-footer{max-width:1140px;margin:auto;padding:80px 0 48px}.home-footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:45px}.home-footer h3{font-size:15px;font-weight:500;margin:0 0 26px;color:#222b37}.home-footer-grid>div>a:not(.tupo-logo){display:block;font-size:14px;color:#78818d;margin:0 0 17px;line-height:22px}.home-footer a:hover{color:#4075ee}.footer-intro p{font-size:14px;color:#868e9b;margin:25px 0 0}.footer-intro p+p{margin-top:8px}.footer-social{display:flex;gap:22px;color:#7c8591;margin-top:28px}.footer-second-title{margin-top:30px!important}.footer-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e5e8ed;margin-top:64px;padding-top:30px;color:#9aa0aa;font-size:12px}.home-mobile-menu{position:fixed;inset:64px 0 0;background:#f8fafc;display:flex;flex-direction:column;padding:12px 24px 20px}.home-mobile-menu nav{flex:1;overflow:auto}.home-mobile-menu nav a{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e2e6ec;padding:23px 0;font-size:19px}.home-mobile-menu>.language-switch{align-self:flex-start}.info-app{background:#fff}.info-app .home-header{position:relative;background:#f7f9fd;border-bottom:1px solid #eef0f5}.info-main{max-width:920px;margin:0 auto;padding:90px 30px 100px;min-height:65vh}.info-back{font-size:14px;color:#747e8d;display:block;margin-bottom:30px}.info-main h1{font-size:42px;line-height:1.4;letter-spacing:1px;font-weight:500;margin:12px 0 20px;color:#243550}.info-lead{font-size:18px;color:#7b8594;line-height:1.9;margin-bottom:44px}.info-main section{margin:38px 0}.info-main h2{font-size:21px;font-weight:500;line-height:1.6;display:flex;gap:10px;align-items:center}.info-main p{line-height:1.9}.info-main section p{color:#687282;font-size:15px}.info-update,.info-note{color:#929ba8;font-size:13px}.info-eyebrow{color:#6985c4;font-size:12px;letter-spacing:2px}.info-app .home-footer{border-top:1px solid #eceef4}.solid-button{display:inline-flex;align-items:center;gap:8px;border:0;background:#4d6bfe;color:#fff;padding:12px 22px;border-radius:25px;font-size:14px}.info-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.info-actions button{border:1px solid #dce1eb;background:#fff;border-radius:25px;padding:11px 22px;display:flex;gap:8px;align-items:center;font-size:14px}.download-symbol{display:flex;align-items:center;justify-content:center;gap:28px;height:180px;max-width:600px;background:linear-gradient(125deg,#edf3fe,#f8faff);border:1px solid #e2e9f8;border-radius:20px;color:#4d6bfe;margin-bottom:32px}.download-symbol span{font-weight:700;letter-spacing:-3px;font-size:64px}.install-guides{display:grid;grid-template-columns:1fr 1fr;gap:36px}.blue-link{color:#4d6bfe;font-size:14px}.status-banner{display:flex;align-items:center;gap:12px;background:#fff2e9;border-radius:12px;padding:25px;margin:30px 0;color:#986d36}.status-banner.healthy{background:#edf8f1;color:#318556}.status-row{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid #e8ecf2;font-size:15px}.status-row b{color:#318556;font-weight:400}.status-row a{color:#4d6bfe}.news-card{padding:34px 0;border-bottom:1px solid #e5e9ef}.news-card time{font-size:13px;color:#8792a2}.news-card p{font-size:15px;color:#6e7888}.news-card a{font-size:14px;color:#4d6bfe}@keyframes cloud-drift{0%{transform:translate(-3%,-2%) scale(1)}to{transform:translate(12%,10%) scale(1.1)}}.home-hero h1{letter-spacing:.4em;padding-left:.4em}.get-app-wrap{position:relative}.get-app{padding:10px 5px;display:block}.app-qr-popup{display:none;position:absolute;top:40px;left:50%;transform:translate(-50%);padding:12px;width:180px;border:1px solid #e2e7ee;border-radius:12px;background:#fff;box-shadow:0 8px 30px #27447715;text-align:center}.app-qr-popup img{display:block;width:154px;height:154px}.app-qr-popup span{display:block;margin-top:8px;font-size:12px;color:#677487;white-space:nowrap}.get-app-wrap:hover .app-qr-popup,.get-app-wrap:focus-within .app-qr-popup{display:block}.home-english .home-hero h1{letter-spacing:.02em;padding-left:0;font-size:40px}@media(min-width:1900px){.home-hero{min-height:100vh}.hero-content{margin-top:0}}@media(max-width:1200px){.home-header-inner,.home-footer{margin-left:48px;margin-right:48px}}@media(max-width:767px){.home-header-inner{margin:0 24px;height:65px}.home-header-actions{display:none}.mobile-menu-toggle{display:grid;place-items:center}.home-hero{min-height:844px;align-items:flex-start;padding:162px 24px 120px}.hero-content{margin:0;width:100%}.hero-announcement{font-size:14px;line-height:24px;margin-bottom:26px;min-height:96px}.home-hero h1{font-size:36px;line-height:1.65;letter-spacing:.12em;margin-bottom:40px;white-space:nowrap}.hero-composer{border-radius:24px;min-height:138px}.hero-pills button{padding:9px 12px}.hero-pills button span{display:none}.hero-destinations{display:flex;flex-direction:column;gap:16px;margin-top:40px}.hero-destinations a{justify-content:center;font-size:14px;padding:11px 20px}.home-footer{margin:0 24px;padding-top:80px}.home-footer-grid{grid-template-columns:1fr 1fr;gap:44px 24px}.footer-intro{grid-column:1/-1}.home-footer-grid h3{margin-bottom:22px}.footer-bottom{align-items:flex-start;gap:24px;margin-top:55px}.footer-bottom span{max-width:180px;line-height:1.7}.home-footer-grid>div>a:not(.tupo-logo){font-size:13px}.cloud-one{width:700px;height:650px;left:-470px;top:27%}.cloud-two{width:700px;height:620px;right:-480px;top:-430px}.info-main{padding:60px 24px}.info-main h1{font-size:34px}.info-lead{font-size:16px}.install-guides{grid-template-columns:1fr;gap:0}.status-row{font-size:13px;gap:16px}.info-main section{margin:25px 0}.info-main .info-actions{gap:12px}.download-symbol{height:160px}.download-symbol span{font-size:56px}}@media(max-width:767px){.home-hero h1{letter-spacing:.25em;padding-left:.25em}.home-english .home-hero h1{font-size:28px;white-space:normal;line-height:1.5;letter-spacing:0}.home-english .hero-announcement{min-height:72px}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:70px 24px 80px;background:radial-gradient(ellipse at 50% 4%,#f4f7ff,#fff 56%);color:#262b35}.auth-back{position:absolute;top:30px;left:36px;color:#7e8694;display:flex;gap:8px;align-items:center;font-size:13px}.auth-card{width:380px;text-align:center}.auth-card>.tupo-logo{font-size:49px;margin-bottom:32px;letter-spacing:-2.5px}.auth-card h1{font-size:24px;font-weight:500;margin:0 0 12px}.auth-description{color:#8b929f;font-size:14px;line-height:1.8;margin-bottom:32px}.auth-card form{text-align:left}.auth-card label:not(.auth-agree){display:block;font-size:13px;font-weight:500;color:#626b7a;margin-bottom:19px}.auth-card input:not([type=checkbox]){display:block;width:100%;border:1px solid #e5e8ef;background:#f9fafc;color:#2a3342;border-radius:12px;padding:13px 15px;margin-top:8px;line-height:22px;font-size:14px}.auth-card input::placeholder{color:#a4abb7}.auth-card input:focus{border-color:#829aff;background:#fff}.password-input{position:relative}.password-input input{padding-right:45px!important}.password-input button{position:absolute;right:12px;top:10px;padding:6px;background:none;border:0;color:#8a93a2}.auth-forgot{text-align:right;font-size:12px;color:#798699;margin-top:-7px;margin-bottom:26px}.auth-submit{width:100%;background:#4d6bfe;color:#fff;border:0;border-radius:12px;padding:13px 20px;font-size:15px;line-height:24px;margin-top:6px}.auth-submit:hover{background:#3d5be9}.auth-switch{font-size:13px;color:#9299a7;margin-top:24px}.auth-switch a{color:#4d6bfe;margin-left:6px}.auth-footer{margin-top:40px;color:#b2b8c3;font-size:12px}.auth-legal{position:absolute;bottom:26px;display:flex;gap:12px;font-size:12px;color:#a3aaba}.auth-error{padding:12px 14px;border-radius:10px;background:#fff0f0;color:#bc5252;font-size:13px;line-height:1.7}.auth-agree{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:20px;color:#949dab;margin:6px 0 20px}.auth-agree input{accent-color:#4d6bfe;margin-top:3px}.auth-agree a{color:#4d6bfe}.auth-recovery-icon{margin:0 auto 20px;color:#4d6bfe}.recovery-code{display:block;background:#f0f4ff;padding:20px;border:1px dashed #a9b9f1;border-radius:12px;word-break:break-all;color:#3f60d6;line-height:1.8}.recovery-actions{display:flex;gap:12px;margin:20px 0}.recovery-actions button{flex:1;border:1px solid #e2e6ed;border-radius:10px;background:#fff;padding:10px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px}@media(max-width:500px){.auth-page{align-items:flex-start;padding-top:115px}.auth-back{left:24px;top:26px}.auth-card{width:100%;max-width:380px}.auth-card>.tupo-logo{font-size:45px}.auth-legal{position:fixed;background:#fff9;bottom:16px}}.platform-app,.provider-manager{--platform-blue: #4d6bfe;--platform-text: #242936;--platform-muted: #89909d;--platform-border: #e8ebf1;--platform-bg: #fff;color:var(--platform-text);font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.6}.platform-app{min-height:100dvh;background:#fbfcfe}.platform-app *,.provider-manager *,.platform-modal *{box-sizing:border-box}.platform-app button,.provider-manager button,.platform-modal button{cursor:pointer;font:inherit;color:inherit}.platform-app button:disabled,.provider-manager button:disabled,.platform-modal button:disabled{opacity:.5;cursor:not-allowed}.platform-app input,.platform-app select,.platform-app textarea,.provider-manager input,.provider-manager textarea,.provider-manager select,.platform-modal input,.platform-modal textarea,.platform-modal select{font:inherit}.platform-app a,.provider-manager a,.platform-modal a{text-decoration:none;color:inherit}.platform-app button:focus-visible,.platform-app a:focus-visible,.platform-app input:focus-visible,.platform-app select:focus-visible,.provider-manager button:focus-visible,.provider-manager input:focus-visible,.provider-manager select:focus-visible,.provider-manager textarea:focus-visible,.platform-modal input:focus-visible,.platform-modal button:focus-visible{outline:2px solid #4d6bfe;outline-offset:3px}.platform-app h1,.platform-app h2,.platform-app h3,.provider-manager h2,.provider-manager h3{color:inherit}.platform-header{height:70px;border-bottom:1px solid #e8ebf1;background:#fff;display:flex;align-items:center;padding:0 35px;position:sticky;top:0;z-index:20;gap:16px}.platform-header .tupo-logo{font-size:29px;font-weight:750;letter-spacing:-1.8px;color:#4d6bfe;line-height:1}.platform-header-divider{width:1px;height:21px;background:#e2e5eb;margin:0 1px 0 4px}.platform-brand-label{font-size:17px;font-weight:500;color:#414656!important}.platform-header nav{margin-left:auto;display:flex;align-items:center;gap:27px;font-size:13px}.platform-header nav>a{display:flex;align-items:center;gap:6px;color:#636b79}.platform-header nav>a:hover{color:#4d6bfe}.platform-user{margin-left:9px}.platform-user>span{border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:#f0f3ff;color:#4d6bfe;font-weight:600}.platform-icon{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;border-radius:7px;padding:0;color:inherit;cursor:pointer}.platform-icon:hover{background:#f0f2f7}.platform-sidebar{position:fixed;top:70px;bottom:0;left:0;width:228px;border-right:1px solid #e8ebf1;background:#fff;padding:28px 16px;display:flex;flex-direction:column;gap:7px;z-index:16}.platform-sidebar>p{font-size:11px;color:#9aa1ae;margin:0 17px 12px;letter-spacing:1px}.platform-sidebar>a,.platform-sidebar-bottom>a{display:flex;align-items:center;gap:12px;padding:11px 16px;border-radius:9px;font-size:14px;color:#646b78}.platform-sidebar>a:hover,.platform-sidebar-bottom>a:hover{background:#f6f7fa;color:#4d6bfe}.platform-sidebar>a.active{color:#4d6bfe;background:#eef2ff;font-weight:600}.platform-sidebar-bottom{margin-top:auto;border-top:1px solid #edf0f5;padding-top:18px}.platform-sidebar-bottom>a{font-size:12px;padding:9px 15px;gap:10px}.platform-sidebar-bottom>a>svg:last-child:not(:first-child){margin-left:auto}.platform-main{margin-left:228px;padding:42px 48px 18px;max-width:1510px;min-height:calc(100dvh - 70px);display:flex;flex-direction:column}.platform-section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}.platform-section-head h1,.provider-intro h2{font-size:25px;margin:0 0 7px;font-weight:600;letter-spacing:-.4px}.platform-section-head p,.provider-intro p{color:#8b92a0;font-size:13px;margin:0}.platform-primary,.platform-secondary,.platform-danger{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:8px;padding:9px 16px;font-size:13px!important;white-space:nowrap;line-height:1.5;cursor:pointer}.platform-primary{border:1px solid #4d6bfe;background:#4d6bfe;color:#fff!important}.platform-primary:hover{background:#405be2;border-color:#405be2}.platform-secondary{background:#fff;border:1px solid #dfe4ed;color:#586171!important}.platform-secondary:hover{background:#f8f9fc}.platform-danger{background:#d74444;border:1px solid #d74444;color:#fff!important}.platform-text-button{background:transparent;border:0;color:#4d6bfe!important;padding:4px 0;display:inline-flex;gap:5px;align-items:center;font-size:12px!important}.platform-text-button:hover{text-decoration:underline}.platform-app .danger,.provider-manager .danger,.platform-modal .danger{color:#d64d4d!important}.provider-intro{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px}.provider-filter{display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px solid #e4e8f0;border-radius:9px;background:#fff;color:#9aa2af;margin-bottom:22px}.provider-filter input{border:0;outline:none;background:transparent;flex:1;min-width:0;color:#424a58;font-size:13px}.provider-filter>span{font-size:12px;white-space:nowrap}.provider-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.provider-card{border:1px solid #e5e9f0;border-radius:12px;padding:19px 20px 0;background:#fff;box-shadow:0 2px 5px #27345c02;min-width:0;display:flex;flex-direction:column}.provider-card-head{display:flex;align-items:center;gap:11px}.provider-symbol{width:39px;height:39px;border:1px solid #dfe6ff;background:#f3f5ff;color:#5770e7;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:600;flex-shrink:0}.provider-card-head>div{min-width:0;flex:1}.provider-card h3{font-size:15px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0;font-weight:600;overflow-wrap:anywhere}.provider-card-head p{margin:2px 0 0;color:#949ba8;font-size:11px}.provider-status{display:inline-block;font-size:10px;color:#989fab;background:#f0f2f5;font-weight:400;padding:1px 6px;border-radius:4px;white-space:nowrap}.provider-status.on{color:#48a482;background:#eaf7f0}.provider-scope{font-size:10px;color:#98a0ad;margin-left:auto;align-self:flex-start;white-space:nowrap}.provider-url{font-size:12px;color:#929aa8;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;margin:17px 0 11px}.provider-models{display:flex;gap:6px;flex-wrap:wrap;min-height:35px;align-items:flex-start;margin-bottom:18px}.provider-models span{font-size:10px;line-height:1.65;padding:3px 8px;white-space:nowrap;max-width:100%;text-overflow:ellipsis;overflow:hidden;background:#f5f7fa;color:#758092;border-radius:5px}.provider-models em{font-size:11px;color:#a4aab5;font-style:normal}.provider-card-footer{border-top:1px solid #eef0f5;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 0;margin-top:auto}.provider-card-footer>span,.provider-card-footer>small{font-size:10px;color:#9aa2af}.provider-card-footer>div{display:flex;align-items:center;gap:7px}.provider-card-footer button{display:inline-flex;gap:3px;align-items:center;font-size:11px;background:none;border:0;padding:4px 0;color:#778296}.provider-card-footer button:hover{color:#4d6bfe}.provider-footnote{display:flex;gap:9px;margin-top:22px;align-items:flex-start;color:#a0a8b5;font-size:11px}.provider-footnote>svg{flex-shrink:0;margin-top:3px}.provider-footnote p{margin:0}.provider-footnote a{color:#7489df;display:inline-flex;align-items:center;gap:3px;margin-left:5px}.platform-empty{padding:55px 20px;text-align:center;border:1px dashed #e0e5ef;border-radius:12px;background:#fff}.platform-empty>div:first-child{display:flex;align-items:center;justify-content:center;margin:0 auto 15px;width:56px;height:56px;border-radius:16px;background:#f3f5fc;color:#8395d2}.platform-empty h3{font-size:17px;margin:0 0 8px;font-weight:500}.platform-empty p{font-size:12px;color:#9aa1ae;max-width:430px;margin:0 auto 22px;line-height:1.8}.platform-message{padding:10px 14px;background:#fff1f0;color:#cd5150;border:1px solid #f2d7d4;border-radius:8px;margin:0 0 17px;font-size:13px;display:flex;align-items:flex-start;gap:8px}.platform-message.success{background:#edf9f2;border-color:#d2eddd;color:#46946b}.platform-message>svg{flex-shrink:0;margin-top:2px}.platform-loading{padding:40px;text-align:center;display:flex;align-items:center;justify-content:center;gap:9px;color:#9aa2af;font-size:13px}.platform-loading.full{height:100dvh}.platform-info{display:flex;align-items:flex-start;gap:12px;background:#f0f4ff;color:#6b7dae;border:1px solid #e4ebff;border-radius:10px;padding:16px 20px;margin-bottom:25px}.platform-info>svg{flex-shrink:0;margin-top:2px}.platform-info>p{margin:0;font-size:12px;line-height:1.8}.platform-table-wrap{overflow:auto;border:1px solid #e6eaf1;border-radius:11px;background:#fff}.platform-table{width:100%;border-collapse:collapse;white-space:nowrap}.platform-table th{text-align:left;background:#fafbfe;color:#87909f;font-size:11px;font-weight:500;padding:13px 18px;border-bottom:1px solid #e9edf4}.platform-table td{padding:16px 18px;border-bottom:1px solid #eff2f6;color:#727d8d;font-size:12px}.platform-table tr:last-child td{border-bottom:0}.platform-table td strong{font-weight:500;color:#424d5f}.platform-table code{font-family:Consolas,monospace;font-size:11px;color:#687791}.platform-table-wrap>.platform-empty{border:0;border-radius:0}.platform-bottom-link{margin-top:24px}.platform-bottom-link a{display:inline-flex;align-items:center;gap:8px;color:#7f8daf;font-size:12px}.platform-bottom-link a:hover{color:#4d6bfe}.platform-footer{padding:45px 0 5px;margin-top:auto;color:#afb5c0;font-size:11px;text-align:center}.platform-footer a:hover{color:#4d6bfe}.platform-modal-backdrop{position:fixed;inset:0;background:#101a315e;z-index:110;display:flex;align-items:center;justify-content:center;padding:24px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif;color:#242936;font-size:14px;line-height:1.6}.platform-modal{max-height:90dvh;overflow-y:auto;background:#fff;border-radius:15px;box-shadow:0 25px 90px #0b143032;width:470px;max-width:100%;border:1px solid #e4e8ef}.platform-modal.wide{width:720px}.platform-modal>header{display:flex;align-items:center;justify-content:space-between;padding:19px 24px;border-bottom:1px solid #edf0f5;position:sticky;top:0;background:#fff;z-index:3}.platform-modal>header h2{font-size:18px;font-weight:600;margin:0}.platform-modal-content{padding:22px 24px}.platform-modal-content>p{color:#8b95a5;font-size:13px;margin:0 0 20px;line-height:1.8}.platform-modal label,.provider-form label,.platform-settings-form label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#657083}.platform-modal label>b,.provider-form label>b{color:#df8888;display:inline}.platform-modal input:not([type=checkbox]),.platform-modal textarea,.platform-modal select,.platform-settings-form input:not([type=checkbox]),.platform-settings-form select{display:block;width:100%;padding:9px 11px;border:1px solid #dfe5ef;border-radius:7px;color:#3f4c61;background:#fff;line-height:1.6;outline:none}.platform-modal textarea{resize:vertical}.platform-modal input::placeholder,.platform-modal textarea::placeholder,.platform-settings-form input::placeholder{color:#b0b8c5}.platform-modal label small{color:#9fa7b3;font-size:10px}.platform-form-actions{display:flex;justify-content:flex-end;gap:10px;align-items:center;margin-top:24px}.provider-form{padding:20px 24px 24px}.provider-presets{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid #edf0f5}.provider-presets>span{font-size:11px;color:#9ca5b3;flex-basis:100%;margin-bottom:2px}.provider-presets>button{border:1px solid #e1e7f2;background:#fafbfe;color:#8390a8;padding:4px 9px;border-radius:6px;font-size:11px}.provider-presets>button:hover{border-color:#9dadf1;color:#4d6bfe;background:#f2f5ff}.provider-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}.provider-form-grid .span-2{grid-column:span 2}.platform-modal.provider-modal{width:960px}.provider-editor-fields{border:0;margin:0;padding:0;min-width:0}.provider-model-editor{min-width:0}.provider-model-toolbar,.provider-model-toolbar>div{display:flex;align-items:center;gap:8px}.provider-model-toolbar{justify-content:space-between;margin-bottom:16px;flex-wrap:wrap}.provider-model-toolbar h3{margin:0;font-size:14px;font-weight:500;color:#30394b}.provider-model-toolbar h3>span{margin-left:6px;font-size:12px;color:#657083}.provider-model-toolbar .platform-secondary{font-size:12px;min-height:34px;padding:6px 10px}.provider-model-columns,.provider-model-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) 168px 32px;align-items:center;gap:12px}.provider-model-columns{margin-bottom:8px;font-size:12px;color:#657083}.provider-model-rows{display:grid;gap:12px}.provider-model-field,.provider-context{min-width:0}.provider-model-field>span,.provider-context-mobile-label{display:none}.platform-modal .provider-model-field input{font-size:13px;padding:7px 10px;height:38px;text-overflow:ellipsis}.platform-modal .provider-model-field input:focus{border-color:#4d6bfe}.platform-modal .provider-context input[type=range]{appearance:none;width:100%;height:22px;padding:0;margin:0;background:transparent;border:0;cursor:pointer;outline-offset:2px}.provider-context input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(to right,#4d6bfe var(--context-progress),#dce2ef var(--context-progress))}.provider-context input[type=range]::-webkit-slider-thumb{appearance:none;width:16px;height:16px;margin-top:-6px;border-radius:50%;background:#4d6bfe;border:2px solid white;box-shadow:0 1px 3px #223f6e40}.provider-context input[type=range]::-moz-range-track{height:4px;border-radius:4px;background:#dce2ef}.provider-context input[type=range]::-moz-range-progress{height:4px;background:#4d6bfe}.provider-context input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#4d6bfe;border:2px solid white}.platform-modal .provider-context input[type=range]:focus-visible{outline:2px solid #4d6bfe}.provider-context-ticks{display:flex;justify-content:space-between;margin:-2px -4px 0}.provider-context-ticks>button{font-size:11px;font-variant-numeric:tabular-nums;min-height:24px;min-width:30px;padding:0 4px;background:none;border:0;color:#657083}.provider-context-ticks>button[aria-pressed=true]{color:#3554e4;font-weight:700}.provider-model-delete:hover{color:#c43d43;background:#fff1f1}.provider-model-empty,.provider-model-hint,.provider-model-feedback{font-size:12px;line-height:1.7;color:#657083;margin:12px 0 0}.provider-model-empty{padding:16px 0;margin-top:0}.provider-model-feedback{color:#236747}.provider-model-feedback.error{color:#b93640}@media(max-width:700px){.provider-model-columns{display:none}.provider-model-row{grid-template-columns:minmax(0,1fr) 36px;gap:12px;padding:16px 0;border-top:1px solid #edf0f5}.provider-model-field{grid-column:1 / -1}.provider-model-field>span,.provider-context-mobile-label{display:block;font-size:12px;color:#657083}.provider-context-mobile-label{margin-bottom:4px}.provider-model-delete{align-self:center}.provider-model-rows{gap:0}.provider-model-toolbar>div{flex-wrap:wrap}}.provider-key-input{display:flex;align-items:center;border:1px solid #dfe5ef;border-radius:7px;padding-right:5px}.provider-key-input input{border:0!important}.provider-key-input .platform-icon{color:#9ca5b2}.provider-checks{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:20px 0}.provider-checks>label{display:flex;flex-direction:row;align-items:center;gap:6px;font-size:11px}.provider-checks input,.platform-checkbox input{accent-color:#4d6bfe;width:14px;height:14px;margin:0}.provider-advanced{border-top:1px solid #edf0f5;padding-top:15px;font-size:11px;color:#8e99ab}.provider-advanced>summary{cursor:pointer;color:#7a8caf;font-size:12px}.provider-advanced p{font-size:11px;line-height:1.8}.provider-advanced code{background:#f2f5fa;border-radius:3px;font-family:Consolas,monospace;padding:1px 3px;color:#7181a3}.provider-advanced textarea{font-family:Consolas,monospace;font-size:12px;line-height:1.8;background:#fbfcfe;tab-size:2}.provider-advanced a{color:#4d6bfe}.provider-form>.platform-message{margin-top:16px;margin-bottom:0}.platform-welcome{display:flex;align-items:center;justify-content:space-between;padding:26px 30px;background:linear-gradient(105deg,#eef2ff,#f2f6ff 65%,#f1f4ff);border:1px solid #e1e8fe;border-radius:13px;margin-bottom:28px;overflow:hidden}.platform-welcome>div>span{font-size:11px;color:#8595c8}.platform-welcome h2{font-size:22px;font-weight:550;color:#526692;margin:7px 0}.platform-welcome p{color:#91a0bf;font-size:12px;margin:0 0 14px}.platform-welcome a{display:inline-flex;align-items:center;gap:7px;color:#5c7be3;font-size:12px}.platform-welcome-mark{font-size:49px;font-weight:750;letter-spacing:-3.5px;color:#90a5f46b;transform:rotate(-8deg);padding:0 20px;line-height:.9}.platform-welcome-mark>span{display:block;font-size:13px!important;letter-spacing:7px;text-align:center;margin-top:14px;color:#aebce5!important;font-weight:500}.platform-usage-filters{display:flex;gap:10px;align-items:center;margin:0 0 20px}.platform-usage-filters select{padding:7px 10px;border:1px solid #e2e7f0;border-radius:7px;background:#fff;color:#8590a4;font-size:11px;max-width:220px}.platform-usage-filters>.platform-text-button{margin-left:auto;font-size:11px!important;color:#9aa7bd!important}.platform-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}.platform-stats>article{background:#fff;border:1px solid #e6eaf2;padding:20px 24px;border-radius:11px}.platform-stats p{font-size:12px;color:#8995a9;margin:0 0 13px}.platform-stats strong{font-size:30px;font-weight:500;color:#485a77;letter-spacing:-1px}.platform-stats small{font-size:10px;color:#abb5c6;margin-left:8px}.platform-chart{border:1px solid #e7ebf3;background:#fff;border-radius:11px;margin-bottom:25px;padding:21px 24px 17px}.platform-chart>div:first-child{display:flex;align-items:center;justify-content:space-between}.platform-chart h2{font-size:13px;font-weight:500;color:#6e7f9a;margin:0}.platform-chart>div:first-child>span{color:#b0bacb;font-size:10px}.platform-bars{display:grid;grid-template-columns:repeat(7,1fr);align-items:end;height:155px;padding-top:12px}.platform-bars>div{display:flex;flex-direction:column;align-items:center;justify-content:flex-end}.platform-bars>div>span{font-size:10px;color:#98a7c1;margin-bottom:5px}.platform-bars>div>div{width:30px;max-width:45%;background:linear-gradient(#8097fa,#b0c0ff);border-radius:5px 5px 0 0;min-height:3px}.platform-bars small{border-top:1px solid #f0f3f9;width:100%;text-align:center;padding-top:9px;margin-top:0;color:#aeb9cc;font-size:10px}.platform-note{color:#a0aabb;font-size:11px;line-height:1.8}.platform-status{font-size:10px;background:#fff1ef;color:#cd827a;padding:3px 6px;border-radius:5px}.platform-status.success{color:#66a389;background:#edf8f1}.platform-subtext{display:block;font-size:10px;color:#a6b0bf;margin-top:3px}.platform-user-actions{display:flex;gap:12px}.platform-user-actions button{font-size:11px!important}.platform-settings-form{max-width:680px}.platform-settings-form>section{background:#fff;border:1px solid #e7ebf2;padding:25px 28px;margin-bottom:22px;border-radius:11px}.platform-settings-form h2{font-size:15px;font-weight:500;color:#5f708d;margin:0 0 20px;display:flex;align-items:center;gap:9px}.platform-settings-form label{margin-bottom:18px;font-size:12px}.platform-settings-form .platform-checkbox{flex-direction:row;align-items:center;gap:9px}.platform-settings-form .platform-note{margin:0 0 18px}.platform-settings-form section>p:last-child{margin-bottom:0}.mobile-only,.platform-nav-shade{display:none}.chat-app[data-theme=dark] .provider-manager{--platform-text: #ddd;--platform-muted: #999;color:#ddd}.chat-app[data-theme=dark] .provider-filter,.chat-app[data-theme=dark] .provider-card,.chat-app[data-theme=dark] .platform-empty{background:#292c32;border-color:#414650}.chat-app[data-theme=dark] .provider-filter input{color:#ddd}.chat-app[data-theme=dark] .provider-symbol{background:#353c51;border-color:#48506c}.chat-app[data-theme=dark] .provider-models span{background:#343944;color:#a5b2cc}.chat-app[data-theme=dark] .provider-card-footer{border-color:#414650}.chat-app[data-theme=dark] .platform-empty h3{color:#ddd}.chat-app .provider-manager{font-size:13px}.chat-app .provider-intro h2{font-size:20px}.chat-app .provider-list{gap:13px}.chat-app .provider-card{padding:15px 15px 0}.chat-app .platform-modal{background:#fff;color:#242936}.chat-app .platform-modal input,.chat-app .platform-modal textarea,.chat-app .platform-modal select{color:#3f4c61;background:#fff}.chat-app .platform-modal h2{color:#242936}.chat-app .platform-modal button{color:#647083}.chat-app .platform-modal .platform-primary,.chat-app .platform-modal .platform-danger{color:#fff}@media(min-width:1600px){.platform-main{padding-left:65px;padding-right:65px}}@media(max-width:1100px){.platform-main{padding:32px 26px 18px;margin-left:205px}.platform-sidebar{width:205px;padding-left:12px;padding-right:12px}.provider-list{grid-template-columns:1fr}.provider-card-footer>div{gap:12px}}@media(max-width:760px){.platform-header{height:61px;padding:0 15px;gap:10px}.platform-header .tupo-logo{font-size:27px}.platform-brand-label{font-size:14px}.platform-header-divider{margin:0 2px}.platform-header nav{gap:9px}.platform-header nav>a:not(.platform-user){display:none}.platform-user{font-size:0!important;gap:0!important;margin-left:0}.mobile-only{display:inline-flex}.platform-sidebar{top:61px;width:230px;transform:translate(-100%);transition:transform .2s;z-index:25;padding-top:24px}.platform-app.nav-open .platform-sidebar{transform:translate(0)}.platform-app.nav-open .platform-nav-shade{display:block;position:fixed;inset:61px 0 0 230px;background:#141d3b50;z-index:24;border:0}.platform-main{margin-left:0;padding:27px 17px 15px;min-height:calc(100dvh - 61px)}.platform-section-head{gap:10px;margin-bottom:22px}.platform-section-head h1,.provider-intro h2{font-size:22px}.platform-section-head p,.provider-intro p{font-size:11px;max-width:230px}.platform-primary,.platform-secondary{font-size:11px!important;padding:8px 11px}.provider-intro{gap:10px}.provider-filter{margin-bottom:16px;padding:9px 10px}.provider-filter input{font-size:12px}.provider-filter>span{display:none}.provider-card{padding:16px 16px 0}.provider-models{gap:5px}.provider-card h3{font-size:14px}.provider-scope{font-size:9px}.provider-card-footer>div{gap:9px}.provider-card-footer>span{font-size:9px}.provider-card-footer button{font-size:10px}.provider-card-head>div>p{font-size:10px}.provider-symbol{width:35px;height:35px;font-size:17px}.platform-empty{padding:38px 18px}.platform-empty h3{font-size:15px}.platform-empty p{font-size:11px}.platform-table th,.platform-table td{padding:12px 14px}.platform-modal-backdrop{padding:13px}.platform-modal{max-height:92dvh;border-radius:12px}.platform-modal>header{padding:16px 18px}.provider-form,.platform-modal-content{padding:18px}.provider-form-grid{grid-template-columns:1fr;gap:16px}.provider-form-grid .span-2{grid-column:auto}.provider-checks{gap:12px}.provider-presets{gap:6px}.provider-advanced textarea{font-size:11px}.platform-welcome{padding:21px 20px;margin-bottom:22px}.platform-welcome h2{font-size:19px}.platform-welcome p{max-width:240px;font-size:11px}.platform-welcome-mark{font-size:33px;padding:0 5px;letter-spacing:-2px}.platform-welcome-mark>span{font-size:9px!important;letter-spacing:4px;margin-top:12px}.platform-stats{gap:9px;margin-bottom:18px}.platform-stats>article{padding:14px 12px}.platform-stats p{font-size:10px;margin-bottom:10px}.platform-stats strong{font-size:24px}.platform-stats small{display:block;margin:3px 0 0;font-size:9px}.platform-usage-filters{gap:7px;flex-wrap:wrap}.platform-usage-filters select{font-size:10px;padding:7px 8px;max-width:140px}.platform-usage-filters>.platform-text-button{font-size:10px!important}.platform-chart{padding:18px 16px;margin-bottom:19px}.platform-info{padding:13px 14px;gap:8px;margin-bottom:20px}.platform-info>p{font-size:11px}.platform-settings-form>section{padding:20px}.platform-note{font-size:10px}.platform-settings-form label{font-size:11px}.platform-footer{font-size:10px;padding-top:32px}.chat-app .provider-list{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.platform-app *{animation:none!important;transition:none!important}}.provider-form label>span>b{color:#df8888;font-weight:400;margin-left:3px}.platform-user>span{font-size:13px}.chat-app{--chat-bg: #fff;--chat-panel: #f7f8fa;--chat-text: #202124;--chat-muted: #8b8f98;--chat-border: #e6e8ed;--chat-hover: #edeff4;--chat-blue: #4d6bfe;--chat-blue-bg: #f0f3ff;--chat-input: #fff;display:flex;min-height:100dvh;height:100dvh;overflow:hidden;color:var(--chat-text);background:var(--chat-bg);font-size:14px;font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.6}.chat-app[data-theme=dark]{--chat-bg: #212327;--chat-panel: #191b1f;--chat-text: #e5e7eb;--chat-muted: #959aa6;--chat-border: #373b43;--chat-hover: #2d3037;--chat-blue: #8499ff;--chat-blue-bg: #30364c;--chat-input: #292c32}.chat-app *{box-sizing:border-box}.chat-app button,.chat-app input,.chat-app textarea,.chat-app select{font:inherit}.chat-app button,.chat-app a,.chat-app input,.chat-app textarea,.chat-app select{-webkit-tap-highlight-color:transparent}.chat-app button{cursor:pointer;color:inherit}.chat-app button:disabled{cursor:not-allowed;opacity:.45}.chat-app button:focus-visible,.chat-app a:focus-visible,.chat-app input:focus-visible,.chat-app select:focus-visible,.chat-app textarea:focus-visible{outline:2px solid var(--chat-blue);outline-offset:3px}.chat-app a{color:inherit;text-decoration:none}.chat-app .tupo-logo{color:#4d6bfe;font-size:29px;line-height:1;font-weight:750;letter-spacing:-1.8px}.chat-icon{border:0;background:transparent;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;flex-shrink:0;color:inherit}.chat-icon:hover{background:var(--chat-hover, #edeff4)}.chat-icon.active{color:var(--chat-blue, #4d6bfe)}.chat-sidebar{width:260px;min-width:260px;background:var(--chat-panel);display:flex;flex-direction:column;padding:18px 12px 10px;transition:margin .2s ease;position:relative;z-index:12}.chat-sidebar-head{display:flex;align-items:center;gap:4px;height:32px;margin:0 0 19px 5px;color:#858b96}.chat-sidebar-head .tupo-logo{margin-right:auto}.chat-new{width:100%;display:flex;gap:7px;justify-content:center;align-items:center;background:var(--chat-bg);border:1px solid var(--chat-border);border-radius:24px;padding:10px 8px;box-shadow:0 1px 2px #00000008}.chat-new:hover{background:var(--chat-hover)}.chat-histories{flex:1;overflow:auto;margin-top:22px;scrollbar-width:thin}.chat-histories section{margin-bottom:22px}.chat-histories section>p{font-size:12px;color:var(--chat-muted);margin:0 10px 8px}.chat-history{position:relative;border-radius:9px;display:flex;align-items:center;min-height:40px;margin:1px 0}.chat-history:hover,.chat-history.active{background:var(--chat-hover)}.chat-history>a{padding:9px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.history-more{border:0;background:none;padding:5px;display:flex;align-items:center;margin-right:5px;opacity:0;border-radius:5px}.chat-history:hover .history-more,.history-more:focus,.chat-history.active .history-more{opacity:1}.history-more:hover{background:var(--chat-border)}.chat-dropdown{position:absolute;right:3px;top:35px;background:var(--chat-bg);padding:5px;border:1px solid var(--chat-border);border-radius:12px;box-shadow:0 8px 30px #0002;z-index:18;min-width:140px}.chat-dropdown button{display:flex;align-items:center;gap:9px;background:none;border:0;width:100%;padding:8px 10px;border-radius:6px;text-align:left}.chat-dropdown button:hover{background:var(--chat-hover)}.chat-app .danger{color:#d84343}.chat-empty-history{color:var(--chat-muted);font-size:13px;line-height:1.8;padding:10px}.chat-sidebar-bottom{padding-top:12px;background:var(--chat-panel)}.chat-profile{display:flex;gap:8px;align-items:center;width:100%;border:0;background:none;text-align:left;border-radius:10px;padding:9px 5px}.chat-profile:hover{background:var(--chat-hover)}.chat-profile>span:nth-child(2){flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-profile>svg{color:var(--chat-muted)}.chat-avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--chat-hover);color:var(--chat-muted);font-size:13px;flex-shrink:0}.chat-console-link{display:flex;align-items:center;justify-content:space-between;padding:5px 10px 10px;font-size:12px;color:var(--chat-muted)!important}.chat-console-link:hover{color:var(--chat-blue)!important}.chat-login-link{display:block;text-align:center;border-radius:10px;padding:10px;background:var(--chat-blue);color:#fff!important}.chat-history-search{display:flex;align-items:center;gap:5px;margin:12px 0 0;padding:4px 7px;background:var(--chat-bg);border:1px solid var(--chat-border);border-radius:9px;color:var(--chat-muted)}.chat-history-search input{min-width:0;width:100%;border:0;outline:none;background:none;color:var(--chat-text)}.chat-main{display:flex;flex-direction:column;flex:1;min-width:0;position:relative}.chat-topbar{height:65px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;flex-shrink:0}.chat-top-start{display:flex;align-items:center;gap:7px;min-width:0}.chat-top-start>.chat-icon:first-child{display:none}.chat-top-start select{border:0;color:var(--chat-muted);max-width:320px;background:transparent;padding:7px 4px;cursor:pointer;outline:none}.chat-top-start select option{color:var(--chat-text);background:var(--chat-bg)}.chat-top-start>.chat-icon:last-child{color:var(--chat-muted)}.chat-top-actions{display:flex;align-items:center;gap:8px;color:var(--chat-muted)}.chat-share-button{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--chat-border);border-radius:9px;padding:5px 10px}.chat-share-button:hover{background:var(--chat-hover)}.chat-small-login{background:var(--chat-blue);color:#fff!important;padding:5px 17px;border-radius:8px}.chat-scroll{flex:1;overflow-y:auto;scrollbar-width:thin;min-height:0}.chat-body{max-width:808px;margin:0 auto;padding:0 16px 30px}.chat-scroll.empty{display:flex;flex-direction:column;justify-content:center;padding-bottom:8vh}.chat-scroll.empty .chat-body{width:100%;padding-bottom:0}.chat-greeting{display:flex;align-items:center;justify-content:center;gap:13px;margin:0 0 28px}.chat-greeting-logo{font-weight:800;font-size:31px;letter-spacing:-2px;color:var(--chat-blue);line-height:1}.chat-greeting h1{font-size:24px;font-weight:650;margin:0;letter-spacing:0;line-height:1.4;color:var(--chat-text)}.chat-composer-area{width:100%;max-width:808px;margin:0 auto}.chat-composer-area.docked{padding:14px 16px 4px}.chat-composer{padding:14px 12px 11px;background:var(--chat-input);border:1px solid var(--chat-border);border-radius:24px;box-shadow:0 12px 35px #73839b0b;position:relative}.chat-composer:focus-within{border-color:#c6cdf0}.chat-composer textarea{display:block;border:0;resize:none;outline:none!important;width:100%;min-height:57px;max-height:220px;padding:0 2px;color:var(--chat-text);background:transparent;font-size:16px;line-height:1.55}.chat-composer textarea::placeholder{color:#a4abb9}.chat-composer-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px}.chat-composer-modes{display:flex;gap:8px}.chat-composer-modes button{font-size:12px;line-height:1.4;border-radius:18px;border:1px solid var(--chat-border);background:transparent;padding:7px 9px;display:flex;align-items:center;gap:4px;white-space:nowrap}.chat-composer-modes button:hover{background:var(--chat-hover)}.chat-composer-modes button.active{border-color:#c6d0ff;color:var(--chat-blue);background:var(--chat-blue-bg)}.chat-composer-tools{display:flex;align-items:center;gap:8px}.chat-send{width:35px;height:35px;border:0;background:#4d6bfe;color:#fff!important;display:flex;align-items:center;justify-content:center;border-radius:50%}.chat-send:disabled{opacity:.43}.chat-send.stop{background:var(--chat-text);color:var(--chat-bg)!important}.chat-file-input{display:none}.chat-model-hint{background:transparent;border:0;color:var(--chat-muted)!important;font-size:12px!important;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px 0 0}.chat-model-hint span{color:var(--chat-blue)}.chat-model-hint:hover{color:var(--chat-blue)!important}.chat-disclaimer{font-size:11px;color:var(--chat-muted);text-align:center;padding:7px 12px 10px;flex-shrink:0}.chat-disclaimer a{margin-left:7px;text-decoration:underline}.chat-loading{display:flex;align-items:center;justify-content:center;gap:10px;height:100dvh;color:#8b8f98}.spinning{animation:chat-spin 1s linear infinite}@keyframes chat-spin{to{transform:rotate(360deg)}}.sidebar-collapsed .chat-sidebar{margin-left:-260px}.sidebar-collapsed .chat-top-start>.chat-icon:first-child{display:inline-flex}.chat-messages{padding-top:12px}.chat-message{margin:18px 0 38px;display:flex;flex-direction:column;gap:11px}.chat-message-identity{display:flex;align-items:center;gap:9px;font-size:15px}.chat-answer-logo{width:28px;height:28px;border-radius:8px;background:var(--chat-blue-bg);color:var(--chat-blue);font-size:23px;font-weight:800;text-align:center;line-height:29px}.chat-message.user .chat-message-identity{display:none}.chat-message.user .chat-message-content{align-self:flex-end;max-width:90%;padding:11px 17px;border-radius:18px;background:var(--chat-panel);min-width:80px}.chat-message.assistant .chat-message-content{padding-left:37px}.chat-user-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:15px;line-height:1.8}.chat-prose{font-size:15px;line-height:1.85;overflow-wrap:anywhere}.chat-prose>:first-child{margin-top:0}.chat-prose>:last-child{margin-bottom:0}.chat-prose h1{font-size:25px}.chat-prose h2{font-size:22px}.chat-prose h3{font-size:18px}.chat-prose p{margin:12px 0}.chat-prose li{margin:5px 0}.chat-prose a{color:var(--chat-blue);text-decoration:underline}.chat-prose img{max-width:100%;border-radius:10px}.chat-prose blockquote{border-left:3px solid var(--chat-border);margin-left:0;padding-left:16px;color:var(--chat-muted)}.chat-prose code{font-family:Consolas,SFMono-Regular,monospace;background:var(--chat-panel);border:1px solid var(--chat-border);padding:1px 5px;border-radius:4px;font-size:.9em}.chat-code{position:relative;background:var(--chat-panel);border:1px solid var(--chat-border);border-radius:12px;margin:18px 0;overflow:hidden}.chat-code>button{position:absolute;right:10px;top:7px;border:0;display:flex;align-items:center;gap:5px;background:var(--chat-panel);color:var(--chat-muted);font-size:12px;padding:3px 6px;border-radius:5px}.chat-code pre{overflow:auto;margin:0;padding:38px 18px 18px;line-height:1.65}.chat-code pre code{border:0;padding:0;background:none}.chat-table{overflow:auto}.chat-table table{width:100%;border-collapse:collapse;font-size:14px}.chat-table th,.chat-table td{border:1px solid var(--chat-border);padding:8px 13px;text-align:left}.chat-table th{background:var(--chat-panel)}.chat-reasoning{color:var(--chat-muted);font-size:13px;margin:0 0 16px;border-left:2px solid var(--chat-border);padding-left:13px}.chat-reasoning summary{cursor:pointer;display:flex;align-items:center;gap:7px;font-size:13px}.chat-reasoning summary:after{content:"⌄";margin-left:4px}.chat-reasoning[open] summary{margin-bottom:10px}.chat-reasoning p{margin:8px 0}.chat-message-actions{display:flex;align-items:center;gap:2px;margin-top:10px;color:var(--chat-muted)}.chat-message.user .chat-message-actions{justify-content:flex-end;margin-top:5px;opacity:0}.chat-message.user:hover .chat-message-actions,.chat-message.user:focus-within .chat-message-actions{opacity:1}.chat-message-actions .chat-icon{height:26px;width:28px}.chat-generating{display:flex;gap:5px;padding:14px 0}.chat-generating span{width:6px;height:6px;border-radius:50%;background:var(--chat-muted);animation:chat-pulse 1s infinite}.chat-generating span:nth-child(2){animation-delay:.2s}.chat-generating span:nth-child(3){animation-delay:.4s}@keyframes chat-pulse{50%{opacity:.25;transform:translateY(-2px)}}.chat-attachments{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:10px}.chat-attachment{display:flex;align-items:center;gap:9px;max-width:240px;background:var(--chat-panel);border:1px solid var(--chat-border);border-radius:10px;padding:8px;color:var(--chat-muted)}.chat-attachment>img{width:36px;height:36px;object-fit:cover;border-radius:5px}.chat-attachment>span{font-size:12px;line-height:1.4;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--chat-text)}.chat-attachment small{display:block;color:var(--chat-muted);font-size:10px;margin-top:2px}.chat-attachment>a{padding:4px}.chat-error{color:#d14c49!important;font-size:13px;background:#fff2f1;border:1px solid #f5d3d0;padding:10px 12px;border-radius:9px}.chat-composer-error{display:flex;align-items:flex-start;gap:10px;margin-top:12px}.chat-composer-error>span{flex:1}.chat-modal-backdrop{position:fixed;inset:0;background:#0d152e66;display:flex;align-items:center;justify-content:center;padding:24px;z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.chat-modal{background:var(--chat-bg, #fff);color:var(--chat-text, #202124);border:1px solid var(--chat-border, #e6e8ed);border-radius:18px;width:480px;max-width:100%;max-height:88dvh;overflow:auto;box-shadow:0 20px 80px #0002}.chat-modal.wide{width:900px}.chat-modal>header{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:18px 24px;background:var(--chat-bg, #fff);border-bottom:1px solid var(--chat-border, #e6e8ed);z-index:2}.chat-modal h2{font-size:18px;margin:0}.chat-settings{padding:20px 24px}.chat-settings p{font-size:13px;line-height:1.8}.chat-settings label{display:flex;flex-direction:column;gap:7px;font-size:13px;margin-bottom:16px}.chat-settings input:not([type=range]),.chat-settings textarea{border:1px solid var(--chat-border);border-radius:8px;padding:9px 11px;background:var(--chat-input);color:var(--chat-text);width:100%}.chat-settings textarea{resize:vertical}.settings-section{border-bottom:1px solid var(--chat-border);padding-bottom:22px;margin-bottom:22px}.settings-section h3{font-size:14px;margin:0 0 12px}.settings-section .chat-muted{margin-top:-5px}.chat-muted{color:var(--chat-muted, #8b8f98);font-size:13px}.chat-theme-options{display:flex;gap:7px}.chat-theme-options button{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;background:transparent;border:1px solid var(--chat-border);border-radius:9px;padding:12px 7px;font-size:12px}.chat-theme-options button.selected{color:var(--chat-blue);border-color:var(--chat-blue);background:var(--chat-blue-bg)}.chat-primary{background:#4d6bfe!important;color:#fff!important;border:0;border-radius:8px;padding:9px 16px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-size:13px}.chat-primary:hover{background:#405ce6!important}.settings-row{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;text-align:left;padding:10px 0;font-size:13px}.settings-row:hover{color:var(--chat-blue)}.settings-row>svg:last-child:not(:first-child){margin-left:auto}.chat-modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:20px}.chat-modal-actions>button:not(.chat-primary):not(.chat-danger-button){background:transparent;border:1px solid var(--chat-border);border-radius:8px;padding:8px 15px}.chat-danger-button{background:#d44848;color:#fff!important;border:0;border-radius:8px;padding:8px 15px}.chat-provider-modal{padding:20px}.chat-provider-modal .provider-intro{margin-bottom:15px}.chat-toast{position:fixed;bottom:35px;left:50%;transform:translate(-50%);background:#202531;color:#fff;display:flex;align-items:center;gap:8px;font-size:13px;padding:10px 17px;border-radius:10px;z-index:120;box-shadow:0 5px 25px #0002}.chat-edit textarea{width:100%;min-height:100px;resize:vertical;border:1px solid var(--chat-border);border-radius:8px;padding:10px;color:var(--chat-text);background:var(--chat-input)}.chat-edit>div{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.chat-edit>div>button:first-child{border:1px solid var(--chat-border);background:none;border-radius:8px;padding:7px 15px}.chat-mobile-shade{display:none}.chat-shared{display:block;overflow:auto;height:auto;min-height:100dvh}.chat-shared>header{display:flex;align-items:center;justify-content:space-between;max-width:1120px;margin:auto;padding:24px}.chat-shared>main{max-width:820px;margin:25px auto;padding:0 24px}.chat-shared-heading{padding:0 0 24px;border-bottom:1px solid var(--chat-border);margin-bottom:40px}.chat-shared-heading p,.chat-shared-heading time{color:var(--chat-muted);font-size:12px}.chat-shared-heading h1{font-size:26px;margin:10px 0}.chat-shared .chat-message.assistant .chat-message-content{padding-left:0}@media(min-width:1600px){.chat-scroll.empty{padding-bottom:calc(13vh + 25px)}}@media(max-width:760px){.chat-sidebar{position:fixed;left:0;top:0;bottom:0;width:260px;transform:translate(-100%);margin-left:0!important;transition:transform .2s}.mobile-open .chat-sidebar{transform:translate(0)}.chat-mobile-shade{display:block;position:fixed;inset:0 0 0 260px;border:0;background:#0005;z-index:11}.chat-top-start>.chat-icon:first-child{display:inline-flex}.chat-topbar{height:58px;padding:0 12px}.chat-top-start select{font-size:12px;max-width:180px;width:auto}.chat-top-start>.chat-icon:last-child{width:24px}.chat-top-actions{gap:3px}.chat-top-actions>.chat-icon{display:none}.chat-share-button{font-size:12px;padding:5px 8px}.chat-scroll.empty{padding-bottom:calc(15vh + 10px)}.chat-body{padding:0 16px 20px}.chat-greeting{gap:8px;margin-bottom:24px;flex-direction:column}.chat-greeting-logo{font-size:35px;margin-bottom:4px}.chat-greeting h1{font-size:21px}.chat-composer{padding:13px 11px 10px;border-radius:20px}.chat-composer textarea{font-size:15px;min-height:70px}.chat-composer-tools{gap:3px}.chat-composer-tools>.chat-icon:first-child{display:none}.chat-composer-modes{gap:5px}.chat-composer-modes button{font-size:11px;padding:7px}.chat-composer-area.docked{padding:8px 12px 0}.chat-composer-controls{gap:4px}.chat-message.assistant .chat-message-content{padding-left:0}.chat-message{margin-bottom:28px}.chat-prose,.chat-user-text{font-size:14px}.chat-message.user .chat-message-actions{opacity:1}.chat-modal-backdrop{padding:14px}.chat-modal{max-height:90dvh;border-radius:14px}.chat-modal>header{padding:15px 18px}.chat-settings{padding:18px}.chat-provider-modal{padding:14px}.chat-disclaimer{font-size:10px}.chat-toast{max-width:90vw;white-space:nowrap}.chat-shared>main{padding:0 18px}.chat-histories .history-more{opacity:1}.chat-modal .provider-form-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.chat-app *{animation:none!important;transition:none!important}}.chat-retry-error{background:transparent;border:0;color:#bc4545;font-size:12px;text-decoration:underline;padding:3px 5px;white-space:nowrap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-400.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-500.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-700.woff2) format("woff2");font-weight:700;font-display:swap}:root{font-family:DM Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;color:#252832;background:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--blue: #4d6bfe;--muted: #7d8592;--line: #e8eaf0;--surface: #f7f8fa}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #4d6bfe;outline-offset:3px}svg{flex-shrink:0;vertical-align:middle}button{color:inherit}button svg{pointer-events:none}.tupo-logo{font-family:DM Sans,Arial,sans-serif;font-size:31px;line-height:1;font-weight:700;letter-spacing:-1.7px;color:#4d6bfe;display:inline-flex}.app-failure{max-width:640px;margin:20vh auto;padding:24px}.app-failure button,.app-failure a{padding:12px;display:inline-block}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
