:root { --dnavy:#0b0f2c; --dgold:#E2C68D; --dgoldd:#C9A24A; --divory:#F4EFE7; --dfaint:rgba(244,239,231,.5); --dline:rgba(226,198,141,.18); --dgreen:#45F0A3; }
/* entry gate */
.demo-gate{position:fixed;inset:0;z-index:9000;background:radial-gradient(circle at 50% 40%,#12173a,#070a1f);display:flex;align-items:center;justify-content:center;}
.demo-gate-card{text-align:center;max-width:440px;padding:40px;}
.demo-gate-logo{width:280px;max-width:70vw;height:auto;margin-bottom:18px;}
.demo-gate-sub{font-family:'Poppins',sans-serif;color:var(--divory);opacity:.85;font-size:15px;margin-bottom:26px;}
#demo-turnstile{display:flex;justify-content:center;margin-bottom:18px;}
.demo-enter{font-family:'Poppins',sans-serif;font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:12px;color:var(--dnavy);background:var(--dgold);border:0;border-radius:999px;padding:14px 34px;cursor:pointer;}
.demo-enter:hover{background:var(--divory);}
.demo-enter:disabled{opacity:.6;cursor:default;}
.demo-gate-fine{margin-top:20px;color:var(--dfaint);font-family:'Poppins',sans-serif;font-size:11px;letter-spacing:.04em;}
/* canned chat */
.demo-chat{display:flex;flex-direction:column;height:100%;}
.dchat-head{margin-bottom:14px;}
.dchat-eyebrow{font-family:'Poppins',sans-serif;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--dgoldd);font-size:11px;}
.dchat-log{flex:1;overflow-y:auto;padding:8px 2px;display:flex;flex-direction:column;gap:14px;min-height:200px;}
.dchat-msg{max-width:78%;font-family:'Poppins',sans-serif;}
.dchat-you{align-self:flex-end;text-align:right;}
.dchat-boris{align-self:flex-start;}
.dchat-who{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--dfaint);margin-bottom:4px;}
.dchat-text{display:inline-block;padding:12px 16px;border-radius:14px;font-size:15px;line-height:1.5;color:var(--divory);background:rgba(255,255,255,.04);border:1px solid var(--dline);}
.dchat-you .dchat-text{background:rgba(226,198,141,.12);}
.dchat-thinking .dchat-text{opacity:.5;}
.dchat-starters{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0;}
.dchat-starter{font-family:'Poppins',sans-serif;font-size:12px;color:var(--dgold);background:transparent;border:1px solid var(--dline);border-radius:999px;padding:8px 14px;cursor:pointer;}
.dchat-starter:hover{background:rgba(226,198,141,.08);}
.dchat-inputbar{display:flex;gap:10px;align-items:center;padding-top:12px;border-top:1px solid var(--dline);}
.dchat-input{flex:1;background:transparent;border:1px solid var(--dline);border-radius:999px;padding:12px 18px;color:var(--divory);font-family:'Poppins',sans-serif;font-size:15px;outline:none;}
.dchat-send{background:var(--dgold);color:var(--dnavy);border:0;border-radius:999px;padding:12px 24px;font-family:'Poppins',sans-serif;font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:11px;cursor:pointer;}
/* tour */
.tour-ov{position:fixed;inset:0;z-index:9500;pointer-events:none;box-shadow:none;}
.tour-spot{position:absolute;border-radius:14px;box-shadow:0 0 0 4000px rgba(7,10,31,.72),0 0 0 2px var(--dgreen);transition:all .35s cubic-bezier(.4,0,.2,1);pointer-events:none;}
.tour-tip{position:fixed;z-index:9600;width:320px;background:#12173a;border:1px solid var(--dgreen);border-radius:16px;padding:20px;font-family:'Poppins',sans-serif;box-shadow:0 20px 60px rgba(0,0,0,.5);}
.tour-step{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--dgreen);margin-bottom:8px;}
.tour-title{font-size:18px;color:var(--divory);margin-bottom:8px;font-weight:600;}
.tour-body{font-size:14px;line-height:1.55;color:var(--dfaint);margin-bottom:16px;}
.tour-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.tour-skip{background:transparent;border:0;color:var(--dfaint);font-size:12px;cursor:pointer;font-family:inherit;}
.tour-next{background:var(--dgreen);color:var(--dnavy);border:0;border-radius:999px;padding:9px 20px;font-weight:600;font-size:11px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;font-family:inherit;}
.tour-hint{font-size:11px;color:var(--dgreen);letter-spacing:.04em;}
/* capture */
.demo-cap-ov{position:fixed;inset:0;z-index:9700;background:rgba(7,10,31,.86);display:flex;align-items:center;justify-content:center;}
.demo-cap-card{width:420px;max-width:90vw;background:#12173a;border:1px solid var(--dline);border-radius:18px;padding:34px;text-align:center;font-family:'Poppins',sans-serif;}
.demo-cap-eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--dgoldd);margin-bottom:10px;}
.demo-cap-title{font-size:22px;color:var(--divory);margin:0 0 20px;font-weight:600;line-height:1.25;}
.demo-cap-input{display:block;width:100%;box-sizing:border-box;background:transparent;border:1px solid var(--dline);border-radius:10px;padding:12px 14px;color:var(--divory);font-size:14px;margin-bottom:10px;outline:none;font-family:inherit;}
.demo-cap-send{width:100%;background:var(--dgold);color:var(--dnavy);border:0;border-radius:999px;padding:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:11px;cursor:pointer;margin-top:6px;font-family:inherit;}
.demo-cap-skip{background:transparent;border:0;color:var(--dfaint);font-size:12px;cursor:pointer;margin-top:14px;font-family:inherit;}
.demo-cap-msg{color:#ff9a8a;font-size:12px;margin-top:10px;min-height:16px;}

/* demo: the password page never shows — entry is automatic */
.login-gate { display:none !important; }
.demo-gate-loading{opacity:.85;}
.demo-dots i{animation:demodot 1.2s infinite;opacity:.3;}
.demo-dots i:nth-child(2){animation-delay:.2s;} .demo-dots i:nth-child(3){animation-delay:.4s;}
@keyframes demodot{0%,60%{opacity:.3;}30%{opacity:1;}}
