
:root{
  --black:#000;
  --emerald:#0D271C;
  --panel:#133328;
  --glow:#04442A;
  --mint:#0AFFAE;
  --mint-soft:#65F6C1;
  --sage:#E1E9E5;
  --paper:#F3F3F3;
  --ink:#EAF4EF;
  --ink-muted:#8FA89D;
  --ink-dark:#0D1B15;
  --line:rgba(234,244,239,.12);
  --line-dark:rgba(13,27,21,.14);
  --sans:"Inter","Inter Display",system-ui,-apple-system,"Segoe UI",sans-serif;
  --display:"Inter Display","Inter",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--black);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}

/* ---------- nav ---------- */
nav.top{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.55);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
nav.top .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--display);font-weight:600;font-size:19px;letter-spacing:-.02em}
.logo svg{width:26px;height:26px}
.menu{display:flex;gap:34px;font-size:14.5px;color:var(--ink-muted)}
.menu a:hover{color:var(--ink)}
.btn{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 22px;border-radius:10px;font-weight:600;font-size:14.5px;border:1px solid transparent;cursor:pointer;font-family:inherit;transition:box-shadow .2s,transform .2s,background .2s}
.btn.mint{background:var(--mint);color:#02150d}
.btn.mint:hover{box-shadow:0 0 0 6px rgba(10,255,174,.16),0 8px 30px rgba(10,255,174,.28)}
.btn.ghost{border-color:rgba(234,244,239,.28);color:var(--ink);background:transparent}
.btn.ghost:hover{border-color:var(--mint-soft);color:var(--mint-soft)}
.btn.sm{height:38px;padding:0 18px}

/* ---------- views ---------- */
#login-view{display:none}
body.is-login #home-view{display:none}
body.is-login #login-view{display:block}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;padding:96px 0 120px;
  background:
   radial-gradient(900px 520px at 78% 62%,rgba(4,68,42,.95),transparent 70%),
   radial-gradient(700px 400px at 12% 100%,rgba(19,51,40,.9),transparent 70%),
   var(--black)}
