#ctm-ana-root{font-family:Arial,sans-serif}#ctm-ana-root *{box-sizing:border-box}.ctm-launch{position:fixed;bottom:20px;right:20px;z-index:99997;background:#176cb0!important;color:#fff!important;border-radius:30px!important;padding:14px 20px!important;box-shadow:0 5px 20px #0003}.ctm-panel{position:fixed;bottom:78px;right:20px;width:min(390px,calc(100vw - 24px));max-height:calc(100dvh - 110px);overflow-y:auto;background:#fff;color:#1d3140;z-index:99998;box-shadow:0 8px 40px #0004;border-radius:16px;border:1px solid #d7e5f1;padding:16px;font-size:14px}.ctm-panel[hidden]{display:none}.ctm-header{display:flex;justify-content:space-between;align-items:center;font-size:17px}.ctm-bar,.ctm-actions{display:flex;gap:8px;margin:12px 0}.ctm-btn{background:#176cb0;color:white!important;border:0;border-radius:8px;padding:10px 12px;cursor:pointer;text-align:center;text-decoration:none!important;font-size:14px}.ctm-secondary{background:#e9f3fb;color:#174e76!important}.ctm-selected{background:#0e446f}.ctm-close{background:transparent;color:#233!important;font-size:22px;padding:0 8px}.ctm-ticket{display:grid;gap:10px}.ctm-ticket label{display:grid;gap:4px;font-weight:600}.ctm-ticket input:not([type=checkbox]),.ctm-ticket textarea,.ctm-send input{width:100%;padding:9px;border:1px solid #a8bccc;border-radius:7px;font-size:16px}.ctm-ticket textarea{min-height:70px}.ctm-ticket .ctm-consent{display:block;font-weight:400}.ctm-actions a{flex:1}.ctm-feed{max-height:250px;overflow:auto;border:1px solid #ddd;padding:8px;border-radius:8px}.ctm-msg{padding:8px;background:#f1f5f8;margin:5px 0;border-radius:8px;white-space:pre-wrap;overflow-wrap:anywhere}.ctm-owner{background:#dceffc!important}.ctm-send{display:flex;gap:6px;margin-top:8px}.ctm-ana-manager{max-width:900px}.ctm-ticket-row{display:block;width:100%;text-align:left;padding:12px;background:#fff;border:1px solid #cbd9e3;margin:5px 0;border-radius:7px;cursor:pointer}.ctm-admin-feed{max-height:360px;overflow:auto;background:#fff;padding:12px;margin:12px 0;border:1px solid #ddd}.ctm-admin-feed p{padding:10px;border-radius:6px;background:#f2f4f7;white-space:pre-wrap;overflow-wrap:anywhere}.ctm-ana-manager textarea{display:block;width:100%;min-height:85px;margin-bottom:10px}@media(max-width:480px){.ctm-panel{right:12px;bottom:74px}.ctm-launch{right:12px;bottom:12px}}

