:root{
  --bg:#07070c; --bg-2:#0b0b13; --panel:rgba(17,17,26,.72); --panel-solid:#11111a;
  --line:#1e1e2c; --line-2:#2a2a3d;
  --txt:#e9e9f2; --txt-2:#b6b6c8; --mut:#7c7c96;
  --a:#7c5cff; --a-2:#a78bfa; --b:#00d4ff;
  --grad:linear-gradient(135deg,#7c5cff 0%,#00d4ff 100%);
  --ok:#2fd68a; --warn:#ffb454; --bad:#ff5c7a;
  --r:14px; --r-lg:20px;
  --shadow:0 20px 50px -20px rgba(0,0,0,.8);
  --font:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  background:var(--bg); color:var(--txt); font-family:var(--font); font-size:14.5px; line-height:1.6;
  -webkit-font-smoothing:antialiased;
  background-image:radial-gradient(900px 460px at 8% -10%,rgba(124,92,255,.16),transparent 60%),
    radial-gradient(900px 460px at 100% 110%,rgba(0,212,255,.10),transparent 60%);
  background-attachment:fixed;
}
a{color:var(--b);text-decoration:none}
a:hover{text-decoration:underline}
code.inline,.mono{font-family:var(--mono);font-size:.86em}
code.inline{background:var(--bg-2);border:1px solid var(--line);padding:2px 6px;border-radius:6px}
.muted{color:var(--mut)}
.tiny{font-size:11.5px}
.small{font-size:12.5px}
.block{display:block}
.center{text-align:center}
.mt{margin-top:16px}
.mb{margin-bottom:16px}
.pos{color:var(--ok)}.neg{color:var(--bad)}
.hidden{display:none!important}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:#242435;border-radius:10px;border:2px solid var(--bg)}
::selection{background:rgba(124,92,255,.4)}

.shell{display:flex;min-height:100vh}
.sidebar{width:252px;flex:0 0 252px;border-right:1px solid var(--line);
  background:rgba(9,9,15,.86);backdrop-filter:blur(20px);
  display:flex;flex-direction:column;padding:18px 14px;position:sticky;top:0;height:100vh}
.brand{display:flex;align-items:center;gap:10px;padding:6px 8px 20px;font-weight:800;font-size:16.5px;color:var(--txt)}
.brand:hover{text-decoration:none}
.brand-mark{width:32px;height:32px;flex:0 0 32px;border-radius:10px;display:grid;place-items:center;
  background:var(--grad);color:#07070c;font-size:16px;box-shadow:0 6px 18px -6px rgba(124,92,255,.7)}
.brand-text{letter-spacing:-.02em}
.nav{display:flex;flex-direction:column;gap:3px;flex:1;overflow-y:auto}
.nav-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--mut);font-weight:700;padding:16px 10px 7px}
.nav-item{display:flex;align-items:center;gap:11px;padding:9.5px 11px;border-radius:11px;
  color:var(--txt-2);font-weight:600;font-size:13.8px;transition:.14s}
