:root{--app-bg:#050b16;--app-panel:#0a1325;--app-panel2:#101b31;--app-blue:#2e7bff;--app-green:#22d36e;--app-gold:#f6c453;--app-text:#f5f7fb;--app-muted:#9fb0cc;--app-border:rgba(80,140,255,.18)}
body:has(.app-root){background:var(--app-bg);overflow-x:hidden}.app-root{min-height:100dvh;background:radial-gradient(circle at 5% 0,rgba(46,123,255,.2),transparent 27rem),radial-gradient(circle at 100% 24rem,rgba(34,211,110,.1),transparent 25rem),var(--app-bg);color:var(--app-text);padding-bottom:88px}.app-wrap{width:min(720px,100%);margin:auto;padding:0 16px}.app-header{height:72px;display:flex;align-items:center;gap:11px;position:sticky;top:0;z-index:20;background:rgba(5,11,22,.86);backdrop-filter:blur(18px);border-bottom:1px solid var(--app-border);padding:0 max(16px,calc((100% - 688px)/2))}.brand-logo{width:42px;height:42px;display:block;flex:0 0 42px;border-radius:14px;object-fit:cover;box-shadow:0 0 24px rgba(46,123,255,.35);border:1px solid rgba(100,170,255,.32)}.app-header strong{display:block;font-size:14px}.app-header small{display:block;color:var(--app-muted);font-size:10px;margin-top:3px}.header-spacer{flex:1}.tg-pill{font-size:10px;padding:7px 9px;border:1px solid rgba(34,211,110,.25);color:var(--app-green);border-radius:99px;background:rgba(34,211,110,.08)}
.page-head{padding:22px 0 15px}.page-head h1{margin:0;font-size:27px;letter-spacing:-.03em}.page-head p{margin:7px 0 0;color:var(--app-muted);font-size:13px;line-height:1.45}.hero-card,.app-card{border:1px solid var(--app-border);background:linear-gradient(145deg,rgba(16,27,49,.96),rgba(8,18,35,.96));border-radius:21px;box-shadow:0 18px 45px rgba(0,0,0,.22)}.hero-card{padding:20px;position:relative;overflow:hidden}.hero-card:after{content:'';position:absolute;width:150px;height:150px;border-radius:50%;right:-50px;top:-75px;background:rgba(246,196,83,.13);filter:blur(2px)}.hero-label{color:var(--app-muted);font-size:12px}.balance-value{font-weight:850;font-size:34px;margin:7px 0;color:#fff}.balance-value i{font-style:normal;font-size:21px}.hero-model{border-top:1px solid var(--app-border);margin-top:14px;padding-top:14px;display:flex;justify-content:space-between;color:var(--app-muted);font-size:12px}.hero-model strong{color:var(--app-green)}
.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:16px 0}.quick-card{display:block;min-height:112px;padding:15px;border-radius:18px;border:1px solid var(--app-border);background:var(--app-panel);color:var(--app-text);text-align:left;text-decoration:none;cursor:pointer;transition:.18s transform,.18s border}.quick-card:active{transform:scale(.97)}.quick-card:hover{border-color:rgba(46,123,255,.55)}.quick-icon{font-size:24px;display:block;margin-bottom:12px}.quick-card strong{display:block;font-size:14px}.quick-card small{display:block;color:var(--app-muted);margin-top:5px;font-size:11px}.section-title{font-size:14px;margin:24px 2px 11px;display:flex;justify-content:space-between;align-items:center}.section-title a{color:#70a2ff;font-size:12px}.primary,.secondary,.danger,.icon-btn{border:0;color:white;cursor:pointer;min-height:46px;border-radius:14px;font-weight:750;padding:0 16px}.primary{background:linear-gradient(135deg,var(--app-blue),#2261d5);box-shadow:0 8px 22px rgba(46,123,255,.22)}.secondary{background:var(--app-panel2);border:1px solid var(--app-border)}.danger{background:rgba(255,78,104,.1);border:1px solid rgba(255,78,104,.22);color:#ff8b9d}.actions-row{display:flex;gap:9px}.actions-row>*{flex:1}
.search{width:100%;height:48px;border-radius:14px;border:1px solid var(--app-border);background:var(--app-panel);color:white;padding:0 15px;outline:none;margin-bottom:13px}.search:focus,.composer textarea:focus,.field:focus{border-color:var(--app-blue)}.list{display:grid;gap:10px}.chat-item,.transaction,.template-card{padding:15px;border:1px solid var(--app-border);background:var(--app-panel);border-radius:17px}.chat-item{display:grid;grid-template-columns:1fr auto;gap:8px}.chat-link{min-width:0}.chat-item h3{font-size:14px;margin:0 0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-item p{font-size:12px;color:var(--app-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}.chat-item time{font-size:10px;color:#7285a5}.mini-actions{display:flex;gap:5px;margin-top:9px}.mini-actions button{border:0;background:#14213a;color:#abc0df;border-radius:9px;padding:7px 9px}.empty{text-align:center;padding:48px 22px;border:1px dashed rgba(80,140,255,.26);border-radius:20px;color:var(--app-muted)}.empty b{display:block;color:white;font-size:34px;margin-bottom:10px}.empty .primary{margin-top:17px}
.chat-page{padding-bottom:92px}.chat-titlebar{display:flex;align-items:center;gap:10px;padding:14px 0}.back{font-size:24px}.chat-titlebar h1{font-size:17px;margin:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.messages{display:flex;flex-direction:column;gap:12px;padding:8px 0 24px}.bubble{max-width:88%;padding:13px 15px;border-radius:18px;line-height:1.52;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.bubble.user{align-self:flex-end;background:linear-gradient(145deg,#2368de,#1854bd);border-bottom-right-radius:5px}.bubble.assistant{align-self:flex-start;background:var(--app-panel2);border:1px solid var(--app-border);border-bottom-left-radius:5px}.bubble pre{overflow:auto;background:#050a13;border-radius:9px;padding:10px}.cost{display:block;color:var(--app-gold);font-size:10px;margin-top:8px}.composer{position:fixed;z-index:25;bottom:0;left:0;right:0;padding:9px max(12px,calc((100% - 704px)/2));background:rgba(5,11,22,.92);backdrop-filter:blur(18px);border-top:1px solid var(--app-border);display:flex;gap:7px;align-items:flex-end}.composer textarea{flex:1;resize:none;max-height:120px;min-height:48px;border:1px solid var(--app-border);border-radius:15px;background:var(--app-panel);color:white;padding:13px;outline:none}.icon-btn{width:48px;padding:0;background:var(--app-panel2);border:1px solid var(--app-border)}.send{background:var(--app-blue)}
.model-list{display:grid;gap:13px}.model-card{padding:19px}.model-card.selected{border-color:var(--app-green);box-shadow:0 0 28px rgba(34,211,110,.1)}.model-top{display:flex;justify-content:space-between;align-items:start}.model-card h2{margin:0;font-size:20px}.intelligence{color:var(--app-gold);font-size:12px;margin-top:4px}.price{color:var(--app-gold);font-weight:800}.model-card p,.model-card li{color:var(--app-muted);font-size:12px;line-height:1.5}.model-card ul{padding-left:18px}.selected-mark{color:var(--app-green);font-size:12px}.model-card .primary{width:100%}
.field{width:100%;border:1px solid var(--app-border);background:var(--app-panel);color:#fff;border-radius:15px;padding:14px;outline:none}.prompt{min-height:130px;resize:vertical}.quality{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}.quality button.active{border-color:var(--app-green);color:var(--app-green)}.result-image{width:100%;border-radius:16px;margin-top:14px}.status-box{padding:17px;text-align:center;color:var(--app-muted)}.spinner{display:inline-block;width:20px;height:20px;border:2px solid #27436d;border-top-color:var(--app-green);border-radius:50%;animation:spin .8s linear infinite;margin-right:8px;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}
.wallet-balance{text-align:center;padding:28px}.wallet-balance .balance-value{color:var(--app-gold)}.subscription{padding:15px;margin-top:12px;font-size:13px;line-height:1.5}.subscription.yes{border-color:rgba(34,211,110,.3)}.subscription.no{border-color:rgba(246,196,83,.24)}.promo{display:flex;gap:8px}.promo .field{flex:1}.transaction{display:flex;align-items:center;gap:12px}.tx-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;background:var(--app-panel2)}.transaction div:nth-child(2){flex:1}.transaction strong,.transaction small{display:block}.transaction small{color:var(--app-muted);font-size:10px;margin-top:5px}.amount.plus{color:var(--app-green)}.amount.minus{color:#ff8799}.template-card h3{margin:0 0 6px;font-size:14px}.template-card p{margin:0;color:var(--app-muted);font-size:12px;line-height:1.4}.profile-row{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--app-border);font-size:13px}.profile-row span{color:var(--app-muted)}
.bottom-nav{position:fixed;z-index:30;left:50%;bottom:0;transform:translateX(-50%);width:min(720px,100%);height:72px;padding:7px 8px max(7px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,1fr);background:rgba(7,15,29,.96);backdrop-filter:blur(20px);border:1px solid var(--app-border);border-bottom:0;border-radius:20px 20px 0 0}.nav-link{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8192ad;font-size:9px;gap:4px}.nav-link b{font-size:19px}.nav-link.active{color:#62a0ff}.app-loader{min-height:100dvh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:var(--app-muted)}.app-loader strong{color:white}.toast{position:fixed;z-index:50;left:50%;top:16px;transform:translate(-50%,-130%);width:min(92%,460px);background:#14213a;border:1px solid var(--app-border);padding:13px 16px;border-radius:14px;color:white;transition:.25s}.toast.show{transform:translate(-50%,0)}
@media(min-width:600px){.quick-grid{grid-template-columns:repeat(4,1fr)}.quick-card{min-height:125px}}@media(max-width:360px){.app-wrap{padding:0 11px}.quick-grid{gap:8px}.quick-card{padding:12px}.nav-link{font-size:8px}}
.auth-wrap{min-height:100dvh;display:grid;place-items:center;padding:24px 16px}.auth-card{width:min(420px,100%);padding:28px 22px;border:1px solid var(--app-border);background:linear-gradient(145deg,rgba(16,27,49,.98),rgba(8,18,35,.98));border-radius:24px;text-align:center;box-shadow:0 24px 70px rgba(0,0,0,.35)}.auth-logo{width:72px;height:72px;object-fit:cover;border-radius:22px;border:1px solid rgba(246,196,83,.4);box-shadow:0 0 32px rgba(46,123,255,.25)}.auth-card h1{margin:18px 0 8px;font-size:28px}.auth-card p{color:var(--app-muted);line-height:1.55;margin:0 0 20px}.auth-card form{display:grid;gap:12px}.auth-button{width:100%;display:grid;place-items:center;margin-top:12px;text-decoration:none}.auth-error{padding:12px;margin:0 0 14px;border-radius:12px;background:rgba(255,78,104,.1);color:#ff9bab;font-size:13px}.code-field{text-align:center;letter-spacing:.45em;font-size:24px}.auth-button:disabled{opacity:.55;cursor:not-allowed}.logout-button{width:100%;margin-top:22px}
