/* MediPOS v1.3 — advanced desktop application interface */
:root{
  --desktop-title:#0e1b2a;
  --desktop-title-2:#13263a;
  --desktop-nav:#152332;
  --desktop-nav-2:#101c28;
  --desktop-panel:#ffffff;
  --desktop-workspace:#dfe5ec;
  --desktop-line:#b9c4d0;
  --desktop-line-soft:#d8dee6;
  --desktop-text:#172233;
  --desktop-muted:#647184;
  --desktop-shadow:0 2px 9px rgba(18,31,48,.14);
  --titlebar-height:32px;
  --sidebar-width:232px;
  --sidebar-collapsed-width:62px;
  --topbar-height:94px;
  --tabs-height:30px;
  --statusbar-height:27px;
}

html{height:100%}
body.desktop-ui{
  height:100%;
  overflow:hidden;
  min-height:100%;
  background:var(--desktop-workspace);
  color:var(--desktop-text);
  font-family:"Segoe UI Variable","Segoe UI",Tahoma,Arial,sans-serif;
  font-size:13px;
  line-height:1.35;
  -webkit-font-smoothing:antialiased;
}
.desktop-root{height:100vh;min-height:0;display:flex;flex-direction:column;overflow:hidden}

/* Window chrome */
.window-titlebar{
  height:var(--titlebar-height);
  flex:0 0 var(--titlebar-height);
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(260px,1.4fr) minmax(220px,1fr);
  align-items:center;
  color:#edf5ff;
  background:linear-gradient(180deg,var(--desktop-title-2),var(--desktop-title));
  border-bottom:1px solid #07111c;
  user-select:none;
  box-shadow:inset 0 1px rgba(255,255,255,.08);
  z-index:100;
}
.window-brand-mini{height:100%;display:flex;align-items:center;gap:7px;padding:0 10px;min-width:0}
.window-brand-mini img,.window-app-icon{width:20px;height:20px;flex:0 0 20px;border-radius:3px;background:#fff;object-fit:contain;padding:1px}
.window-app-icon{display:grid;place-items:center;background:var(--accent);color:#fff;font-size:9px;font-weight:900;padding:0}
.window-brand-mini strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.window-brand-mini>span:last-child{font-size:11px;color:#aab8c6;border-left:1px solid rgba(255,255,255,.18);padding-left:8px;white-space:nowrap}
.window-document{text-align:center;font-size:11px;color:#bdc9d5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 10px}
.window-status-light{display:inline-block;width:7px;height:7px;border-radius:50%;background:#33d17a;margin-right:7px;box-shadow:0 0 0 2px rgba(51,209,122,.13)}
.window-controls{height:100%;display:flex;align-items:stretch;justify-content:flex-end}
.window-controls button,.window-controls a{width:44px;height:100%;border:0;border-left:1px solid rgba(255,255,255,.07);background:transparent;color:#dbe6f0;display:grid;place-items:center;cursor:pointer;font-size:15px;border-radius:0}
.window-controls button:hover{background:rgba(255,255,255,.1)}
.window-controls .window-close:hover{background:#c42b1c;color:#fff}

/* Main application shell */
.desktop-ui .app-shell{height:calc(100vh - var(--titlebar-height));min-height:0;display:flex;overflow:hidden;background:var(--desktop-workspace)}
.desktop-ui .sidebar{
  position:relative;
  inset:auto;
  transform:none;
  width:var(--sidebar-width);
  flex:0 0 var(--sidebar-width);
  height:100%;
  min-height:0;
  background:linear-gradient(180deg,var(--desktop-nav),var(--desktop-nav-2));
  color:#d8e1ea;
  box-shadow:none;
  border-right:1px solid #07131e;
  z-index:45;
  transition:width .16s ease,flex-basis .16s ease;
  overflow:hidden;
}
.desktop-ui .brand{
  height:58px;
  flex:0 0 58px;
  padding:8px 8px 8px 10px;
  border-bottom:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.025);
  gap:9px;
}
.desktop-ui .brand img,.desktop-ui .brand-mark{width:37px;height:37px;flex:0 0 37px;border-radius:5px;box-shadow:0 1px 4px rgba(0,0,0,.3)}
.desktop-ui .brand-mark{font-size:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent),#fff 18%),var(--accent))}
.brand-copy{min-width:0;flex:1}
.desktop-ui .brand-copy strong{font-size:13px;line-height:1.2;max-width:142px}
.desktop-ui .brand-copy span{font-size:10px;color:#96a8b7;margin-top:2px}
.sidebar-collapse{width:22px;height:34px;flex:0 0 22px;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:3px;background:rgba(255,255,255,.04);color:#c7d4df;cursor:pointer;font-size:18px;line-height:1}
.sidebar-collapse:hover{background:rgba(255,255,255,.1);color:#fff}
.sidebar-module-label{height:25px;flex:0 0 25px;padding:7px 12px 0;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#708598;font-weight:700}
.desktop-ui .nav-menu{padding:0 6px 10px;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#435363 transparent}
.desktop-ui .nav-caption{height:23px;padding:7px 8px 2px;color:#718699;font-size:9px;letter-spacing:.12em;white-space:nowrap;overflow:hidden}
.desktop-ui .nav-caption:after{content:"";display:inline-block;width:100%;border-top:1px solid rgba(255,255,255,.06);vertical-align:middle;margin-left:8px}
.desktop-ui .nav-menu a{
  height:33px;
  padding:0 8px;
  margin:1px 0;
  border:1px solid transparent;
  border-radius:3px;
  gap:8px;
  color:#c7d2dc;
  font-size:12px;
  font-weight:600;
  transition:background .12s,border-color .12s,color .12s;
  position:relative;
  white-space:nowrap;
}
.desktop-ui .nav-menu a:hover{background:#223649;border-color:#30475b;color:#fff}
.desktop-ui .nav-menu a.active{
  background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 8%),color-mix(in srgb,var(--accent),#000 7%));
  border-color:color-mix(in srgb,var(--accent),#fff 18%);
  color:#fff;
  box-shadow:inset 0 1px rgba(255,255,255,.15),0 1px 3px rgba(0,0,0,.24);
}
.desktop-ui .nav-menu a.active:before{content:"";position:absolute;left:-6px;top:5px;bottom:5px;width:3px;background:#7df0a9;border-radius:0 2px 2px 0}
.desktop-ui .nav-menu a.primary-nav{border-color:rgba(86,218,138,.2)}
.desktop-ui .nav-icon{width:24px;height:24px;flex:0 0 24px;display:grid;place-items:center;text-align:center;border-radius:3px;background:rgba(255,255,255,.055);font-size:14px}
.desktop-ui .nav-menu a.active .nav-icon{background:rgba(255,255,255,.13)}
.sidebar-account{height:49px;flex:0 0 49px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:8px;padding:6px 9px;background:rgba(0,0,0,.1);min-width:0}
.sidebar-account .avatar{width:30px;height:30px;flex:0 0 30px;border-radius:4px;background:color-mix(in srgb,var(--accent),#fff 78%);font-size:12px}
.sidebar-account>div{min-width:0;flex:1}
.sidebar-account strong,.sidebar-account small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-account strong{font-size:11px;color:#fff}.sidebar-account small{font-size:9px;color:#8fa2b3;margin-top:1px}
.account-online{width:7px;height:7px;border-radius:50%;background:#34d17d;box-shadow:0 0 0 2px rgba(52,209,125,.14)}

/* Collapsed navigation */
body.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed-width);flex-basis:var(--sidebar-collapsed-width)}
body.sidebar-collapsed .brand{padding-left:12px}
body.sidebar-collapsed .brand-copy,body.sidebar-collapsed .sidebar-module-label,body.sidebar-collapsed .nav-caption span,body.sidebar-collapsed .nav-label,body.sidebar-collapsed .sidebar-account>div,body.sidebar-collapsed .account-online{display:none}
body.sidebar-collapsed .sidebar-collapse{position:absolute;right:2px;top:17px;width:17px;height:25px;font-size:14px;z-index:2}
body.sidebar-collapsed .sidebar-collapse{transform:rotate(180deg)}
body.sidebar-collapsed .nav-caption{height:8px;padding:0;margin:3px 8px;border-top:1px solid rgba(255,255,255,.1)}
body.sidebar-collapsed .nav-caption:after{display:none}
body.sidebar-collapsed .nav-menu{padding:4px}
body.sidebar-collapsed .nav-menu a{justify-content:center;padding:0;height:36px}
body.sidebar-collapsed .nav-icon{width:27px;height:27px;flex-basis:27px}
body.sidebar-collapsed .sidebar-account{justify-content:center;padding:6px}

.desktop-ui .main-area{
  min-width:0;
  width:auto;
  margin-left:0;
  flex:1;
  height:100%;
  min-height:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  background:var(--desktop-workspace);
}

/* Menus and ribbon */
.desktop-ui .topbar{
  position:relative;
  top:auto;
  height:var(--topbar-height);
  flex:0 0 var(--topbar-height);
  padding:0;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  background:#f7f9fb;
  border-bottom:1px solid #aeb9c5;
  box-shadow:0 1px 4px rgba(19,31,46,.14);
  z-index:30;
}
.menu-strip{height:29px;flex:0 0 29px;display:flex;align-items:center;padding:0 8px;background:#eef2f6;border-bottom:1px solid #cbd3dc}
.desktop-ui .menu-toggle{display:none;width:28px;height:24px;margin-right:5px;border-radius:2px;background:#fff}
.desktop-menu-links{display:flex;align-items:stretch;height:100%}
.desktop-menu-links a{display:flex;align-items:center;padding:0 10px;font-size:11px;color:#263649;border-left:1px solid transparent;border-right:1px solid transparent}
.desktop-menu-links a:hover{background:#fff;border-color:#d0d7df;color:#000}
.menu-strip-spacer{flex:1}
.topbar-userline{display:flex;align-items:center;gap:7px;padding:0 5px 0 10px;border-left:1px solid #c9d1da;font-size:11px;color:#3e4c5d}
.role-pill{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:2px;background:#dfe9f2;border:1px solid #c4d0dc;color:#2f485e;font-size:8px;font-weight:800;letter-spacing:.06em}
.ribbon-strip{height:65px;flex:0 0 65px;display:flex;align-items:stretch;padding:5px 8px;background:linear-gradient(180deg,#fff,#f1f4f7)}
.ribbon-group{display:flex;align-items:stretch;gap:3px}
.ribbon-primary-group{padding-right:4px}
.ribbon-separator{width:1px;background:#cbd3dc;margin:1px 7px;box-shadow:1px 0 #fff}
.ribbon-command{min-width:93px;height:54px;display:flex;align-items:center;gap:7px;padding:5px 8px;border:1px solid transparent;border-radius:3px;color:#263647}
.ribbon-command:hover{background:#e7f0f8;border-color:#a8bfd2;box-shadow:inset 0 1px #fff}
.ribbon-command-primary{background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 87%),color-mix(in srgb,var(--accent),#fff 78%));border-color:color-mix(in srgb,var(--accent),#fff 45%)}
.ribbon-icon{width:31px;height:31px;flex:0 0 31px;display:grid;place-items:center;border:1px solid #c4ced8;border-radius:3px;background:#fff;color:var(--accent);font-size:18px;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.ribbon-command strong,.ribbon-command small{display:block;white-space:nowrap}.ribbon-command strong{font-size:11px}.ribbon-command small{font-size:9px;color:#748194;margin-top:2px}
.ribbon-context{margin-left:auto;display:flex;align-items:center;padding:0 9px 0 18px;border-left:1px solid #d2d9e0;min-width:210px}
.desktop-ui .topbar-title{flex:initial;text-align:right;width:100%}
.desktop-ui .topbar-title h1{font-size:15px;line-height:1.2;margin:0;color:#172334}
.desktop-ui .topbar-title span{font-size:10px;color:#708094;margin-top:2px}

.workspace-tabs{height:var(--tabs-height);flex:0 0 var(--tabs-height);display:flex;align-items:flex-end;padding:3px 5px 0;background:#cbd3dc;border-bottom:1px solid #a9b4c0}
.workspace-tab{height:27px;min-width:180px;max-width:310px;display:flex;align-items:center;gap:7px;padding:0 10px;background:#f8fafc;border:1px solid #aeb8c3;border-bottom-color:#f8fafc;border-radius:3px 3px 0 0;font-size:11px;font-weight:600;color:#243244;box-shadow:0 -1px rgba(255,255,255,.7)}
.workspace-tab span{color:var(--accent)}.workspace-tab i{width:6px;height:6px;margin-left:auto;border-radius:50%;background:#31bd70}
.workspace-tab-fill{flex:1}
.workspace-tools{height:23px;margin:0 3px 3px 0;padding:0 9px;border:1px solid #aeb8c3;background:#eef2f5;border-radius:2px;color:#34455a;font-size:10px;cursor:pointer}
.workspace-tools:hover{background:#fff}

/* Content workspace */
.desktop-ui .content{
  flex:1;
  min-height:0;
  min-width:0;
  overflow:auto;
  padding:10px;
  background:
    linear-gradient(rgba(255,255,255,.28),rgba(255,255,255,.28)),
    repeating-linear-gradient(0deg,transparent,transparent 24px,rgba(116,132,150,.035) 25px);
  scrollbar-color:#a6b2bf #e2e7ec;
  scrollbar-width:thin;
}
.desktop-ui .app-footer{
  height:var(--statusbar-height);
  flex:0 0 var(--statusbar-height);
  padding:0 8px;
  border-top:1px solid #aab5c0;
  background:linear-gradient(180deg,#f5f7f9,#e1e6eb);
  color:#485769;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:10px;
  align-items:center;
  font-size:10px;
  box-shadow:inset 0 1px #fff;
}
.status-left,.status-right,.status-shortcuts{display:flex;align-items:center;gap:10px;min-width:0}.status-left span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-right{justify-content:flex-end}.status-shortcuts{justify-content:center;color:#627083}
.system-ready-dot{width:7px;height:7px;border-radius:50%;background:#28b969;box-shadow:0 0 0 2px rgba(40,185,105,.12)}
kbd{font-family:inherit;font-size:9px;line-height:1;padding:2px 4px;border:1px solid #adb7c1;border-bottom-color:#858f9a;border-radius:2px;background:#fff;color:#344154;box-shadow:0 1px 0 rgba(0,0,0,.08)}

/* Desktop panels and controls */
.desktop-ui .card{
  border:1px solid var(--desktop-line);
  border-radius:4px;
  background:var(--desktop-panel);
  box-shadow:var(--desktop-shadow);
}
.desktop-ui .card-header{min-height:39px;padding:7px 10px;border-bottom:1px solid var(--desktop-line);background:linear-gradient(180deg,#fbfcfd,#eef2f5);gap:8px}
.desktop-ui .card-header h2,.desktop-ui .card-header h3{font-size:13px;color:#1d2b3c}
.desktop-ui .card-body{padding:10px}
.desktop-ui .card-footer{padding:7px 10px;border-top:1px solid var(--desktop-line);border-radius:0;background:#f1f4f7}
.desktop-ui .grid{gap:10px}.desktop-ui .section-gap{margin-top:10px}
.desktop-ui .stat-card{min-height:88px;padding:12px;border-radius:4px}
.desktop-ui .stat-card:after{width:70px;height:70px;right:-27px;bottom:-27px}
.desktop-ui .stat-card .label{font-size:10px;text-transform:uppercase;letter-spacing:.04em}.desktop-ui .stat-card strong{font-size:21px;margin-top:4px}.desktop-ui .stat-card small{font-size:10px;margin-top:3px}.desktop-ui .stat-icon{width:36px;height:36px;border-radius:3px;font-size:17px;border:1px solid color-mix(in srgb,var(--accent),#fff 68%)}
.desktop-ui .toolbar{min-height:36px;margin-bottom:7px;padding:4px 5px;border:1px solid #bdc7d1;background:linear-gradient(180deg,#fafbfc,#edf1f4);border-radius:3px;box-shadow:inset 0 1px #fff}
.desktop-ui .toolbar-left,.desktop-ui .toolbar-right{gap:5px}
.desktop-ui .btn{
  min-height:30px;
  padding:5px 10px;
  border-radius:3px;
  border-color:#aeb9c5;
  font-size:11px;
  font-weight:650;
  line-height:1.1;
  box-shadow:inset 0 1px rgba(255,255,255,.75),0 1px 1px rgba(20,32,45,.06);
  transition:background .1s,border-color .1s,box-shadow .1s;
}
.desktop-ui .btn:hover{transform:none;filter:none;box-shadow:inset 0 1px #fff,0 1px 2px rgba(20,32,45,.12)}
.desktop-ui .btn:active{box-shadow:inset 0 1px 3px rgba(0,0,0,.15);transform:translateY(1px)}
.desktop-ui .btn-primary{background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 8%),var(--accent));border-color:color-mix(in srgb,var(--accent),#000 18%);color:#fff;text-shadow:0 1px rgba(0,0,0,.12)}
.desktop-ui .btn-secondary{background:linear-gradient(180deg,#fff,#edf1f4);color:#27384b}
.desktop-ui .btn-danger{background:linear-gradient(180deg,#fff7f6,#fbe7e5);border-color:#dcaaa5;color:#a32218}
.desktop-ui .btn-warning{background:linear-gradient(180deg,#fffaf0,#f9edcf);border-color:#dccb99;color:#7a5207}
.desktop-ui .btn-sm{min-height:25px;padding:4px 7px;font-size:10px}.desktop-ui .btn-lg{min-height:38px;padding:8px 14px;font-size:12px}
.desktop-ui .field{margin-bottom:9px}.desktop-ui .field label{font-size:10px;margin-bottom:3px;color:#35465a;font-weight:700}.desktop-ui .help{font-size:10px;margin-top:3px}
.desktop-ui .form-grid{gap:9px}
.desktop-ui input:not([type]),.desktop-ui input[type=text],.desktop-ui input[type=search],.desktop-ui input[type=tel],.desktop-ui input[type=url],.desktop-ui input[type=email],.desktop-ui input[type=password],.desktop-ui input[type=number],.desktop-ui input[type=date],.desktop-ui input[type=time],.desktop-ui input[type=datetime-local],.desktop-ui input[type=color],.desktop-ui select,.desktop-ui textarea,.desktop-ui .input{
  min-height:30px;
  padding:5px 7px;
  border:1px solid #aeb9c5;
  border-radius:3px;
  background:#fff;
  color:#172436;
  font-size:11px;
  box-shadow:inset 0 1px 2px rgba(20,35,51,.06);
}
.desktop-ui input:focus,.desktop-ui select:focus,.desktop-ui textarea:focus,.desktop-ui .input:focus{border-color:color-mix(in srgb,var(--accent),#fff 18%);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent),transparent 80%),inset 0 1px 2px rgba(20,35,51,.06)}
.desktop-ui textarea{min-height:65px}
.desktop-ui .search-box input{min-width:230px;padding-left:28px}.desktop-ui .search-box:before{left:8px;top:4px;font-size:16px}
.desktop-ui .input-group>*:first-child{border-radius:3px 0 0 3px}.desktop-ui .input-group>*:last-child{border-radius:0 3px 3px 0}

.desktop-ui .table-wrap{border:1px solid #b8c2cc;background:#fff;border-radius:2px;box-shadow:inset 0 1px rgba(255,255,255,.8)}
.desktop-ui .table{font-size:11px}
.desktop-ui .table th{height:29px;padding:5px 7px;background:linear-gradient(180deg,#f6f8fa,#e7ecf0);border-right:1px solid #cbd3db;border-bottom:1px solid #aeb9c4;color:#3d4b5d;font-size:9px;letter-spacing:.04em;text-shadow:0 1px #fff}
.desktop-ui .table th:last-child{border-right:0}
.desktop-ui .table td{height:31px;padding:5px 7px;border-right:1px solid #e1e6eb;border-bottom:1px solid #d8dee5;vertical-align:middle}
.desktop-ui .table td:last-child{border-right:0}
.desktop-ui .table tbody tr:nth-child(even) td{background:#fafbfc}
.desktop-ui .table tr:hover td{background:#eaf3fb!important}
.desktop-ui .badge{min-height:18px;padding:2px 6px;border-radius:2px;border:1px solid #cbd3dc;font-size:9px;font-weight:750}
.desktop-ui .badge-success{border-color:#a2d7b5}.desktop-ui .badge-danger{border-color:#e0aaa5}.desktop-ui .badge-warning{border-color:#ddc887}.desktop-ui .badge-info{border-color:#a9cbe1}
.desktop-ui .empty-state{padding:26px 15px;font-size:11px}.desktop-ui .empty-state strong{font-size:13px;margin-bottom:4px}
.desktop-ui .pagination{gap:2px}.desktop-ui .pagination a,.desktop-ui .pagination span{padding:4px 7px;border-radius:2px;font-size:10px}
.desktop-ui .alert{min-height:34px;padding:8px 35px 8px 10px;border-radius:3px;margin-bottom:8px;font-size:11px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.desktop-ui .alert button{right:7px;top:2px}

/* Dialog windows */
.desktop-ui .modal-backdrop{background:rgba(12,21,31,.56);padding:14px;backdrop-filter:blur(1px)}
.desktop-ui .modal-card{width:min(720px,100%);max-height:92vh;display:flex;flex-direction:column;border:1px solid #1b2b3d;border-radius:4px;box-shadow:0 18px 55px rgba(0,0,0,.38);overflow:hidden;background:#f4f6f8}
.desktop-ui #globalModalBody{min-height:0;overflow:auto}
.modal-titlebar{height:31px;display:flex;align-items:center;justify-content:space-between;padding-left:10px;background:linear-gradient(180deg,#23384d,#16283b);color:#fff;border-bottom:1px solid #08131e;font-size:11px;font-weight:600}
.desktop-ui .modal-close{position:static;width:42px;height:30px;border-radius:0;border:0;background:transparent;color:#fff;font-size:18px}
.desktop-ui .modal-close:hover{background:#c42b1c}
.desktop-ui .modal-content{padding:14px;background:#f7f9fb}.desktop-ui .modal-content h2{font-size:15px;margin:0 0 5px}

/* Command palette */
.command-palette{background:#f7f9fb}
.command-palette-head{padding:11px;border-bottom:1px solid #bdc7d0;background:#eef2f5}
.command-palette-head input{height:36px!important;font-size:13px!important;padding-left:10px!important}
.command-list{max-height:390px;overflow:auto;padding:6px}
.command-item{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;padding:7px;border:1px solid transparent;border-radius:3px;color:#233449}
.command-item:hover,.command-item.active{background:#e5f0f8;border-color:#a8c3d7}
.command-item-icon{width:30px;height:30px;display:grid;place-items:center;border:1px solid #bac5cf;border-radius:3px;background:#fff;color:var(--accent);font-size:16px}
.command-item strong,.command-item small{display:block}.command-item strong{font-size:11px}.command-item small{font-size:9px;color:#748194;margin-top:2px}.command-item kbd{align-self:center}
.command-empty{padding:28px;text-align:center;color:#6d7a89}

/* Dashboard and charts */
.desktop-ui .bar-chart{padding:5px 0}.desktop-ui .bar-item{grid-template-columns:80px 1fr 80px;gap:7px;margin:6px 0}.desktop-ui .bar{height:13px;border-radius:2px;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent),#fff 22%))}.desktop-ui .bar-label{font-size:9px}
.desktop-ui .report-kpis{gap:10px}.desktop-ui .report-kpi{padding:12px}.desktop-ui .summary-row{font-size:11px}

/* Advanced POS workspace */
.desktop-ui.page-pos .content{padding:6px;overflow:hidden;display:flex}
.desktop-ui.page-pos .pos-layout{
  --cart-pane-width:570px;
  flex:1;
  height:100%;
  min-height:0;
  display:grid;
  grid-template-columns:minmax(360px,1fr) 6px minmax(470px,var(--cart-pane-width));
  gap:0;
  background:#aeb9c4;
  border:1px solid #98a5b1;
  box-shadow:0 1px 5px rgba(25,39,53,.18);
}
.desktop-ui .pos-products,.desktop-ui .pos-cart{height:100%;min-height:0;border:0;border-radius:0;box-shadow:none;display:flex;flex-direction:column;background:#fff}
.desktop-ui .pos-products{grid-column:1;border-right:0}.desktop-ui .pos-cart{grid-column:3;border-left:0}
.pos-splitter{grid-column:2;position:relative;background:linear-gradient(90deg,#9eabb7,#d7dde3 45%,#8e9aa6);cursor:col-resize;border-left:1px solid #7f8c98;border-right:1px solid #7f8c98}
.pos-splitter:after{content:"⋮";position:absolute;left:-1px;top:50%;transform:translateY(-50%);width:6px;color:#536171;font-size:16px;text-align:center;line-height:30px;background:#d7dde3;border-top:1px solid #9aa7b3;border-bottom:1px solid #9aa7b3}
body.pos-resizing{cursor:col-resize!important;user-select:none!important}
body.pos-resizing *{cursor:col-resize!important}
.desktop-ui .pos-searchbar{display:grid;grid-template-columns:minmax(260px,1fr) auto auto auto;gap:5px;align-items:end;padding:7px;border-bottom:1px solid #aeb9c5;background:linear-gradient(180deg,#f8fafb,#e8edf1)}
.scan-field{min-width:0}.scan-field label{display:flex;align-items:center;justify-content:space-between;margin:0 0 3px;font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#506074;font-weight:800}.scan-input-wrap{position:relative}.scan-input-wrap:before{content:"▣";position:absolute;left:8px;top:6px;color:var(--accent);font-size:15px;z-index:1}.desktop-ui .scan-input-wrap input{height:35px;min-height:35px;padding-left:30px;font-size:13px;font-weight:600;border-color:#8796a5;background:#fff;box-shadow:inset 0 1px 3px rgba(0,0,0,.09)}
.desktop-ui .pos-searchbar .btn{height:35px;white-space:nowrap;padding:5px 9px}
.pane-command-title{height:29px;flex:0 0 29px;display:flex;align-items:center;justify-content:space-between;padding:0 9px;border-bottom:1px solid #c4ccd4;background:#f2f5f7;color:#334356;font-size:10px}
.pane-command-title strong{font-size:11px}.pane-command-title span{color:#748194}
.desktop-ui .pos-products .card-body{padding:7px;flex:1;min-height:0;overflow:auto;background:#f7f9fb}
.desktop-ui .product-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:6px;align-content:start}
.desktop-ui .product-tile{
  min-height:102px;
  padding:8px;
  border:1px solid #b8c3ce;
  border-radius:3px;
  background:linear-gradient(180deg,#fff,#f5f7f9);
  color:#1a2838;
  text-align:left;
  box-shadow:0 1px 2px rgba(20,33,47,.07);
  position:relative;
  overflow:hidden;
}
.desktop-ui .product-tile:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#a9b5c1}
.desktop-ui .product-tile:hover{border-color:color-mix(in srgb,var(--accent),#fff 22%);background:#edf7f1;box-shadow:0 2px 5px rgba(20,33,47,.13)}
.desktop-ui .product-tile:hover:before{background:var(--accent)}
.desktop-ui .product-tile strong{font-size:12px;padding-left:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.desktop-ui .product-tile>span{font-size:9px;color:#697789;padding-left:2px}.desktop-ui .product-tile .pack-definition{font-size:9px;margin-top:5px;color:#3f5369}.desktop-ui .product-tile .tile-bottom{margin-top:7px;padding-top:5px;border-top:1px dotted #cbd3da}.desktop-ui .product-tile .price{font-size:11px;color:#0c5c32}.desktop-ui .product-tile .stock{font-size:9px}
.desktop-ui .pos-products .card-footer{height:31px;flex:0 0 31px;display:flex;align-items:center;justify-content:space-between;padding:0 8px;background:#eef2f5}
.pos-footer-shortcuts{display:flex;gap:9px;color:#657386;font-size:9px}
.desktop-ui .scanner-status{font-size:10px;gap:6px}.desktop-ui .status-dot{width:7px;height:7px}

.desktop-ui .pos-cart>.card-header{height:45px;flex:0 0 45px;padding:6px 8px;background:linear-gradient(180deg,#edf3f8,#dae3eb);border-bottom-color:#aab6c2}
.sale-title-line{display:flex;align-items:center;gap:7px}.transaction-live{padding:2px 5px;border:1px solid #8dc5a1;border-radius:2px;background:#e5f7eb;color:#08753f;font-size:8px;font-weight:800;letter-spacing:.05em}
.desktop-ui .pos-cart>.card-header h2{font-size:13px}.desktop-ui .pos-cart>.card-header .text-muted{font-size:9px}
.desktop-ui .pos-cart>.card-body{flex:1;min-height:110px;padding:0;overflow:hidden;background:#fff}
.desktop-ui .cart-table-wrap{height:100%;border:0;border-radius:0;overflow:auto}
.desktop-ui .cart-table{min-width:535px;table-layout:fixed}
.desktop-ui .cart-table thead{position:sticky;top:0;z-index:3}
.desktop-ui .cart-table th{height:27px;padding:4px 5px}.desktop-ui .cart-table td{padding:5px;height:auto;min-height:35px}
.desktop-ui .cart-table th:nth-child(1){width:29%}.desktop-ui .cart-table th:nth-child(2){width:29%}.desktop-ui .cart-table th:nth-child(3){width:20%}.desktop-ui .cart-table th:nth-child(4){width:17%}.desktop-ui .cart-table th:nth-child(5){width:5%}
.desktop-ui .cart-medicine-cell strong{font-size:10px}.desktop-ui .cart-medicine-cell .text-muted,.desktop-ui .cart-stock-hint,.desktop-ui .piece-price-hint{font-size:8px;line-height:1.25}
.desktop-ui .pack-piece-inputs{gap:3px;min-width:126px}.desktop-ui .pack-piece-inputs label span{font-size:8px;margin-bottom:2px}.desktop-ui .cart-table input{min-height:25px;padding:3px 4px;font-size:10px}
.desktop-ui .cart-remove{width:22px;height:22px;border:1px solid #d2aaa6;border-radius:2px;background:#fff2f1;color:#a32218;cursor:pointer;font-weight:800}.desktop-ui .cart-remove:hover{background:#c42b1c;color:#fff;border-color:#a51e13}
.desktop-ui .cart-empty-state{inset:29px 0 0;background:repeating-linear-gradient(0deg,#fff,#fff 30px,#f8fafb 31px);font-size:10px}
.desktop-ui .cart-summary{flex:0 0 auto;padding:7px 9px 8px;border-top:1px solid #aeb9c5;background:#f3f6f8;overflow:visible}
.totals-panel{display:grid;grid-template-columns:1fr 190px;gap:5px 12px;padding:5px 7px;border:1px solid #bcc6d0;background:#fff;box-shadow:inset 0 1px 2px rgba(0,0,0,.04)}
.totals-panel .summary-row{grid-column:2;display:flex;margin:0;padding:2px 0;font-size:10px}.totals-panel .compact-field{grid-column:1;grid-row:1/4;margin:0;align-self:center}.totals-panel .summary-row.total{border-top:1px solid #9eabb7;margin-top:2px;padding-top:5px;font-size:15px;color:#0d1d2f}
.payment-panel-title{height:24px;display:flex;align-items:center;justify-content:space-between;margin-top:6px;padding:0 7px;border:1px solid #b8c3cd;border-bottom:0;background:linear-gradient(180deg,#f9fafb,#e8edf1);font-size:10px;font-weight:800;color:#36475b}
.payment-panel-title span{font-size:8px;color:#718093;font-weight:500}
.desktop-ui .checkout-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5px 7px;margin-top:0;padding:7px;border:1px solid #b8c3cd;background:#fff}
.desktop-ui .checkout-grid .field{margin:0}.desktop-ui .checkout-grid input,.desktop-ui .checkout-grid select{min-height:28px;height:28px;padding:4px 6px}
.desktop-ui .checkout-button{height:39px;min-height:39px;margin-top:1px;font-size:12px;display:flex;justify-content:center;gap:10px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 7%),color-mix(in srgb,var(--accent),#000 10%));box-shadow:inset 0 1px rgba(255,255,255,.2),0 2px 3px rgba(0,0,0,.12)}
.desktop-ui .checkout-button kbd{background:rgba(255,255,255,.92);border-color:rgba(0,0,0,.2);color:#193043}

/* Scanner dialog */
.desktop-ui .scanner-modal-status{border-radius:3px;padding:7px;margin:8px 0;font-size:10px}.desktop-ui .scanner-qr{min-height:190px;margin:8px 0;padding:7px;border-radius:3px}.desktop-ui .scanner-session-meta{font-size:9px;margin:7px 0 10px}.desktop-ui .scanner-modal-actions{gap:5px}

/* Density mode */
body.density-compact{--topbar-height:78px}
body.density-compact .menu-strip{height:25px;flex-basis:25px}
body.density-compact .ribbon-strip{height:53px;flex-basis:53px;padding-top:3px;padding-bottom:3px}
body.density-compact .ribbon-command{height:46px;min-width:82px;padding:3px 6px}.density-compact .ribbon-icon{width:27px;height:27px;flex-basis:27px;font-size:15px}.density-compact .ribbon-command strong{font-size:10px}.density-compact .ribbon-command small{font-size:8px}
body.desktop-ui.density-compact .table td{height:27px;padding-top:3px;padding-bottom:3px}
body.desktop-ui.density-compact .card-body{padding:7px}

/* Login retains a polished software window feel */
.login-body{font-family:"Segoe UI Variable","Segoe UI",Tahoma,Arial,sans-serif;background:radial-gradient(circle at 25% 20%,#eaf0f4,#bdc8d2 65%,#aab5bf);min-height:100vh}
.login-window{border-radius:5px;border:1px solid #687786;box-shadow:0 20px 55px rgba(13,26,39,.32);min-height:535px}
.login-visual{background:linear-gradient(145deg,#13283a,#174a35 70%,var(--accent));padding:45px}
.login-panel{background:#f7f9fb}.login-panel .btn,.login-panel input{border-radius:3px}

/* Responsive fallback */
@media(max-width:1280px){
  :root{--sidebar-width:210px}
  .ribbon-command{min-width:83px;padding-left:6px;padding-right:6px}.ribbon-context{min-width:165px}.ribbon-command small{display:none}
  .desktop-ui.page-pos .pos-layout{--cart-pane-width:520px;grid-template-columns:minmax(330px,1fr) 6px minmax(455px,var(--cart-pane-width))}
  .desktop-ui .product-results{grid-template-columns:repeat(auto-fill,minmax(165px,1fr))}
}
@media(max-width:1050px){
  .window-titlebar{grid-template-columns:1fr 1fr}.window-document{display:none}
  .desktop-ui .sidebar{position:fixed;top:var(--titlebar-height);bottom:0;left:0;height:auto;transform:translateX(-105%);width:232px;flex-basis:232px;transition:transform .18s;box-shadow:8px 0 24px rgba(0,0,0,.3)}
  body.sidebar-open .sidebar{transform:none}
  body.sidebar-open:after{content:"";position:fixed;inset:var(--titlebar-height) 0 0;background:rgba(7,16,25,.42);z-index:40}
  body.sidebar-collapsed .sidebar{width:232px;flex-basis:232px}body.sidebar-collapsed .brand-copy,body.sidebar-collapsed .sidebar-module-label,body.sidebar-collapsed .nav-caption span,body.sidebar-collapsed .nav-label,body.sidebar-collapsed .sidebar-account>div,body.sidebar-collapsed .account-online{display:block}body.sidebar-collapsed .sidebar-collapse{position:static;width:22px;height:34px;transform:none}body.sidebar-collapsed .nav-caption{height:23px;padding:7px 8px 2px;margin:0;border:0}body.sidebar-collapsed .nav-menu{padding:0 6px 10px}body.sidebar-collapsed .nav-menu a{justify-content:flex-start;padding:0 8px;height:33px}
  .desktop-ui .menu-toggle{display:grid}
  .desktop-menu-links{display:none}
  .ribbon-context{display:none}.ribbon-command{min-width:75px}
  .desktop-ui.page-pos .content{overflow:auto;display:block}.desktop-ui.page-pos .pos-layout{height:auto;display:block;border:0;background:transparent}.pos-splitter{display:none}.desktop-ui .pos-products,.desktop-ui .pos-cart{height:auto;min-height:560px;border:1px solid #98a5b1;margin-bottom:8px}.desktop-ui .pos-cart{min-height:650px}
}
@media(max-width:720px){
  :root{--topbar-height:58px;--tabs-height:27px}
  body.density-compact{--topbar-height:58px}
  .window-titlebar{grid-template-columns:1fr auto}.window-brand-mini>span:last-child{display:none}.window-controls button:nth-child(2){display:none}.window-controls button,.window-controls a{width:38px}
  .menu-strip{height:29px;flex-basis:29px}.ribbon-strip{height:29px;flex-basis:29px;padding:2px 5px}.ribbon-command{height:25px;min-width:0;padding:0 7px}.ribbon-command .ribbon-icon{width:20px;height:20px;flex-basis:20px;font-size:12px}.ribbon-command strong{font-size:9px}.ribbon-command small,.ribbon-separator{display:none}.ribbon-group{gap:1px}.ribbon-primary-group{padding-right:0}
  .workspace-tools{display:none}.workspace-tab{min-width:145px}
  .desktop-ui .content{padding:6px}.desktop-ui .app-footer{grid-template-columns:1fr auto}.status-shortcuts{display:none}
  .desktop-ui .grid-4,.desktop-ui .grid-3,.desktop-ui .grid-2,.desktop-ui .form-grid,.desktop-ui .report-kpis{grid-template-columns:1fr}
  .desktop-ui .toolbar{align-items:stretch}.desktop-ui .toolbar-left,.desktop-ui .toolbar-right{width:100%}
  .desktop-ui .pos-searchbar{grid-template-columns:1fr 1fr}.desktop-ui .pos-searchbar .scan-field{grid-column:1/-1}.desktop-ui .pos-searchbar #refreshProducts{grid-column:1/-1}.pos-footer-shortcuts{display:none}
  .totals-panel{grid-template-columns:1fr}.totals-panel .compact-field,.totals-panel .summary-row{grid-column:1}.totals-panel .compact-field{grid-row:auto}.desktop-ui .checkout-grid{grid-template-columns:1fr}.desktop-ui .checkout-grid .full{grid-column:auto}
}
@media print{
  html,body{overflow:visible}.window-titlebar,.workspace-tabs,.status-shortcuts{display:none!important}.desktop-ui .app-shell{height:auto}.desktop-ui .content{overflow:visible}
}

/* v1.4 persistent workspace navigation */
.desktop-ui .content{position:relative}
body.workspace-loading .content:after{
  content:"Loading workspace…";
  position:fixed;
  right:18px;
  bottom:calc(var(--statusbar-height) + 12px);
  z-index:120;
  min-width:150px;
  padding:8px 12px 8px 31px;
  border:1px solid #8e9aa7;
  border-radius:3px;
  background:linear-gradient(180deg,#fff,#e9eef2);
  color:#324255;
  font-size:10px;
  font-weight:700;
  box-shadow:0 5px 16px rgba(20,34,48,.22);
}
body.workspace-loading .content:before{
  content:"";
  position:fixed;
  right:153px;
  bottom:calc(var(--statusbar-height) + 20px);
  z-index:121;
  width:12px;
  height:12px;
  border:2px solid #b4bec8;
  border-top-color:var(--accent);
  border-radius:50%;
  animation:mediposWorkspaceSpin .65s linear infinite;
}
@keyframes mediposWorkspaceSpin{to{transform:rotate(360deg)}}
.btn.is-busy{cursor:wait;opacity:.72}

/* v1.5 critical workflow controls */
.pos-sale-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.pos-sale-actions .btn{white-space:nowrap}.cart-price-cell .price[readonly]{background:#eef2f5;color:#44515f;border-color:#c7d0da;cursor:not-allowed}.cart-price-cell .price.price-overridden{background:#fff7db;border-color:#d8a20a;color:#6b4b00;font-weight:750}.manager-approval-dialog{max-width:460px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.held-sales-dialog{max-width:680px}.held-sales-list{display:grid;gap:8px;max-height:480px;overflow:auto}.held-sale-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 12px;border:1px solid #cbd4df;background:#f7f9fb;border-radius:5px}.held-sale-row>div:first-child{min-width:0}.held-sale-row strong,.held-sale-row span{display:block}.held-sale-row span{font-size:12px;color:#607080;margin-top:3px}.held-sale-row>div:last-child{display:flex;gap:6px}.btn-success{background:#166534!important;border-color:#14532d!important;color:#fff!important}.workspace-loading .content:after{content:'Working…';position:fixed;right:22px;bottom:34px;background:#17283a;color:#fff;border:1px solid #435365;border-radius:4px;padding:7px 12px;z-index:3000;box-shadow:0 8px 20px rgba(0,0,0,.22);font-size:12px}.window-controls button#installAppButton{color:#d9ffe7}.price-lock-note{font-size:11px;color:#546273}.pagination{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.pagination a,.pagination span{min-width:30px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #bdc8d4;border-radius:3px;background:#fff;color:#26384a;text-decoration:none;font-size:12px}.pagination .current{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}
@media(max-width:760px){.pos-sale-actions{justify-content:flex-start}.held-sale-row{align-items:flex-start;flex-direction:column}.held-sale-row>div:last-child{width:100%}.held-sale-row>div:last-child .btn{flex:1}}

/* v1.6 professional operations, shifts and accounting */
.pos-shift-strip{display:flex;align-items:center;gap:9px;margin:0 0 6px;padding:5px 9px;border:1px solid #87a995;background:#edf8f1;color:#1d5132;font-size:11px}.pos-shift-strip a{margin-left:auto;color:#14532d;font-weight:750}.status-dot.online{background:#1f9d55;box-shadow:0 0 0 3px rgba(31,157,85,.14)}
.payment-split-field{border:1px solid #bdc8d4;background:#f5f7f9;padding:7px}.payment-split-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}.payment-split-heading label{margin:0}.payment-splits{display:grid;gap:5px}.payment-split-row{display:grid;grid-template-columns:130px minmax(90px,.7fr) minmax(120px,1fr) 30px;gap:5px;align-items:center}.payment-split-row select,.payment-split-row input{min-width:0;height:30px;padding:4px 6px}.payment-split-row .split-remove{height:30px;padding:0}.account-party-list{max-height:620px;overflow:auto}.account-party{display:flex;justify-content:space-between;gap:10px;padding:9px 11px;border-bottom:1px solid #d8dfe6;color:#293949;text-decoration:none;background:#fff}.account-party:hover,.account-party.active{background:#e9f4ed}.account-party.active{box-shadow:inset 3px 0 var(--accent)}.account-party span,.account-party small{display:block}.account-party small{color:#677482;margin-top:2px}.account-party b{white-space:nowrap;color:#8a4b0f}.account-payment-bar{display:grid;grid-template-columns:1.1fr .7fr .9fr 1fr;gap:8px;align-items:end}.account-payment-bar .full{grid-column:1/-1}.shift-live{display:flex;align-items:center;gap:8px;padding:7px;border:1px solid #86b39a;background:#e9f7ef;margin-bottom:12px}.settings-checks{display:grid;gap:8px;padding:10px;border:1px solid #cdd6df;background:#f7f9fb}.row-muted{opacity:.62;background:#f2f3f4}.row-muted td{text-decoration:none}.card hr{border:0;border-top:1px solid var(--line);margin:12px 0}.badge-danger{background:#fee2e2!important;color:#991b1b!important}.badge-warning{background:#fef3c7!important;color:#854d0e!important}.badge-success{background:#dcfce7!important;color:#166534!important}
@media(max-width:900px){.account-payment-bar{grid-template-columns:1fr 1fr}.payment-split-row{grid-template-columns:1fr 1fr}.payment-split-row .split-reference{grid-column:1/-2}.payment-split-row .split-remove{grid-column:-2/-1;grid-row:2}}
@media(max-width:560px){.account-payment-bar,.payment-split-row{grid-template-columns:1fr}.account-payment-bar .full,.payment-split-row .split-reference,.payment-split-row .split-remove{grid-column:auto;grid-row:auto}.payment-split-row .split-remove{width:100%}}

/* v1.8 multi-branch desktop controls */
.branch-code-pill{display:inline-flex;align-items:center;gap:6px;min-height:22px;padding:2px 8px;border:1px solid rgba(255,255,255,.22);border-radius:3px;background:rgba(255,255,255,.08);font-size:11px;font-weight:700;letter-spacing:.04em}
.branch-switch-form{display:flex;align-items:center;gap:6px;margin-left:auto}.branch-switch-form select{min-width:175px;height:28px;padding:2px 28px 2px 8px;font-size:12px}.branch-current-label{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--muted)}
.branch-summary-grid{align-items:stretch}.branch-summary-card{min-height:250px}.branch-summary-card .summary-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border)}.branch-summary-card .summary-row:last-of-type{border-bottom:0}.branch-disabled{opacity:.7;filter:grayscale(.35)}.branch-card-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.branch-card-actions form{margin:0}
.branch-checkbox-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:6px;max-height:180px;overflow:auto;padding:8px;border:1px solid var(--border);background:var(--surface-2)}.branch-checkbox-list label{display:flex;align-items:center;gap:7px;padding:5px 7px;border-radius:3px;background:var(--surface)}
.transfer-stock-picker{max-height:390px;overflow:auto;border:1px solid var(--border)}.transfer-status-flow{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.branch-scope-banner{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--border);background:var(--surface-2);font-size:12px}.branch-scope-banner strong{color:var(--accent)}
@media(max-width:900px){.branch-switch-form select{min-width:120px}.branch-summary-grid{grid-template-columns:1fr 1fr!important}}@media(max-width:620px){.branch-summary-grid{grid-template-columns:1fr!important}.branch-switch-form{width:100%}.branch-switch-form select{flex:1}}

/* v2.0 cloud owner dashboard, remote approvals and device control */
.owner-kpi-grid .stat-card strong{font-size:clamp(1.25rem,2vw,2rem)}
.owner-actions{display:grid;gap:10px}
.owner-actions .badge{float:right;margin-left:auto}
.owner-chart{min-height:230px}
.owner-alert-list{max-height:410px;overflow:auto}
.owner-alert{display:flex;justify-content:space-between;gap:18px;padding:12px 14px;border-bottom:1px solid var(--border,#cbd5e1);border-left:4px solid #64748b;background:#fff}
.owner-alert>div{display:grid;gap:3px}.owner-alert span,.owner-alert small{color:#64748b;font-size:.78rem}
.owner-alert.alert-severity-critical{border-left-color:#b91c1c;background:#fff7f7}.owner-alert.alert-severity-warning{border-left-color:#d97706;background:#fffbeb}.owner-alert.alert-severity-info{border-left-color:#0369a1;background:#f0f9ff}
.remote-approval-state{margin-top:14px}.remote-approval-spinner{text-align:center;padding:18px;font-weight:700}.manager-approval-dialog .modal-actions{flex-wrap:wrap}
.device-actions{display:grid;grid-template-columns:minmax(130px,1fr) auto auto;gap:6px;align-items:center;min-width:310px}.device-actions input{min-width:0}
.network-offline .system-ready-dot,.system-ready-dot.offline{background:#dc2626!important;box-shadow:0 0 0 3px rgba(220,38,38,.18)!important}.network-offline .status-left strong{color:#b91c1c}
.mono-small{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.68rem;word-break:break-all;max-width:190px;text-align:right}
.button-row{display:flex;gap:6px;align-items:center}.field.inline{display:flex;align-items:center;gap:6px;margin:0}.field.inline label{margin:0}.field.inline input{width:auto}
@media(max-width:900px){.device-actions{min-width:220px;grid-template-columns:1fr 1fr}.device-actions input{grid-column:1/-1}.owner-kpi-grid{grid-template-columns:1fr 1fr}}


/* v2.0.5 in-app confirm dialog and stable workspace loader */
.confirm-dialog{max-width:560px}
.confirm-shell{display:grid;grid-template-columns:56px 1fr;gap:14px;align-items:flex-start}
.confirm-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#eaf4ff,#dcecff);border:1px solid #b9d2ee;color:#1e4f88;font-size:26px;font-weight:800;box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}
.confirm-copy h2{margin:0 0 6px;font-size:20px;color:#1f2f40}
.confirm-copy p{margin:0;color:#536172;line-height:1.55}
body.workspace-loading .content:before,body.workspace-loading .content:after{content:none!important;display:none!important}
body.workspace-loading-visible .content:after{content:'Loading workspace…'!important;display:block!important;position:fixed;left:50%;bottom:6px;transform:translateX(-50%);z-index:220;min-width:180px;padding:7px 14px 7px 34px;border:1px solid #3f556f;border-radius:4px;background:linear-gradient(180deg,#1f3650,#17293b);color:#fff;font-size:12px;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.24);pointer-events:none}
body.workspace-loading-visible .content:before{content:''!important;display:block!important;position:fixed;left:calc(50% - 68px);bottom:15px;z-index:221;width:12px;height:12px;border:2px solid rgba(255,255,255,.35);border-top-color:#8dd0ff;border-radius:50%;animation:mediposWorkspaceSpin .65s linear infinite;pointer-events:none}
@media(max-width:760px){.confirm-shell{grid-template-columns:1fr}.confirm-icon{display:none}body.workspace-loading-visible .content:after{left:auto;right:10px;bottom:8px;transform:none;min-width:0;max-width:calc(100vw - 20px)}body.workspace-loading-visible .content:before{left:auto;right:165px;bottom:17px}}


/* v2.0.6 universal in-application dialogs */
.prompt-dialog{max-width:570px}.prompt-dialog .confirm-copy{margin-bottom:14px}.prompt-field{margin:0}.prompt-field input,.prompt-field textarea{width:100%;font-size:14px}.prompt-field textarea{min-height:105px;resize:vertical}.confirm-icon-danger{background:linear-gradient(180deg,#fff0f0,#ffe0e0);border-color:#efb0b0;color:#a32020}.confirm-icon-warning{background:linear-gradient(180deg,#fff9e8,#ffefbf);border-color:#e1c36b;color:#815d00}.modal-card:has(.confirm-dialog),.modal-card:has(.prompt-dialog){width:min(620px,calc(100vw - 28px))}.modal-backdrop:not([hidden]){animation:mediposDialogFade .12s ease-out}.modal-card{animation:mediposDialogPop .14s ease-out}@keyframes mediposDialogFade{from{opacity:0}to{opacity:1}}@keyframes mediposDialogPop{from{transform:translateY(-7px) scale(.985);opacity:.7}to{transform:none;opacity:1}}

/* v2.0.9: only the active section receives navigation emphasis. */
.desktop-ui .nav-menu a.primary-nav:not(.active){border-color:transparent!important}