.hero::before{content:"";position:absolute;inset:0;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:72px 72px;opacity:.35;
  -webkit-mask-image:radial-gradient(ellipse at 60% 55%,#000 15%,transparent 72%);mask-image:radial-gradient(ellipse at 60% 55%,#000 15%,transparent 72%)}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.02fr 1fr;gap:56px;align-items:center}
.hero h1{font-family:var(--display);font-weight:500;font-size:68px;line-height:1.02;letter-spacing:-.035em}
.hero h1 em{font-style:normal;color:var(--mint-soft)}
.hero p.lead{margin-top:26px;font-size:18px;color:#b6cbc0;max-width:30em}
.hero .actions{margin-top:36px;display:flex;gap:14px}
.hero .proof{margin-top:54px;display:flex;gap:34px;color:var(--ink-muted);font-size:13.5px}
.hero .proof b{display:block;color:var(--ink);font-family:var(--display);font-weight:500;font-size:26px;letter-spacing:-.02em}

.stage{position:relative;height:680px;perspective:1700px;display:grid;place-items:center;touch-action:pan-y}
.glass{position:absolute;border-radius:16px;border:1px solid rgba(234,244,239,.16);background:linear-gradient(160deg,rgba(24,66,50,.78),rgba(8,30,21,.82));backdrop-filter:blur(10px);box-shadow:0 30px 80px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.07)}
.stmt{left:4%;top:0;width:92%;padding:22px 24px 20px}
.stmt header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid var(--line)}
.stmt h3{font-family:var(--display);font-weight:500;font-size:15.5px;letter-spacing:-.01em}
.stmt small{display:block;color:var(--ink-muted);font-size:12px;margin-top:2px}
.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#02150d;background:var(--mint);padding:5px 10px 5px 8px;border-radius:99px}
.badge svg{width:13px;height:13px}
.rows{margin-top:6px}
.row{display:grid;grid-template-columns:1fr auto auto;gap:22px;padding:9px 0;font-size:13.5px;border-bottom:1px dashed rgba(234,244,239,.09)}
.row span:nth-child(2),.row span:nth-child(3){text-align:right;min-width:86px;color:#cfe2d8}
.row.head{color:var(--ink-muted);font-size:12px;border-bottom:1px solid var(--line)}
.row.sub{font-weight:600;color:var(--ink)}
.row.sub span:nth-child(2),.row.sub span:nth-child(3){color:var(--ink)}
.row .ind{padding-left:16px;color:#b6cbc0}
.recon{margin-top:14px;padding:14px 16px;border-radius:12px;background:rgba(10,255,174,.08);border:1px solid rgba(10,255,174,.35);display:flex;align-items:center;justify-content:space-between}
.recon .l{font-size:12.5px;color:#b6cbc0}
.recon .l b{display:block;color:var(--ink);font-weight:500;font-size:14px}
.recon .v{font-family:var(--display);font-size:26px;letter-spacing:-.02em;color:var(--mint)}
.recon .v s{color:var(--ink-muted);font-size:15px;margin-right:10px;text-decoration-thickness:1px}
.lease{right:0;bottom:0;width:262px;padding:16px 18px}
.lease h4,.ecl h4{font-size:12.5px;font-weight:500;color:var(--ink-muted)}
.lease .big{font-family:var(--display);font-size:28px;letter-spacing:-.025em;margin:4px 0 10px}
.spark{display:flex;align-items:flex-end;gap:5px;height:44px}
.spark i{flex:1;background:linear-gradient(var(--mint-soft),rgba(101,246,193,.18));border-radius:3px 3px 0 0}
.ecl{left:0;bottom:0;width:262px;padding:16px 18px}
.ecl .bar{height:8px;border-radius:8px;background:rgba(234,244,239,.12);margin:12px 0 8px;overflow:hidden}
.ecl .bar i{display:block;height:100%;width:34%;background:var(--mint);border-radius:8px}
.ecl .meta{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-muted)}


/* ---------- 3D hero scene ---------- */
.scale{transform:translateY(150px) scale(var(--s,1))}
.rig{position:relative;width:410px;height:246px;transform-style:preserve-3d;transform:rotateX(var(--rx,56deg)) rotateZ(var(--rz,-24deg));will-change:transform}
.floor{position:absolute;inset:-70px;transform:translateZ(-90px);border-radius:50%;background:radial-gradient(closest-side,rgba(10,255,174,.38),rgba(10,255,174,.08) 55%,transparent 72%);filter:blur(8px)}
.plane{position:absolute;inset:0;border-radius:16px;padding:18px 20px;border:1px solid rgba(234,244,239,.2);background:linear-gradient(150deg,rgba(30,84,63,.98),rgba(19,58,43,.98));box-shadow:0 0 0 1px rgba(0,0,0,.4),0 40px 70px rgba(0,0,0,.45);transform-style:flat}
.plane h3{font-family:var(--display);font-weight:500;font-size:16px;letter-spacing:-.01em}
.plane small{display:block;color:var(--ink-muted);font-size:11.5px;margin-top:2px}
.p1{transform:translateZ(0)}
.p2{transform:translateZ(215px)}
.p3{transform:translateZ(430px);border-color:rgba(10,255,174,.55);box-shadow:0 0 0 1px rgba(0,0,0,.4),0 0 60px rgba(10,255,174,.22),0 40px 70px rgba(0,0,0,.4)}
.plane .tbl{margin-top:10px;font-size:11.5px}
.plane .tbl>div{display:grid;grid-template-columns:48px 1fr 70px;gap:8px;padding:6px 0;border-bottom:1px dashed rgba(234,244,239,.12);color:#cfe2d8}
.plane .tbl>div span:last-child{text-align:right}
.p1 .tbl>div span:nth-child(2){color:#9fb7aa}
.calc3>div{grid-template-columns:48px 1fr 1fr 1fr!important}
.calc3>div span:not(:first-child){text-align:right}
.calc3 .h{color:var(--ink-muted);font-size:11px}
.s3>div{grid-template-columns:1fr auto!important;font-size:14px!important;font-weight:600;color:var(--ink)!important;padding:10px 0!important}
.mbar{height:7px;border-radius:7px;background:rgba(234,244,239,.12);margin:16px 0 8px;overflow:hidden}
.mbar i{display:block;width:34%;height:100%;background:var(--mint);border-radius:7px}
.mmeta{display:flex;justify-content:space-between;font-size:11.5px;color:var(--ink-muted)}
.p3 header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.p3 .badge{flex:none}
.diff{margin-top:12px;padding:14px 16px;border-radius:12px;background:rgba(10,255,174,.1);border:1px solid rgba(10,255,174,.45);display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#cfe2d8}
.diff b{font-family:var(--display);font-weight:500;font-size:30px;letter-spacing:-.02em;color:var(--mint)}
.diff s{color:var(--ink-muted);font-size:15px;margin-right:10px;text-decoration-thickness:1px}
.beam{position:absolute;left:50%;top:50%;width:2px;height:430px;margin-left:-1px;transform-origin:50% 0;transform:rotateX(90deg);background:linear-gradient(to top,rgba(10,255,174,.9),rgba(10,255,174,.05))}
.beam.b2{transform:rotateX(90deg) rotateY(90deg)}
.dot{position:absolute;left:50%;top:50%;width:11px;height:11px;margin:-5px;border-radius:50%;background:var(--mint);box-shadow:0 0 14px 4px rgba(10,255,174,.7)}
@media (prefers-reduced-motion:no-preference){
  .dot{animation:rise3d 3.2s linear infinite}
  .dot.d2{animation-delay:-1.06s}.dot.d3{animation-delay:-2.12s}
  .p1{animation:bob 6s ease-in-out infinite}
  .p2{animation:bob2 6s ease-in-out infinite}
  .p3{animation:bob3 6s ease-in-out infinite}
}
@keyframes rise3d{0%{transform:translateZ(0);opacity:0}12%{opacity:1}88%{opacity:1}100%{transform:translateZ(430px);opacity:0}}
@keyframes bob{50%{transform:translateZ(8px)}}
@keyframes bob2{50%{transform:translateZ(223px)}}
@keyframes bob3{50%{transform:translateZ(440px)}}
@media (max-width:980px){.stage{height:520px;--s:.74}}

/* ---------- standards ribbon ---------- */
.ribbon{border-block:1px solid var(--line);background:var(--emerald);overflow:hidden}
.ribbon .track{display:flex;gap:56px;padding:20px 0;width:max-content;color:var(--ink-muted);font-size:14.5px;font-weight:500;white-space:nowrap}
.ribbon .track span b{color:var(--ink);font-weight:600;margin-right:8px}

/* ---------- light section ---------- */
.light{background:linear-gradient(180deg,var(--paper) 0%,var(--paper) 52%,#c9f7e1 100%);color:var(--ink-dark);padding:112px 0 120px}
.sec-title{font-family:var(--display);font-weight:500;font-size:46px;line-height:1.08;letter-spacing:-.03em;max-width:17em}
.light .sec-title{margin-inline:auto;text-align:center}
.tag{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:500;color:#0a7a52;margin-bottom:18px}
.tag::before{content:"";width:7px;height:7px;border-radius:2px;background:currentColor}
.dark .tag,.tag.on-dark{color:var(--mint-soft)}
.center{text-align:center}
.pains{margin-top:60px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pain{background:var(--sage);border:1px solid var(--line-dark);border-radius:14px;padding:28px 26px 30px}
.pain svg{width:30px;height:30px;color:#0a7a52;margin-bottom:46px}
.pain h3{font-family:var(--display);font-weight:500;font-size:20px;letter-spacing:-.015em;margin-bottom:8px}
.pain p{font-size:15px;color:#3b4d44}
.response{margin:96px auto 0;text-align:center;max-width:780px}
.response h2{font-family:var(--display);font-weight:500;font-size:40px;line-height:1.1;letter-spacing:-.03em}
.response p{margin-top:20px;color:#2c3e35;font-size:17px}

/* ---------- how it works ---------- */
.dark{background:radial-gradient(800px 420px at 50% 0%,rgba(4,68,42,.7),transparent 70%),var(--black);padding:116px 0}
.flow{margin-top:68px;display:grid;grid-template-columns:repeat(4,1fr);position:relative}
.flow::before{content:"";position:absolute;left:0;right:0;top:19px;height:1px;background:linear-gradient(90deg,var(--mint),rgba(10,255,174,.15))}
.step{position:relative;padding-right:36px}
.step .n{width:39px;height:39px;border-radius:50%;background:var(--black);border:1px solid var(--mint);color:var(--mint);display:grid;place-items:center;font-weight:600;font-size:14px;position:relative}
.step h3{margin-top:26px;font-family:var(--display);font-weight:500;font-size:22px;letter-spacing:-.02em}
.step p{margin-top:8px;color:var(--ink-muted);font-size:15px}
.step .chip{display:inline-block;margin-top:18px;font-size:12.5px;color:var(--mint-soft);border:1px solid rgba(101,246,193,.3);border-radius:8px;padding:4px 10px}

/* ---------- stats ---------- */
.stats{border-block:1px solid var(--line);background:var(--emerald)}
.stats .wrap{display:grid;grid-template-columns:repeat(3,1fr)}
.stat{padding:46px 28px;border-left:1px solid var(--line)}
.stat:first-child{border-left:0;padding-left:0}
.stat b{display:block;font-family:var(--display);font-weight:500;font-size:54px;letter-spacing:-.04em;line-height:1}
.stat span{display:block;margin-top:12px;color:var(--ink-muted);font-size:14.5px;max-width:15em}

/* ---------- services ---------- */
.services{background:linear-gradient(180deg,var(--black),#04120c 40%,var(--black));padding:116px 0 40px}
.services .head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.services .head p{max-width:25em;color:var(--ink-muted);font-size:17px}
.bento{margin-top:60px;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(210px,auto);gap:16px}
.card{position:relative;background:linear-gradient(165deg,var(--panel),#0a1f16);border:1px solid var(--line);border-radius:18px;padding:28px;display:flex;flex-direction:column;transition:border-color .25s,transform .25s}
.card:hover{border-color:rgba(10,255,174,.5);transform:translateY(-3px)}
.card .ico{width:38px;height:38px;border-radius:10px;border:1px solid rgba(101,246,193,.35);display:grid;place-items:center;color:var(--mint-soft);margin-bottom:auto}
.card .ico svg{width:19px;height:19px}
.card h3{font-family:var(--display);font-weight:500;font-size:21px;letter-spacing:-.02em;margin-top:34px}
.card p{margin-top:8px;color:var(--ink-muted);font-size:14.5px}
.card .more{margin-top:18px;color:var(--mint-soft);font-size:14px;font-weight:500}
.c-feat{grid-column:span 6;grid-row:span 2;background:radial-gradient(500px 300px at 80% 100%,rgba(10,255,174,.18),transparent 70%),linear-gradient(165deg,#164233,#0a1f16)}
.c-a,.c-b,.c-c,.c-d{grid-column:span 3}
.c-e{grid-column:span 5;border-radius:18px 18px 18px 56px}
.c-feat .ico{margin-bottom:0}
.c-feat .calc{margin-top:auto;padding:10px 20px}
.c-feat .calc .r{padding:15px 0;font-size:14.5px}
.c-feat .more{margin-top:26px}
.c-f{grid-column:span 7;flex-direction:row;gap:30px;align-items:stretch;border-radius:56px 18px 18px 18px}
.c-f .txt{flex:1;display:flex;flex-direction:column}
.calc{margin-top:22px;border-radius:12px;background:rgba(0,0,0,.35);border:1px solid var(--line);padding:6px 16px;font-size:13.5px}
.calc .r{display:grid;grid-template-columns:62px 1fr 1fr 1fr;gap:10px;padding:10px 0;border-bottom:1px dashed rgba(234,244,239,.1);color:#cfe2d8}
.calc .r:last-child{border:0;color:var(--mint);font-weight:600}
.calc .r.h{color:var(--ink-muted);font-size:12px}
.calc .r span:not(:first-child){text-align:right}
.tr{flex:0 0 240px;border-radius:12px;background:rgba(0,0,0,.35);border:1px solid var(--line);padding:16px;font-size:13.5px;display:flex;flex-direction:column;gap:12px;justify-content:center}
.tr div{padding-bottom:12px;border-bottom:1px dashed rgba(234,244,239,.12)}
.tr div:last-child{border:0;padding:0;color:var(--mint-soft)}
.tr small{display:block;color:var(--ink-muted);font-size:11.5px;margin-bottom:2px}

.compare{margin-top:110px;background:var(--sage);color:var(--ink-dark);border-radius:22px;padding:56px 56px 40px}
.compare h2{font-family:var(--display);font-weight:500;font-size:34px;letter-spacing:-.03em}
.compare table{width:100%;border-collapse:collapse;margin-top:34px;font-size:15.5px}
.compare th{text-align:left;font-weight:500;color:#52665c;font-size:13.5px;padding:0 0 12px}
.compare td{padding:18px 0;border-top:1px solid var(--line-dark);vertical-align:top}
.compare td:first-child{font-weight:600;width:26%}
.compare td:nth-child(2){color:#52665c;width:33%;padding-right:30px}
.compare td:nth-child(3){color:#06603f;font-weight:500}
.compare td:nth-child(3)::before{content:"";display:inline-block;width:8px;height:8px;background:#0a8f60;border-radius:2px;margin-right:10px}

/* ---------- about ---------- */
.about{background:var(--black);padding:130px 0 110px}
.about .grid{display:grid;grid-template-columns:1.15fr 1fr;gap:80px}
.about h2{font-family:var(--display);font-weight:500;font-size:54px;line-height:1.05;letter-spacing:-.035em}
.about h2 em{font-style:normal;color:var(--mint-soft)}
.about .story p{color:#b6cbc0;font-size:17px;margin-bottom:20px;max-width:34em}
.values{margin-top:90px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.val{padding:34px 34px 10px 0}
.val+.val{padding-left:34px;border-left:1px solid var(--line)}
.val h3{font-family:var(--display);font-weight:500;font-size:24px;letter-spacing:-.02em}
.val p{margin-top:10px;color:var(--ink-muted);font-size:15px;max-width:22em}
.founder{margin-top:70px;display:flex;align-items:center;gap:22px;padding:26px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(120deg,rgba(19,51,40,.7),transparent)}
.avatar{width:66px;height:66px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--mint-soft),var(--glow));flex:none;border:1px solid rgba(255,255,255,.2)}
.founder b{font-family:var(--display);font-weight:500;font-size:18px}
.founder span{display:block;color:var(--ink-muted);font-size:14.5px}
.founder q{margin-left:auto;max-width:28em;color:#b6cbc0;font-size:15px;quotes:none}

/* ---------- CTA + footer ---------- */
.cta{padding:0 0 110px;background:var(--black)}
.cta .box{position:relative;overflow:hidden;border-radius:26px;padding:84px 40px;text-align:center;border:1px solid rgba(10,255,174,.28);
  background:radial-gradient(620px 300px at 50% 120%,rgba(10,255,174,.38),transparent 70%),radial-gradient(900px 400px at 50% 0%,var(--glow),transparent 75%),var(--emerald)}
.cta h2{font-family:var(--display);font-weight:500;font-size:50px;letter-spacing:-.035em;line-height:1.05;max-width:15em;margin:0 auto}
.cta p{margin:20px auto 34px;color:#b6cbc0;font-size:17.5px;max-width:30em}
footer{border-top:1px solid var(--line);padding:60px 0 44px;background:var(--black);color:var(--ink-muted);font-size:14.5px}
footer .wrap{display:grid;grid-template-columns:3fr 1fr;gap:40px}
footer h4{color:var(--ink);font-weight:500;font-size:14.5px;margin-bottom:14px}
footer li{list-style:none;margin-bottom:9px}
footer li a:hover{color:var(--ink)}
footer .logo{color:var(--ink);margin-bottom:14px}
footer .legal{grid-column:1/-1;border-top:1px solid var(--line);padding-top:26px;font-size:13px;display:flex;justify-content:space-between}

/* ---------- login ---------- */
#login-view{min-height:calc(100vh - 68px);position:relative;overflow:hidden;
  background:radial-gradient(900px 600px at 72% 55%,rgba(4,68,42,.95),transparent 70%),radial-gradient(500px 400px at 0% 100%,rgba(19,51,40,.8),transparent 70%),var(--black)}
#login-view::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:72px 72px;opacity:.3;-webkit-mask-image:radial-gradient(ellipse at 65% 55%,#000 10%,transparent 70%);mask-image:radial-gradient(ellipse at 65% 55%,#000 10%,transparent 70%)}
.login-grid{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:center;min-height:calc(100vh - 68px);padding:60px 0}
.login-copy h1{font-family:var(--display);font-weight:500;font-size:56px;line-height:1.04;letter-spacing:-.035em;max-width:11em}
.login-copy ul{list-style:none;margin-top:44px;display:grid;gap:22px;max-width:30em}
.login-copy li{display:flex;gap:16px;align-items:flex-start;color:#b6cbc0;font-size:15.5px}
.login-copy li b{display:block;color:var(--ink);font-weight:500;font-size:16.5px;margin-bottom:2px}
.login-copy li i{flex:none;width:36px;height:36px;border-radius:10px;border:1px solid rgba(101,246,193,.35);display:grid;place-items:center;color:var(--mint-soft)}
.login-copy li svg{width:18px;height:18px}
.lcard{background:linear-gradient(165deg,rgba(24,66,50,.85),rgba(8,30,21,.92));border:1px solid rgba(234,244,239,.16);border-radius:22px;padding:42px 40px 34px;box-shadow:0 40px 100px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.07)}
.lcard h2{font-family:var(--display);font-weight:500;font-size:28px;letter-spacing:-.025em}
.lcard .sub{color:var(--ink-muted);font-size:15px;margin:6px 0 28px}
.field{margin-bottom:18px}
.field label{display:block;font-size:13.5px;color:#b6cbc0;margin-bottom:8px}
.inp{position:relative}
.inp input{width:100%;height:50px;border-radius:10px;border:1px solid rgba(234,244,239,.2);background:rgba(0,0,0,.38);color:var(--ink);font:inherit;font-size:15.5px;padding:0 16px}
.inp input::placeholder{color:#5f7a6d}
.inp input:focus{outline:none;border-color:var(--mint);box-shadow:0 0 0 4px rgba(10,255,174,.14)}
.inp button{position:absolute;right:8px;top:8px;height:34px;padding:0 12px;border:0;background:transparent;color:var(--mint-soft);font:inherit;font-size:13.5px;cursor:pointer;border-radius:8px}
.opts{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:#b6cbc0;margin:4px 0 26px}
.opts label{display:flex;align-items:center;gap:9px;cursor:pointer}
.opts input{accent-color:var(--mint);width:16px;height:16px}
.opts a{color:var(--mint-soft)}
.lcard .btn{width:100%;justify-content:center;height:50px;font-size:15.5px}
.lcard .alt{margin-top:24px;text-align:center;color:var(--ink-muted);font-size:14.5px;padding-top:22px;border-top:1px solid var(--line)}
.lcard .alt a{color:var(--mint-soft);font-weight:500}
.err{display:none;color:#ff9b8a;font-size:13px;margin-top:7px}
.field.bad .err{display:block}
.field.bad input{border-color:#ff9b8a}

/* ---------- motion: one entrance in the hero ---------- */
@media (prefers-reduced-motion:no-preference){
  .stmt{animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
  .lease{animation:rise .9s .25s cubic-bezier(.2,.7,.2,1) both}
  .ecl{animation:rise .9s .4s cubic-bezier(.2,.7,.2,1) both}
  .recon .v{animation:settle 1.4s .9s both}
  .ribbon .track{animation:slide 60s linear infinite}
}
@keyframes rise{from{opacity:0;transform:translateY(22px)}}
@keyframes settle{from{opacity:.2}}
@keyframes slide{to{transform:translateX(-50%)}}

/* ---------- responsive ---------- */
@media (max-width:980px){
  .wrap{padding:0 20px}
  .menu{display:none}
  .hero{padding:56px 0 80px}
  .hero .wrap,.login-grid,.about .grid{grid-template-columns:1fr;gap:48px}
  .hero h1{font-size:44px}
  .stage{height:520px}
  .pains,.values{grid-template-columns:1fr}
  .flow{grid-template-columns:1fr;gap:34px}.flow::before{display:none}
  .stats .wrap{grid-template-columns:1fr 1fr}.stat{padding:30px 18px}.stat:nth-child(3){border-left:0;padding-left:0}
  .services .head{flex-direction:column;align-items:flex-start}
  .bento>*{grid-column:1/-1!important}.c-f{flex-direction:column}.tr{flex:auto}
  .compare{padding:32px 22px}.compare table{font-size:14px}
  .about h2,.cta h2{font-size:38px}.val+.val{padding-left:0;border-left:0}
  .founder{flex-wrap:wrap}.founder q{margin:0}
  footer .wrap{grid-template-columns:1fr 1fr}
  .sec-title{font-size:34px}.response h2{font-size:30px}
  .login-copy h1{font-size:40px}
}

/* ---------- dashboard (after login) ---------- */
#app-view{display:none}
body.is-app #app-view{display:block}
body.is-app nav.top,body.is-app #home-view,body.is-app #login-view{display:none}
#app-view{min-height:100vh;background:var(--black);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;line-height:1.5;
  background:
   radial-gradient(1000px 560px at 72% 70%,rgba(4,68,42,.85),transparent 70%),
   radial-gradient(700px 420px at 8% 100%,rgba(19,51,40,.8),transparent 70%),
   var(--black);background-attachment:fixed}
#app-view::before{content:"";position:fixed;inset:0;pointer-events:none;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:72px 72px;opacity:.3;
  -webkit-mask-image:radial-gradient(ellipse at 60% 60%,#000 10%,transparent 72%);mask-image:radial-gradient(ellipse at 60% 60%,#000 10%,transparent 72%)}
#app-view a{color:inherit;text-decoration:none}
#app-view button{font-family:inherit}
#app-view :focus-visible{outline:2px solid var(--mint);outline-offset:3px}
#app-view .bar{position:sticky;top:0;z-index:20;background:rgba(0,0,0,.55);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
#app-view .bar .in{max-width:1320px;margin:0 auto;padding:0 32px;height:68px;display:flex;align-items:center;gap:14px}
#app-view .sq{width:42px;height:42px;border-radius:11px;border:1px solid rgba(101,246,193,.3);background:rgba(19,51,40,.5);display:grid;place-items:center;color:var(--mint-soft);cursor:pointer;transition:border-color .2s,box-shadow .2s}
#app-view .sq:hover{border-color:var(--mint);box-shadow:0 0 0 5px rgba(10,255,174,.12)}
#app-view .sq svg{width:19px;height:19px}
#app-view .crumb{display:flex;align-items:center;gap:12px;margin-left:8px;font-size:15px}
#app-view .crumb b{font-weight:600}
#app-view .crumb span{color:var(--ink-muted)}
#app-view .owner{font-style:normal;font-size:11.5px;font-weight:600;color:#02150d;background:var(--mint);padding:3px 10px;border-radius:99px}
#app-view .right{margin-left:auto;display:flex;align-items:center;gap:20px}
#app-view .admin{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:10px;border:1px solid rgba(234,244,239,.25);font-size:14px;font-weight:500;color:var(--ink);background:transparent;cursor:pointer;transition:border-color .2s,color .2s}
#app-view .admin:hover{border-color:var(--mint-soft);color:var(--mint-soft)}
#app-view .admin svg{width:16px;height:16px}
#app-view .admin.pill{height:38px;padding:0 20px;border-radius:99px;border-color:rgba(10,255,174,.35);background:rgba(10,255,174,.12);color:var(--mint-soft);font-weight:600;transition:background .2s,color .2s,border-color .2s}
#app-view .admin.pill:hover{background:var(--mint);border-color:var(--mint);color:#02150d}
#app-view .logo{display:flex;align-items:center;gap:10px;font-family:var(--display);font-weight:600;font-size:18px;letter-spacing:-.02em}
#app-view .logo svg{width:26px;height:26px}
#app-view main{position:relative;max-width:1320px;margin:0 auto;padding:64px 32px 90px}
#app-view h1{font-family:var(--display);font-weight:500;font-size:52px;letter-spacing:-.035em;line-height:1.05;margin-bottom:46px}
#app-view .grid{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;perspective:1600px}
#app-view .mod{position:relative;grid-column:span 6;min-height:320px;border-radius:22px;padding:26px 28px 28px;border:1px solid var(--line);
  background:linear-gradient(160deg,rgba(24,66,50,.85),rgba(7,26,18,.92));
  display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;cursor:pointer;
  transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transform-style:preserve-3d;
  transition:border-color .25s,box-shadow .25s,transform .18s ease-out;will-change:transform}
#app-view .mod::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .25s;
  background:radial-gradient(420px 300px at var(--mx,50%) var(--my,50%),rgba(10,255,174,.22),transparent 70%)}
#app-view .mod:hover{border-color:rgba(10,255,174,.6);box-shadow:0 30px 70px rgba(0,0,0,.55),0 0 50px rgba(10,255,174,.12)}
#app-view .mod:hover::before{opacity:1}
#app-view .m1{grid-column:span 7}
#app-view .m2{grid-column:span 5}
#app-view .m3{grid-column:span 12}
#app-view .m4{grid-column:span 7}
#app-view .m2,#app-view .m3{border-radius:22px 22px 22px 64px}
#app-view .m2{border-radius:22px 64px 22px 22px}
#app-view .top{position:relative;display:flex;justify-content:space-between;align-items:flex-start;transform:translateZ(30px)}
#app-view .ico{width:46px;height:46px;border-radius:13px;border:1px solid rgba(101,246,193,.38);background:rgba(4,40,26,.6);display:grid;place-items:center;color:var(--mint-soft)}
#app-view .ico svg{width:22px;height:22px}
#app-view .go{width:38px;height:38px;border-radius:50%;border:1px solid rgba(234,244,239,.22);display:grid;place-items:center;color:var(--ink);transition:background .25s,color .25s,border-color .25s,transform .25s}
#app-view .go svg{width:16px;height:16px}
#app-view .mod:hover .go{background:var(--mint);color:#02150d;border-color:var(--mint);transform:rotate(-45deg)}
#app-view .name{position:relative;font-family:var(--display);font-weight:500;font-size:30px;line-height:1.1;letter-spacing:-.03em;max-width:9em;transform:translateZ(40px)}
#app-view .art{position:absolute;right:20px;bottom:18px;width:54%;max-width:340px;color:var(--mint);opacity:.95;transform:translateZ(60px);pointer-events:none}
#app-view .m2 .art,#app-view .m3 .art{width:62%;right:14px}
#app-view .art .faint{opacity:.28}
@media (prefers-reduced-motion:no-preference){#app-view .mod{animation:dash-enter .8s cubic-bezier(.2,.7,.2,1) both}
#app-view .m2{animation-delay:.1s}
#app-view .m3{animation-delay:.2s}
#app-view .m4{animation-delay:.3s}
#app-view .art .pulse{animation:dash-pulse 2.6s ease-in-out infinite}
}
@keyframes dash-enter{from{opacity:0;transform:translateY(26px) rotateX(8deg)}}
@keyframes dash-pulse{50%{opacity:.35}}
@media (max-width:900px){#app-view .bar .in{padding:0 16px}
#app-view .crumb span,#app-view .logo span{display:none}
#app-view .right{gap:10px}
#app-view main{padding:40px 16px 70px}
#app-view h1{font-size:36px;margin-bottom:30px}
#app-view .mod,#app-view .m1,#app-view .m2,#app-view .m3,#app-view .m4{grid-column:1/-1;min-height:260px}
#app-view .name{font-size:26px;max-width:55%}
#app-view .art,#app-view .m2 .art,#app-view .m3 .art{width:46%;right:14px;bottom:16px}
#app-view .admin{width:40px;padding:0;justify-content:center;font-size:0;gap:0}
#app-view .admin.pill{width:auto;padding:0 14px;font-size:13px}
#app-view .bar .in{gap:8px}
#app-view .crumb{margin-left:2px;gap:8px;font-size:14px}
#app-view .logo svg{width:24px;height:24px}
}

#app-view .sub{display:none}
body.is-debt #app-view #debt-securities-view{display:block}
body.is-debt #app-view .dash-main{display:none}
#app-view .back{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-muted);transition:color .2s}
#app-view .back:hover{color:var(--mint-soft)}
#app-view .back svg{width:16px;height:16px}
#app-view .sub-head{text-align:center;margin:10px 0 56px}
#app-view .chip-std{display:inline-flex;align-items:center;gap:10px;height:34px;padding:0 18px;border-radius:99px;border:1px solid rgba(101,246,193,.35);background:rgba(4,40,26,.6);color:var(--mint-soft);font:600 12.5px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em}
#app-view .chip-std i{width:6px;height:6px;border-radius:50%;background:var(--mint)}
#app-view .sub h1{margin:22px 0 12px}
#app-view .sub-lead{color:var(--ink-muted);font-size:17px}
#app-view .sub .mod{min-height:300px}
#app-view .body{position:relative;transform:translateZ(36px)}
#app-view .desc{margin-top:12px;color:#b6cbc0;font-size:15px;line-height:1.55;max-width:34em;text-wrap:pretty}
#app-view .live{display:inline-flex;margin-top:20px;font:600 11.5px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--mint);border:1px solid rgba(10,255,174,.45);background:rgba(10,255,174,.1);padding:4px 12px;border-radius:99px}
@media (max-width:900px){#app-view .sub .mod{grid-column:1/-1;min-height:240px}#app-view .chip-std{font-size:11px;letter-spacing:.08em;padding:0 14px}}

#app-view .chip-std{white-space:nowrap;flex:none}
#app-view .admin,#app-view .logo,#app-view .crumb b,#app-view .owner{white-space:nowrap;flex:none}
#app-view .crumb{min-width:0}
#app-view .crumb span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:1100px){#app-view .right .logo span{display:none}}

#app-view .eir{display:none}
body.is-eir #app-view #eir-view,body.is-fv #app-view #fv-view{display:block}
body.is-fv #app-view .dash-main{display:none}
body.is-eir #app-view .dash-main{display:none}
#app-view .eir-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px 48px;margin:22px 0 40px;flex-wrap:wrap}
#app-view .eir-head h1{margin:0}
#app-view .eir-head p{max-width:30em;color:var(--ink-muted);font-size:16px;text-wrap:pretty}
#app-view .eir-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:24px;align-items:start}
#app-view .pipe{position:relative;display:grid;gap:16px}
#app-view .pipe::before{content:"";position:absolute;left:47px;top:44px;bottom:60px;width:1px;background:linear-gradient(var(--mint),rgba(10,255,174,.12))}
#app-view .st{position:relative;border-radius:20px;border:1px solid var(--line);background:linear-gradient(160deg,rgba(24,66,50,.72),rgba(7,26,18,.92));padding:22px 24px 24px 82px;transition:border-color .25s,box-shadow .25s}
#app-view .st.active{border-color:rgba(10,255,174,.5);box-shadow:0 0 40px rgba(10,255,174,.08)}
#app-view .st .n{position:absolute;left:28px;top:22px;width:39px;height:39px;border-radius:50%;background:#000;border:1px solid var(--mint);color:var(--mint);display:grid;place-items:center;font-weight:600;font-size:14px;transition:background .25s,color .25s}
#app-view .st.done .n{background:var(--mint);color:#02150d}
#app-view .st header{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:39px}
#app-view .st h3{font-family:var(--display);font-weight:500;font-size:19px;letter-spacing:-.015em}
#app-view .stat-t{font:600 11px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap}
#app-view .st.done .stat-t{color:var(--mint)}
#app-view .drop{margin-top:16px;display:flex;align-items:center;gap:16px;padding:20px;border-radius:14px;border:1px dashed rgba(101,246,193,.4);background:rgba(0,0,0,.3);cursor:pointer;transition:border-color .2s,background .2s}
#app-view .drop:hover,#app-view .drop.over{border-color:var(--mint);background:rgba(10,255,174,.07)}
#app-view .st.done .drop{border-style:solid;border-color:rgba(10,255,174,.45)}
#app-view .drop input{display:none}
#app-view .di{flex:none;width:46px;height:46px;border-radius:12px;border:1px solid rgba(101,246,193,.38);background:rgba(4,40,26,.6);display:grid;place-items:center;color:var(--mint-soft)}
#app-view .di svg{width:22px;height:22px}
#app-view .drop b{display:block;font-weight:600;font-size:15px;overflow-wrap:anywhere}
#app-view .drop small{display:block;color:var(--ink-muted);font-size:13px}
#app-view .datef{margin-top:16px}
#app-view .datef input{height:46px;border-radius:10px;border:1px solid rgba(234,244,239,.2);background:rgba(0,0,0,.38);color:var(--ink);font:500 15px var(--sans);padding:0 14px;color-scheme:dark}
#app-view .datef input:focus{outline:none;border-color:var(--mint);box-shadow:0 0 0 4px rgba(10,255,174,.14)}
#app-view .note{margin-top:12px;color:var(--ink-muted);font-size:13.5px;line-height:1.55;text-wrap:pretty}
#app-view .run{margin-top:16px;display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 24px;border-radius:12px;border:0;background:var(--mint);color:#02150d;font:600 15px var(--sans);cursor:pointer;transition:box-shadow .2s,opacity .2s}
#app-view .run:hover{box-shadow:0 0 0 6px rgba(10,255,174,.16),0 8px 30px rgba(10,255,174,.28)}
#app-view .run:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}
#app-view .run svg{width:13px;height:13px}
#app-view .out{position:sticky;top:92px;border-radius:22px;border:1px solid rgba(234,244,239,.16);background:radial-gradient(500px 260px at 80% 110%,rgba(10,255,174,.16),transparent 70%),linear-gradient(165deg,rgba(24,66,50,.88),rgba(7,26,18,.96));padding:24px 26px 26px;box-shadow:0 40px 100px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.06);transition:border-color .3s}
#app-view .out.done{border-color:rgba(10,255,174,.5)}
#app-view .out-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
#app-view .out-top h3{font-family:var(--display);font-weight:500;font-size:19px}
#app-view .tagline{font:600 11px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);border:1px solid var(--line);padding:4px 10px;border-radius:99px;white-space:nowrap}
#app-view .out.done .tagline{color:var(--mint);border-color:rgba(10,255,174,.45);background:rgba(10,255,174,.1)}
#app-view .kpis{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
#app-view .kpi{border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.3);padding:14px 16px}
#app-view .kpi small{display:block;color:var(--ink-muted);font-size:12.5px}
#app-view .kpi b{display:block;margin-top:6px;font-family:var(--display);font-weight:500;font-size:30px;letter-spacing:-.025em;line-height:1.1}
#app-view .kpi.main b{color:var(--mint)}
#app-view .out .eir-val{transition:color .4s,background .4s;border-radius:4px}
#app-view .out:not(.done) .eir-val{color:transparent!important;background:rgba(234,244,239,.08)}
#app-view .prog{display:none;margin-top:16px}
#app-view .out.running .prog{display:block}
#app-view .prog .bar{height:6px;border-radius:6px;background:rgba(234,244,239,.12);overflow:hidden}
#app-view .prog .bar i{display:block;height:100%;width:0;background:var(--mint);border-radius:6px;box-shadow:0 0 12px rgba(10,255,174,.6)}
#app-view .prog .stage{display:flex;justify-content:space-between;margin-top:8px;font-size:12.5px;color:var(--ink-muted)}
#app-view .sched{margin-top:16px;border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.3);padding:4px 16px;font-size:13px;overflow:hidden}
#app-view .sched .r{display:grid;grid-template-columns:1.15fr 1fr .9fr .95fr 1fr;gap:10px;padding:10px 0;border-bottom:1px dashed rgba(234,244,239,.1);color:#cfe2d8;align-items:center}
#app-view .sched .r:last-child{border-bottom:0}
#app-view .sched .r span:not(:first-child){text-align:right}
#app-view .sched .r.h{color:var(--ink-muted);font-size:11.5px}
#app-view .sched .r.rep{margin:0 -16px;padding:10px 16px;background:rgba(10,255,174,.1);border-bottom:1px solid rgba(10,255,174,.3);border-top:1px solid rgba(10,255,174,.3);color:var(--ink)}
#app-view .sched .r.rep em{font-style:normal;font-weight:600}
#app-view .sched .r.rep small{display:block;font:600 10px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--mint)}
#app-view .aje{margin-top:14px;border-radius:14px;border:1px solid rgba(10,255,174,.3);background:rgba(10,255,174,.06);padding:12px 16px;font-size:13.5px}
#app-view .aje-h{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--ink-muted);font-size:12px;padding-bottom:8px;border-bottom:1px solid var(--line)}
#app-view .aje-r{display:flex;justify-content:space-between;gap:12px;padding:8px 0 0;color:var(--ink)}
#app-view .aje-r .eir-val{font-weight:600;color:var(--mint)}
#app-view .out-foot{margin-top:18px;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;font-size:13px;color:var(--ink-muted)}
#app-view .dl{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px;border-radius:10px;border:1px solid var(--mint-soft);background:transparent;color:var(--mint-soft);font:600 14px var(--sans);cursor:pointer;white-space:nowrap;transition:background .2s,color .2s,opacity .2s}
#app-view .dl:hover{background:var(--mint);border-color:var(--mint);color:#02150d}
#app-view .dl:disabled{opacity:.35;cursor:not-allowed;background:transparent;color:var(--mint-soft)}
#app-view .dl svg{width:15px;height:15px}
@media (max-width:980px){#app-view .eir-grid{grid-template-columns:1fr}#app-view .out{position:relative;top:0}}
@media (max-width:560px){#app-view .st{padding:20px 18px 20px 66px}#app-view .st .n{left:16px}#app-view .pipe::before{left:35px}#app-view .sched{font-size:11px;padding:4px 10px}#app-view .sched .r{gap:6px}#app-view .sched .r.rep{margin:0 -10px;padding:10px}#app-view .kpi b{font-size:24px}}

#app-view .datef{position:relative;display:inline-block}
#app-view .dpick{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 14px;border-radius:10px;border:1px solid rgba(234,244,239,.2);background:rgba(0,0,0,.38);color:var(--ink);font:500 15px var(--sans);cursor:pointer;transition:border-color .2s,box-shadow .2s}
#app-view .dpick:hover,#app-view .dpick[aria-expanded="true"]{border-color:var(--mint);box-shadow:0 0 0 4px rgba(10,255,174,.12)}
#app-view .dpick svg{width:17px;height:17px;color:var(--mint-soft)}
#app-view .dpick .chev{width:12px;height:12px;color:var(--ink-muted);transition:transform .2s}
#app-view .dpick[aria-expanded="true"] .chev{transform:rotate(180deg)}
#app-view .cal{position:absolute;left:0;top:calc(100% + 8px);z-index:30;width:316px;padding:14px;border-radius:16px;border:1px solid rgba(10,255,174,.35);background:linear-gradient(165deg,#163d2f,#081c14);box-shadow:0 30px 80px rgba(0,0,0,.65)}
#app-view .cal[hidden]{display:none}
#app-view .cal-q{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding-bottom:12px;border-bottom:1px solid var(--line)}
#app-view .cal-q button{height:46px;border-radius:9px;border:1px solid var(--line);background:rgba(0,0,0,.3);color:var(--ink);font:600 12.5px var(--sans);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;transition:border-color .2s,background .2s}
#app-view .cal-q button small{font:600 9.5px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;color:var(--ink-muted)}
#app-view .cal-q button:hover{border-color:rgba(10,255,174,.5)}
#app-view .cal-q button.on{border-color:var(--mint);background:rgba(10,255,174,.14);color:var(--mint)}
#app-view .cal-h{display:flex;justify-content:space-between;align-items:center;margin:12px 0 6px}
#app-view .cal-h b{font-weight:600;font-size:14.5px}
#app-view .cal-h button{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink);display:grid;place-items:center;cursor:pointer}
#app-view .cal-h button:hover{border-color:var(--mint);color:var(--mint)}
#app-view .cal-h svg{width:12px;height:12px}
#app-view .cal-w,#app-view .cal-g{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}
#app-view .cal-w span{font-size:11px;color:var(--ink-muted);padding:4px 0}
#app-view .cal-g button{position:relative;height:36px;border-radius:8px;border:0;background:transparent;color:#cfe2d8;font:500 13px var(--sans);cursor:pointer}
#app-view .cal-g button:hover{background:rgba(10,255,174,.1);color:var(--ink)}
#app-view .cal-g button.me::after{content:"";position:absolute;left:50%;bottom:4px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--mint)}
#app-view .cal-g button.sel{background:var(--mint);color:#02150d;font-weight:700}
#app-view .cal-g button.sel::after{background:#02150d}
#app-view .cal-f{display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-muted)}
#app-view .cal-f i{width:4px;height:4px;border-radius:50%;background:var(--mint)}
#app-view .dpick,#app-view .cal-q button{white-space:nowrap}

body.is-loans #app-view #loans-view,body.is-of #app-view #of-view,body.is-swap #app-view #swap-view{display:block}
body.is-loans #app-view .dash-main,body.is-of #app-view .dash-main,body.is-swap #app-view .dash-main{display:none}
#app-view .sw-track{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 24px;position:relative}
#app-view .sw-track::before{content:"";position:absolute;left:20px;right:20px;top:19px;height:1px;background:linear-gradient(90deg,var(--mint),rgba(10,255,174,.12))}
#app-view .sw-track li{position:relative;display:flex;align-items:flex-start;gap:14px;padding-right:20px}
#app-view .sw-track .n{flex:none;width:39px;height:39px;border-radius:50%;background:#000;border:1px solid rgba(234,244,239,.25);color:var(--ink-muted);display:grid;place-items:center;font-weight:600;font-size:14px;transition:all .25s}
#app-view .sw-track li.on .n{border-color:var(--mint);color:var(--mint);box-shadow:0 0 0 6px rgba(10,255,174,.12)}
#app-view .sw-track li.done .n{background:var(--mint);border-color:var(--mint);color:#02150d}
#app-view .sw-track b{display:block;font-family:var(--display);font-weight:500;font-size:17px;padding-top:7px}
#app-view .sw-track small{display:block;font:600 11px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);margin-top:2px}
#app-view .sw-track li.on small,#app-view .sw-track li.done small{color:var(--mint)}
#app-view .sw-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px;align-items:stretch}
#app-view .sw-card,#app-view .sw-res{border-radius:20px;border:1px solid var(--line);background:linear-gradient(160deg,rgba(24,66,50,.72),rgba(7,26,18,.92));padding:22px 24px 24px}
#app-view .sw-card header,#app-view .sw-res-h{display:flex;justify-content:space-between;align-items:center;gap:12px}
#app-view .sw-card h3,#app-view .sw-res-h h3{font-family:var(--display);font-weight:500;font-size:19px}
#app-view .drop.ok{border-style:solid;border-color:rgba(10,255,174,.45)}
#app-view .sw-last{margin-top:12px;display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:rgba(0,0,0,.25)}
#app-view .sw-last .xl{flex:none;width:36px;height:36px;border-radius:9px;display:grid;place-items:center;background:rgba(10,255,174,.12);border:1px solid rgba(10,255,174,.35);color:var(--mint);font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em}
#app-view .sw-last .t{flex:1;min-width:0}
#app-view .sw-last b{display:block;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#app-view .sw-last small{display:block;font-size:12.5px;color:var(--ink-muted)}
#app-view .sw-mini{flex:none;height:34px;padding:0 14px;border-radius:9px;border:1px solid var(--mint-soft);background:transparent;color:var(--mint-soft);font:600 13px var(--sans);cursor:pointer;white-space:nowrap}
#app-view .sw-mini:hover{background:var(--mint);border-color:var(--mint);color:#02150d}
#app-view .sw-card .prog{display:none}
#app-view .sw-card .prog.show{display:block}
#app-view .sw-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:4px}
#app-view .sw-ghost{height:48px;margin-top:16px;padding:0 20px;border-radius:12px;border:1px solid rgba(234,244,239,.28);background:transparent;color:var(--ink);font:600 15px var(--sans);cursor:pointer}
#app-view .sw-ghost:hover{border-color:var(--mint-soft);color:var(--mint-soft)}
#app-view .sw-res{margin-top:20px;transition:border-color .3s}
#app-view .sw-res.done{border-color:rgba(10,255,174,.5)}
#app-view .sw-res.done .tagline{color:var(--mint);border-color:rgba(10,255,174,.45);background:rgba(10,255,174,.1)}
#app-view .sw-res .eir-val{transition:color .4s,background .4s;border-radius:4px}
#app-view .sw-res:not(.done) .eir-val{color:transparent!important;background:rgba(234,244,239,.08)}
#app-view .sw-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}
#app-view .sw-kpis .kpi b{font-size:26px}
#app-view .sw-table{margin-top:16px;border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.3);overflow-x:auto}
#app-view .sw-in{min-width:760px;padding:4px 18px}
#app-view .sw-r{display:grid;grid-template-columns:.8fr 1.4fr 1.4fr 1.1fr 1fr 1fr;gap:12px;padding:12px 0;border-bottom:1px dashed rgba(234,244,239,.1);font-size:13.5px;color:#cfe2d8;align-items:center}
#app-view .sw-r:last-child{border-bottom:0}
#app-view .sw-r.h{color:var(--ink-muted);font-size:11.5px}
#app-view .sw-r>span:nth-child(n+4){text-align:right}
#app-view .sw-r b{font-weight:600;color:var(--ink)}
#app-view .leg{display:inline-block;margin-right:8px;font:600 9.5px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase;padding:2px 7px;border-radius:99px;font-style:normal;vertical-align:1px}
#app-view .leg.pay{color:#ffb4a6;border:1px solid rgba(255,155,138,.4)}
#app-view .leg.rec{color:var(--mint);border:1px solid rgba(10,255,174,.4)}
#app-view .fv{font-weight:600}
#app-view .sw-res.done .fv.pos .eir-val{color:var(--mint)}
#app-view .sw-res.done .fv.neg .eir-val{color:#ff9b8a}
@media (max-width:980px){#app-view .sw-grid{grid-template-columns:1fr}#app-view .sw-kpis{grid-template-columns:1fr 1fr}}
@media (max-width:640px){#app-view .sw-track{grid-template-columns:1fr;gap:14px}#app-view .sw-track::before{left:19px;right:auto;top:20px;bottom:20px;width:1px;height:auto;background:linear-gradient(var(--mint),rgba(10,255,174,.12))}#app-view .sw-track b{padding-top:0}}

#app-view .prog .stage{height:auto;perspective:none;display:flex;place-items:normal;touch-action:auto}
#app-view .prog .bar{position:static;z-index:auto;backdrop-filter:none;-webkit-backdrop-filter:none;border:0}
#app-view .sw-ghost{white-space:nowrap}
#app-view .sw-track::before{left:20px;right:calc(33.333% - 20px)}
#app-view .sw-track li{flex-direction:column;gap:10px}
#app-view .sw-track b{padding-top:0}
@media (max-width:640px){#app-view .sw-track li{flex-direction:row;gap:14px}#app-view .sw-track::before{right:auto}#app-view .sw-track b{padding-top:7px}}

#app-view .of-sum{margin-top:16px;border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.3);padding:4px 18px}
#app-view .of-r{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-bottom:1px dashed rgba(234,244,239,.1);font-size:14.5px;color:#cfe2d8}
#app-view .of-r:last-child{border-bottom:0}
#app-view .of-r .eir-val{font-weight:600;color:var(--ink);white-space:nowrap}
#app-view .of-r.tot{margin:0 -18px;padding:16px 18px;background:rgba(10,255,174,.1);border-top:1px solid rgba(10,255,174,.3);border-radius:0 0 13px 13px;color:var(--ink)}
#app-view .of-r.tot em{font-style:normal;font-weight:600}
#app-view .of-r.tot .eir-val{color:var(--mint);font-family:var(--display);font-size:20px;font-weight:500}
#app-view .of-r>span:first-child{flex:1;min-width:0;display:inline}
#app-view .of-r .eir-val{flex:none}

#app-view .navwrap{position:relative}
#app-view .navmenu{position:absolute;left:0;top:calc(100% + 10px);z-index:40;width:320px;padding:8px;border-radius:16px;border:1px solid rgba(10,255,174,.35);background:linear-gradient(165deg,#163d2f,#081c14);box-shadow:0 30px 80px rgba(0,0,0,.65);display:grid;gap:2px}
#app-view .navmenu[hidden]{display:none}
#app-view .navmenu a{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 12px;border-radius:10px;font-size:14.5px;font-weight:500;color:var(--ink);transition:background .2s,color .2s}
#app-view .navmenu a:hover{background:rgba(10,255,174,.1)}
#app-view .navmenu a.cur{background:rgba(10,255,174,.14);color:var(--mint)}
#app-view .navmenu .ni{flex:none;width:32px;height:32px;border-radius:9px;border:1px solid rgba(101,246,193,.35);background:rgba(4,40,26,.6);display:grid;place-items:center;color:var(--mint-soft)}
#app-view .navmenu .ni svg{width:16px;height:16px}
#app-view .navmenu .nt{flex:1;min-width:0}
#app-view .navmenu .nn{font:600 10.5px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;color:var(--ink-muted)}
#app-view #navBtn[aria-expanded="true"]{border-color:var(--mint);box-shadow:0 0 0 5px rgba(10,255,174,.12)}
.founder-sec{background:var(--black);padding:0 0 56px}
.founder-sec .founder{margin-top:0}

/* ===================== ADDITIONS FOR THE REAL ENGINE (design tokens reused) ===================== */
.demo-banner{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);z-index:200;max-width:92vw;padding:7px 14px;border-radius:99px;border:1px solid rgba(10,255,174,.35);background:rgba(4,40,26,.92);color:var(--mint-soft);font:600 11px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-align:center;backdrop-filter:blur(8px);pointer-events:none}
.demo-banner[hidden]{display:none}
#login-view .lerr{margin-top:14px;color:#FF9B8A;font-size:13.5px;line-height:1.45}
#login-view .lerr[hidden]{display:none}
#app-view .notice{margin-top:14px;border-radius:12px;border:1px solid rgba(255,155,138,.4);background:rgba(255,155,138,.07);padding:12px 16px;font-size:13px;color:var(--ink)}
#app-view .notice[hidden]{display:none}
#app-view .notice ul{margin:8px 0 0 18px;display:grid;gap:3px}
#app-view .notice li.nwarn{color:#E8C98A}
#app-view .notice li.nerr{color:#FF9B8A}
#app-view .notice .more{margin-top:6px;color:var(--ink-muted)}
#app-view .secpick{margin-top:16px;display:flex;align-items:center;gap:10px;position:relative;z-index:5}
#app-view .secpick[hidden]{display:none}
#app-view .secpick .lbl{color:var(--ink-muted);font-size:12.5px;white-space:nowrap}
#app-view .pk{display:flex;align-items:center;gap:8px;flex:1;min-width:0}
#app-view .pk-box{position:relative;flex:1;min-width:0}
#app-view .pk-btn{width:100%;height:44px;display:flex;align-items:center;gap:10px;padding:0 14px;border-radius:12px;border:1px solid rgba(101,246,193,.35);background:rgba(0,0,0,.35);color:var(--ink);font:500 15px var(--sans);cursor:pointer;text-align:left;transition:border-color .2s,box-shadow .2s}
#app-view .pk-btn:hover,#app-view .pk-btn[aria-expanded=true]{border-color:var(--mint);box-shadow:0 0 0 4px rgba(10,255,174,.12)}
#app-view .pk-btn b{font-weight:600}
#app-view .pk-btn i,#app-view .pk-list i{font-style:normal;color:var(--ink-muted);font-size:13px;margin-left:8px}
#app-view .pk-cur{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#app-view .pk-pos{font:600 11px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em;color:var(--ink-muted)}
#app-view .pk-btn>svg{width:14px;height:14px;flex:none;color:var(--mint-soft);transition:transform .2s}
#app-view .pk-btn[aria-expanded=true]>svg{transform:rotate(180deg)}
#app-view .pk-arrow{flex:none;width:44px;height:44px;border-radius:12px;border:1px solid rgba(101,246,193,.3);background:rgba(19,51,40,.5);color:var(--mint-soft);display:grid;place-items:center;cursor:pointer;transition:border-color .2s,background .2s}
#app-view .pk-arrow svg{width:15px;height:15px}
#app-view .pk-arrow:hover:not(:disabled){border-color:var(--mint);background:rgba(10,255,174,.14)}
#app-view .pk-arrow:disabled{opacity:.3;cursor:not-allowed}
#app-view .pk-pop{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:40;border-radius:14px;border:1px solid rgba(10,255,174,.45);background:#0a1c14;box-shadow:0 24px 60px rgba(0,0,0,.65);padding:10px}
#app-view .pk-pop[hidden]{display:none}
#app-view .pk-s{width:100%;height:40px;border-radius:10px;border:1px solid var(--line);background:rgba(0,0,0,.4);color:var(--ink);padding:0 12px;font:500 14px var(--sans);outline:none}
#app-view .pk-s:focus{border-color:var(--mint)}
#app-view .pk-list{list-style:none;margin:8px 0 0;padding:0;max-height:260px;overflow-y:auto;display:grid;gap:2px}
#app-view .pk-list li{display:flex;align-items:baseline;padding:10px 12px;border-radius:9px;cursor:pointer;font-size:15px;color:#cfe2d8}
#app-view .pk-list li b{font-weight:600;color:var(--ink)}
#app-view .pk-list li.hi{background:rgba(10,255,174,.1)}
#app-view .pk-list li.sel{background:rgba(10,255,174,.18);color:var(--mint)}
#app-view .pk-list li.sel b{color:var(--mint)}
#app-view .pk-list li.sel::after{content:"✓";margin-left:auto;color:var(--mint);font-weight:700}
#app-view .pk-none{padding:14px 8px;color:var(--ink-muted);font-size:14px;text-align:center}
#app-view .pk-none[hidden]{display:none}
#app-view .sched.scroll{max-height:360px;overflow:auto}
#app-view .sched.scroll .r.h{position:sticky;top:0;background:#0b1f17;z-index:1}
#app-view .aje[hidden]{display:none}
#app-view .dl[hidden]{display:none}
#app-view .sw-last[hidden]{display:none}
#app-view .sw-actions .dl{margin-top:16px}
#app-view #noModules{margin-top:18px;font-size:15px}
#app-view #noModules[hidden]{display:none}
#app-view .of-years .r{grid-template-columns:1.2fr .8fr 1.3fr}
#app-view .of-years .r.rep small{white-space:nowrap}

/* ===================== ADMIN PANEL (same design system) ===================== */
body.is-admin #app-view #admin-view{display:block}
body.is-admin #app-view .dash-main{display:none}
#app-view .ad-grid{display:grid;gap:20px}
#app-view .ad-card{border-radius:20px;border:1px solid var(--line);background:linear-gradient(160deg,rgba(24,66,50,.72),rgba(7,26,18,.92));padding:22px 24px 24px}
#app-view .ad-h{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
#app-view .ad-h h3{font-family:var(--display);font-weight:500;font-size:19px;letter-spacing:-.015em}
#app-view .ad-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0 14px;font-size:12.5px;color:var(--ink-muted)}
#app-view .ad-btn{height:34px;padding:0 14px;border-radius:9px;border:1px solid var(--mint-soft);background:transparent;color:var(--mint-soft);font:600 13px var(--sans);cursor:pointer;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
#app-view .ad-btn:hover:not(:disabled){background:var(--mint);border-color:var(--mint);color:#02150d}
#app-view .ad-btn.danger{border-color:rgba(255,155,138,.5);color:#FF9B8A}
#app-view .ad-btn.danger:hover:not(:disabled){background:#FF9B8A;border-color:#FF9B8A;color:#1a0a07}
#app-view .ad-btn.solid{background:var(--mint);border-color:var(--mint);color:#02150d}
#app-view .ad-btn:disabled{opacity:.35;cursor:not-allowed}
#app-view .ad-tw{border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.3);overflow-x:auto}
#app-view .ad-t{width:100%;border-collapse:collapse;font-size:13.5px;min-width:760px}
#app-view .ad-t th{text-align:left;font:600 11px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);padding:12px 16px;border-bottom:1px solid var(--line);white-space:nowrap}
#app-view .ad-t td{padding:11px 16px;border-bottom:1px dashed rgba(234,244,239,.1);color:#cfe2d8;vertical-align:middle}
#app-view .ad-t tr:last-child td{border-bottom:0}
#app-view .ad-t td b{color:var(--ink);font-weight:600}
#app-view .ad-t td.mu{color:var(--ink-muted)}
#app-view .ad-t td.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}
#app-view .ad-t td.act{text-align:right;white-space:nowrap}
#app-view .ad-t td.bad{color:#FF9B8A}
#app-view .ad-t td.warnc{color:#E8C98A}
#app-view .ad-t td.idle.ok{color:var(--mint)}
#app-view .ad-t td.idle.warn{color:#E8C98A}
#app-view .ad-t td.idle.long{color:#FF9B8A}
#app-view .ad-t td.lg{font-weight:600;white-space:nowrap}
#app-view .ad-t td.lg.lgin{color:var(--mint)}
#app-view .ad-t td.lg.lgout{color:var(--ink-muted)}
#app-view .ad-t td.lg.lgbad{color:#FF9B8A}
#app-view .ad-role{font:700 10.5px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;padding:3px 9px;border-radius:99px;border:1px solid var(--line)}
#app-view .ad-role.own{color:#02150d;background:var(--mint);border-color:var(--mint)}
#app-view .ad-role.gst{color:var(--mint-soft);border-color:rgba(101,246,193,.4)}
#app-view .ad-st{font:700 10.5px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase;padding:3px 9px;border-radius:99px;border:1px solid}
#app-view .ad-st.ok{color:var(--mint);border-color:rgba(10,255,174,.45);background:rgba(10,255,174,.08)}
#app-view .ad-st.warn{color:#E8C98A;border-color:rgba(232,201,138,.5)}
#app-view .ad-st.bad{color:#FF9B8A;border-color:rgba(255,155,138,.5)}
#app-view .ad-st.off{color:var(--ink-muted);border-color:var(--line)}
#app-view .ad-mod{display:inline-block;font-size:11.5px;color:var(--mint-soft);background:rgba(10,255,174,.1);border-radius:6px;padding:2px 8px;margin:0 4px 2px 0}
#app-view .ad-empty{padding:26px;text-align:center;color:var(--ink-muted);font-size:14px}
#app-view .ad-form{margin-bottom:16px;border-radius:14px;border:1px solid rgba(10,255,174,.3);background:rgba(10,255,174,.05);padding:18px 20px}
#app-view .ad-form[hidden]{display:none}
#app-view .ad-form h4{font-family:var(--display);font-weight:500;font-size:16px;margin-bottom:14px}
#app-view .ad-fg{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
#app-view .ad-fg label.l{display:block;margin-bottom:6px;font:600 11px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}
#app-view .ad-fg input[type=text],#app-view .ad-fg input[type=date]{width:100%;height:42px;border-radius:10px;border:1px solid var(--line);background:rgba(0,0,0,.35);color:var(--ink);padding:0 12px;font:500 14px var(--sans);color-scheme:dark;outline:none}
#app-view .ad-fg input:focus{border-color:var(--mint)}
#app-view .ad-chk{display:flex;flex-wrap:wrap;gap:8px 18px}
#app-view .ad-chk label{display:flex;align-items:center;gap:8px;font-size:13.5px;cursor:pointer;color:var(--ink)}
#app-view .ad-chk input{accent-color:var(--mint);width:16px;height:16px}
#app-view .ad-fa{display:flex;gap:10px;margin-top:16px}
#app-view .ad-msg{margin-top:10px;font-size:13px;min-height:1em}
#app-view .ad-msg.ok{color:var(--mint)}
#app-view .ad-msg.bad{color:#FF9B8A}
.ad-toast{position:fixed;right:20px;bottom:56px;z-index:300;padding:12px 18px;border-radius:12px;border:1px solid rgba(10,255,174,.5);background:#0b2a1e;color:var(--ink);font:500 14px var(--sans);box-shadow:0 10px 30px rgba(0,0,0,.5)}
.ad-toast.bad{border-color:rgba(255,155,138,.6)}
@media (max-width:700px){#app-view .ad-fg{grid-template-columns:1fr}}

#app-view .ad-rs{display:inline-flex;gap:8px;align-items:center}
#app-view .ad-rs input{height:34px;width:170px;border-radius:9px;border:1px solid var(--mint-soft);background:rgba(0,0,0,.4);color:var(--ink);padding:0 10px;font:500 13px var(--sans);outline:none;color-scheme:dark}