.nav-item i{font-style:normal;width:18px;text-align:center;opacity:.85;font-size:14px}
.nav-item:hover{background:rgba(255,255,255,.045);color:var(--txt);text-decoration:none}
.nav-item.active{background:rgba(124,92,255,.14);color:#fff;box-shadow:inset 0 0 0 1px rgba(124,92,255,.3)}
.sidebar-foot{border-top:1px solid var(--line);padding-top:14px;margin-top:12px;display:flex;flex-direction:column;gap:12px}
.usage-top{display:flex;justify-content:space-between;font-size:12px;color:var(--mut);margin-bottom:7px}
.usage-top strong{color:var(--txt);font-weight:700}
.bar{height:5px;background:#16161f;border-radius:6px;overflow:hidden}
.bar span{display:block;height:100%;background:var(--grad);border-radius:6px;transition:width .4s}
.who{display:flex;align-items:center;gap:10px;padding-top:4px}
.avatar{width:32px;height:32px;flex:0 0 32px;border-radius:10px;display:grid;place-items:center;
  background:linear-gradient(135deg,#242438,#16161f);font-weight:800;font-size:13px;color:var(--a-2)}
.who-txt{flex:1;min-width:0;display:flex;flex-direction:column}
.who-txt b{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.who-txt small{font-size:11px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.who-out{color:var(--mut);font-size:15px}
.who-out:hover{color:var(--bad);text-decoration:none}
.main{flex:1;min-width:0;display:flex;flex-direction:column}
.topbar{display:flex;align-items:center;gap:14px;padding:15px 24px;border-bottom:1px solid var(--line);
  background:rgba(7,7,12,.7);backdrop-filter:blur(16px);position:sticky;top:0;z-index:20}
.page-title{font-size:16.5px;font-weight:750;letter-spacing:-.02em;flex:1}
.topbar-right{display:flex;gap:9px;align-items:center}
.content{padding:24px;max-width:1400px;width:100%;margin:0 auto;flex:1}
.banner{background:linear-gradient(90deg,rgba(255,180,84,.16),rgba(255,180,84,.05));
  border-bottom:1px solid rgba(255,180,84,.3);padding:9px 24px;font-size:12.5px;color:#ffd9a1;text-align:center}

.chip{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:100px;
  background:rgba(255,255,255,.045);border:1px solid var(--line);font-size:12.5px;font-weight:650;color:var(--txt-2)}
.chip-points{cursor:pointer;color:#cfc4ff;border-color:rgba(124,92,255,.35);background:rgba(124,92,255,.1)}
.chip-points:hover{background:rgba(124,92,255,.18)}
.chip-danger{color:#ffb3c2;border-color:rgba(255,92,122,.4);background:rgba(255,92,122,.1)}
.dot{width:6px;height:6px;border-radius:50%;background:var(--ok);box-shadow:0 0 10px var(--ok)}
.pill{display:inline-block;padding:7px 15px;border-radius:100px;background:rgba(124,92,255,.12);
  border:1px solid rgba(124,92,255,.3);font-size:12.5px;font-weight:650;color:#c9bcff;margin-bottom:22px}
.tag{display:inline-block;padding:3px 9px;border-radius:7px;background:rgba(255,255,255,.06);
  border:1px solid var(--line);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--txt-2)}
.tag-ok{background:rgba(47,214,138,.12);border-color:rgba(47,214,138,.3);color:#8ef0bd}
.tag-warn{background:rgba(255,180,84,.12);border-color:rgba(255,180,84,.3);color:#ffd9a1}
.tag-bad{background:rgba(255,92,122,.12);border-color:rgba(255,92,122,.3);color:#ffb3c2}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;
  border-radius:11px;padding:10.5px 17px;font-family:var(--font);font-size:13.5px;font-weight:700;
  cursor:pointer;transition:.15s;color:var(--txt);background:transparent}
.btn:hover{text-decoration:none}
.btn-primary{background:var(--grad);color:#07070c;box-shadow:0 10px 26px -12px rgba(124,92,255,.75)}
.btn-primary:hover{filter:brightness(1.1);transform:translateY(-1px)}
.btn-ghost{background:rgba(255,255,255,.05);border-color:var(--line);color:var(--txt-2)}
.btn-ghost:hover{background:rgba(255,255,255,.09);color:var(--txt)}
.btn-block{width:100%}
.btn-lg{padding:14px 26px;font-size:15px;border-radius:13px}
.btn-sm{padding:6px 11px;font-size:12px;border-radius:9px}
.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}
.icon-btn{background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--txt-2);
  width:36px;height:36px;border-radius:10px;cursor:pointer;font-size:15px;display:grid;place-items:center}
.icon-btn:hover{background:rgba(255,255,255,.1);color:var(--txt)}

.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;
  backdrop-filter:blur(14px);box-shadow:var(--shadow)}
.card-title{font-size:14.5px;font-weight:750;margin-bottom:16px;letter-spacing:-.01em}
.sub{font-size:13px;font-weight:700;color:var(--txt-2);margin:22px 0 10px}
.panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}
.stat{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:16px;backdrop-filter:blur(14px)}
.stat small{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--mut);font-weight:700;margin-bottom:7px}
.stat b{font-size:22px;font-weight:800;letter-spacing:-.03em}
.balance-big{font-size:40px;font-weight:800;letter-spacing:-.04em;background:var(--grad);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:4px}
.balance-big small{font-size:15px;font-weight:700;color:var(--mut);-webkit-text-fill-color:var(--mut);margin-left:6px}
.flex-between{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}
.row-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}

.field{display:block;margin-bottom:14px}
.field>span{display:block;font-size:11.5px;font-weight:700;color:var(--mut);margin-bottom:7px;text-transform:uppercase;letter-spacing:.07em}
input,textarea,select{width:100%;background:#0a0a12;border:1px solid var(--line);border-radius:11px;
  padding:11px 13px;color:var(--txt);font-size:13.8px;font-family:var(--font);transition:.15s}
textarea{resize:vertical;line-height:1.6}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--a);box-shadow:0 0 0 3px rgba(124,92,255,.15)}
input::placeholder,textarea::placeholder{color:#4d4d63}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--mut) 50%),linear-gradient(135deg,var(--mut) 50%,transparent 50%);
  background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:34px}
.mini-input{padding:5px 8px;font-size:12.5px;border-radius:8px}
.tgl{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:650;color:var(--txt-2);cursor:pointer;
  padding:7px 12px;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.tgl input{width:auto;accent-color:var(--a)}
.stack{display:flex;flex-direction:column;gap:2px}
.grid-form{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.grid-actions{grid-column:1/-1;margin-top:8px}
.search-row{display:flex;gap:10px}
.search-row input{flex:1}

.alert{background:rgba(124,92,255,.1);border:1px solid rgba(124,92,255,.3);color:#d3c9ff;
  padding:12px 15px;border-radius:11px;font-size:13px;margin-bottom:14px;word-break:break-all}
.alert-error{background:rgba(255,92,122,.1);border-color:rgba(255,92,122,.32);color:#ffb3c2}
.code{background:#08080e;border:1px solid var(--line);border-radius:12px;padding:14px;
  font-family:var(--mono);font-size:11.8px;line-height:1.75;overflow-x:auto;color:#b9c4d6;white-space:pre-wrap;word-break:break-all}

.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:rgba(8,8,14,.4)}
.table{width:100%;border-collapse:collapse;font-size:13px;min-width:640px}
.table th{text-align:left;padding:11px 14px;font-size:10.5px;text-transform:uppercase;letter-spacing:.09em;
  color:var(--mut);font-weight:750;border-bottom:1px solid var(--line);background:rgba(255,255,255,.02);white-space:nowrap}
.table td{padding:11px 14px;border-bottom:1px solid rgba(30,30,44,.6);vertical-align:middle}
.table tr:last-child td{border-bottom:0}
.table tr:hover td{background:rgba(255,255,255,.018)}

.diag{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.diag>div{background:rgba(255,255,255,.025);border:1px solid var(--line);border-radius:12px;padding:13px}
.diag small{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--mut);font-weight:700;margin-bottom:5px}
.diag b{font-size:14px;font-weight:750}
.spark{display:flex;align-items:flex-end;gap:5px;height:110px;padding-top:10px}
.spark-col{flex:1;height:100%;display:flex;align-items:flex-end}
.spark-col span{width:100%;background:var(--grad);border-radius:5px 5px 3px 3px;min-height:3px;opacity:.85;transition:.3s}
.spark-col:hover span{opacity:1}

.chat-wrap{display:flex;flex-direction:column;height:calc(100vh - 128px);min-height:520px}
.chat-head{display:flex;gap:12px;align-items:center;padding-bottom:14px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.chat-head .select{max-width:340px}
.chat-toggles{display:flex;gap:9px;align-items:center;margin-left:auto}
.messages{flex:1;overflow-y:auto;padding:22px 4px;display:flex;flex-direction:column;gap:20px}
.msg{display:flex;gap:13px;max-width:900px;animation:rise .25s ease}
@keyframes rise{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.msg.user{margin-left:auto;flex-direction:row-reverse}
.msg-av{width:31px;height:31px;flex:0 0 31px;border-radius:10px;display:grid;place-items:center;font-size:13px;font-weight:800}
.msg.user .msg-av{background:linear-gradient(135deg,#2a2a42,#191927);color:var(--txt-2)}
.msg.ai .msg-av{background:var(--grad);color:#07070c}
.bubble{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:13px 16px;
  font-size:14.5px;line-height:1.72;overflow-wrap:anywhere;backdrop-filter:blur(10px)}
.msg.user .bubble{background:rgba(124,92,255,.12);border-color:rgba(124,92,255,.28)}
.bubble p{margin:0 0 10px}.bubble p:last-child{margin:0}
.bubble h1,.bubble h2,.bubble h3{margin:14px 0 8px;font-size:15.5px;font-weight:750}
.bubble ul,.bubble ol{margin:8px 0 8px 20px}
.bubble li{margin-bottom:4px}
.bubble pre{background:#08080e;border:1px solid var(--line);border-radius:11px;padding:12px;overflow-x:auto;
  font-family:var(--mono);font-size:12.3px;margin:10px 0}
.bubble code{font-family:var(--mono);font-size:.87em;background:rgba(255,255,255,.06);padding:1.5px 5px;border-radius:5px}
.bubble pre code{background:none;padding:0}
.bubble blockquote{border-left:2px solid var(--a);padding-left:12px;color:var(--txt-2);margin:10px 0}
.bubble table{border-collapse:collapse;margin:10px 0;font-size:13px}
.bubble th,.bubble td{border:1px solid var(--line);padding:6px 10px}
.bubble img{max-width:100%;border-radius:10px;margin:8px 0}
.msg-meta{display:flex;gap:11px;align-items:center;margin-top:9px;font-size:11px;color:var(--mut)}
.msg-meta button{background:none;border:0;color:var(--mut);cursor:pointer;font-size:11px;font-family:var(--font);padding:0}
.msg-meta button:hover{color:var(--txt)}
.thinking{display:flex;gap:4px;padding:4px 0}
.thinking span{width:6px;height:6px;border-radius:50%;background:var(--a-2);animation:blink 1.3s infinite}
.thinking span:nth-child(2){animation-delay:.18s}.thinking span:nth-child(3){animation-delay:.36s}
@keyframes blink{0%,60%,100%{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
.reason{background:rgba(0,212,255,.05);border:1px dashed rgba(0,212,255,.25);border-radius:11px;
  padding:10px 13px;font-size:12.5px;color:#9fd8ea;margin-bottom:10px;white-space:pre-wrap;max-height:180px;overflow-y:auto}
.empty{text-align:center;padding:46px 20px;margin:auto}
.empty-mark{font-size:44px;display:block;margin-bottom:14px;background:var(--grad);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.empty h2{font-size:25px;font-weight:800;letter-spacing:-.03em;margin-bottom:8px}
.empty p{color:var(--mut);margin-bottom:24px}
.prompts{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:640px;margin:0 auto}
.prompt{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px 14px;
  font-size:12.8px;color:var(--txt-2);text-align:left;cursor:pointer;font-family:var(--font);transition:.15s}
.prompt:hover{border-color:var(--a);color:var(--txt);transform:translateY(-1px)}
.composer{padding-top:14px;border-top:1px solid var(--line)}
.composer-box{background:var(--panel-solid);border:1px solid var(--line-2);border-radius:16px;padding:12px 14px;transition:.15s}
.composer-box:focus-within{border-color:var(--a);box-shadow:0 0 0 4px rgba(124,92,255,.12)}
.composer-box textarea{background:none;border:0;padding:0;max-height:200px;font-size:14.5px}
.composer-box textarea:focus{box-shadow:none}
.composer-row{display:flex;align-items:center;justify-content:space-between;margin-top:9px;gap:10px}
.composer-left,.composer-right{display:flex;align-items:center;gap:9px}
.file-btn{cursor:pointer;font-size:15px;opacity:.7}
.file-btn:hover{opacity:1}
.send{width:36px;height:36px;border-radius:11px;border:0;background:var(--grad);color:#07070c;
  font-size:17px;font-weight:800;cursor:pointer;transition:.15s}
.send:hover{transform:scale(1.06)}
.send:disabled{opacity:.5;transform:none}

.result-area{min-height:220px;display:grid;place-items:center;border:1px dashed var(--line);border-radius:var(--r);padding:16px}
.result-area img{max-width:100%;border-radius:12px}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.gallery img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;border:1px solid var(--line);cursor:pointer;transition:.2s}
.gallery img:hover{transform:scale(1.03);border-color:var(--a)}
.job-list{display:flex;flex-direction:column;gap:10px}
.job{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.03);border:1px solid var(--line);
  border-radius:12px;padding:12px;font-size:13px}
.job video,.job audio{max-width:100%;border-radius:9px}
.ledger{display:flex;flex-direction:column;max-height:460px;overflow-y:auto}
.ledger-row{display:flex;justify-content:space-between;align-items:center;padding:11px 2px;border-bottom:1px solid rgba(30,30,44,.6)}
.ledger-row:last-child{border:0}
.ledger-row b{font-size:14px;font-weight:750}
.ledger-row small{display:block;font-size:11.5px;color:var(--mut)}
.ledger-row .right{text-align:right}
.acct-box{display:flex;justify-content:space-between;align-items:center;gap:14px;
  background:rgba(0,212,255,.05);border:1px solid rgba(0,212,255,.22);border-radius:var(--r);padding:14px;margin:14px 0}
.acct-box.big{padding:18px}
.acct-box small{display:block;font-size:11px;color:var(--mut);text-transform:uppercase;letter-spacing:.07em;font-weight:700}
.acct-box b{display:block;font-size:21px;font-family:var(--mono);letter-spacing:.02em;margin:3px 0}
.acct-box span{font-size:12px;color:var(--txt-2)}

.modal{position:fixed;inset:0;background:rgba(4,4,8,.72);backdrop-filter:blur(7px);z-index:200;
  display:none;align-items:center;justify-content:center;padding:20px}
.modal.open{display:flex}
.modal-card{background:var(--panel-solid);border:1px solid var(--line-2);border-radius:22px;padding:26px;
  width:100%;max-width:460px;position:relative;box-shadow:var(--shadow);animation:rise .22s ease}
.modal-card h2{font-size:19px;font-weight:800;margin-bottom:5px;letter-spacing:-.02em}
.modal-x{position:absolute;top:16px;right:16px;background:rgba(255,255,255,.06);border:0;color:var(--mut);
  width:30px;height:30px;border-radius:9px;cursor:pointer;font-size:13px}
.modal-x:hover{color:var(--txt)}
.amount-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:16px 0}
.amount{background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:10px;padding:9px 4px;
  color:var(--txt-2);font-size:12px;font-weight:700;cursor:pointer;font-family:var(--font)}
.amount:hover{border-color:var(--a);color:var(--txt);background:rgba(124,92,255,.12)}
.toasts{position:fixed;bottom:22px;right:22px;z-index:300;display:flex;flex-direction:column;gap:10px;max-width:340px}
.toast{background:var(--panel-solid);border:1px solid var(--line-2);border-left:3px solid var(--a);
  border-radius:12px;padding:12px 15px;font-size:13px;box-shadow:var(--shadow);animation:rise .2s ease}
.toast.err{border-left-color:var(--bad)}
.toast.ok{border-left-color:var(--ok)}

.landing-body,.auth-body{display:block}
.glow{position:fixed;border-radius:50%;filter:blur(110px);pointer-events:none;z-index:0}
.glow-a{width:520px;height:520px;background:rgba(124,92,255,.22);top:-160px;left:-100px}
.glow-b{width:480px;height:480px;background:rgba(0,212,255,.14);bottom:-160px;right:-100px}
.landing-nav{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:22px 40px}
.landing-nav-actions{display:flex;gap:10px}
.hero{position:relative;z-index:2;text-align:center;padding:80px 28px 60px;max-width:900px;margin:0 auto}
.hero h1{font-size:clamp(33px,5.6vw,60px);font-weight:800;letter-spacing:-.04em;line-height:1.06;margin-bottom:20px;
  background:linear-gradient(180deg,#fff 25%,#9d9dbb);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.lede{font-size:16.5px;color:var(--txt-2);max-width:620px;margin:0 auto 32px;line-height:1.68}
.hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:52px}
.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:660px;margin:0 auto}
.hero-stats>div{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:16px;backdrop-filter:blur(12px)}
.hero-stats b{display:block;font-size:24px;font-weight:800;letter-spacing:-.03em;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero-stats span{font-size:11.5px;color:var(--mut);font-weight:650}
.features{position:relative;z-index:2;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:18px;max-width:1100px;margin:0 auto;padding:40px 28px 80px}
.feature{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;backdrop-filter:blur(12px);transition:.2s}
.feature:hover{border-color:rgba(124,92,255,.4);transform:translateY(-3px)}
.feature-ico{font-size:23px;display:block;margin-bottom:13px}
.feature h3{font-size:15.5px;font-weight:750;margin-bottom:8px;letter-spacing:-.01em}
.feature p{font-size:13.3px;color:var(--mut);line-height:1.65}
.landing-foot{position:relative;z-index:2;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
  padding:26px 40px;border-top:1px solid var(--line);font-size:12.5px;color:var(--mut)}
.auth-card{position:relative;z-index:2;background:var(--panel);border:1px solid var(--line);border-radius:24px;
  padding:36px;width:100%;max-width:430px;margin:8vh auto;backdrop-filter:blur(20px);box-shadow:var(--shadow)}
.auth-card .brand{justify-content:center;padding-bottom:24px}
.auth-card h1{font-size:23px;font-weight:800;letter-spacing:-.025em;text-align:center;margin-bottom:6px}
.auth-card>.muted{text-align:center;margin-bottom:22px;font-size:13.5px}

.only-mobile{display:none}
@media(max-width:1024px){
  .stat-grid{grid-template-columns:repeat(2,1fr)}
  .diag{grid-template-columns:1fr 1fr}
}
@media(max-width:860px){
  .sidebar{position:fixed;left:0;top:0;z-index:100;transform:translateX(-102%);transition:.25s}
  .sidebar.open{transform:none;box-shadow:0 0 60px rgba(0,0,0,.7)}
  .only-mobile{display:grid}
  .panel-grid,.grid-form,.row-2{grid-template-columns:1fr}
  .prompts{grid-template-columns:1fr}
  .hero-stats{grid-template-columns:1fr 1fr}
  .content{padding:16px}
  .messages{padding:14px 0}
  .chat-wrap{height:calc(100vh - 150px)}
}
@media(max-width:520px){
  .landing-nav{padding:16px 18px}
  .hero{padding:50px 18px 40px}
  .features{padding:20px 18px 60px}
  .stat-grid{grid-template-columns:1fr}
  .diag{grid-template-columns:1fr}
  .amount-grid{grid-template-columns:repeat(3,1fr)}
  .toasts{left:14px;right:14px;bottom:14px;max-width:none}
}

/* fix17 -- one-tap conversation rows, pay cards, mode switch */
.conv { position: relative; }
.conv .conv-open {
  display: flex; align-items: center; gap: .5rem; width: 100%;
  padding: .5rem .6rem; padding-right: 4.8rem; border-radius: 10px;
  text-decoration: none; color: inherit; touch-action: manipulation;
}
.conv .conv-open:hover { background: rgba(255,255,255,.06); }
.conv-tools { position: absolute; right: .3rem; top: 50%; transform: translateY(-50%); display: flex; gap: .1rem; }
.conv-tools button {
  background: transparent; border: 0; cursor: pointer; color: inherit;
  opacity: 0; transition: opacity .12s; padding: .15rem .25rem; line-height: 1;
}
.conv:hover .conv-tools button { opacity: .85; }
@media (hover: none) { .conv-tools button { opacity: .7; } }
#modeSeg button.on { font-weight: 700; }
.pay-grid { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .6rem; }
.pay-wallet-card { margin-top: .75rem; padding: .75rem; border: 1px solid rgba(255,255,255,.12); border-radius: 12px; }
.pay-wallet-card .addr { word-break: break-all; margin: .35rem 0 .5rem; }

/* fix21 -- chat layout */
.chat-wrap { display: flex; flex-direction: column; min-height: 0; }
#messages { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; scroll-behavior: smooth; }
.chat-composer, .composer, .chat-wrap > form { flex: 0 0 auto; position: sticky; bottom: 0; z-index: 5; }
#chatInput { max-height: 38vh; overflow-y: auto; }
.msg .bubble { max-width: min(72ch, 100%); }
@media (max-width: 900px) { .chat-wrap { min-height: calc(100dvh - 64px); } }

/* fix22 -- visible, collapsible thinking like Venice */
.reason {
  font-size: .82rem; line-height: 1.5; opacity: .72; white-space: pre-wrap;
  border-left: 2px solid rgba(255,255,255,.16); border-radius: 0 8px 8px 0;
  padding: .4rem .65rem; margin: 0 0 .5rem; max-height: 7.5rem; overflow: auto; cursor: pointer;
}
.reason:not(:empty)::before {
  content: 'Thinking'; display: block; font-size: .64rem; letter-spacing: .1em;
  text-transform: uppercase; opacity: .6; margin-bottom: .25rem;
}
.reason.open { max-height: none; }

/* fix23 -- code copy, stable chat, sidebar order */
.msg pre { position: relative; }
.code-copy {
  position: absolute; top: .35rem; right: .35rem; font-size: .68rem;
  padding: .15rem .45rem; border-radius: 6px; cursor: pointer;
  border: 1px solid rgba(255,255,255,.18); background: rgba(0,0,0,.4);
  color: inherit; opacity: .55; transition: opacity .12s;
}
.code-copy:hover { opacity: 1; }
.msg pre code { display: block; }
#messages { scroll-padding-bottom: 1rem; }

.sidebar, .side, aside.nav { display: flex; flex-direction: column; }
#convList { order: 60; margin-top: auto; min-height: 0; overflow-y: auto; padding-top: .35rem; }
#convList::before {
  content: 'Recent chats'; display: block; font-size: .64rem; letter-spacing: .1em;
  text-transform: uppercase; opacity: .5; margin: .5rem .6rem .25rem;
}
