:root{--brand:#2563eb;--ink:#0f172a;--muted:#738096;--line:#e4e9f1;--surface:#fff;--soft:#f4f7fb}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink)}body{background:#111827}.direct-shell{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr;background:#101827}.marketing-panel{position:relative;display:flex;flex-direction:column;padding:42px clamp(34px,6vw,90px);background:#242424;color:#fff;overflow:hidden}.marketing-panel:after{content:"";position:absolute;right:-180px;bottom:-200px;width:520px;height:520px;border-radius:50%;background:#2563eb18;filter:blur(10px)}.site-brand{display:flex;align-items:center;gap:12px;font-size:18px}.logo-mark,.chat-logo{display:grid;place-items:center;color:white;background:linear-gradient(145deg,#2563eb,#8b5cf6);font-weight:850}.logo-mark{width:48px;height:48px;border-radius:14px}.marketing-copy{margin:auto 0;max-width:680px}.eyebrow{font-size:14px;color:#b9c0cd;letter-spacing:.035em}.marketing-copy h1{font-size:clamp(46px,5vw,76px);line-height:1;margin:36px 0 18px}.marketing-copy p{font-size:clamp(20px,2.1vw,31px);line-height:1.45;margin:0;color:#f7f7f8;max-width:740px}.verified{font-size:13px;color:#b9c0cd;letter-spacing:.035em}.preview-panel{display:grid;place-items:center;padding:30px;background:radial-gradient(circle at 20% 50%,#316c7066,transparent 38%),radial-gradient(circle at 90% 15%,#6f5ea755,transparent 42%),linear-gradient(135deg,#213348,#4a5f70)}.phone-frame{width:min(430px,92vw);height:min(780px,90dvh);background:#0f1115;border-radius:28px;padding:12px;box-shadow:0 30px 80px #0006;border:1px solid #ffffff18;overflow:hidden}
#chatApp{height:100%;display:flex;flex-direction:column;background:#f7f9fc;overflow:hidden}.phone-frame #chatApp{border-radius:19px}.chat-header{min-height:76px;padding:14px 16px;padding-top:calc(14px + env(safe-area-inset-top));background:linear-gradient(135deg,#0f172a,#172554);color:white;display:flex;align-items:center;justify-content:space-between}.brand-row{display:flex;align-items:center;gap:11px}.chat-logo{width:42px;height:42px;border-radius:13px}.brand-row b{display:block;font-size:15px}.brand-row small{display:flex;align-items:center;gap:6px;margin-top:3px;color:#cbd5e1;font-size:12px}.brand-row small i{width:7px;height:7px;border-radius:50%;background:#22c55e}.header-menu{border:0;background:#ffffff14;color:#fff;width:38px;height:38px;border-radius:11px}.welcome-card{margin:12px 14px 0;padding:13px 14px;background:#eef4ff;border:1px solid #dce7ff;border-radius:14px;color:#334155;font-size:13px;line-height:1.5}.chat-messages{flex:1;min-height:0;overflow:auto;padding:14px;background:linear-gradient(#f8fafc,#f3f6fa)}.msg{max-width:82%;width:max-content;padding:10px 12px;margin:8px 0;border-radius:15px;background:#fff;border:1px solid #e5eaf1;box-shadow:0 3px 10px #0f172a0a;overflow-wrap:anywhere;font-size:14px;line-height:1.45}.msg.visitor{margin-left:auto;background:var(--brand);color:#fff;border-color:var(--brand);border-bottom-right-radius:5px}.msg.agent{border-bottom-left-radius:5px}.msg img,.msg video{display:block;max-width:100%;max-height:300px;border-radius:10px}.msg audio{max-width:100%}.msg a{color:inherit}.chat-form{display:flex;align-items:center;gap:8px;padding:11px 12px;padding-bottom:calc(11px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff}.chat-form input{flex:1;min-width:0;padding:12px 14px;border:1px solid #dbe2ec;border-radius:22px;outline:0;background:#f9fafb}.chat-form input:focus{border-color:#93b5ff;box-shadow:0 0 0 4px #2563eb12}.attach,.send-button{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border:0;border-radius:50%;cursor:pointer}.attach{background:#eef2f7;color:#4b5563;font-size:22px}.send-button{background:var(--brand);color:#fff;font-size:16px}.powered{text-align:center;padding:0 10px 9px;background:#fff;color:#9aa3b2;font-size:10px}#uploadStatus{background:#fff;padding:0 14px;color:#b91c1c;font-size:11px}
.embed-mode{background:transparent}.embed-mode #chatApp{height:100dvh;border-radius:0}
@media(max-width:900px){.direct-shell{grid-template-columns:1fr}.marketing-panel{min-height:44dvh;padding:28px 24px}.marketing-copy{margin:50px 0}.marketing-copy h1{font-size:48px;margin:20px 0 12px}.marketing-copy p{font-size:20px}.preview-panel{min-height:56dvh;padding:18px}.phone-frame{height:min(720px,88dvh)}}
@media(max-width:640px){body.direct-mode{background:#f7f9fc}.direct-shell{display:block;min-height:100dvh}.marketing-panel{display:none}.preview-panel{padding:0;min-height:100dvh;background:#f7f9fc}.phone-frame{width:100%;height:100dvh;padding:0;border:0;border-radius:0;box-shadow:none}.phone-frame #chatApp{border-radius:0}.chat-header{min-height:70px}.welcome-card{margin:10px 10px 0}.chat-messages{padding:10px}.msg{max-width:88%}}
.agent-name{display:block;font-weight:800;font-size:11px;opacity:.78;margin-bottom:4px}
/* v3.1 responsive member chat + custom buttons */
.agent-name{display:block;font-weight:800;font-size:11px;line-height:1.2;opacity:.82;margin:0 0 5px}.message-body{display:block;white-space:pre-wrap;overflow-wrap:anywhere}.edited-label{opacity:.7;font-size:10px}.send-button:disabled{opacity:.55;cursor:not-allowed}.member-buttons{display:grid;gap:8px;padding:10px 12px 2px;background:#fff}.member-link-btn{display:grid;grid-template-columns:28px 1fr 24px;align-items:center;gap:8px;min-height:46px;padding:8px 12px;border-radius:12px;background:#111827;color:#fff;text-decoration:none;border:1px solid #1f2937}.member-link-btn span{font-size:18px}.member-link-btn b{font-size:13px}.member-link-btn i{text-align:right;font-style:normal;font-size:22px;opacity:.75}.member-link-btn:hover{background:#172033}
@media(max-width:640px){#chatApp{height:100dvh;min-height:100dvh}.chat-messages{overscroll-behavior:contain}.member-buttons{padding-left:10px;padding-right:10px}.member-link-btn{min-height:44px}}
.home-screen{flex:1;overflow:auto;padding:18px 14px 84px;background:linear-gradient(180deg,#155e75,#0f172a 42%,#111827);color:#fff}.home-hero{position:relative;padding:4px 6px 16px}.home-hero h1{font-size:27px;line-height:1.2;max-width:260px}.welcome-logo{width:48px;height:48px;border-radius:50%;object-fit:cover}.welcome-logo.fallback{display:grid;place-items:center;background:#fff;color:#111827;font-weight:800}.minimize{position:absolute;right:0;top:0;border:0;background:none;color:#fff;font-size:25px}.agent-card{background:#202020;border-radius:18px;padding:14px;display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center}.mini-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#334155;font-weight:800}.agent-card small{color:#cbd5e1}.agent-card p{margin:3px 0 0;font-size:13px}.agent-card button{grid-column:1/-1;border:0;border-radius:12px;padding:13px;background:#61baf1;font-weight:700}.member-buttons{display:grid;gap:8px;margin:12px 0}.member-link-btn{display:grid;grid-template-columns:24px 1fr 24px;align-items:center;padding:12px;background:#222;border-radius:11px;color:#fff;text-decoration:none;font-size:13px}.member-link-btn i{text-align:center;font-style:normal}.member-nav{position:absolute;left:14px;right:14px;bottom:14px;height:68px;background:#222;border:1px solid #383838;border-radius:22px;display:grid;grid-template-columns:1fr 1fr;z-index:20}.member-nav button{border:0;background:none;color:#9ca3af;display:grid;place-content:center;gap:2px;font-size:19px}.member-nav button span{font-size:12px}.member-nav button.active{color:#fff}.chat-screen{height:calc(100% - 0px);display:flex;flex-direction:column;padding-bottom:82px}.prechat-panel{overflow:auto;padding:18px;background:#f7f9fc;flex:1}.prechat-panel form{display:grid;gap:14px}.prechat-panel label{display:grid;gap:6px;font-size:13px}.prechat-panel input{padding:12px;border:1px solid #dbe2ec;border-radius:10px}.prechat-panel fieldset{border:0;padding:0}.choice{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;margin:8px 0}.prechat-submit{padding:13px;border:0;border-radius:12px;background:var(--brand);color:#fff;font-weight:700}#chatContent{display:flex;flex-direction:column;flex:1;min-height:0}.phone-frame,#chatApp{position:relative}

/* v4.1: respect the hidden state so Welcome, Pre-chat, and Chat screens never overlap */
[hidden]{display:none!important}
.home-screen[hidden],.chat-screen[hidden],.prechat-panel[hidden],#chatContent[hidden]{display:none!important}
/* v4.2 member widget visual refinement only */
#chatApp{background:#f8fafc}.home-screen,.chat-screen{animation:screenFade .2s ease-out}@keyframes screenFade{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}
.home-screen{background:radial-gradient(circle at 82% 5%,rgba(96,165,250,.22),transparent 30%),linear-gradient(165deg,#164e63 0%,#0f172a 48%,#0b1120 100%);padding:20px 16px 92px}
.home-hero h1{margin:20px 0 4px;font-size:30px;letter-spacing:-.025em}.agent-card{background:rgba(17,24,39,.82);border:1px solid rgba(255,255,255,.08);box-shadow:0 16px 35px rgba(0,0,0,.2);backdrop-filter:blur(12px)}
.agent-card button{cursor:pointer;box-shadow:0 8px 18px rgba(97,186,241,.22);transition:transform .15s ease,box-shadow .15s ease}.agent-card button:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(97,186,241,.3)}
.member-link-btn{border:1px solid rgba(255,255,255,.07);box-shadow:0 8px 18px rgba(0,0,0,.12);transition:transform .15s ease,background .15s ease,border-color .15s ease}.member-link-btn:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.16)}
.member-nav{box-shadow:0 14px 34px rgba(0,0,0,.32);backdrop-filter:blur(14px);background:rgba(24,24,27,.92)}.member-nav button{cursor:pointer;transition:color .15s ease,transform .15s ease}.member-nav button:hover{transform:translateY(-1px)}
.chat-header{box-shadow:0 8px 24px rgba(15,23,42,.12);z-index:2}.welcome-card{box-shadow:0 7px 18px rgba(37,99,235,.05)}.chat-form{box-shadow:0 -10px 28px rgba(15,23,42,.045)}
.msg{animation:messageIn .16s ease-out}@keyframes messageIn{from{opacity:.2;transform:translateY(4px)}to{opacity:1;transform:none}}
.prechat-panel form{max-width:520px;margin:0 auto}.prechat-panel input{transition:border-color .15s ease,box-shadow .15s ease}.prechat-panel input:focus{outline:0;border-color:#93b5ff;box-shadow:0 0 0 4px rgba(37,99,235,.08)}

/* v4.3 targeted fixes: profile identity and custom-link container */
.home-screen .member-buttons{background:transparent!important;padding:0!important;margin:12px 0!important}
.home-screen .member-link-btn{width:100%;background:rgba(32,32,32,.94);border-color:rgba(255,255,255,.08)}
.chat-screen #memberButtons{margin:0;background:#fff;padding:10px 12px 2px}
.mini-avatar img,.chat-logo img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}

/* v5 focused pre-chat, typing and receipt polish */
.prechat-panel{background:#101010;color:#fff;padding:20px 18px 92px}.prechat-panel>#prechatMessage{background:#242424;border:1px solid #3b3b3b;border-radius:22px;padding:18px;margin:0 auto 18px;max-width:520px;white-space:pre-wrap;line-height:1.45}.prechat-panel form{background:#242424;border:1px solid #4b4b4b;border-radius:22px;padding:18px}.prechat-panel label,.prechat-panel legend{color:#f5f5f5}.prechat-panel input{background:#303030;border-color:#515151;color:#fff}.prechat-panel fieldset{margin:0}.choice{padding:7px 0;margin:0!important;gap:10px}.choice input{width:18px;height:18px;padding:0;accent-color:var(--brand)}.prechat-submit{margin-top:8px;font-size:15px}.typing-indicator{padding:6px 16px 9px;background:#fff;color:#64748b;font-size:12px;display:flex;align-items:center;gap:4px}.typing-indicator[hidden]{display:none!important}.typing-indicator span{width:5px;height:5px;background:#94a3b8;border-radius:50%;animation:typingDot 1.1s infinite}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s;margin-right:5px}@keyframes typingDot{0%,70%,100%{transform:translateY(0);opacity:.45}35%{transform:translateY(-4px);opacity:1}}.receipt{display:block;text-align:right;margin-top:4px;font-size:10px;opacity:.75}.chat-logo img,.mini-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}

/* v5.1 targeted member polish and reliable pre-chat submit */
#chatApp.prechat-active{background:#101010}
#chatApp.prechat-active .chat-screen{background:#101010}
#chatApp.prechat-active .member-nav{background:rgba(29,29,31,.96);border-color:#404044}
.prechat-panel{scrollbar-gutter:stable;padding-bottom:112px}
.prechat-panel form{position:relative;z-index:2;box-shadow:0 18px 42px rgba(0,0,0,.24)}
.prechat-submit{position:relative;z-index:3;width:100%;min-height:50px;cursor:pointer;transition:transform .15s ease,filter .15s ease,opacity .15s ease}
.prechat-submit:hover{filter:brightness(1.06);transform:translateY(-1px)}
.prechat-submit:active{transform:translateY(0)}
.prechat-submit:disabled{opacity:.65;cursor:wait;transform:none}
.prechat-error{min-height:18px;margin:2px 0 0;color:#fca5a5;font-size:12px}
.member-nav{overflow:hidden}
.member-nav button{border-radius:18px}
.member-nav button.active{background:rgba(255,255,255,.07)}
.chat-screen,.home-screen{scrollbar-width:thin;scrollbar-color:#59606d transparent}
.chat-messages{scrollbar-width:thin;scrollbar-color:#a8b0bd transparent}
@media(max-width:640px){.prechat-panel{padding:16px 14px 116px}.prechat-panel form,.prechat-panel>#prechatMessage{border-radius:18px}.member-nav{left:10px;right:10px;bottom:10px}}

/* v5.2 member widget professional refinement — layout only */
.phone-frame{border-radius:28px;padding:10px;background:#17191d;box-shadow:0 24px 70px rgba(2,8,23,.36)}
.phone-frame #chatApp{border-radius:20px;overflow:hidden}.chat-header{min-height:72px;padding:12px 16px;background:#142451;box-shadow:none}.chat-header .chat-logo{width:48px;height:48px}.chat-header h2{font-size:16px}.chat-header p{font-size:12px}.chat-screen{background:#101010}.prechat-panel{padding:16px 14px 108px;background:#101010}.prechat-panel>#prechatMessage{border:0;background:#222;border-radius:18px;padding:16px;box-shadow:none}.prechat-panel form{border:1px solid #454545;background:#242424;border-radius:18px;padding:18px;box-shadow:none}.prechat-panel input{min-height:50px;border-radius:12px}.choice{min-height:38px}.prechat-submit{min-height:54px;border-radius:12px;font-size:16px;box-shadow:0 10px 25px color-mix(in srgb,var(--brand) 28%,transparent)}.prechat-error{padding:0 2px}.member-nav{height:66px;left:12px;right:12px;bottom:12px;border-radius:20px;border:1px solid #3b3d42;background:#242529;box-shadow:0 16px 34px rgba(0,0,0,.3)}.member-nav button.active{background:#303136}.chat-messages{background:#f7f8fa;padding:14px}.chat-form{padding:10px 12px;background:#fff}.welcome-card{border-radius:14px}.msg{border-radius:15px}.powered{padding-bottom:7px}


/* v5.3: links only on Beranda and clean rounded member frame */
.phone-frame{background:#101114!important}
.phone-frame #chatApp,#chatApp,.chat-screen{background:#101010}
#memberButtons{display:none!important}
.phone-frame,.phone-frame #chatApp{isolation:isolate}
@media(min-width:641px){.phone-frame{padding:10px}.phone-frame #chatApp{border-radius:20px}}

/* v58: prevent iOS Safari focus zoom without disabling user zoom */
@media (max-width: 768px){
  .chat-form input,
  .prechat-panel input,
  .prechat-panel textarea,
  .prechat-panel select{font-size:16px!important;}
}

/* v5.9: stable mobile keyboard layout and no focus auto-zoom on phones/tablets */
:root{--app-height:100dvh}
@media (hover:none), (pointer:coarse), (max-width:1024px){
  html,body{width:100%;min-height:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
  body.direct-mode,.direct-shell,.preview-panel,.phone-frame,#chatApp,.embed-mode #chatApp{height:var(--app-height);min-height:var(--app-height);max-height:var(--app-height)}
  input,textarea,select,[contenteditable="true"]{font-size:16px!important;line-height:1.35!important}
  .chat-form input,.prechat-panel input,.prechat-panel textarea,.prechat-panel select{font-size:16px!important}
  .chat-form{flex:0 0 auto;position:relative;z-index:30}
  .chat-screen,#chatContent{min-height:0;overflow:hidden}
  .chat-messages{min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}
  .member-nav{position:absolute}
}


.chat-image-button{display:block;padding:0;border:0;background:transparent;cursor:zoom-in;max-width:100%;border-radius:10px;overflow:hidden}.chat-image-button img{display:block}.chat-image-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.92);display:flex;flex-direction:column;opacity:0;transition:opacity .15s ease}.chat-image-lightbox.open{opacity:1}.chat-image-lightbox-toolbar{height:54px;display:flex;align-items:center;justify-content:center;gap:6px;padding:7px;background:#111827;color:#fff}.chat-image-lightbox-toolbar span{font-weight:700;margin-right:6px}.chat-image-lightbox-toolbar button,.chat-image-lightbox-toolbar a{height:38px;min-width:38px;padding:0 9px;border:1px solid #ffffff26;border-radius:10px;background:#ffffff12;color:#fff;text-decoration:none;display:grid;place-items:center;font-size:18px}.chat-image-lightbox-stage{flex:1;min-height:0;overflow:auto;display:grid;place-items:center;padding:12px}.chat-image-lightbox-stage img{max-width:96vw;max-height:calc(100dvh - 76px);object-fit:contain;transform-origin:center;transition:transform .12s ease}

/* Clickable links inside the member pre-chat information message. */
.prechat-inline-link{color:#7dd3fc;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-word;font-weight:600}.prechat-inline-link:hover{color:#bae6fd}.prechat-inline-link:focus-visible{outline:2px solid #7dd3fc;outline-offset:2px;border-radius:3px}

/* v6.8 rich pre-chat message */
#prechatMessage p{margin:0 0 9px}#prechatMessage p:last-child{margin-bottom:0}#prechatMessage ul,#prechatMessage ol{margin:8px 0;padding-left:24px}#prechatMessage li{margin:4px 0}#prechatMessage a{color:#7dd3fc;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;font-weight:600}


/* Minimize bar & eye-catcher */
.minimize{cursor:pointer;z-index:30;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;line-height:1}.minimize:hover{background:rgba(255,255,255,.1)}
.minimized-dock{position:fixed;right:16px;bottom:16px;z-index:9999;display:grid;gap:10px;justify-items:end;touch-action:none}.minimized-dock[hidden]{display:none!important}.restore-chat{height:58px;min-width:190px;border:0;border-radius:18px;background:#172554;color:#fff;box-shadow:0 14px 40px rgba(15,23,42,.35);display:grid;grid-template-columns:38px 1fr 28px;align-items:center;gap:10px;padding:10px 14px;cursor:pointer}.restore-chat span{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#2563eb,#7c3aed);display:grid;place-items:center;font-weight:800}.restore-chat b{text-align:left}.restore-chat i{font-style:normal}.eye-catcher-image{display:block;max-width:280px;max-height:160px;object-fit:contain;cursor:grab;filter:drop-shadow(0 12px 24px rgba(15,23,42,.28));user-select:none;-webkit-user-drag:none}.eye-catcher-image:active{cursor:grabbing}.chat-minimized{background:transparent!important;overflow:visible!important}.chat-minimized .direct-shell{display:none}.eye-catcher-preview{min-height:120px;min-width:220px;border:1px dashed #cbd5e1;border-radius:16px;display:grid;place-items:center;color:#64748b;background:#f8fafc;overflow:hidden}.eye-catcher-preview img{max-width:100%;max-height:180px;object-fit:contain}
@media(max-width:640px){.minimized-dock{right:12px;bottom:12px}.eye-catcher-image{max-width:min(260px,80vw);max-height:140px}.restore-chat{min-width:180px}}