.ctm-portrait{width:42px;height:42px;border-radius:50%;object-fit:cover;margin-right:8px}.ctm-faqs{display:grid;gap:5px;margin:8px 0}.ctm-faqs .ctm-btn{text-align:left;font-size:12px}.ctm-faq-answer{padding:10px;background:#eaf5fc;border-radius:8px}.ctm-panel .ctm-secondary{font-size:12px}

/* Approved Ana visual design, v0.3 */
#ctm-ana-root .ctm-launch{display:flex;align-items:center;gap:11px;background:#fff!important;color:#0b3372!important;border:2px solid #0958ca!important;border-radius:45px!important;padding:7px 18px 7px 7px!important;box-shadow:0 7px 30px #0b3b7c40!important;max-width:280px;min-height:70px}#ctm-ana-root .ctm-launch-photo{height:55px;width:55px;border-radius:50%;object-fit:cover;object-position:center top;border:2px solid #fff}#ctm-ana-root .ctm-launch-copy{display:flex;flex-direction:column;text-align:left;line-height:1.4;font-size:12px}#ctm-ana-root .ctm-launch-copy strong{font-size:15px;color:#082f72}#ctm-ana-root .ctm-panel{width:min(435px,calc(100vw - 24px));padding:0;border-radius:21px;border:1px solid #b5cbe8;box-shadow:0 10px 42px #001b5270;max-height:calc(100dvh - 108px)}#ctm-ana-root .ctm-panel>*:not(.ctm-header){margin-left:16px;margin-right:16px}#ctm-ana-root .ctm-header{background:linear-gradient(120deg,#0754bb,#063782);color:#fff;min-height:86px;padding:13px 16px;justify-content:flex-start;gap:12px}#ctm-ana-root .ctm-header .ctm-portrait{width:59px;height:59px;border:2px solid #ffffff70;margin:0}#ctm-ana-root .ctm-heading{display:flex;flex:1;flex-direction:column;gap:2px}#ctm-ana-root .ctm-heading strong{font-size:26px;line-height:1}#ctm-ana-root .ctm-heading small{font-size:12px;font-weight:400}#ctm-ana-root .ctm-close{color:#fff!important;font-size:26px}#ctm-ana-root .ctm-bar{justify-content:flex-end}#ctm-ana-root .ctm-bar .ctm-btn{border-radius:30px;font-size:12px;padding:7px 12px}#ctm-ana-root .ctm-welcome{background:#f0f3f8;border-radius:16px;padding:13px 15px;line-height:1.55;color:#0b2e64}#ctm-ana-root .ctm-faq-title,#ctm-ana-root .ctm-ticket-title{display:block;color:#082f72;font-size:15px;margin-top:13px}#ctm-ana-root .ctm-faqs .ctm-btn{background:#fff;color:#0a3c88!important;border:1px solid #c8d6e8;border-radius:14px;font-size:13px;font-weight:600;padding:12px;text-align:left}#ctm-ana-root .ctm-faqs .ctm-btn:hover{background:#eef5ff}#ctm-ana-root .ctm-actions{position:sticky;bottom:0;background:#fff;padding:12px 0;margin-bottom:0!important}#ctm-ana-root .ctm-call{background:#0755c6}#ctm-ana-root .ctm-ticket{padding-top:9px}#ctm-ana-root .ctm-ticket .ctm-btn{background:#0755c6}#ctm-ana-root .ctm-feed{min-height:130px}@media(max-width:480px){#ctm-ana-root .ctm-panel{right:8px;bottom:90px;max-height:calc(100dvh - 112px)}#ctm-ana-root .ctm-launch{right:10px;bottom:10px}}

/* v0.4 expanded panel with original approved photograph */
#ctm-ana-root .ctm-panel{width:min(960px,calc(100vw - 32px));height:min(790px,calc(100dvh - 105px));max-height:calc(100dvh - 105px);overflow-y:auto;overflow-x:hidden;padding-left:330px}
#ctm-ana-root .ctm-full-portrait{position:fixed;display:block;width:330px;height:min(790px,calc(100dvh - 105px));object-fit:cover;object-position:50% top;bottom:78px;right:calc(20px + min(960px,100vw - 32px) - 330px);border-radius:20px 0 0 20px;z-index:0}
#ctm-ana-root .ctm-panel>*:not(.ctm-full-portrait){position:relative;z-index:1}
#ctm-ana-root .ctm-panel>.ctm-header{margin-left:0;margin-right:0}
#ctm-ana-root .ctm-panel .ctm-faqs .ctm-btn{font-size:14px}
@media(max-width:700px){#ctm-ana-root .ctm-panel{width:calc(100vw - 16px);right:8px;bottom:85px;height:calc(100dvh - 105px);max-height:calc(100dvh - 105px);padding-left:0}#ctm-ana-root .ctm-full-portrait{position:relative;bottom:auto;right:auto;width:100%;height:190px;object-fit:cover;object-position:center 16%;border-radius:20px 20px 0 0}}

/* v0.4.1: double the floating launcher's size while keeping Ana's face proportional */
#ctm-ana-root .ctm-launch{
  min-height:140px!important;
  max-width:560px!important;
  gap:20px!important;
  padding:12px 28px 12px 12px!important;
  border-radius:76px!important;
}
#ctm-ana-root .ctm-launch-photo{
  width:110px!important;
  height:110px!important;
  flex:0 0 110px;
  object-fit:cover;
  object-position:center 22%;
  border-radius:50%;
}
#ctm-ana-root .ctm-launch-copy{font-size:18px;line-height:1.35}
#ctm-ana-root .ctm-launch-copy strong{font-size:24px}
@media(max-width:600px){
 #ctm-ana-root .ctm-launch{max-width:calc(100vw - 20px)!important;min-height:112px!important;gap:12px!important;padding:9px 16px 9px 9px!important}
 #ctm-ana-root .ctm-launch-photo{width:90px!important;height:90px!important;flex-basis:90px}
 #ctm-ana-root .ctm-launch-copy{font-size:14px}
 #ctm-ana-root .ctm-launch-copy strong{font-size:19px}
}

