body.v100-lock{overflow:hidden}

.v100-shell,.v100-shell *{box-sizing:border-box}
.v100-shell{
  --v100-bg:#07111c;
  --v100-bg-deep:#040a11;
  --v100-surface:#101b28;
  --v100-raised:#162433;
  --v100-text:#f7f5ef;
  --v100-muted:#98a4b0;
  --v100-gold:#d6bd87;
  --v100-gold-strong:#ead8ae;
  --v100-line:rgba(214,189,135,.2);
  position:fixed;
  z-index:45;
  left:max(24px,env(safe-area-inset-left));
  right:auto;
  bottom:max(22px,env(safe-area-inset-bottom));
  color:var(--v100-text);
  font:14px/1.5 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:-.01em;
}
.v100-shell button,.v100-shell textarea{font:inherit}
.v100-shell button:focus-visible,.v100-shell textarea:focus-visible{outline:2px solid var(--v100-gold-strong);outline-offset:4px}
.v100-shell.is-closed{width:340px}
.v100-shell.is-closed:has(.is-dragging){will-change:transform}
.v100-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* The robot introduces the AI once, then resolves into a quiet premium entry bar. */
.v100-launcher-wrap{position:relative;width:340px;height:122px;filter:drop-shadow(0 22px 34px rgba(2,8,16,.2))}
.v100-launcher-wrap.is-robot{filter:none}
.v100-launcher-wrap.is-boot{visibility:hidden;pointer-events:none}
.v100-launcher-wrap.is-bar{height:64px}
.v100-launcher{
  position:absolute;
  left:0;
  right:auto;
  bottom:0;
  width:340px;
  height:64px;
  overflow:hidden;
  padding:0;
  border:1px solid rgba(214,189,135,.26);
  border-radius:22px;
  background:
    radial-gradient(circle at 8% 50%,rgba(214,189,135,.14),transparent 31%),
    linear-gradient(145deg,rgba(18,30,44,.98),rgba(5,12,20,.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 54px rgba(2,8,16,.3);
  color:var(--v100-text);
  backdrop-filter:blur(22px) saturate(120%);
  transition:width .9s cubic-bezier(.2,.82,.2,1),height .9s cubic-bezier(.2,.82,.2,1),border-radius .9s cubic-bezier(.2,.82,.2,1),border-color .45s ease,background .45s ease,box-shadow .45s ease,transform .25s ease,filter .25s ease;
}
.v100-launcher:hover{filter:brightness(1.08);transform:translateY(-2px)}
.v100-launcher-wrap.is-bar .v100-launcher,.v100-launcher-wrap.is-robot .v100-launcher{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}
.v100-launcher-wrap.is-bar .v100-launcher:before{content:"";position:absolute;z-index:5;top:4px;left:50%;width:27px;height:3px;border-radius:3px;background:rgba(234,216,174,.32);transform:translateX(-50%);pointer-events:none}
.v100-launcher-wrap.is-dragging .v100-launcher{cursor:grabbing;filter:brightness(1.08);transform:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 23px 62px rgba(2,8,16,.38)}
.v100-launcher-wrap.is-morphing .v100-launcher{pointer-events:none}
.v100-launcher-wrap.is-robot .v100-launcher{
  width:104px;
  height:122px;
  overflow:visible;
  border-color:transparent;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  filter:none;
  transition-property:width,height,border-radius,transform,filter;
}
.v100-entry-robot{position:absolute;z-index:3;left:0;right:auto;bottom:0;width:104px;height:122px;padding:0;border:0;background:transparent;opacity:0;transform:translateX(-16px) translateY(22px) scale(.38);transform-origin:50% 62%;cursor:pointer;transition:opacity .38s ease,transform .88s cubic-bezier(.2,.82,.2,1),filter .6s ease}
.v100-launcher-wrap.is-robot .v100-entry-robot{opacity:1;transform:none;filter:none}
.v100-launcher-wrap.is-morphing .v100-entry-robot{opacity:0;filter:blur(3px);transform:translateX(-16px) translateY(22px) scale(.34)}
.v100-launcher-wrap.is-bar .v100-entry-robot{visibility:hidden;pointer-events:none}
.v100-entry-bar{position:absolute;z-index:2;inset:0;display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:11px;padding:7px 9px 7px 10px;opacity:1;transform:none;transition:opacity .5s ease .22s,transform .72s cubic-bezier(.2,.82,.2,1)}
.v100-launcher-wrap.is-robot .v100-entry-bar{opacity:0;transform:translateX(-22px) scale(.9);transition-delay:0s;pointer-events:none}
.v100-launcher-wrap.is-morphing .v100-entry-bar{animation:v100-bar-reveal .78s .12s both}
.v100-entry-bar:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 18%,rgba(255,255,255,.08) 45%,transparent 68%);transform:translateX(-115%);pointer-events:none}
.v100-launcher-wrap.is-morphing .v100-entry-bar:after{animation:v100-bar-light 1s .2s ease-out both}
.v100-bar-mark{display:grid;place-items:center;width:44px;height:44px;padding:0;overflow:hidden;border:1px solid rgba(214,189,135,.18);border-radius:15px;background:rgba(255,255,255,.045);cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}
.v100-bar-mark:hover{border-color:rgba(214,189,135,.48);background:rgba(214,189,135,.1);transform:translateY(-1px)}
.v100-bar-mark .v100-robot{transform:scale(.78);transform-origin:center}
.v100-bar-action{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:11px;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
.v100-bar-copy{display:block;min-width:0}
.v100-bar-copy small,.v100-bar-copy strong{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.v100-bar-copy small{margin-bottom:1px;color:var(--v100-gold);font-size:8px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.v100-bar-copy strong{color:#f7f5ef;font-size:13px;font-weight:640;letter-spacing:-.015em}
.v100-launcher-wrap.is-morphing .v100-bar-copy{animation:v100-copy-reveal .56s .37s both}
.v100-bar-arrow{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.28);border-radius:14px;background:linear-gradient(145deg,var(--v100-gold-strong),#b59659);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 8px 20px rgba(122,91,39,.24);color:#07111c;font-size:18px;font-weight:700;transition:transform .22s ease,filter .22s ease}
.v100-bar-action:hover .v100-bar-arrow{filter:brightness(1.08);transform:translateY(-1px)}

/* Architectural 2.5D concierge: V2 navy, satin graphite and champagne gold */
.v100-robot{position:relative;display:block;width:96px;height:116px;transform-origin:50% 70%}
.v100-aura{position:absolute;z-index:0;left:7px;top:5px;width:84px;height:88px;border-radius:46% 54% 52% 48%;background:radial-gradient(circle,rgba(221,193,139,.09),rgba(221,193,139,.018) 52%,transparent 73%);filter:blur(7px);opacity:.42}
.v100-orbit{position:absolute;z-index:1;left:7px;top:14px;width:83px;height:66px;border:1px solid rgba(221,193,139,.16);border-right-color:transparent;border-bottom-color:rgba(221,193,139,.035);border-radius:50%;transform:rotate(-9deg);box-shadow:inset 8px 0 18px rgba(221,193,139,.02)}
.v100-antenna{display:none}
.v100-head{position:absolute;z-index:5;left:6px;top:15px;width:84px;height:66px;border:1px solid rgba(255,255,255,.36);border-radius:32px 32px 24px 24px;background:linear-gradient(116deg,rgba(255,255,255,.32) 0%,rgba(255,255,255,.075) 15%,transparent 31%),linear-gradient(142deg,#9aa3aa 0%,#5c6670 14%,#28333d 38%,#101820 61%,#05090e 82%,#26313a 100%);box-shadow:inset 1px 1px 0 rgba(255,255,255,.58),inset -5px -6px 15px rgba(0,0,0,.7),inset 0 -1px 0 rgba(214,189,135,.15),0 20px 40px rgba(1,7,13,.42),0 0 0 1px rgba(198,170,114,.2);transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.v100-head:before,.v100-head:after{content:"";position:absolute;top:25px;width:5px;height:18px;border:1px solid rgba(255,255,255,.11);background:linear-gradient(#4c5660,#101820)}
.v100-head:before{left:-4px;border-radius:5px 1px 1px 5px}.v100-head:after{right:-4px;border-radius:1px 5px 5px 1px}
.v100-shell-shine{position:absolute;left:10px;right:10px;top:3px;height:14px;overflow:hidden;border-radius:50%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.42) 34%,rgba(255,249,230,.78) 51%,rgba(255,255,255,.18) 72%,transparent);filter:blur(.8px);opacity:.86}
.v100-shell-shine:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 18%,rgba(255,255,255,.7) 47%,rgba(255,238,197,.5) 54%,transparent 78%);opacity:.18;animation:v100-metal-breathe 4.8s ease-in-out infinite}
.v100-shell-shine:after{content:"";position:absolute;top:-4px;bottom:-4px;width:18px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);filter:blur(2px);opacity:0;transform:translateX(-28px) skewX(-20deg)}
.v100-face{position:absolute;inset:10px 8px 9px;overflow:hidden;border:1px solid rgba(221,193,139,.17);border-radius:23px 23px 18px 18px;background:radial-gradient(circle at 50% 120%,rgba(198,170,114,.12),transparent 48%),linear-gradient(150deg,#0b1420,#010407 76%);box-shadow:inset 0 3px 15px rgba(0,0,0,.94),0 1px 0 rgba(255,255,255,.07)}
.v100-face:before{content:"";position:absolute;left:8px;right:8px;top:7px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent)}
.v100-scan{position:absolute;left:8px;right:8px;top:8px;height:12px;background:linear-gradient(to bottom,transparent,rgba(221,193,139,.07),transparent);opacity:0;transform:translateY(-10px)}
.v100-eye{position:absolute;top:18px;width:11px;height:4px;overflow:hidden;border-radius:4px;background:linear-gradient(90deg,#9e7f3d 0%,#e6c877 28%,#fff7d6 48%,#d6b35e 68%,#8e7037 100%);background-size:230% 100%;box-shadow:0 0 7px rgba(214,189,135,.46),0 0 13px rgba(214,189,135,.18);animation:v100-blink 7.4s infinite,v100-eye-flow 3.8s ease-in-out infinite;transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.v100-eye:after{content:"";position:absolute;inset:-1px;width:5px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);filter:blur(.5px);animation:v100-eye-glint 3.8s ease-in-out infinite}
.v100-eye.left{left:15px}.v100-eye.right{right:15px}
.v100-mouth{position:absolute;left:50%;bottom:10px;width:12px;height:1px;border:0;border-radius:4px;background:rgba(221,193,139,.68);box-shadow:0 0 6px rgba(214,189,135,.27);transform:translateX(-50%)}
.v100-neck{position:absolute;z-index:3;left:38px;top:77px;width:20px;height:13px;border-radius:0 0 5px 5px;background:linear-gradient(90deg,#111820 0%,#8d959b 45%,#39444d 58%,#0c131a 100%);box-shadow:inset 0 1px rgba(255,255,255,.28)}
.v100-body{position:absolute;z-index:2;left:20px;top:86px;width:57px;height:25px;border:1px solid rgba(255,255,255,.28);border-radius:10px 10px 24px 24px;background:linear-gradient(116deg,rgba(255,255,255,.3),transparent 28%),linear-gradient(148deg,#7f8990 0%,#4a555e 18%,#1e2932 46%,#080f16 76%,#303b44 100%);box-shadow:inset 1px 1px rgba(255,255,255,.42),inset -3px -4px 9px rgba(0,0,0,.5),0 13px 24px rgba(0,0,0,.36)}
.v100-body:before,.v100-body:after{content:"";position:absolute;top:5px;width:9px;height:16px;border:1px solid rgba(198,170,114,.11);background:linear-gradient(#333d47,#10171e)}
.v100-body:before{left:-7px;border-radius:7px 2px 7px 10px;transform:skewY(15deg)}.v100-body:after{right:-7px;border-radius:2px 7px 10px 7px;transform:skewY(-15deg)}
.v100-body-shine{position:absolute;z-index:0;top:1px;bottom:1px;left:2px;width:12px;border-radius:50%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),rgba(255,244,213,.48),transparent);filter:blur(1.4px);opacity:0;transform:skewX(-20deg)}
.v100-body i{position:absolute;left:50%;top:6px;width:6px;height:6px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:var(--v100-gold);box-shadow:0 0 9px rgba(214,189,135,.46);transform:translateX(-50%)}
.v100-body b{position:absolute;left:0;right:0;bottom:3px;color:rgba(234,216,174,.56);font-size:5px;font-weight:800;letter-spacing:.16em;text-align:center}
.v100-arm{position:absolute;z-index:4;top:89px;width:8px;height:22px;border:1px solid rgba(255,255,255,.29);border-radius:7px;background:linear-gradient(105deg,#111920 0%,#9aa2a7 30%,#4d5962 47%,#101820 74%,#69747b 100%);box-shadow:inset 1px 1px rgba(255,255,255,.42),inset -1px -2px 4px rgba(0,0,0,.46)}
.v100-arm.left{left:15px;transform:rotate(14deg)}
.v100-arm.right{right:14px;transform:rotate(-15deg);transform-origin:50% 3px}
.v100-arm.right i{position:absolute;left:-2px;bottom:-4px;width:10px;height:10px;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:linear-gradient(135deg,#8a949b 0%,#35404a 45%,#101820 78%);box-shadow:inset 1px 1px rgba(255,255,255,.28)}
.v100-shadow{position:absolute;left:15px;bottom:-1px;width:68px;height:8px;border-radius:50%;background:rgba(2,8,16,.31);filter:blur(6px);transition:transform .55s ease,opacity .55s ease}
.v100-robot.is-waving .v100-head{animation:v100-greet-head 1.9s .42s cubic-bezier(.22,.75,.22,1) both}
.v100-robot.is-waving .v100-arm.right{z-index:7;animation:v100-wave 2.15s .24s cubic-bezier(.22,.75,.22,1) both}
.v100-robot.is-waving .v100-arm.right i{border-color:rgba(234,216,174,.7);background:linear-gradient(135deg,#f1dfb6 0%,#8c7446 42%,#18212a 82%);box-shadow:inset 1px 1px rgba(255,255,255,.5),0 0 0 3px rgba(214,189,135,.12),0 0 15px rgba(214,189,135,.35)}
.v100-robot.is-waving .v100-eye{animation:v100-greet-eyes 1.9s .38s ease-in-out both}
.v100-robot.is-waving .v100-shell-shine:after{animation:v100-metal-sweep 1.7s .26s ease-out both}
.v100-robot.is-waving .v100-body-shine{animation:v100-body-sweep 1.55s .48s ease-out both}

.v100-robot.is-compact{width:48px;height:49px;animation:none}
.v100-robot.is-compact .v100-aura{left:2px;top:2px;width:46px;height:46px}
.v100-robot.is-compact .v100-orbit{left:2px;top:8px;width:44px;height:32px}
.v100-robot.is-compact .v100-antenna{left:23px;top:0;width:3px;height:10px}
.v100-robot.is-compact .v100-antenna i{left:-3px;width:8px;height:8px;border-width:1px}
.v100-robot.is-compact .v100-head{left:3px;top:8px;width:43px;height:36px;border-radius:16px 16px 13px 13px}
.v100-robot.is-compact .v100-head:before,.v100-robot.is-compact .v100-head:after{top:13px;width:4px;height:12px}
.v100-robot.is-compact .v100-head:before{left:-3px}.v100-robot.is-compact .v100-head:after{right:-3px}
.v100-robot.is-compact .v100-shell-shine{left:8px;right:8px;top:2px;height:5px}
.v100-robot.is-compact .v100-face{inset:5px 4px 6px;border-radius:10px}
.v100-robot.is-compact .v100-face:before{top:3px}
.v100-robot.is-compact .v100-eye{top:9px;width:5px;height:4px}
.v100-robot.is-compact .v100-eye.left{left:8px}.v100-robot.is-compact .v100-eye.right{right:8px}
.v100-robot.is-compact .v100-mouth{bottom:5px;width:8px;height:1px}
.v100-robot.is-speaking .v100-mouth{animation:v100-talk .55s infinite alternate}

/* Open concierge panel */
.v100-panel{
  position:relative;
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr) auto auto auto;
  width:min(432px,calc(100vw - 34px));
  height:min(708px,calc(100dvh - 42px));
  overflow:hidden;
  border:1px solid rgba(214,189,135,.22);
  border-radius:30px;
  background:
    radial-gradient(circle at 90% -8%,rgba(214,189,135,.16),transparent 30%),
    linear-gradient(160deg,#0c1723 0%,var(--v100-bg-deep) 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 34px 100px rgba(1,6,12,.52),0 0 0 1px rgba(255,255,255,.025);
  isolation:isolate;
  animation:v100-panel-in .34s cubic-bezier(.2,.8,.2,1) both;
}
.v100-panel:before{content:"";position:absolute;z-index:-1;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(to bottom,#000,transparent 55%)}
.v100-chat-header{display:grid;grid-template-columns:54px 1fr 42px 42px;align-items:center;min-height:94px;padding:14px 12px 13px 17px;border-bottom:1px solid rgba(255,255,255,.075);background:linear-gradient(135deg,rgba(27,42,57,.96),rgba(10,20,30,.92));backdrop-filter:blur(18px)}
.v100-chat-header>div{padding-left:9px}
.v100-chat-header small{display:block;margin-bottom:2px;color:var(--v100-gold);font-size:8px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.v100-chat-header strong{display:block;color:#fff;font-size:15px;font-weight:720;letter-spacing:-.025em}
.v100-chat-header span{display:flex;align-items:center;gap:7px;margin-top:3px;color:var(--v100-muted);font-size:10px}
.v100-chat-header span i{width:6px;height:6px;border-radius:50%;background:#74c89b;box-shadow:0 0 0 3px rgba(116,200,155,.1),0 0 8px rgba(116,200,155,.4)}
.v100-chat-header button{display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid transparent;border-radius:12px;background:transparent;color:#8f9ba6;font-size:22px;font-weight:300;line-height:1;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease}
.v100-chat-header button:hover{border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.055);color:#fff}
.v100-test{display:flex;align-items:center;justify-content:center;gap:7px;padding:7px 14px;border-bottom:1px solid rgba(214,189,135,.1);background:rgba(214,189,135,.055);color:#b9a578;font-size:8px;font-weight:750;letter-spacing:.105em;text-align:center;text-transform:uppercase}
.v100-test i{width:6px;height:6px;border:1px solid currentColor;border-radius:50%;box-shadow:0 0 8px rgba(214,189,135,.28)}
.v100-messages{min-height:0;overflow:auto;padding:20px 17px 11px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(214,189,135,.24) transparent}
.v100-day{display:block;margin:0 auto 17px;color:#74808c;font-size:9px;letter-spacing:.06em;text-align:center;text-transform:uppercase}
.v100-row{display:flex;margin-bottom:11px}
.v100-row.user{justify-content:flex-end}
.v100-row p{max-width:87%;margin:0;padding:12px 14px;border:1px solid rgba(255,255,255,.075);border-radius:6px 18px 18px 18px;background:linear-gradient(145deg,rgba(25,39,53,.97),rgba(15,26,38,.97));box-shadow:0 9px 25px rgba(0,0,0,.13);color:#edf0f2;font-size:13px;line-height:1.55}
.v100-row.user p{border-color:rgba(214,189,135,.16);border-radius:18px 6px 18px 18px;background:linear-gradient(145deg,rgba(82,69,44,.7),rgba(42,36,27,.86));color:#fffaf0}
.v100-row p.is-safe{border-color:rgba(217,157,94,.35);background:linear-gradient(145deg,rgba(81,52,30,.65),rgba(43,29,21,.8))}
.v100-typing{display:flex;gap:5px;min-width:56px}
.v100-typing i{width:5px;height:5px;border-radius:50%;background:var(--v100-gold);animation:v100-dot 1.15s infinite}
.v100-typing i:nth-child(2){animation-delay:.13s}.v100-typing i:nth-child(3){animation-delay:.26s}
.v100-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:138px;overflow:auto;padding:9px 17px 12px}
.v100-options button{position:relative;min-height:46px;padding:9px 27px 9px 12px;border:1px solid rgba(214,189,135,.18);border-radius:14px;background:rgba(214,189,135,.055);color:#f0eee8;font-size:11px;font-weight:680;text-align:left;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}
.v100-options button:after{content:"→";position:absolute;right:11px;top:50%;color:var(--v100-gold);font-size:13px;font-weight:500;transform:translateY(-50%);transition:transform .2s ease}
.v100-options button:hover{border-color:rgba(214,189,135,.52);background:rgba(214,189,135,.11);transform:translateY(-1px)}
.v100-options button:hover:after{transform:translate(2px,-50%)}
.v100-composer{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:end;gap:8px;margin:0 15px;padding:7px 7px 7px 15px;border:1px solid rgba(214,189,135,.18);border-radius:18px;background:rgba(15,27,39,.88);box-shadow:inset 0 1px 0 rgba(255,255,255,.035);transition:border-color .2s ease,box-shadow .2s ease}
.v100-composer:focus-within{border-color:rgba(214,189,135,.48);box-shadow:0 0 0 3px rgba(214,189,135,.07)}
.v100-composer label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.v100-composer textarea{width:100%;min-height:42px;max-height:100px;resize:none;padding:10px 2px 7px;border:0;outline:0;background:transparent;color:var(--v100-text);font-size:13px}
.v100-composer textarea::placeholder{color:#6f7c88}
.v100-composer button{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.28);border-radius:14px;background:linear-gradient(145deg,var(--v100-gold-strong),#b59659);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 8px 20px rgba(122,91,39,.24);color:#07111c;font-size:19px;font-weight:650;line-height:1;cursor:pointer;transition:transform .2s ease,filter .2s ease}
.v100-composer button:not(:disabled):hover{filter:brightness(1.08);transform:translateY(-1px)}
.v100-composer button:disabled{opacity:.26;box-shadow:none;cursor:default}
.v100-contact{max-height:min(440px,52dvh);overflow:auto;margin:0 15px;padding:13px;border:1px solid rgba(214,189,135,.18);border-radius:18px;background:rgba(15,27,39,.88);overscroll-behavior:contain}
.v100-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.v100-contact label{display:grid;gap:5px;color:#9ba7b2;font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.v100-contact input,.v100-contact select{width:100%;min-height:38px;padding:8px 10px;border:1px solid rgba(214,189,135,.18);border-radius:10px;outline:0;background:#0c1723;color:#edf0f2;font:inherit;font-size:11px;text-transform:none}
.v100-contact input:focus,.v100-contact select:focus{border-color:rgba(214,189,135,.55);box-shadow:0 0 0 3px rgba(214,189,135,.07)}
.v100-contact-consent{grid-template-columns:18px 1fr!important;align-items:start;margin-top:10px;font-size:8px!important;font-weight:550!important;line-height:1.45;letter-spacing:0!important;text-transform:none!important}
.v100-contact-consent input{width:16px;min-height:16px;margin:1px 0 0;padding:0}
.v100-contact-consent a{color:var(--v100-gold);text-decoration:underline;text-underline-offset:2px}
.v100-contact-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}
.v100-contact-actions button{min-height:36px;padding:8px 12px;border:1px solid rgba(214,189,135,.22);border-radius:10px;background:rgba(214,189,135,.07);color:#edf0f2;font-size:10px;font-weight:700;cursor:pointer}
.v100-contact-actions button[type="submit"]{background:linear-gradient(145deg,var(--v100-gold-strong),#b59659);color:#07111c}
.v100-contact-actions button:disabled{opacity:.45;cursor:wait}
.v100-contact-error{margin:8px 0 0;color:#e5a47b;font-size:10px;line-height:1.4}
.v100-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.v100-panel>footer{display:flex;align-items:center;justify-content:center;gap:8px;padding:9px 10px calc(10px + env(safe-area-inset-bottom));color:#6f7c88;font-size:8px;letter-spacing:.05em;text-align:center;text-transform:uppercase}
.v100-panel>footer span{color:#9a8761;font-weight:800}.v100-panel>footer i{width:2px;height:2px;border-radius:50%;background:#687581}

@keyframes v100-panel-in{from{opacity:0;transform:translateY(18px) scale(.975)}}
@keyframes v100-blink{0%,45%,48%,100%{transform:scaleY(1)}46.5%{transform:scaleY(.12)}}
@keyframes v100-eye-flow{0%,100%{background-position:100% 50%;box-shadow:0 0 6px rgba(214,189,135,.38),0 0 11px rgba(214,189,135,.12)}50%{background-position:0 50%;box-shadow:0 0 10px rgba(244,215,145,.68),0 0 18px rgba(214,189,135,.26)}}
@keyframes v100-eye-glint{0%,18%{opacity:0;transform:translateX(-8px)}38%,54%{opacity:.8}76%,100%{opacity:0;transform:translateX(15px)}}
@keyframes v100-metal-breathe{0%,100%{opacity:.12;transform:translateX(-7px)}50%{opacity:.42;transform:translateX(7px)}}
@keyframes v100-scan{0%{opacity:0;transform:translateY(-10px)}35%{opacity:1}100%{opacity:0;transform:translateY(30px)}}
@keyframes v100-talk{to{width:8px;opacity:.55}}
@keyframes v100-dot{30%{opacity:1;transform:translateY(-3px)}0%,60%,100%{opacity:.28;transform:none}}
@keyframes v100-greet-head{0%,100%{transform:none}26%,76%{transform:translateY(-1.5px) rotate(-2deg)}}
@keyframes v100-greet-eyes{0%,100%{transform:none}24%,76%{transform:translateX(-1px) scaleY(.94)}47%{transform:translateX(-1px) scaleY(.18)}}
@keyframes v100-wave{0%,8%,100%{transform:translate(0,0) rotate(-15deg)}20%{transform:translate(-1px,-3px) rotate(-136deg)}35%{transform:translate(-1px,-3px) rotate(-112deg)}49%{transform:translate(-1px,-3px) rotate(-146deg)}63%{transform:translate(-1px,-3px) rotate(-114deg)}77%{transform:translate(-1px,-3px) rotate(-142deg)}88%{transform:translate(0,-1px) rotate(-72deg)}}
@keyframes v100-wave-reduced{0%,100%{transform:rotate(-15deg)}28%,72%{transform:translate(-1px,-2px) rotate(-126deg)}50%{transform:translate(-1px,-2px) rotate(-112deg)}}
@keyframes v100-metal-sweep{0%{opacity:0;transform:translateX(-28px) skewX(-20deg)}16%,52%{opacity:.86}100%{opacity:0;transform:translateX(78px) skewX(-20deg)}}
@keyframes v100-body-sweep{0%{opacity:0;transform:translateX(0) skewX(-20deg)}20%,58%{opacity:.62}100%{opacity:0;transform:translateX(39px) skewX(-20deg)}}
@keyframes v100-bar-reveal{from{opacity:0;transform:translateX(24px) scale(.91)}to{opacity:1;transform:none}}
@keyframes v100-bar-light{from{transform:translateX(-115%)}to{transform:translateX(115%)}}
@keyframes v100-copy-reveal{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}

@media(max-width:640px){
  .v100-shell{z-index:55}
  .v100-shell.is-closed{left:max(12px,env(safe-area-inset-left));right:auto;bottom:max(14px,env(safe-area-inset-bottom));width:min(360px,calc(100vw - 24px))}
  .v100-launcher-wrap{width:100%;height:136px;filter:drop-shadow(0 20px 34px rgba(2,8,16,.32))}
  .v100-launcher-wrap.is-robot{filter:none}
  .v100-launcher-wrap.is-bar{height:68px}
  .v100-launcher{width:100%;height:68px;border-color:rgba(214,189,135,.42);border-radius:22px;background:radial-gradient(circle at 8% 50%,rgba(214,189,135,.22),transparent 34%),linear-gradient(145deg,#172738 0%,#07111c 76%);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 16px 46px rgba(2,8,16,.42),0 0 0 1px rgba(214,189,135,.06)}
  .v100-launcher-wrap.is-robot .v100-launcher{width:118px;height:136px}
  .v100-launcher-wrap.is-robot .v100-entry-robot{left:2px;right:auto;bottom:2px;transform:scale(1.08);transform-origin:left bottom}
  .v100-launcher-wrap.is-robot .v100-entry-robot:before{display:none}
  .v100-entry-bar{grid-template-columns:46px minmax(0,1fr);gap:10px;padding:9px 10px}
  .v100-bar-action{grid-template-columns:minmax(0,1fr) 44px;gap:10px}
  .v100-bar-mark{width:44px;height:44px;border-color:rgba(214,189,135,.28);border-radius:14px;background:rgba(255,255,255,.065)}
  .v100-bar-copy small{font-size:8px;letter-spacing:.13em}
  .v100-bar-copy strong{font-size:13px;font-weight:700}
  .v100-bar-arrow{width:42px;height:42px;border-radius:14px}
  .v100-launcher-wrap.is-bar .v100-launcher{animation:v100-mobile-bar-arrive .8s .08s cubic-bezier(.2,.8,.2,1) both}
  .v100-shell.is-open{inset:0}
  .v100-panel{width:100vw;height:100dvh;border:0;border-radius:0;background:radial-gradient(circle at 100% -5%,rgba(214,189,135,.14),transparent 28%),linear-gradient(160deg,#0c1723,var(--v100-bg-deep))}
  .v100-chat-header{min-height:88px;padding-top:calc(10px + env(safe-area-inset-top))}
  .v100-options{grid-template-columns:1fr;max-height:226px}
  .v100-row p{max-width:91%}
  .v100-contact-grid{grid-template-columns:1fr}
}

@keyframes v100-mobile-halo{0%{opacity:0;transform:scale(.72)}35%,78%{opacity:1;transform:scale(1)}100%{opacity:.78;transform:scale(.96)}}
@keyframes v100-mobile-bar-arrive{0%{box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 14px 38px rgba(2,8,16,.34),0 0 0 0 rgba(214,189,135,.34)}65%{box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 50px rgba(2,8,16,.46),0 0 0 7px rgba(214,189,135,0)}100%{box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 16px 46px rgba(2,8,16,.42),0 0 0 1px rgba(214,189,135,.06)}}

@media(prefers-reduced-motion:reduce){
  .v100-shell *,.v100-shell *:before,.v100-shell *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .v100-shell .v100-robot.is-waving .v100-arm.right{animation:v100-wave-reduced 1.1s .25s ease-in-out 1 both!important}
}
