/* MISTER FAST V56.1 — CLEAN MINI RUNTIME */
:root{--blue:#003DA5;--blue2:#0754b8;--yellow:#FFC400;--text:#0b2d5c;--line:#dce6f4;--soft:#f7faff}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;font-family:Kanit,Prompt,Arial,sans-serif;color:var(--text)}
body.mf514-body{min-height:100vh;background:transparent;padding:24px;overflow:hidden}
button,input{font:inherit}.mf514-window{position:relative;width:min(560px,calc(100vw - 48px));height:min(680px,calc(100vh - 48px));min-width:360px;min-height:560px;background:#fff;border:1px solid #c9d7e9;border-radius:18px;box-shadow:0 20px 60px rgba(0,45,105,.24);overflow:hidden;display:flex;flex-direction:column}
.mf514-titlebar{flex:0 0 54px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;background:#fff;border-bottom:1px solid var(--line);cursor:move;user-select:none}.mf514-title{display:flex;align-items:center;gap:10px}.mf514-title>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--yellow)}.mf514-title b{display:block;font-size:16px}.mf514-title small{display:none}.mf514-titlebar-right{display:flex;align-items:center;gap:8px}.mf514-status{display:none}
.mf514-grid{flex:1;min-height:0;display:grid;grid-template-columns:76px minmax(0,1fr)}
.mf514-sidebar{min-height:0;background:linear-gradient(180deg,var(--blue),#084a9f);padding:8px 6px;overflow-y:auto;scrollbar-width:thin}.mf514-brand,.mf514-user{display:none}.mf514-menu{display:grid;gap:8px}.mf514-menu button{position:relative;width:62px;min-height:54px;border:0;border-radius:14px;background:rgba(15,91,190,.85);color:#fff;display:grid;place-items:center;cursor:pointer}.mf514-menu button span{font-size:23px}.mf514-menu button b{display:none}.mf514-menu button.is-active{background:var(--yellow);color:var(--blue)}.mf514-menu button.is-active:before{content:"";position:absolute;left:-6px;top:12px;bottom:12px;width:4px;border-radius:4px;background:var(--yellow)}
.mf514-map-pane{display:none;min-width:0;min-height:0;background:#fff;overflow:hidden}.mf514-map-toolbar{display:flex;align-items:center;gap:12px;padding:10px;background:#fff;border-bottom:1px solid var(--line)}.mf534-map-title{display:none}.mf514-routebar{display:flex;gap:8px;flex:1}.mf514-routebar button{flex:1;border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px}.mf514-routebar button.is-active{border-color:var(--yellow);background:#fff8d7}.mf514-kpis{display:none}.mf514-map-wrap{position:relative;min-height:0;height:100%}#mf514Map{height:100%;min-height:360px}.mf532-radius-panel{position:absolute;left:12px;right:12px;bottom:12px;z-index:600;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:16px;padding:10px}.mf532-radius-head,.mf532-radius-summary,.mf54-nearest-driver,.mf542-driver-rail{display:none}.mf532-radius-presets{display:flex;gap:6px}.mf532-radius-presets button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:6px 10px}.mf532-radius-presets button.is-active{background:var(--yellow);border-color:var(--yellow)}
.mf514-chat-pane{min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;background:#fff;overflow:hidden}.mf514-chat-head{flex:0 0 64px;display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:2px solid var(--yellow);background:#fff}.mf545-chat-brand{display:flex;align-items:center;gap:10px}.mf545-chat-brand>span{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#fff5c2;border:1px solid #ffe17a}.mf545-chat-brand b{display:block;font-size:18px}.mf545-chat-brand small{display:block;font-size:11px}.mf545-chat-brand small i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#18c56e;margin-right:4px}.mf514-chat-head-actions{display:flex;align-items:center;gap:8px}.mf514-expand-toggle,.mf514-chat-head-actions button{width:42px;height:42px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--blue);cursor:pointer}
.mf514-members{flex:0 0 78px;display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);background:#fff}.mf514-members button,.mf514-members a{border:0;background:#fff;text-decoration:none;color:var(--text);display:grid;place-items:center;align-content:center;gap:2px;min-width:0}.mf514-members span{font-size:20px}.mf514-members b{font-size:10px;white-space:nowrap}.mf514-members small{font-size:7px;color:#789;white-space:nowrap}.mf514-members .is-active{background:#fff8dc;border-bottom:2px solid var(--yellow)}
.mf514-messages{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:12px;background:var(--soft);scrollbar-gutter:stable}.mf514-empty{text-align:center;padding:40px;color:#789}.mf514-message{display:flex;gap:7px;margin:9px 0;align-items:flex-end}.mf514-message.is-mine{flex-direction:row-reverse}.mf514-message-avatar{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:#fff;border:1px solid #d8e4f4}.mf514-message>div{max-width:76%;padding:10px 12px;border-radius:15px 15px 15px 5px;background:#eaf3ff;border:1px solid #cfe0f7}.mf514-message.is-mine>div{background:#fff7d7;border-color:#ffd55a;border-radius:15px 15px 5px 15px}.mf514-message b{display:block;font-size:10px}.mf514-message b em{margin-left:5px;font-size:7px;color:#65758b}.mf514-message p{margin:5px 0;font-size:11px;word-break:break-word}.mf514-message small{display:block;font-size:7px;color:#789}
.mf514-emoji{flex:0 0 45px;display:flex;gap:5px;padding:6px 8px;border-top:1px solid var(--line);overflow-x:auto;background:#fff}.mf514-emoji[hidden]{display:none}.mf514-emoji button{flex:0 0 34px;height:34px;border:0;border-radius:10px;background:#f1f5fb;cursor:pointer}.mf514-composer{flex:0 0 60px;display:flex;align-items:center;gap:5px;padding:8px;border-top:1px solid var(--line);background:#fff}.mf514-composer>button:not(.mf514-send){flex:0 0 31px;width:31px;height:31px;border:1px solid #d6e2f2;border-radius:9px;background:#f6f9fe;cursor:pointer}.mf514-composer>input[name=message]{display:block;min-width:0;flex:1;height:38px;border:1px solid #d6e2f2;border-radius:19px;padding:0 12px;font-size:12px;outline:none}.mf514-send{flex:0 0 42px;width:42px;height:42px;border:0;border-radius:50%;background:var(--yellow);color:var(--blue);font-size:22px;cursor:pointer}.mf514-send:disabled{opacity:.55}.mf52-ticker{display:none}.mf544-room-dialog{border:0;border-radius:18px;padding:0;max-width:380px;width:calc(100% - 32px)}
.mf514-window.is-expanded{width:min(1180px,calc(100vw - 32px));height:min(760px,calc(100vh - 32px))}.mf514-window.is-expanded .mf514-grid{grid-template-columns:76px minmax(0,1fr) minmax(320px,38%)}.mf514-window.is-expanded .mf514-map-pane{display:block}.mf514-window.is-expanded .mf514-chat-pane{display:flex}.mf514-window.is-map-fullscreen .mf514-grid{grid-template-columns:76px minmax(0,1fr)}.mf514-window.is-map-fullscreen .mf514-chat-pane{display:none}
@media(max-width:700px){body.mf514-body{padding:0}.mf514-window,.mf514-window.is-expanded{width:100vw;height:100dvh;min-width:0;min-height:0;border:0;border-radius:0}.mf514-window.is-expanded .mf514-grid{grid-template-columns:62px minmax(0,1fr)}.mf514-window.is-expanded .mf514-chat-pane{display:none}.mf514-grid{grid-template-columns:62px minmax(0,1fr)}.mf514-menu button{width:50px}.mf514-titlebar{display:none}}


/* V56.2 LOGIN PRODUCTION */
.mf545-auth-state{border:0;text-decoration:none;cursor:pointer;padding:0;background:transparent;color:inherit}.mf545-auth-state span{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#fff5c2;border:1px solid #ffe17a}.mf545-auth-state.is-online span{background:#fff5c2}.mf56-login-modal{position:fixed;inset:0;z-index:5000;display:none;place-items:center;padding:18px}.mf56-login-modal.is-open{display:grid}.mf56-login-backdrop{position:absolute;inset:0;border:0;background:rgba(0,31,75,.34);backdrop-filter:blur(3px)}.mf56-login-dialog{position:relative;width:min(390px,100%);background:#fff;border-radius:20px;padding:24px;box-shadow:0 30px 80px rgba(0,35,85,.28);display:grid;gap:12px}.mf56-login-close{position:absolute;right:12px;top:12px;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--blue);font-size:20px;cursor:pointer}.mf56-login-mark{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--yellow);color:var(--blue);font-weight:900;font-size:20px}.mf56-login-dialog>small{font-size:10px;color:#71819a;font-weight:700}.mf56-login-dialog h2{margin:0;color:var(--blue);font-size:22px}.mf56-login-dialog p{margin:0;color:#62728a;font-size:12px}.mf56-login-dialog form{display:grid;gap:12px}.mf56-login-dialog label{display:grid;gap:6px}.mf56-login-dialog label span{font-size:11px;font-weight:700}.mf56-login-dialog input{width:100%;height:44px;border:1px solid #cad8ec;border-radius:12px;padding:0 12px;outline:none}.mf56-login-dialog input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,61,165,.10)}.mf56-password{display:flex;align-items:center;border:1px solid #cad8ec;border-radius:12px;overflow:hidden}.mf56-password input{border:0;border-radius:0}.mf56-password button{width:44px;height:44px;border:0;background:#f5f8fd;cursor:pointer}.mf56-login-submit{height:46px;border:0;border-radius:13px;background:var(--yellow);color:var(--blue);font-weight:900;cursor:pointer}.mf56-login-error{padding:10px 12px;border-radius:10px;background:#fff0f0;color:#b42318;font-size:12px;font-weight:700}.mf56-login-dialog footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px}.mf56-login-dialog footer a,.mf56-login-dialog footer button{font-size:11px;color:var(--blue);background:none;border:0;text-decoration:none;cursor:pointer}.mf514-composer input[readonly]{cursor:pointer;background:#f8fbff}

/* V61.3.3 Mini inline authentication */
.mf56-magic-submit{height:44px;border:1px solid #003da5;border-radius:13px;background:#fff;color:#003da5;font-weight:900;cursor:pointer}
.mf56-magic-submit:disabled,.mf56-login-submit:disabled{opacity:.62;cursor:wait}
.mf56-login-status{min-height:18px;font-size:11px;text-align:center;color:#62728a;font-weight:700}
.mf56-login-status.is-error{color:#b42318}.mf56-login-status.is-success{color:#067647}
.mf56-login-dialog footer span{font-size:10px;color:#71819a}
.mf612-native-account-menu button{width:100%;border:0;background:#fff;padding:10px 12px;text-align:left;color:#003da5;font-weight:800;cursor:pointer}
