:root{
  --navy:#0b1220; --navy2:#121c30; --navy3:#1a2742;
  --gold:#c9a96a; --gold-l:#e6cf9c;
  --blue:#8cc4ea; --blue-d:#3b82b8; --blue-dd:#26608c; --blue-l:#e6f2fb;
  --paper:#faf8f3; --ink:#1f2b37; --muted:#5c6b79; --line:#e5e0d3;
  --serif:'Playfair Display',Georgia,'Times New Roman',serif;
  --sans:'Inter','Segoe UI',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:var(--sans);background:var(--paper);color:var(--ink);line-height:1.65;overflow-x:hidden}


#bar{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--blue),var(--gold));z-index:50}


.dark{background:var(--navy);color:#e8edf5}
.light{background:var(--paper);color:var(--ink)}
.sec{padding:30px 0}
.wrap{max-width:1000px;margin:0 auto;padding:50px 22px}
h1,h2,h3{font-family:var(--serif)}
h2{font-size:2.2rem;margin-bottom:10px}
em{font-style:italic;color:var(--gold)}
.light em{color:var(--blue-dd)}
.sub,.about{color:var(--muted);margin-bottom:20px;max-width:760px}
.dark .sub{color:#9fb0c7}


header{position:sticky;top:0;z-index:20;display:flex;justify-content:flex-end;align-items:center;gap:30px;padding:14px 44px;background:rgba(11,18,32,.85);backdrop-filter:blur(14px);border-bottom:1px solid rgba(201,169,106,.25)}
nav{display:flex;gap:4px}
nav a{color:#cfd9e8;text-decoration:none;font-weight:500;font-size:.95rem;padding:7px 14px;border-radius:999px;transition:.2s}
nav a:hover{background:rgba(201,169,106,.15);color:var(--gold-l)}
.logo{display:flex;align-items:center;gap:9px;text-decoration:none;color:#fff;font-family:var(--serif);font-size:1.3rem}
.mark:hover{zoom: 140%}
.logo i{font-style:normal;color:var(--gold)}
.mark{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--gold),#a07f3f);color:var(--navy);box-shadow:0 6px 18px rgba(201,169,106,.35)}


.hero{position:relative;overflow:hidden;--mx:50%;--my:30%;background:radial-gradient(circle at var(--mx) var(--my),#1d2d4d 0,var(--navy) 55%)}
.glow{position:absolute;width:520px;height:520px;border-radius:50%;left:calc(var(--mx) - 260px);top:calc(var(--my) - 260px);background:radial-gradient(circle,rgba(140,196,234,.18),transparent 65%);pointer-events:none;transition:left .15s,top .15s}
.hero-in{position:relative;max-width:1100px;margin:0 auto;padding:90px 22px 70px;display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.pill{display:inline-block;padding:6px 14px;border-radius:999px;border:1px solid rgba(201,169,106,.5);color:var(--gold-l);font-size:.85rem;font-weight:500;margin-bottom:18px}
.hero h1{font-size:3.3rem;line-height:1.12;margin-bottom:16px;color:#fff}
.type-wrap{color:var(--gold);font-style:italic;white-space:nowrap}
.caret{display:inline-block;width:3px;height:.9em;background:var(--gold);margin-left:5px;vertical-align:-.08em;animation:blinkc 1s steps(1) infinite}
@keyframes blinkc{50%{opacity:0}}
.hero p{color:#aab9cf;font-size:1.1rem;max-width:520px;margin-bottom:28px}
.cta{display:flex;gap:12px;flex-wrap:wrap}
.stats{display:flex;gap:38px;margin-top:38px}
.stats b{display:block;font-family:var(--serif);font-size:1.9rem;color:var(--gold)}
.stats span{font-size:.85rem;color:#8ea0bb}
.stats b span{font-size:inherit;color:inherit;display:inline}


.hero-card{background:rgba(255,255,255,.06);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:18px;box-shadow:0 30px 70px rgba(0,0,0,.45);animation:bob 6s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-12px)}}
.mini-head{display:flex;align-items:center;gap:6px;margin-bottom:14px;font-size:.85rem;color:#9fb0c7}
.mini-head i{width:10px;height:10px;border-radius:50%;background:#ff8f82}
.mini-head i:nth-child(2){background:#ffd773}.mini-head i:nth-child(3){background:#7fd99a}
.mini-head span{margin-left:8px}
.mini{padding:10px 14px;border-radius:14px;margin-bottom:10px;font-size:.92rem;max-width:90%}
.mini.user{background:linear-gradient(135deg,var(--gold),#a98a4d);color:var(--navy);margin-left:auto;font-weight:500}
.mini.bot{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.1)}


.dots{display:flex;gap:5px;width:fit-content}
.dots span{width:8px;height:8px;border-radius:50%;background:var(--blue);animation:blink 1.2s infinite}
.dots span:nth-child(2){animation-delay:.2s}.dots span:nth-child(3){animation-delay:.4s}
@keyframes blink{0%,80%,100%{opacity:.25;transform:scale(.8)}40%{opacity:1;transform:scale(1.1)}}


.ticker{overflow:hidden;border-top:1px solid rgba(201,169,106,.2);border-bottom:1px solid rgba(201,169,106,.2);background:var(--navy2);padding:14px 0}
.track{display:flex;gap:46px;width:max-content;animation:scroll 32s linear infinite}
.track span{color:var(--gold-l);font-family:var(--serif);font-style:italic;white-space:nowrap}
.track span::before{content:"✦";margin-right:46px;color:var(--gold);font-style:normal;opacity:.6}
@keyframes scroll{to{transform:translateX(-50%)}}


.btn,button{background:linear-gradient(135deg,var(--gold-l),var(--gold) 60%,#a98a4d);color:var(--navy);border:0;padding:12px 26px;border-radius:999px;font-size:1rem;font-weight:600;font-family:inherit;cursor:pointer;text-decoration:none;display:inline-block;box-shadow:0 8px 22px rgba(201,169,106,.3);transition:.2s}
.btn:hover,button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(201,169,106,.45)}
.btn.ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35);box-shadow:none}
.btn.ghost:hover{background:rgba(255,255,255,.1)}
button:disabled{opacity:.6;cursor:wait;transform:none}


.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:18px}
.grid.two{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:0 8px 30px rgba(60,100,140,.07);cursor:pointer;transition:transform .15s ease-out,box-shadow .3s,border-color .3s;position:relative;overflow:hidden;transform-style:preserve-3d}
.card::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(201,169,106,.22),transparent 60%);opacity:0;transition:.3s}
.card:hover{box-shadow:0 18px 40px rgba(38,96,140,.18);border-color:var(--gold)}
.card:hover::after{opacity:1}
.ico{width:50px;height:50px;display:grid;place-items:center;font-size:1.5rem;border-radius:14px;background:var(--blue-l);margin-bottom:12px}
.card h3{margin-bottom:6px;font-size:1.2rem}
.card p{color:var(--muted);font-size:.95rem}


.quote{background:var(--navy2);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:24px;transition:.3s}
.quote:hover{transform:translateY(-5px);border-color:rgba(201,169,106,.5)}
.quote.good{border-left:5px solid var(--blue); overflow: auto; height: 250px;}
.quote.good:hover{transition : 1.05rem; zoom: 110%; transition: 300ms}
.quote.bad{border-left:5px solid #e8887a;overflow:auto; height: 250px}
.quote.bad:hover{zoom: 110%; transition: 300ms;}
.quote p{margin:10px 0;font-family:var(--serif);font-style:italic;font-size:1.08rem;color:#e8edf5}
.quote span{font-size:.85rem;color:#8ea0bb}
.stats{text-align: center;}



.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 8px 30px rgba(60,100,140,.07)}
input,textarea,select{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:12px;font:inherit;background:#fff;color:var(--ink);transition:.2s}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--blue-d);box-shadow:0 0 0 4px rgba(140,196,234,.35)}
textarea{min-height:130px;resize:vertical}
label{display:block;font-weight:600;margin:14px 0 5px;font-size:.92rem}
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.tabs button{background:#fff;color:var(--navy);box-shadow:none;border:1px solid var(--line);padding:9px 18px;font-size:.92rem;font-weight:500}
.tabs button:hover{border-color:var(--gold)}
.tabs button.active{background:var(--navy);color:var(--gold-l);border-color:var(--navy)}
#toolForm button{margin-top:18px}
.output{margin-top:22px;padding:22px;background:var(--blue-l);border-radius:14px;line-height:1.75}


.chat{padding:0;overflow:hidden;background:var(--navy2);border:1px solid rgba(201,169,106,.3);box-shadow:0 30px 70px rgba(0,0,0,.4)}
.chat-top{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:var(--navy3);color:#fff;font-weight:600;border-bottom:1px solid rgba(255,255,255,.08)}
.chat-top small{opacity:.7;font-weight:400}
.online{display:inline-block;width:9px;height:9px;border-radius:50%;background:#7CFFA8;margin-right:6px;box-shadow:0 0 0 4px rgba(124,255,168,.2)}
.mini-btn{background:rgba(255,255,255,.1);color:#fff;box-shadow:none;padding:6px 14px;font-size:.85rem;font-weight:500}
.upload{padding:10px 20px;background:rgba(140,196,234,.08);font-size:.88rem;color:#9fb0c7}
.upload input{width:auto;background:none;border:0;padding:4px;box-shadow:none;color:#cfd9e8}
#chatLog{height:420px;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:18px;background:var(--navy)}
#chatLog::-webkit-scrollbar{width:8px}#chatLog::-webkit-scrollbar-thumb{background:#2b3b5c;border-radius:8px}
.msg{padding:12px 16px;border-radius:16px;max-width:86%;animation:pop .25s ease}
@keyframes pop{from{opacity:0;transform:translateY(8px)}}
.msg.user{align-self:flex-end;background:linear-gradient(135deg,var(--gold-l),var(--gold));color:var(--navy);border-bottom-right-radius:4px;font-weight:500}
.msg.bot{align-self:flex-start;background:var(--navy3);border:1px solid rgba(255,255,255,.08);color:#e8edf5;border-bottom-left-radius:4px}
.msg.err{background:#3a1a1d;border-color:#7a3239;color:#ffb9b3}
.msg h3,.msg h4,.output h3,.output h4{margin:10px 0 4px}
.msg h3,.msg h4{color:var(--gold-l)}
.msg ul,.msg ol,.output ul,.output ol{padding-left:22px;margin:4px 0}
.msg p,.output p{margin:6px 0}
.msg code{background:rgba(255,255,255,.1);padding:1px 6px;border-radius:6px;font-size:.9em}
.output code{background:#fff;padding:1px 6px;border-radius:6px}
.copy{display:block;margin-top:8px;background:none;box-shadow:none;color:var(--gold);padding:2px 0;font-size:.8rem;font-weight:500}
.copy:hover{transform:none;box-shadow:none;text-decoration:underline}
.chips{display:flex;flex-wrap:wrap;gap:8px;padding:12px 18px 0;background:var(--navy2)}
.chips button{background:transparent;color:var(--gold-l);border:1px solid rgba(201,169,106,.4);box-shadow:none;padding:7px 14px;font-size:.85rem;font-weight:500}
.chips button:hover{background:rgba(201,169,106,.15)}
.chatrow{display:flex;gap:10px;padding:14px 18px 18px;background:var(--navy2)}
.chat input{background:var(--navy);color:#fff;border-color:rgba(255,255,255,.12)}
.chat input::placeholder{color:#6f819f}

footer{text-align:center;padding:36px 20px;font-size:.85rem;color:#8ea0bb;border-top:1px solid rgba(201,169,106,.2)}


.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}
.reveal.show{opacity:1;transform:none}

@media(max-width:850px){
  header{padding:10px 14px;gap:10px;flex-wrap:wrap}
  nav{flex-wrap:wrap;justify-content:flex-end}
  nav a{padding:5px 9px;font-size:.85rem}
  .hero-in{grid-template-columns:1fr;padding-top:50px}
  .hero h1{font-size:2.3rem}
  .hero-card{display:none}
  .stats{gap:22px}
}

