/* SUN LIFE V1.8.0 — Messenger-style Support and Recovery UI */
.messenger-page-head{max-width:760px;margin:10px auto 18px;padding:0 2px;}
.messenger-page-head h1{margin:3px 0 5px;color:#143f39;font-size:29px;}
.messenger-page-head p{margin:0;color:#7b8983;font-size:12px;}
.messenger-shell{width:100%;max-width:800px;margin:0 auto;padding:14px;border:1px solid #e5e8dd;border-radius:24px;background:#fff;box-shadow:0 14px 38px rgba(21,54,47,.06);}
.user-messenger-shell{max-width:760px;}
.messenger-header{display:flex;align-items:center;gap:12px;padding:8px 7px 14px;border-bottom:1px solid #edf0e9;}
.messenger-agent-avatar{width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(145deg,#fff2c9,#e5b644);color:#17483f;font:900 15px system-ui;box-shadow:0 5px 14px rgba(211,165,49,.16);}
.messenger-agent-info{display:flex;flex:1;min-width:0;flex-direction:column;}
.messenger-agent-info b{color:#173f39;font-size:13px;line-height:1.35;}
.messenger-agent-info small{margin-top:3px;color:#84918a;font-size:10px;}
.support-availability-chip{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:850;white-space:nowrap;}
.support-availability-chip i,.availability-online i,.availability-offline i{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block;}
.support-availability-chip.is-online{background:#e8f5eb;color:#23824f;}
.support-availability-chip.is-offline{background:#f0f1ed;color:#7c8580;}
.messenger-thread-head{display:flex;justify-content:space-between;align-items:center;margin:10px 3px 0;color:#63746d;font-size:10px;font-weight:800;}
.messenger-chat-box{display:flex;flex-direction:column;gap:12px;min-height:420px;max-height:62svh;margin-top:10px;padding:18px;border:0;border-radius:17px;background:radial-gradient(circle at 15% 10%,#fff 0,#fbfcf8 54%,#f5f7f0 100%);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;}
.messenger-chat-box .chat-bubble{max-width:min(78%,520px);padding:11px 14px;border:1px solid #e8ebe3;border-radius:17px;background:#fff;box-shadow:0 4px 12px rgba(22,52,44,.045);}
.messenger-chat-box .chat-bubble.mine{align-self:flex-end;border-color:#d5e9df;border-bottom-right-radius:5px;background:linear-gradient(140deg,#e8f5eb,#d9eee3);color:#183f35;}
.messenger-chat-box .chat-bubble.theirs{align-self:flex-start;border-bottom-left-radius:5px;background:#fff;color:#273e38;}
.messenger-chat-box .chat-bubble p{font-size:12px;line-height:1.65;}
.messenger-chat-box .chat-bubble small{font-size:9px;color:#809087;}
.messenger-chat-box .chat-bubble.mine small{color:#688578;}
.messenger-welcome-note{align-self:center;display:grid;justify-items:center;gap:6px;max-width:260px;margin:auto;padding:24px;text-align:center;color:#58746a;}
.messenger-welcome-note>span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#f8e8b8;color:#725718;font-size:23px;}
.messenger-welcome-note b{font-size:13px;color:#254f43;}
.messenger-welcome-note small{font-size:10px;line-height:1.6;}
.messenger-connection-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 5px 0;color:#89968f;font-size:9px;}
.messenger-connection-row [data-chat-presence]{font-weight:800;color:#55766a;}
.messenger-composer{display:flex;align-items:flex-end;gap:9px;margin-top:10px;padding:9px;border:1px solid #e6e9e0;border-radius:17px;background:#fff;}
.messenger-input-wrap{display:flex;align-items:flex-end;gap:8px;flex:1;min-width:0;padding:0 3px;}
.messenger-composer textarea{flex:1;min-width:0;min-height:42px!important;max-height:130px;padding:10px 8px!important;border:0!important;border-radius:0!important;background:transparent!important;resize:vertical;font-size:12px!important;outline:0!important;box-shadow:none!important;}
.messenger-composer>.btn{width:43px;height:43px;min-height:43px;flex:0 0 43px;padding:0;border-radius:14px;background:linear-gradient(140deg,#0a5c4e,#073b37);font-size:18px;}
.messenger-attach{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:11px;background:#f5f4ed;color:#42685b;font-size:21px;font-weight:700;cursor:pointer;}
.messenger-attach input{display:none;}
.messenger-closed-note{margin:11px 0 0;padding:12px;border:1px solid #eadfbf;border-radius:12px;background:#fff9e8;color:#80652b;font-size:11px;text-align:center;}
.messenger-connection-note{padding:8px 4px 0;color:#88948e;font-size:9px;}
.recovery-page-shell{width:min(850px,100%);margin:10px auto 30px;}
.recovery-intro-card{display:flex;align-items:center;gap:18px;margin-bottom:17px;padding:19px;border:1px solid #e7e6d9;border-radius:21px;background:linear-gradient(120deg,#fff,#f5f4e9);}
.recovery-brand{display:grid;place-items:center;flex:0 0 130px;height:72px;padding:5px 8px;border-radius:13px;background:#fff;}
.recovery-brand img{width:100%;height:100%;object-fit:contain;}
.recovery-intro-card h1{margin:3px 0 4px;color:#18483f;font-size:22px;}
.recovery-intro-card p{margin:0;color:#77867f;font-size:11px;line-height:1.65;}
.recovery-start-card{max-width:620px;margin:0 auto;padding:22px;border:1px solid #e6e8de;border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(23,53,45,.05);}
.recovery-support-status{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px;}
.recovery-support-status small{color:#8b9690;font-size:9px;}
.recovery-start-card h2{margin:0 0 4px;color:#17453c;font-size:19px;}
.recovery-start-card>p{margin:0 0 16px;font-size:11px;}
.recovery-start-form{gap:11px;}
.recovery-start-form label{font-size:11px!important;}
.recovery-messenger-shell{max-width:760px;}
.recovery-close-form{margin-top:9px;text-align:right;}
.recovery-close-form .btn{min-height:37px;padding:8px 13px;font-size:10px;}
/* Admin support workspace */
.admin-support-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;padding:18px 20px;border:1px solid #dfe9e2;border-radius:20px;background:linear-gradient(110deg,#f5faf5,#fff);}
.admin-support-toolbar h2{margin:4px 0;color:#173d38;font-size:22px;}
.admin-support-toolbar p{margin:0;color:#74837c;font-size:11px;}
.support-availability-box{display:flex;align-items:center;gap:15px;padding:10px 12px;border:1px solid #e5e9dd;border-radius:15px;background:#fff;}
.support-availability-box>div{display:grid;gap:4px;min-width:108px;}
.support-availability-box small{color:#849189;font-size:9px;font-weight:800;}
.support-availability-box b{display:flex;align-items:center;gap:6px;font-size:11px;}
.availability-online{color:#17824f!important;}.availability-offline{color:#87918a!important;}
.support-availability-actions{display:flex;gap:5px;}
.availability-button{min-height:35px;padding:7px 10px;border:1px solid #e0e5dc;border-radius:10px;background:#f8f9f5;color:#617069;font-size:10px;font-weight:850;}
.availability-button.online.active{border-color:#abd8bd;background:#e7f5eb;color:#167a49;}
.availability-button.offline.active{border-color:#d9ddd6;background:#edf0eb;color:#5f6962;}
.admin-chat-layout.has-context{grid-template-columns:265px minmax(330px,1fr) 225px;gap:13px;align-items:stretch;}
.admin-chat-layout.recovery-admin-layout{grid-template-columns:280px minmax(0,1fr);gap:13px;}
.admin-chat-layout .chat-users{min-width:0;padding:13px;}
.chat-list-head{display:flex;justify-content:space-between;align-items:center;padding:3px 3px 12px;}
.chat-list-head h2{margin:0!important;color:#173e38;font-size:16px!important;}
.chat-list-head small{color:#8a968f;font-size:9px;}
.chat-inbox-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#f5e9c6;color:#7b631e;font-size:17px;}
.chat-conversation-search{width:100%;min-height:40px;margin:0 0 10px;padding:9px 11px;border:1px solid #e3e8df;border-radius:11px;background:#fafbf8;color:#243e37;font-size:11px;}
.chat-list-items{max-height:660px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;}
.admin-chat-layout .chat-user{display:grid;grid-template-columns:37px minmax(0,1fr) auto;align-items:center;gap:8px;margin:3px 0;padding:10px 7px;border:1px solid transparent;border-bottom:1px solid #edf0e9;border-radius:12px;}
.admin-chat-layout .chat-user.active{border-color:#d7e7dc;background:#edf6ef;}
.chat-list-avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#0c6556,#17473e);color:#fff;font-size:13px;font-weight:900;}
.chat-list-avatar.large{width:43px;height:43px;flex:0 0 43px;border-radius:14px;font-size:15px;}
.chat-list-avatar.recovery-avatar{background:linear-gradient(145deg,#d7a53b,#9b711d);}
.chat-user-copy{display:block;min-width:0;}
.admin-chat-layout .chat-user b{overflow:hidden;color:#25483f;font-size:11px;text-overflow:ellipsis;white-space:nowrap;}
.admin-chat-layout .chat-user small{overflow:hidden;margin-top:3px;color:#86928b;font-size:9px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap;}
.admin-chat-layout .chat-user time{display:block;margin-top:3px;color:#9aa39d;font-size:8px;}
.chat-unread-count{min-width:20px;height:20px;display:grid;place-items:center;padding:0 5px;border-radius:20px;background:#117b5f;color:#fff;font-size:9px;font-style:normal;font-weight:900;}
.recovery-state-tag{padding:4px 6px;border-radius:8px;background:#edf0eb;color:#6f7971;font-size:8px;font-style:normal;font-weight:900;}
.recovery-state-tag.open{background:#e6f4e9;color:#19804d;}
.chat-empty-list{padding:22px 8px;text-align:center;font-size:10px;}
.admin-chat-main-panel,.admin-chat-layout .chat-main-panel{display:flex;min-width:0;min-height:690px;flex-direction:column;padding:13px;}
.admin-chat-conversation-head{display:flex;align-items:center;gap:10px;min-height:57px;padding:3px 4px 12px;border-bottom:1px solid #edf0e9;}
.admin-chat-conversation-head>div{display:grid;min-width:0;flex:1;gap:3px;}
.admin-chat-conversation-head>div>b{overflow:hidden;color:#1a4339;font-size:12px;text-overflow:ellipsis;white-space:nowrap;}
.admin-chat-conversation-head>div>small{color:#839087;font-size:9px;}
.admin-chat-box{flex:1;min-height:420px;max-height:none!important;margin:10px 0 0;background:#f7f9f5;}
.admin-chat-connection{padding:6px 3px;color:#6e887b;font-size:9px;}
.admin-messenger-composer{margin-top:4px;}
.admin-messenger-composer textarea{min-height:42px!important;}
.admin-chat-context{align-self:start;min-width:0;padding:15px;text-align:center;}
.admin-chat-context h3{margin:5px 0 16px;color:#23483e;font-size:13px;}
.chat-context-avatar{width:61px;height:61px;display:grid;place-items:center;margin:0 auto 9px;border-radius:20px;background:linear-gradient(145deg,#0c6556,#17473e);color:white;font-size:22px;font-weight:900;}
.chat-context-name{display:block;color:#1e463c;font-size:12px;overflow-wrap:anywhere;}
.chat-context-id{display:block;margin-top:3px;color:#8a968f;font-size:9px;}
.chat-context-row{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin-top:13px;padding-top:10px;border-top:1px solid #eef0eb;text-align:left;}
.chat-context-row small{color:#8a968f;font-size:9px;}
.chat-context-row b{color:#39584e;font-size:10px;overflow-wrap:anywhere;}
.recovery-main-panel .recovery-safety-note{margin:8px 0!important;padding:10px 12px!important;font-size:10px!important;}
.recovery-main-panel .recovery-safety-note p{margin:4px 0;}
.recovery-main-panel .messenger-chat-box{min-height:340px;}
.admin-chat-layout [hidden]{display:none!important;}
@media(max-width:1200px){.admin-chat-layout.has-context{grid-template-columns:245px minmax(0,1fr);}.admin-chat-context{grid-column:2;}.admin-chat-layout.has-context .chat-main-panel{min-height:610px;}}
@media(max-width:820px){.admin-support-toolbar{align-items:flex-start;flex-direction:column;}.support-availability-box{width:100%;justify-content:space-between;}.admin-chat-layout.has-context,.admin-chat-layout.recovery-admin-layout{grid-template-columns:1fr;}.admin-chat-context{grid-column:auto;}.admin-chat-layout .chat-users{max-height:280px;}.chat-list-items{max-height:210px;}.admin-chat-layout .chat-main-panel{min-height:600px;}.admin-chat-context{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;text-align:left;}.admin-chat-context h3{grid-column:1/-1;margin:0;}.chat-context-avatar{grid-row:span 2;margin:0;}.chat-context-name,.chat-context-id{text-align:left;}}
@media(max-width:600px){.messenger-page-head h1{font-size:24px;}.messenger-shell{padding:9px;border-radius:18px;}.messenger-header{gap:8px;padding:5px 3px 10px;}.messenger-agent-avatar{width:39px;height:39px;flex-basis:39px;border-radius:13px;font-size:12px;}.messenger-agent-info b{font-size:11px;}.messenger-agent-info small{font-size:8px;}.support-availability-chip{padding:6px 8px;font-size:8px;}.messenger-chat-box{min-height:calc(100svh - 330px);max-height:calc(100svh - 330px);padding:12px 9px;gap:10px;border-radius:13px;}.messenger-chat-box .chat-bubble{max-width:88%;padding:9px 11px;border-radius:14px;}.messenger-chat-box .chat-bubble p{font-size:11px;}.messenger-chat-box .chat-bubble small{font-size:8px;}.messenger-composer{gap:6px;padding:6px;border-radius:14px;}.messenger-composer textarea{min-height:39px!important;font-size:11px!important;}.messenger-composer>.btn{width:39px;height:39px;min-height:39px;flex-basis:39px;border-radius:12px;font-size:16px;}.messenger-attach{width:30px;height:30px;flex-basis:30px;font-size:18px;}.messenger-connection-row{font-size:8px;}.recovery-page-shell{margin:0 auto 20px;}.recovery-intro-card{gap:10px;margin-bottom:10px;padding:12px;border-radius:15px;}.recovery-brand{flex-basis:88px;height:54px;padding:4px 5px;border-radius:9px;}.recovery-intro-card h1{font-size:16px;}.recovery-intro-card p{font-size:9px;line-height:1.45;}.recovery-start-card{padding:15px;border-radius:17px;}.recovery-start-card h2{font-size:16px;}.recovery-start-form{gap:9px;}.recovery-support-status{align-items:flex-start;flex-direction:column;gap:5px;}.recovery-messenger-shell .messenger-chat-box{min-height:calc(100svh - 350px);max-height:calc(100svh - 350px);}.admin-support-toolbar{gap:11px;padding:13px;border-radius:15px;}.admin-support-toolbar h2{font-size:17px;}.admin-support-toolbar p{font-size:9px;}.support-availability-box{align-items:flex-start;flex-direction:column;gap:8px;padding:10px;}.support-availability-actions{width:100%;}.availability-button{flex:1;min-height:37px;font-size:10px;}.admin-chat-layout .chat-users{max-height:240px;}.chat-list-items{max-height:180px;}.admin-chat-layout .chat-main-panel{min-height:560px;padding:9px;}.admin-chat-box{min-height:350px;}.admin-chat-layout .chat-context-panel{display:block;}.admin-chat-context{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;}.recovery-main-panel .messenger-chat-box{min-height:320px;max-height:52svh;}}
@media(prefers-reduced-motion:reduce){.messenger-chat-box .chat-bubble{animation:none!important;}}

.landing-popular-picker{padding:14px;border:1px solid #e3e9df;border-radius:14px;background:#fafbf7}.landing-popular-picker h3{margin:0 0 4px;color:#244c40;font-size:14px}.landing-popular-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.landing-popular-options .check{display:flex!important;align-items:flex-start;gap:8px;padding:10px;border:1px solid #e6e9df;border-radius:11px;background:#fff}.landing-popular-options .check span{display:grid;gap:3px;min-width:0}.landing-popular-options .check b{font-size:10px;color:#315448}.landing-popular-options .check small{font-size:9px;color:#7f8b83}@media(max-width:700px){.landing-popular-options{grid-template-columns:1fr 1fr}}@media(max-width:400px){.landing-popular-options{grid-template-columns:1fr}}
