:root{--ink:#102a43;--brand:#149b6c;--brand-dark:#08734c;--bg:#f5f7f8;--card:#fff;--line:#e0e6e9;--muted:#6b7884;--danger:#d84f43;--radius:16px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 Inter,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.loading,.page-loading{display:grid;place-items:center;min-height:100vh;color:var(--muted)}.page-loading{min-height:260px}.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-copy{background:var(--ink);color:#fff;padding:clamp(40px,10vw,140px);display:grid;align-content:center}.brand-dot{display:inline-block;width:11px;height:11px;border-radius:50%;background:var(--brand);margin-right:9px}.auth-copy h1{font-size:clamp(52px,8vw,100px);line-height:.82;margin:26px 0}.auth-copy p{font-size:18px;color:#c6d4dc}.auth-panel{display:grid;align-content:center;padding:clamp(30px,9vw,130px);background:#fff}.auth-tabs{display:flex;gap:8px;margin-bottom:24px}.auth-tabs button,.text-button{border:0;background:transparent;color:var(--muted);padding:9px 0;margin-right:18px}.auth-tabs .active{color:var(--ink);font-weight:800;border-bottom:2px solid var(--brand)}.form{display:grid;gap:12px}.form input,.form select,.form textarea,.search,.inline-form input{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}.form textarea{min-height:90px;resize:vertical}.primary,.secondary,.danger,.simple-list button,.card-actions button{border:0;border-radius:10px;padding:11px 14px;font-weight:750}.primary{background:var(--brand);color:#fff}.primary:disabled{opacity:.55}.secondary,.simple-list button,.card-actions button{background:#eef3f4;color:var(--ink)}.danger{background:var(--danger);color:#fff}.form-error{color:var(--danger);min-height:20px}.shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:24px 16px;display:flex;flex-direction:column;background:var(--ink);color:#fff}.logo{border:0;background:none;color:#fff;text-align:left;font-size:18px;font-weight:900;padding:8px}.site-select{display:grid;gap:6px;margin:26px 8px 18px}.site-select span,.account small,.topbar small{font-size:11px;letter-spacing:.1em;text-transform:uppercase}.site-select select{border:1px solid #ffffff2c;border-radius:9px;padding:10px;background:#ffffff12;color:#fff}.site-select option{color:var(--ink)}.sidebar nav{display:grid;gap:4px}.sidebar nav button{border:0;background:transparent;color:#b8c8d0;text-align:left;padding:11px 12px;border-radius:9px}.sidebar nav button.active{background:#ffffff14;color:#fff}.account{display:grid;gap:4px;margin:auto 8px 0}.account small{color:#aab9c2}.main{min-width:0;padding:28px clamp(18px,5vw,70px) 90px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}.topbar h1{font-size:28px;margin:2px 0}.topbar small{color:var(--brand-dark)}.connection{font-size:12px;color:var(--muted)}.connection.online{color:var(--brand-dark)}.mobile-site,.bottom-nav{display:none}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px}.welcome{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:30px;border-radius:var(--radius);background:var(--ink);color:#fff}.welcome h2{font-size:30px;margin:5px 0}.welcome p{margin:0;color:#c9d8df}.welcome small,.radar-head small,.visibility small{letter-spacing:.1em;color:#70dfb4}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}.summary article{padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.summary small{color:var(--muted)}.summary strong{display:block;font-size:28px;margin-top:6px}.radar-head,.visibility{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:17px;padding:20px 24px;border-radius:var(--radius);background:var(--ink);color:#fff}.radar-head h2,.visibility h2{margin:3px 0}.radar-head p{margin:0;color:#c6d4dc}.radar-head>span{font-weight:700}.radar-grid,.two-columns,.dial-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.radar{position:relative;aspect-ratio:1;border-radius:50%;overflow:hidden;background:radial-gradient(circle,#1d4b57,#102a43 68%);border:8px solid #fff}.ring{position:absolute;border:1px solid #50d8af63;border-radius:50%}.ring-one{inset:16%}.ring-two{inset:33%}.radar:before,.radar:after{content:"";position:absolute;background:#55dcb13c}.radar:before{left:50%;height:100%;width:1px}.radar:after{top:50%;height:1px;width:100%}.sweep{position:absolute;inset:0;background:conic-gradient(transparent 0 79%,#5be4b868 96%,transparent);animation:sweep 5s linear infinite}.radar-center{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--danger);color:#fff;font-size:11px}.radar-dot{position:absolute;z-index:3;width:36px;height:36px;border:0;border-radius:50%;background:var(--brand);color:#fff;box-shadow:0 0 0 7px #14a36d35}.dot-0{top:23%;left:22%}.dot-1{top:26%;right:23%}.dot-2{bottom:21%;left:26%}.dot-3{bottom:25%;right:20%}.dot-4{top:15%;left:46%}.dot-5{top:50%;left:10%}.dot-6{top:53%;right:11%}.dot-7{bottom:11%;right:42%}@keyframes sweep{to{transform:rotate(360deg)}}.radar-action{display:grid;align-content:center;gap:14px}.radar-action h2{margin:0}.radar-action p{color:var(--muted);margin:0}.request-button{min-height:56px;font-size:17px}.radar-action small{color:var(--muted);min-height:20px}.compact-form{margin-top:4px}.simple-list{display:grid;gap:10px}.simple-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;border-radius:11px;background:#f7f9fa}.simple-list article>div,.simple-list article div{display:grid;gap:2px}.simple-list span{color:var(--muted);font-size:13px}.route-active{display:grid;gap:10px;padding:16px;border-radius:11px;background:#e6f8f0}.muted{color:var(--muted)}.dialer{padding:25px;border-radius:var(--radius);background:var(--ink);color:#fff;text-align:center}.dialer input{width:100%;border:0;border-bottom:1px solid #ffffff4c;background:transparent;color:#fff;font-size:29px;text-align:center;padding:13px;outline:0}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px auto;max-width:330px}.keypad button{aspect-ratio:1.35;border:1px solid #ffffff27;border-radius:50%;background:#ffffff0d;color:#fff;font-size:19px}.contact-list{display:grid;gap:8px}.contact-list button{display:grid;text-align:left;gap:2px;border:1px solid var(--line);border-radius:10px;padding:11px;background:#fff}.contact-list small{color:var(--muted)}.chat{height:min(650px,calc(100vh - 170px));min-height:480px;display:grid;grid-template-columns:300px 1fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}.chat>aside{overflow:auto;border-right:1px solid var(--line);padding:16px}.chat>aside h2{margin:4px 0 15px}.chat>aside button{width:100%;display:grid;gap:3px;text-align:left;padding:13px 5px;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--ink)}.chat>aside small{color:var(--brand-dark)}.chat-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.chat-panel header{display:flex;align-items:center;gap:12px;padding:13px 16px;border-bottom:1px solid var(--line)}.chat-panel header div{display:grid;margin-right:auto}.chat-panel header small{color:var(--muted)}.chat-empty{display:grid;place-items:center;color:var(--muted)}.message-flow{overflow:auto;display:flex;flex-direction:column;gap:8px;padding:18px}.bubble{display:grid;gap:3px;align-self:flex-start;max-width:75%;padding:10px 12px;border-radius:13px;background:#eef2f4}.bubble.mine{align-self:flex-end;background:#dff7ed}.bubble small{font-size:10px;text-align:right;color:var(--muted)}.composer{display:flex;padding:12px;border-top:1px solid var(--line)}.composer input{min-width:0;flex:1;border:1px solid var(--line);border-radius:10px 0 0 10px;padding:12px}.composer button{border-radius:0 10px 10px 0}.visibility{background:linear-gradient(120deg,var(--ink),#1b4c66)}.user-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:13px;margin-top:15px}.user-card h3{margin:12px 0 3px}.user-card p{min-height:44px;color:var(--muted)}.avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#dff7ed;color:var(--brand-dark);font-weight:900}.card-actions{display:flex;gap:7px;flex-wrap:wrap}.inline-form{display:flex;gap:10px}.payment-info{display:grid;gap:5px;margin-top:14px;padding:14px;border-radius:10px;background:#e6f8f0}.payment-info span,.payment-info small{color:var(--muted)}dialog{border:0;border-radius:18px;box-shadow:0 24px 70px #0004}dialog::backdrop{background:#081f32cc}.call-dialog{width:min(350px,88vw);padding:28px;text-align:center}.call-avatar{display:grid;place-items:center;width:74px;height:74px;margin:20px auto;border-radius:50%;background:#dff7ed;color:var(--brand-dark);font-size:28px;font-weight:800}.dialog-actions{display:flex;justify-content:center;gap:10px}.hidden{display:none!important}#toast{position:fixed;z-index:50;right:18px;bottom:18px;max-width:min(360px,calc(100vw - 36px));padding:12px 14px;border-radius:10px;background:var(--ink);color:#fff;transform:translateY(140px);opacity:0;transition:.2s}#toast.show{transform:none;opacity:1}#toast.error{background:var(--danger)}
@media(max-width:850px){.auth{grid-template-columns:1fr}.auth-copy{display:none}.shell{display:block}.sidebar{display:none}.main{padding:16px 13px 80px}.topbar{margin-bottom:18px}.topbar h1{font-size:23px}.connection{display:none}.mobile-site{display:grid;gap:3px;max-width:48vw;font-size:10px;color:var(--muted)}.mobile-site select{border:1px solid var(--line);border-radius:8px;padding:7px;background:#fff}.bottom-nav{position:fixed;z-index:20;bottom:0;left:0;right:0;display:flex;justify-content:space-around;gap:2px;padding:7px;background:#fff;border-top:1px solid var(--line)}.bottom-nav button{border:0;background:#fff;color:var(--muted);font-size:10px;padding:7px 3px}.bottom-nav button.active{color:var(--brand-dark);font-weight:800}.welcome,.radar-head,.visibility{align-items:flex-start;flex-direction:column;padding:20px}.summary,.radar-grid,.two-columns,.dial-layout{grid-template-columns:1fr}.summary article{padding:15px}.summary strong{font-size:22px}.radar{max-width:500px;margin:auto;width:100%}.chat{position:relative;height:calc(100dvh - 155px);min-height:440px;grid-template-columns:1fr}.chat>aside{border-right:0}.chat-panel{display:none;position:absolute;inset:0;background:#fff}.chat-panel:has(#messageFlow){display:grid}.inline-form{display:grid}.simple-list article{align-items:flex-start;flex-wrap:wrap}.simple-list article button{margin-left:auto}.user-grid{grid-template-columns:1fr}.bubble{max-width:85%}}
.drawer-open{display:block;border:0;background:var(--ink);color:#fff;border-radius:9px;width:38px;height:38px;font-size:22px;line-height:1}.mobile-drawer{position:fixed;z-index:60;top:0;bottom:0;left:0;width:min(310px,84vw);padding:25px 18px;background:var(--ink);color:#fff;transform:translateX(-105%);transition:transform .22s ease;display:block}.drawer-opened .mobile-drawer{transform:none}.drawer-backdrop{display:none;position:fixed;z-index:55;inset:0;border:0;background:#06162299}.drawer-opened .drawer-backdrop{display:block}.drawer-close{position:absolute;top:14px;right:16px;border:0;background:transparent;color:#fff;font-size:30px}.drawer-brand{font-weight:900;font-size:18px;margin:10px 0 28px}.drawer-site{display:grid;gap:6px;margin-bottom:20px;color:#b8c8d0;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.drawer-site select{padding:10px;border:1px solid #ffffff2f;border-radius:9px;background:#ffffff12;color:#fff}.drawer-site option{color:var(--ink)}.mobile-drawer nav{display:grid;gap:5px}.mobile-drawer nav button{border:0;background:transparent;color:#c5d3d9;text-align:left;padding:12px;border-radius:8px;font-size:16px}.mobile-drawer nav button:active{background:#ffffff16;color:#fff}.dialer-only{max-width:480px;margin:auto}.contact-row{display:flex;align-items:center;gap:12px;padding:12px;border-bottom:1px solid var(--line)}.contact-row>div:nth-child(2){display:grid;gap:2px;margin-right:auto}.contact-row small{color:var(--muted)}
@media(max-width:850px){.bottom-nav,.mobile-site{display:none}.drawer-open{display:block;border:0;background:var(--ink);color:#fff;border-radius:9px;width:38px;height:38px;font-size:22px;line-height:1}.mobile-drawer{position:fixed;z-index:60;top:0;bottom:0;left:0;width:min(310px,84vw);padding:25px 18px;background:var(--ink);color:#fff;transform:translateX(-105%);transition:transform .22s ease;display:block}.drawer-opened .mobile-drawer{transform:none}.drawer-backdrop{position:fixed;z-index:55;inset:0;border:0;background:#06162299}.drawer-opened .drawer-backdrop{display:block}.drawer-close{position:absolute;top:14px;right:16px;border:0;background:transparent;color:#fff;font-size:30px}.drawer-brand{font-weight:900;font-size:18px;margin:10px 0 28px}.drawer-site{display:grid;gap:6px;margin-bottom:20px;color:#b8c8d0;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.drawer-site select{padding:10px;border:1px solid #ffffff2f;border-radius:9px;background:#ffffff12;color:#fff}.drawer-site option{color:var(--ink)}.mobile-drawer nav{display:grid;gap:5px}.mobile-drawer nav button{border:0;background:transparent;color:#d7e1e5;text-align:left;padding:14px 12px;border-radius:8px;font-size:18px}.mobile-drawer nav button:active{background:#ffffff16;color:#fff}.contact-row{padding:14px 0}.dialer-only{min-height:510px;display:grid;align-content:center}}

/* Estructura global: cabecera fija, chat a alto completo y navegación legible. */
.sidebar nav button{font-size:17px;padding:13px 12px;color:#d1dce1}.main{padding-top:118px}.topbar{position:fixed;z-index:40;top:0;left:250px;right:0;margin:0;padding:20px clamp(18px,5vw,70px);background:var(--bg);border-bottom:1px solid var(--line)}.chat{height:calc(100dvh - 145px);max-height:none}.mobile-drawer nav button{font-size:18px;padding:14px 12px;color:#d7e1e5}
@media(max-width:850px){.main{padding-top:94px}.topbar{left:0;right:0;margin:0;padding:11px 13px}.chat{height:calc(100dvh - 112px);max-height:none}}

/* Chat profesional: sin recargas de pantalla, composer estable y mensajes incrementales. */
.professional-chat{position:relative}.chat-list-head{padding:4px 0 14px;border-bottom:1px solid var(--line)}.chat-list-head h2{margin:0}.chat-list-head small{color:var(--brand-dark)}.professional-chat aside button{display:flex;align-items:center;gap:10px;padding:13px 4px}.professional-chat aside button>span:last-child{display:grid;gap:2px;min-width:0}.professional-chat aside b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-flow{scroll-behavior:smooth}.composer{align-items:flex-end;background:#fff}.composer textarea{min-width:0;max-height:112px;flex:1;resize:none;border:1px solid var(--line);border-radius:12px 0 0 12px;padding:12px;line-height:1.35;outline:none}.composer textarea:focus{border-color:var(--brand)}.composer button{min-height:46px;border-radius:0 12px 12px 0}.new-messages{position:absolute;z-index:4;bottom:76px;left:50%;transform:translateX(-50%);border:0;border-radius:20px;padding:8px 12px;background:var(--ink);color:#fff;box-shadow:0 6px 18px #102a4344}.bubble{animation:message-in .16s ease-out}@keyframes message-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media(max-width:850px){.professional-chat .chat-panel{inset:0}.professional-chat .composer{padding:9px}.professional-chat .message-flow{padding:14px}.professional-chat .bubble{max-width:88%}}

/* Experiencia móvil tipo aplicación Android. */
@media(max-width:850px){html,body,#app{min-height:100%;background:#f3f5f7}body{overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}.main{padding:calc(78px + env(safe-area-inset-top)) 12px calc(18px + env(safe-area-inset-bottom))}.topbar{height:calc(64px + env(safe-area-inset-top));padding:calc(8px + env(safe-area-inset-top)) 16px 8px;background:#fff;box-shadow:0 1px 0 #dfe5e8}.topbar h1{font-size:21px;line-height:1.05}.topbar small{font-size:9px}.drawer-open{width:44px;height:44px;border-radius:12px;font-size:24px;box-shadow:0 3px 10px #102a4322}.mobile-drawer{width:min(336px,88vw);padding:calc(20px + env(safe-area-inset-top)) 18px 22px;border-radius:0 20px 20px 0;box-shadow:8px 0 28px #081a2b55}.drawer-brand{font-size:20px;margin:12px 0 30px}.drawer-site select{min-height:48px;font-size:16px}.mobile-drawer nav{gap:7px}.mobile-drawer nav button{min-height:52px;font-size:18px;padding:14px;border-radius:12px}.card{padding:16px;border-radius:14px;box-shadow:0 1px 3px #102a4212}.welcome{padding:22px;border-radius:18px}.welcome h2{font-size:26px}.welcome .primary{width:100%;min-height:50px}.summary{gap:9px;margin-top:12px}.summary article{padding:14px 12px;border-radius:14px}.summary strong{font-size:21px}.summary small{font-size:11px}.primary,.secondary,.danger,.simple-list button,.card-actions button{min-height:48px;border-radius:12px}.radar-head,.visibility{padding:17px 18px;border-radius:16px}.radar-head>span{font-size:13px}.radar{border-width:5px}.radar-action{padding:18px}.request-button{min-height:58px}.simple-list{gap:8px}.simple-list article{padding:13px;border-radius:12px}.dialer{border-radius:18px;padding:22px 16px;min-height:calc(100dvh - 110px)}.dialer input{font-size:32px;min-height:62px}.keypad{gap:12px;margin:24px auto}.keypad button{min-height:58px;font-size:22px}.contact-row{min-height:64px}.user-card{padding:18px}.professional-chat{position:fixed;z-index:20;top:calc(64px + env(safe-area-inset-top));right:0;bottom:0;left:0;height:auto;min-height:0;border:0;border-radius:0}.professional-chat>aside{padding:14px 16px;background:#fff}.professional-chat .chat-panel{position:absolute;inset:0;background:#fff}.professional-chat .chat-panel header{min-height:60px;padding:10px 14px}.professional-chat .message-flow{padding:14px 12px 12px}.professional-chat .composer{padding:8px 10px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -1px 8px #102a430d}.professional-chat .composer textarea{min-height:48px;padding:13px}.professional-chat .composer button{min-height:48px;padding:10px 15px}.new-messages{bottom:78px}.bubble{padding:10px 12px;border-radius:15px}.bubble.mine{border-bottom-right-radius:5px}.bubble:not(.mine){border-bottom-left-radius:5px}#toast{right:12px;bottom:calc(14px + env(safe-area-inset-bottom));border-radius:12px}.professional-chat~*{display:none}}
@media(max-width:850px){.professional-chat .chat-panel{display:grid!important;grid-template-rows:60px minmax(0,1fr) auto;overflow:hidden}.professional-chat .chat-panel header{position:relative;z-index:2;flex:none;background:#fff;border-bottom:1px solid var(--line)}.professional-chat .message-flow{min-height:0;overflow-y:auto;overscroll-behavior:contain}.professional-chat .composer{position:relative;z-index:2;flex:none}.dialer input{pointer-events:none;user-select:none}}
#page .radar-visible-people{margin-top:16px}.radar-person-actions{display:flex;gap:8px;flex-wrap:wrap}.radar-person-actions button{min-width:92px}@media(max-width:600px){.radar-visible-people .simple-list article{align-items:flex-start;gap:12px}.radar-person-actions{width:100%}.radar-person-actions button{flex:1}}
/* Chat móvil: solo el flujo desplaza; cabecera y compositor permanecen estables. */
@media(max-width:850px){.professional-chat{position:fixed!important;top:calc(64px + env(safe-area-inset-top));right:0;bottom:0;left:0;height:auto!important;min-height:0!important;overflow:hidden!important}.professional-chat .chat-panel{position:absolute!important;inset:0!important;display:grid!important;grid-template-rows:60px minmax(0,1fr) auto!important;overflow:hidden!important}.professional-chat .chat-panel>header{position:relative!important;top:auto!important;flex:none!important}.professional-chat .message-flow{min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important}.professional-chat .composer{position:relative!important;bottom:auto!important;flex:none!important}.professional-chat textarea{font-size:16px!important}}
.chat-lock,.chat-lock body{overflow:hidden!important;overscroll-behavior:none!important;position:static!important;width:100%!important;height:auto!important}
.payment-receipt{margin-top:18px;padding:22px;border:1px dashed #149b6c;border-radius:16px;background:linear-gradient(145deg,#f4fffa,#fff);display:grid;gap:12px}.receipt-brand{font-weight:900;letter-spacing:.08em;color:#08734c}.payment-receipt h3{margin:0;font-size:20px}.receipt-row{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #dfeae4}.receipt-row span{color:#6b7884}.receipt-reference{font-size:22px;letter-spacing:.16em;color:#08734c}.payment-receipt p{margin:4px 0 0;color:#6b7884;font-size:13px}
.profile-card{max-width:620px;display:grid;grid-template-columns:120px 1fr;gap:24px;align-items:start}.profile-avatar{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;background:#dff7ed;color:#08734c;font-size:34px;font-weight:800;overflow:hidden}.profile-avatar img{width:100%;height:100%;object-fit:cover}.avatar-upload{display:inline-block;color:#08734c;font-weight:700;cursor:pointer}.contact-row{background:#fff;border:1px solid var(--line);border-radius:14px;margin:6px 0;padding:10px 12px}.contact-row .avatar{width:38px;height:38px}.user-card{display:flex!important;align-items:center;gap:12px;padding:12px!important;border-radius:14px!important}.user-card .avatar{flex:none}.user-card>div:nth-child(2){flex:1}.user-card button{margin-left:auto}
.user-card .avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.user-card h3{margin:0;font-size:16px}.user-card p{margin:3px 0 0;color:var(--muted);font-size:13px}.user-card .card-actions{flex-wrap:nowrap}
.icon-button{width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important;padding:0!important;border-radius:50%!important;display:inline-grid;place-items:center;font-size:15px;line-height:1}.icon-button:hover{background:#dff7ed!important;color:#08734c}.user-grid{width:100%;min-width:0;overflow-x:hidden}.user-card{min-width:0;max-width:100%;overflow:hidden}.user-card .card-actions{gap:4px;flex:0 0 auto;min-width:100px}.user-card .card-actions button{margin:0!important}.user-card>div:nth-child(2){min-width:0;overflow:hidden}.user-card h3,.user-card p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:600px){#page{overflow-x:hidden}.user-card{gap:8px}.user-card .card-actions{min-width:96px}.user-card .avatar{width:36px;height:36px}}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-head h2,.section-head p{margin:0}.directory-card{padding:16px}.contact-list{gap:6px}.contact-row{display:flex;align-items:center;gap:10px;min-width:0}.contact-row>div:nth-child(2){min-width:0;overflow:hidden;flex:1}.contact-row b,.contact-row small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-row .card-actions,.call-history .card-actions{display:flex;gap:4px;flex:none}.contact-row .avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.danger-icon{background:#fff0ef!important;color:#b93830!important}.call-history article{display:grid!important;grid-template-columns:38px minmax(0,1fr) auto;align-items:center!important;gap:10px!important}.call-history article>div:nth-child(2){min-width:0}.call-history b,.call-history span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-empty{padding:28px 16px;text-align:center}.compact-empty p{color:var(--muted)}
@media(max-width:600px){.directory-card{padding:10px}.contact-row{padding:10px 6px;margin:0}.contact-row .card-actions,.call-history .card-actions{gap:2px}.contact-row .icon-button,.call-history .icon-button{width:30px!important;min-width:30px!important;height:30px!important;min-height:30px!important}.call-history article{grid-template-columns:34px minmax(0,1fr) auto!important;padding:10px 6px!important}}
.dial-save-contact{width:100%;margin-top:10px;min-height:48px;background:#ffffff14!important;color:#fff!important;border:1px solid #ffffff35!important}.dial-save-contact span{font-size:20px;margin-right:6px}
.whatsapp-button{display:block;margin-top:8px;padding:13px 16px;border-radius:11px;background:#25d366;color:#fff!important;text-align:center;text-decoration:none;font-weight:800}.danger-zone{max-width:620px;margin-top:18px;border-color:#f0c2be;background:#fffafa}.danger-zone h2{color:#b93830}.danger-zone p{color:var(--muted)}
@media(max-width:600px){.profile-card{grid-template-columns:1fr;justify-items:center}.profile-card .form{width:100%}}
@media(max-width:850px){.professional-chat{contain:layout paint!important;isolation:isolate!important}.professional-chat .chat-panel{position:fixed!important;top:calc(64px + env(safe-area-inset-top))!important;right:0!important;bottom:0!important;left:0!important;contain:layout paint!important;display:grid!important;grid-template-rows:60px minmax(0,1fr) auto!important;overflow:hidden!important;background:#fff!important}.professional-chat .chat-panel>header{position:relative!important;top:auto!important;left:auto!important;right:auto!important;height:60px!important;min-height:60px!important;z-index:30!important;background:#fff!important;transform:translateZ(0)!important;contain:layout paint!important}.professional-chat .message-flow{padding-top:14px!important;padding-bottom:76px!important;min-height:0!important;overflow-y:auto!important}.professional-chat .composer{position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:31!important;background:#fff!important}.professional-chat .composer textarea{height:48px!important;max-height:48px!important;overflow-y:auto!important;resize:none!important}}
.group-request-context{display:grid;gap:3px;padding:13px 15px;border-radius:12px;background:#e6f8f0;border:1px solid #b9ead5}.group-request-context small{color:var(--brand-dark);font-size:10px;font-weight:800;letter-spacing:.1em}.group-request-context strong{font-size:19px;color:var(--ink)}
@media(max-width:850px){.professional-chat .chat-panel:not(.chat-open){display:none!important}.professional-chat .chat-panel.chat-open{display:grid!important}.professional-chat>aside{display:block!important;overflow-y:auto}.chat-list-head h2{font-size:22px}.chat-list-head small{font-size:13px}.professional-chat #conversationRows button{min-height:68px;border-bottom:1px solid var(--line);font-size:16px}}
.voice-alert-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;padding:16px 18px;border-radius:14px;background:#fff4d6;border:1px solid #f0d281}.voice-alert-banner>div{display:grid;gap:3px}.voice-alert-banner span{color:#6b5a2c;font-size:13px}@media(max-width:600px){.voice-alert-banner{align-items:stretch;flex-direction:column}.voice-alert-banner .primary{width:100%}}
@media(max-width:850px){.topbar .connection{display:inline-flex;padding:5px 8px;border-radius:999px;background:#fff1cf;color:#765b12;font-size:10px;white-space:nowrap}.topbar .connection.online{background:#def7ea;color:#08734c}.network-offline .topbar{border-bottom-color:#e0a7a2}.network-offline .topbar .connection{background:#ffe5e2;color:#a33129}}
