/* [topbarfit 66 2026-10-09] item 66 HOTFIX (replaces the item 24 r2 badge bitmaps + wrap-at-every-width rule of Bundle 3).
   Operator 10-09: the bar must FIT the Chrome window (one row, tiles shrink, nothing moves; wrap only on phones) and every
   button gets the tile style of the AI mockup (colours + icons sampled by item 66b). Icons are SVG masks on the existing .tb-icon
   spans: no id, handler, text or state class changes. .rec-on / emergency-flash / .tb-xmon-off / .aux-alarm / PATCH live border /
   .tb-mic-attention still win (inline or !important). Generated by topbarfit tools/build-css.js from vendor/icons.js + tiles.css. */
.topbar .tb-station.tb-station-clock{align-self:stretch;justify-content:flex-start;gap:calc(4px * var(--n0-space, 1));padding-top:calc(6px * var(--n0-space, 1))}
.topbar .tb-station.tb-station-clock .topbar-time{min-width:0;white-space:nowrap;overflow:hidden;line-height:1.1;text-align:left;letter-spacing:0}
#app .topbar{--h:73px}
#app .topbar .tb-station{background:linear-gradient(180deg,var(--n0-c-071a3a, #071a3a) 0%,var(--n0-c-051430, #051430) 50%,var(--n0-c-020c22, #020c22) 100%);border:1.5px solid var(--n0-c-1ab4cc, #1ab4cc);border-radius:calc(var(--h)*.065);box-shadow:inset 0 0 3px var(--n0-c-1ab4cc-a500, rgba(26,180,204,.5));box-sizing:border-box}
#app .topbar .tb-station.tb-station-clock{align-self:center;height:var(--h);padding-top:calc(9px * var(--n0-space, 1))}
#app .topbar .tb-station .tb-station-id{color:var(--n0-c-f2f6fb, #f2f6fb)}
#app .topbar .tb-station .topbar-time{color:var(--n0-c-29c6e0, #29c6e0);font-family:var(--n0-font-courier-new, "Courier New",Courier,monospace)}
#app .topbar .tb-btn{--bd:var(--n0-c-494f5a, #494f5a);--gl:var(--n0-c-494f5a-a500, rgba(73,79,90,.5));--f1:var(--n0-c-151b26, #151b26);--f2:var(--n0-c-151a27, #151a27);--f3:var(--n0-c-0b1320, #0b1320);--ic:var(--n0-c-bcc1c4, #bcc1c4);--lb:var(--n0-c-ffffff, #fff);--sb:var(--n0-c-7b7f85, #7b7f85);--svg:none;--icw:1;--lbfs:calc(var(--h)*.17);--sbfs:max(9px,calc(var(--h)*.12));height:var(--h);min-width:calc(var(--h)*.935);box-sizing:border-box;flex:0 1 auto;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--h)*.045);padding:calc(var(--h)*.06) calc(var(--h)*.05) calc(var(--h)*.05);background:linear-gradient(180deg,var(--f1) 0%,var(--f2) 50%,var(--f3) 100%);border:1.5px solid var(--bd);border-radius:calc(var(--h)*.065);box-shadow:inset 0 0 calc(var(--h)*.03) var(--gl);color:var(--lb);font-family:var(--n0-font-courier-new, "Courier New",Courier,monospace);white-space:nowrap}
#app .topbar .tb-btn[style*="inline-block"]{display:flex!important}
#app .topbar .tb-btn:hover{filter:brightness(1.15)}
#app .topbar .tb-btn .tb-icon,#app .topbar #patch-btn:not(:has(.tb-icon))::before,#app .topbar .tb-btn[data-n0-click="doLogout()"]::before{content:"";display:block;flex:0 0 auto;font-size:0!important;color:transparent!important;height:calc(var(--h)*.35);width:calc(var(--h)*.35*var(--icw));background-color:var(--ic);-webkit-mask:var(--svg) center/contain no-repeat;mask:var(--svg) center/contain no-repeat}
#app .topbar .tb-btn .tb-label{font-size:var(--lbfs);font-weight:700;letter-spacing:-.02em;color:var(--lb);text-transform:uppercase;line-height:1;max-width:100%;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px var(--n0-c-000000-a450, rgba(0,0,0,.45))}
#app .topbar .tb-btn .tb-sub{display:block;font-size:var(--sbfs);font-weight:700;letter-spacing:0;color:var(--sb);text-transform:uppercase;line-height:1;max-width:100%;overflow:hidden;text-overflow:ellipsis;text-shadow:none}
#app .topbar .tb-btn.tb-alert{--bd:var(--n0-c-fc800e, #fc800e);--gl:var(--n0-c-fc800e-a500, rgba(252,128,14,.5));--f1:var(--n0-c-742901, #742901);--f2:var(--n0-c-ad3d01, #ad3d01);--f3:var(--n0-c-692400, #692400);--ic:var(--n0-c-fc882e, #fc882e);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-fa8609, #fa8609);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' fill-rule='evenodd' d='M10.27 3a2 2 0 0 1 3.46 0l8.66 15a2 2 0 0 1-1.73 3H3.34a2 2 0 0 1-1.73-3ZM10.85 8.2h2.3l-.4 6.7h-1.5ZM12 16.1a1.35 1.35 0 1 1 0 2.7a1.35 1.35 0 1 1 0-2.7Z'/%3E%3C/svg%3E")}
#app .topbar .tb-btn.tb-emrg{--bd:var(--n0-c-df2430, #df2430);--gl:var(--n0-c-df2430-a500, rgba(223,36,48,.5));--f1:var(--n0-c-5e050c, #5e050c);--f2:var(--n0-c-910711, #910711);--f3:var(--n0-c-4d0308, #4d0308);--ic:var(--n0-c-fb383c, #fb383c);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-f83d40, #f83d40);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' fill-rule='evenodd' d='M10.27 3a2 2 0 0 1 3.46 0l8.66 15a2 2 0 0 1-1.73 3H3.34a2 2 0 0 1-1.73-3ZM10.85 8.2h2.3l-.4 6.7h-1.5ZM12 16.1a1.35 1.35 0 1 1 0 2.7a1.35 1.35 0 1 1 0-2.7Z'/%3E%3C/svg%3E")}
#app .topbar .tb-btn.tb-pager{--bd:var(--n0-c-676d77, #676d77);--gl:var(--n0-c-676d77-a500, rgba(103,109,119,.5));--f1:var(--n0-c-161d29, #161d29);--f2:var(--n0-c-1b212c, #1b212c);--f3:var(--n0-c-0c1421, #0c1421);--ic:var(--n0-c-9fa1a5, #9fa1a5);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-84888c, #84888c);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.6'%3E%3Cpath d='M8 6.2V5.2Q12 2.6 16.5 4.6'/%3E%3Crect x='3' y='6.2' width='18' height='15' rx='1.8'/%3E%3Crect x='5.6' y='8.6' width='12.8' height='4.6' rx='.6'/%3E%3Cpath d='M5.6 15.6H18.4M5.6 18.4H15.2'/%3E%3C/g%3E%3Cpath fill='black' d='M7 9.8h2.2v2.2H7zM10.2 9.8h1.4v2.2h-1.4zM12.8 9.8h2.4v1H12.8zM16 9.8h1.2v1.2H16zM16.8 17.6h1.4v1.4h-1.4z'/%3E%3C/svg%3E")}
#app .topbar .tb-btn.tb-phone{--bd:var(--n0-c-2659bc, #2659bc);--gl:var(--n0-c-2659bc-a500, rgba(38,89,188,.5));--f1:var(--n0-c-081f50, #081f50);--f2:var(--n0-c-0d2a6b, #0d2a6b);--f3:var(--n0-c-06163c, #06163c);--ic:var(--n0-c-6297f4, #6297f4);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-4f90eb, #4f90eb);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.6 10.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.6 21 3 13.4 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1z'/%3E%3Cpath fill='black' opacity='.85' d='M14.4 3.6l3.6-1.6 3.6 1.8-.2 4-3.6 1.6-3.4-1.8z'/%3E%3C/svg%3E")}
#app .topbar .tb-btn.tb-aux{--bd:var(--n0-c-18b893, #18b893);--gl:var(--n0-c-18b893-a500, rgba(24,184,147,.5));--f1:var(--n0-c-023628, #023628);--f2:var(--n0-c-02462f, #02462f);--f3:var(--n0-c-002015, #002015);--ic:var(--n0-c-29d1ac, #29d1ac);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-1eac90, #1eac90);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='black'%3E%3Crect x='2.5' y='4' width='4.4' height='3.6' rx='1.3'/%3E%3Crect x='8.6' y='4' width='13' height='3.6' rx='1.3'/%3E%3Crect x='2.5' y='10.2' width='4.4' height='3.6' rx='1.3'/%3E%3Crect x='8.6' y='10.2' width='13' height='3.6' rx='1.3'/%3E%3Crect x='2.5' y='16.4' width='4.4' height='3.6' rx='1.3'/%3E%3Crect x='8.6' y='16.4' width='13' height='3.6' rx='1.3'/%3E%3C/g%3E%3C/svg%3E")}
/* [cad-alert 1024] CAD tile flash (core/app.js __cadAlertTile): red = P1 / timer, amber = aging / weather, cyan = chat / new call */
@keyframes cadAlRed{0%,100%{box-shadow:0 0 0 2px var(--n0-c-ef4444, #ef4444),0 0 14px var(--n0-c-ef4444-a800, rgba(239,68,68,.8))}50%{box-shadow:0 0 0 2px var(--n0-c-7f1d1d, #7f1d1d),0 0 2px var(--n0-c-ef4444-a200, rgba(239,68,68,.2))}}
@keyframes cadAlAmber{0%,100%{box-shadow:0 0 0 2px var(--n0-c-f59e0b, #f59e0b),0 0 14px var(--n0-c-f59e0b-a750, rgba(245,158,11,.75))}50%{box-shadow:0 0 0 2px var(--n0-c-78350f, #78350f),0 0 2px var(--n0-c-f59e0b-a200, rgba(245,158,11,.2))}}
@keyframes cadAlCyan{0%,100%{box-shadow:0 0 0 2px var(--n0-c-22d3ee, #22d3ee),0 0 12px var(--n0-c-22d3ee-a700, rgba(34,211,238,.7))}50%{box-shadow:0 0 0 2px var(--n0-c-155e75, #155e75),0 0 2px var(--n0-c-22d3ee-a200, rgba(34,211,238,.2))}}
#app .topbar .tb-btn.tb-cad.cad-al-red{animation:cadAlRed .8s ease-in-out infinite}#app .topbar .tb-btn.tb-cad.cad-al-amber{animation:cadAlAmber 1.2s ease-in-out infinite}#app .topbar .tb-btn.tb-cad.cad-al-cyan{animation:cadAlCyan 1.6s ease-in-out infinite}
/* [cad-btn 2026-10-20] CAD tile: same tile as PHONE / AUX I/O (topbarfit 66 look), own colours + monitor/map-pin icon */
#app .topbar .tb-btn.tb-cad{--bd:var(--n0-c-14a3a3, #14a3a3);--gl:var(--n0-c-14a3a3-a500, rgba(20,163,163,.5));--f1:var(--n0-c-052a2e, #052a2e);--f2:var(--n0-c-08393e, #08393e);--f3:var(--n0-c-031d20, #031d20);--ic:var(--n0-c-5fe3db, #5fe3db);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-3cc9c2, #3cc9c2);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.6'%3E%3Crect x='2.5' y='3.2' width='19' height='13.3' rx='1.5'/%3E%3Cpath d='M8.5 20.6h7M12 16.5v4.1'/%3E%3C/g%3E%3Cpath fill='black' fill-rule='evenodd' d='M12 5.2a3.3 3.3 0 0 0-3.3 3.3c0 2.4 3.3 5.9 3.3 5.9s3.3-3.5 3.3-5.9A3.3 3.3 0 0 0 12 5.2Zm0 2.05a1.25 1.25 0 1 1 0 2.5a1.25 1.25 0 1 1 0-2.5Z'/%3E%3C/svg%3E")}
#app .topbar .tb-btn.tb-dtmf{--bd:var(--n0-c-3755cb, #3755cb);--gl:var(--n0-c-3755cb-a500, rgba(55,85,203,.5));--f1:var(--n0-c-091b51, #091b51);--f2:var(--n0-c-0d276f, #0d276f);--f3:var(--n0-c-061745, #061745);--ic:var(--n0-c-6d94f4, #6d94f4);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-4d83de, #4d83de);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='black'%3E%3Ccircle cx='4.5' cy='4.5' r='1.85'/%3E%3Ccircle cx='12' cy='4.5' r='1.85'/%3E%3Ccircle cx='19.5' cy='4.5' r='1.85'/%3E%3Ccircle cx='4.5' cy='12' r='1.85'/%3E%3Ccircle cx='12' cy='12' r='1.85'/%3E%3Ccircle cx='19.5' cy='12' r='1.85'/%3E%3Ccircle cx='4.5' cy='19.5' r='1.85'/%3E%3Ccircle cx='12' cy='19.5' r='1.85'/%3E%3Ccircle cx='19.5' cy='19.5' r='1.85'/%3E%3C/g%3E%3C/svg%3E")}
#app .topbar .tb-btn#tb-xmon-btn{--bd:var(--n0-c-244fb1, #244fb1);--gl:var(--n0-c-244fb1-a500, rgba(36,79,177,.5));--f1:var(--n0-c-0a1f50, #0a1f50);--f2:var(--n0-c-0b2761, #0b2761);--f3:var(--n0-c-06173d, #06173d);--ic:var(--n0-c-a5bad5, #a5bad5);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-4078d0, #4078d0);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.9' d='M4.2 15.5V12a7.8 7.8 0 0 1 15.6 0v3.5'/%3E%3Cg fill='black'%3E%3Crect x='3.2' y='13.2' width='4.6' height='8' rx='2'/%3E%3Crect x='16.2' y='13.2' width='4.6' height='8' rx='2'/%3E%3C/g%3E%3C/svg%3E")}
#app .topbar .tb-btn#tb-rec-btn{--bd:var(--n0-c-b42631, #b42631);--gl:var(--n0-c-b42631-a500, rgba(180,38,49,.5));--f1:var(--n0-c-3c060c, #3c060c);--f2:var(--n0-c-53080f, #53080f);--f3:var(--n0-c-2c0407, #2c0407);--ic:var(--n0-c-fb2f33, #fb2f33);--lb:var(--n0-c-fffefd, #fffefd);--sb:var(--n0-c-fb494e, #fb494e);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9.4' fill='black'/%3E%3C/svg%3E")}
#app .topbar .tb-btn#core-btn{--bd:var(--n0-c-0b6fba, #0b6fba);--gl:var(--n0-c-0b6fba-a500, rgba(11,111,186,.5));--f1:var(--n0-c-051c41, #051c41);--f2:var(--n0-c-061e44, #061e44);--f3:var(--n0-c-02122f, #02122f);--ic:var(--n0-c-1a9bf8, #1a9bf8);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-0eb5f9, #0eb5f9);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'%3E%3Crect x='3.5' y='2.5' width='17' height='5.2' rx='1'/%3E%3Crect x='3.5' y='9.4' width='17' height='5.2' rx='1'/%3E%3Crect x='3.5' y='16.3' width='17' height='5.2' rx='1'/%3E%3Cpath d='M16 5.1h1.8M15.5 12h2.3M15.2 18.9h2.6'/%3E%3C/g%3E%3Cg fill='black'%3E%3Ccircle cx='6.6' cy='5.1' r='.9'/%3E%3Ccircle cx='8.9' cy='5.1' r='.9'/%3E%3Ccircle cx='6.6' cy='12' r='.9'/%3E%3Ccircle cx='8.9' cy='12' r='.9'/%3E%3Ccircle cx='6.6' cy='18.9' r='.9'/%3E%3Ccircle cx='8.9' cy='18.9' r='.9'/%3E%3C/g%3E%3C/svg%3E")}
#app .topbar .tb-btn#patch-btn{--bd:var(--n0-c-0b6ab9, #0b6ab9);--gl:var(--n0-c-0b6ab9-a500, rgba(11,106,185,.5));--f1:var(--n0-c-082451, #082451);--f2:var(--n0-c-072149, #072149);--f3:var(--n0-c-021330, #021330);--ic:var(--n0-c-2ea5fe, #2ea5fe);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-16acf0, #16acf0);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'%3E%3Cpath d='M7.5 7.5 L3.3 22 M7.5 7.5 L11.7 22 M2.7 22 H12.3'/%3E%3Cpath stroke-width='1.1' d='M6.4 11.5 H8.6 M5.3 15.5 H9.7 M4.2 19.2 H10.8 M6.4 11.5 L9.7 15.5 M8.6 11.5 L5.3 15.5 M5.3 15.5 L10.8 19.2 M9.7 15.5 L4.2 19.2'/%3E%3Cpath stroke-width='1.3' d='M4.5 3.2a4 4 0 0 0 0 5.6 M10.5 3.2a4 4 0 0 1 0 5.6 M2.0999999999999996 1.4a7 7 0 0 0 0 9.2 M12.9 1.4a7 7 0 0 1 0 9.2'/%3E%3C/g%3E%3Ccircle cx='7.5' cy='6' r='1.5' fill='black'/%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'%3E%3Cpath d='M40.5 7.5 L36.3 22 M40.5 7.5 L44.7 22 M35.7 22 H45.3'/%3E%3Cpath stroke-width='1.1' d='M39.4 11.5 H41.6 M38.3 15.5 H42.7 M37.2 19.2 H43.8 M39.4 11.5 L42.7 15.5 M41.6 11.5 L38.3 15.5 M38.3 15.5 L43.8 19.2 M42.7 15.5 L37.2 19.2'/%3E%3Cpath stroke-width='1.3' d='M37.5 3.2a4 4 0 0 0 0 5.6 M43.5 3.2a4 4 0 0 1 0 5.6 M35.1 1.4a7 7 0 0 0 0 9.2 M45.9 1.4a7 7 0 0 1 0 9.2'/%3E%3C/g%3E%3Ccircle cx='40.5' cy='6' r='1.5' fill='black'/%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.6'%3E%3Cpath d='M12 14H17.6M30.4 14H36'/%3E%3Crect x='17.4' y='11.3' width='7.6' height='5.4' rx='2.7'/%3E%3Crect x='23' y='11.3' width='7.6' height='5.4' rx='2.7'/%3E%3C/g%3E%3C/svg%3E");--icw:2}
#app .topbar .tb-btn#admin-btn{--bd:var(--n0-c-494f5a, #494f5a);--gl:var(--n0-c-494f5a-a500, rgba(73,79,90,.5));--f1:var(--n0-c-151b26, #151b26);--f2:var(--n0-c-151a27, #151a27);--f3:var(--n0-c-0b1320, #0b1320);--ic:var(--n0-c-bcc1c4, #bcc1c4);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-7b7f85, #7b7f85);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' fill-rule='evenodd' d='M19.44 10.02 L22.05 10.27 L22.05 13.73 L19.44 13.98 L18.66 15.86 L20.33 17.89 L17.89 20.33 L15.86 18.66 L13.98 19.44 L13.73 22.05 L10.27 22.05 L10.02 19.44 L8.14 18.66 L6.11 20.33 L3.67 17.89 L5.34 15.86 L4.56 13.98 L1.95 13.73 L1.95 10.27 L4.56 10.02 L5.34 8.14 L3.67 6.11 L6.11 3.67 L8.14 5.34 L10.02 4.56 L10.27 1.95 L13.73 1.95 L13.98 4.56 L15.86 5.34 L17.89 3.67 L20.33 6.11 L18.66 8.14 Z M12 8.4 a3.6 3.6 0 1 0 0.001 0 Z'/%3E%3C/svg%3E")}
#app .topbar .tb-btn#layout-edit-btn{--bd:var(--n0-c-2b47b7, #2b47b7);--gl:var(--n0-c-2b47b7-a500, rgba(43,71,183,.5));--f1:var(--n0-c-0c102c, #0c102c);--f2:var(--n0-c-060765, #060765);--f3:var(--n0-c-010144, #010144);--ic:var(--n0-c-7eb0fb, #7eb0fb);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-5299e9, #5299e9);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='black'%3E%3Crect x='2.2' y='2.2' width='5.8' height='5.8' rx='1.1'/%3E%3Crect x='9.1' y='2.2' width='5.8' height='5.8' rx='1.1'/%3E%3Crect x='16' y='2.2' width='5.8' height='5.8' rx='1.1'/%3E%3Crect x='2.2' y='9.1' width='5.8' height='5.8' rx='1.1'/%3E%3Crect x='9.1' y='9.1' width='5.8' height='5.8' rx='1.1'/%3E%3Crect x='16' y='9.1' width='5.8' height='5.8' rx='1.1'/%3E%3Crect x='2.2' y='16' width='5.8' height='5.8' rx='1.1'/%3E%3Crect x='9.1' y='16' width='5.8' height='5.8' rx='1.1'/%3E%3Crect x='16' y='16' width='5.8' height='5.8' rx='1.1'/%3E%3C/g%3E%3C/svg%3E")}
#app .topbar .tb-btn[data-n0-click="doLogout()"]{--bd:var(--n0-c-5a606b, #5a606b);--gl:var(--n0-c-5a606b-a500, rgba(90,96,107,.5));--f1:var(--n0-c-151b26, #151b26);--f2:var(--n0-c-151a27, #151a27);--f3:var(--n0-c-0b1320, #0b1320);--ic:var(--n0-c-a0a4aa, #a0a4aa);--lb:var(--n0-c-ffffff, #ffffff);--sb:var(--n0-c-7b7f85, #7b7f85);--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.9'%3E%3Cpath d='M10 3.5H5.5a1.5 1.5 0 0 0-1.5 1.5v14a1.5 1.5 0 0 0 1.5 1.5H10'/%3E%3Cpath d='M9.5 12H20.5M16.5 7.8L20.7 12l-4.2 4.2'/%3E%3C/g%3E%3C/svg%3E")}
#app .topbar .tb-btn.tb-aux .tb-sub{font-size:max(9px,calc(var(--h)*.106))}
#app .topbar .tb-btn.tb-pager{justify-content:center}
#app .topbar .tb-btn.tb-pager .tb-label,#app .topbar .tb-btn.tb-pager .tb-sub{text-shadow:none}
#app .topbar #core-btn,#app .topbar #patch-btn{width:auto;font-size:inherit}
#app .topbar #core-btn>span:not(.tb-icon),#app .topbar #patch-btn>span:not(.tb-icon){position:static;width:auto;height:auto;margin:0;clip:auto;border:0}
#app .topbar #patch-btn:not(:has(.tb-icon)){font-weight:700;font-size:var(--lbfs);text-transform:uppercase}
#app .topbar .tb-btn.tb-pager .tb-sub{font-size:0!important}
#app .topbar .tb-btn.tb-pager .tb-sub::after{content:"MONITOR";font-size:var(--sbfs)}
#app .topbar #core-btn .tb-sub{font-size:0!important}
#app .topbar #core-btn .tb-sub::after{content:"SERVER";font-size:var(--sbfs)}
#app .topbar #patch-btn .tb-sub{font-size:0!important}
#app .topbar #patch-btn .tb-sub::after{content:"LINK";font-size:var(--sbfs)}
#app .topbar .tb-btn[data-n0-click="doLogout()"]{height:var(--h)!important;min-width:calc(var(--h)*.935)!important;font-size:var(--lbfs)!important;font-weight:700;flex-shrink:0}
#app .topbar #tb-mic-source{border-radius:calc(var(--h)*.065);border-width:1.5px;height:var(--h);box-sizing:border-box;justify-content:center}
/* [topbarfit r5 2026-10-09] mic-source tile: every line wraps inside the tile, nothing cut (operator: "needs to fit all of its wording"). Text-fit properties only; colours/border stay with the tile style. */
#app .topbar #tb-mic-source{overflow:hidden;min-width:118px;padding:calc(4px * var(--n0-space, 1)) calc(7px * var(--n0-space, 1));gap:calc(2px * var(--n0-space, 1))}
#app .topbar #tb-mic-source .tb-mic-top{min-width:0;max-width:100%;align-items:flex-start}
#app .topbar #tb-mic-source .tb-mic-icon{flex:0 0 auto}
#app .topbar #tb-mic-source .tb-mic-path,#app .topbar #tb-mic-source .tb-mic-dev,#app .topbar #tb-mic-source .tb-mic-lvl{white-space:normal;overflow-wrap:anywhere;word-break:break-word;text-overflow:clip;overflow:visible;max-width:100%;min-width:0;line-height:1.1}
#app .topbar #tb-mic-source:not(.tb-mic-attention){background:linear-gradient(180deg,var(--n0-c-071a3a, #071a3a) 0%,var(--n0-c-051430, #051430) 50%,var(--n0-c-020c22, #020c22) 100%);border-color:var(--n0-c-1ab4cc, #1ab4cc);box-shadow:inset 0 0 3px var(--n0-c-1ab4cc-a500, rgba(26,180,204,.5))}
#app .topbar .tb-dmr-panel{background:linear-gradient(180deg,var(--n0-c-051c41, #051c41) 0%,var(--n0-c-061e44, #061e44) 50%,var(--n0-c-02122f, #02122f) 100%);border:1.5px solid var(--n0-c-0b6fba, #0b6fba);border-radius:calc(var(--h)*.065);height:var(--h);box-sizing:border-box;justify-content:center}
#app .topbar .m-menu-btn{background:linear-gradient(180deg,var(--n0-c-151b26, #151b26) 0%,var(--n0-c-151a27, #151a27) 50%,var(--n0-c-0b1320, #0b1320) 100%);border:1.5px solid var(--n0-c-494f5a, #494f5a);border-radius:calc(6px * var(--n0-radius, 1));box-shadow:inset 0 0 2px var(--n0-c-494f5a-a500, rgba(73,79,90,.5));color:var(--n0-c-bcc1c4, #bcc1c4);min-width:48px;min-height:48px}
@media(min-width:769px){
  #app .topbar{flex-wrap:nowrap;max-width:100%;box-sizing:border-box;min-width:0;gap:clamp(2px,.32vw,5px)}
  #app .topbar .tb-station{min-width:clamp(66px,6.9vw,110px);padding-left:clamp(6px,.75vw,12px);padding-right:clamp(6px,.875vw,14px)}
  #app .topbar .tb-station-id{font-size:clamp(14px,1.25vw,20px)}
  #app .topbar .tb-btn{min-width:clamp(30px,4.25vw,68px)}
  #app .topbar>div[style*="margin-left:auto"]{flex:0 1 auto;min-width:0;gap:clamp(3px,.5vw,8px)}
  #app .topbar #tb-mic-source{flex:0 1 auto;min-width:118px;max-width:clamp(118px,14.4vw,230px);overflow:hidden}
  #app .topbar #topbar-user{min-width:0;flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  #app .topbar .tb-btn[data-n0-click="doLogout()"]{min-width:clamp(46px,4.25vw,68px)!important}
}
@media(min-width:769px) and (max-width:1100px){
  #app .topbar .tb-btn .tb-sub{display:none}
  #app .topbar .tb-btn{--lbfs:clamp(7px,.86vw,12.4px);padding-left:calc(2px * var(--n0-space, 1));padding-right:calc(2px * var(--n0-space, 1))}
  #app .topbar #tb-mic-source{min-width:clamp(136px,16.7vw,150px);max-width:clamp(136px,16.7vw,150px)}
  #app .topbar .tb-btn .tb-icon,#app .topbar #patch-btn:not(:has(.tb-icon))::before,#app .topbar .tb-btn[data-n0-click="doLogout()"]::before{height:clamp(16px,2.3vw,25.5px)}
  #app .topbar .tb-station-id{letter-spacing:.06em}
}
@media(max-width:768px){
  .topbar{flex-wrap:wrap;row-gap:calc(5px * var(--n0-space, 1));max-width:100%;box-sizing:border-box}
  .topbar>div[style*="margin-left:auto"]{flex-wrap:wrap;justify-content:flex-end;row-gap:calc(4px * var(--n0-space, 1));max-width:100%;min-width:0}
  #app .topbar{--h:56px}
  #app .topbar .tb-station.tb-station-clock{gap:calc(2px * var(--n0-space, 1));padding-top:calc(5px * var(--n0-space, 1))}
  #app .topbar #tb-mic-source{height:auto;min-height:var(--h);min-width:150px;max-width:min(190px,100%)}
  #app .topbar .tb-btn .tb-sub{display:none}
}
@media(max-width:480px){
  .topbar{gap:calc(3px * var(--n0-space, 1));padding:calc(4px * var(--n0-space, 1)) calc(5px * var(--n0-space, 1))}
  #app .topbar{--h:48px}
  #app .topbar .tb-btn{min-width:50px;padding:calc(4px * var(--n0-space, 1)) calc(3px * var(--n0-space, 1)) calc(3px * var(--n0-space, 1));--lbfs:9px}
  .topbar .tb-station{min-width:0;padding:calc(5px * var(--n0-space, 1)) calc(8px * var(--n0-space, 1))}
  #app .topbar .tb-station.tb-station-clock{height:auto;align-self:stretch;padding-top:calc(5px * var(--n0-space, 1))}
}