/* v0.4.2 accessible navigation controls */
#ctm-ana-root .ctm-back{display:block;margin:12px 20px;background:#eaf2ff;color:#064b9d;border:1px solid #b6d1f2;font-weight:700;text-align:left}
#ctm-ana-root .ctm-resume{display:block;margin:12px 20px;background:#0755ad;color:white;font-weight:700}

/* v0.4.3: Ana's face smaller inside same-size black circular avatar */
#ctm-ana-root .ctm-launch-photo{background:#000!important;object-fit:contain!important;object-position:center!important;border:3px solid #fff!important;}

/* v0.5.0 approved, unmodified Ana artwork for floating button */
#ctm-ana-root .ctm-launch{display:block!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;min-height:0!important;max-width:none!important;width:min(440px,calc(100vw - 24px))!important;line-height:0!important;overflow:visible!important;}
#ctm-ana-root .ctm-approved-launch{display:block;width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 5px 12px #003c7840);}
#ctm-ana-root .ctm-launch:focus-visible{outline:3px solid #ffb300;outline-offset:4px;border-radius:80px!important;}
#ctm-ana-root .ctm-faq-search{display:flex;gap:8px;margin:10px 16px;}
#ctm-ana-root .ctm-faq-search input{min-width:0;flex:1;border:1px solid #b7c9e0;border-radius:9px;padding:10px;font-size:15px;}
#ctm-ana-root .ctm-faq-search button{flex-shrink:0;}
@media(max-width:700px){#ctm-ana-root .ctm-launch{width:min(330px,calc(100vw - 20px))!important;right:10px!important;bottom:10px!important;}}

/* v0.5.1: header uses the identical approved avatar artwork from the floating button */
#ctm-ana-root .ctm-header .ctm-portrait{width:72px;height:72px;flex:0 0 72px;object-fit:contain;border:0!important;border-radius:50%;background:transparent;margin:0}

/* v0.5.2 ticket cancellation */
#ctm-ana-root .ctm-cancel{display:block;margin:12px 20px;background:#fff;color:#9c2430;border:1px solid #cb8b93;font-weight:700}
#ctm-ana-root .ctm-cancel:hover{background:#fff0f1}

/* v0.5.3: accessible contrast for navigation and contact controls */
#ctm-ana-root .ctm-panel .ctm-back,
#ctm-ana-root .ctm-panel button.ctm-back{
 background:#e6f0ff!important;color:#073b7a!important;
 border:2px solid #1460bc!important;font-weight:700!important;
 opacity:1!important;text-shadow:none!important;
}
#ctm-ana-root .ctm-panel .ctm-back:hover,
#ctm-ana-root .ctm-panel .ctm-back:focus-visible{background:#d1e4ff!important;color:#052d61!important;}
#ctm-ana-root .ctm-panel .ctm-call,
#ctm-ana-root .ctm-panel a.ctm-call{
 background:#0755c6!important;color:#fff!important;
 opacity:1!important;text-shadow:none!important;
}
#ctm-ana-root .ctm-panel .ctm-call:hover,
#ctm-ana-root .ctm-panel .ctm-call:focus-visible{background:#053f98!important;color:#fff!important;}

/* v0.5.5: explicit accessible navigation and cancellation controls */
#ctm-ana-root .ctm-panel button.ctm-back {display:block!important;visibility:visible!important;opacity:1!important;background-color:#e2efff!important;color:#063a79!important;border:2px solid #0755ad!important;border-radius:10px!important;padding:12px 16px!important;font-size:15px!important;font-weight:800!important;text-shadow:none!important;box-shadow:none!important;min-height:46px!important;cursor:pointer!important;}
#ctm-ana-root .ctm-panel button.ctm-cancel {display:block!important;visibility:visible!important;opacity:1!important;background-color:#fff4f4!important;color:#8b1420!important;border:2px solid #b42332!important;border-radius:10px!important;padding:12px 16px!important;font-size:15px!important;font-weight:800!important;text-shadow:none!important;box-shadow:none!important;min-height:46px!important;cursor:pointer!important;}
#ctm-ana-root .ctm-panel button.ctm-cancel:hover {background-color:#ffe4e6!important;color:#6d0f18!important;}
#ctm-ana-root .ctm-panel .ctm-ticket button.ctm-cancel-form {margin:14px 0 6px!important;width:100%!important;}
#ctm-ana-root .ctm-panel button.ctm-back:focus-visible,#ctm-ana-root .ctm-panel button.ctm-cancel:focus-visible {outline:3px solid #ffbf00!important;outline-offset:2px!important;}
