/* Gise Pomato - shared clinical application shell */
:root{
  --purple-950:#312044;--purple-900:#44295d;--purple-800:#593476;--purple-700:#6d4690;--purple-600:#865eb0;--purple-500:#9a73c0;--purple-300:#ccb7df;--purple-200:#dfd1eb;--purple-100:#f1eaf7;--purple-050:#f8f4fb;
  --green-950:#244021;--green-900:#31572c;--green-800:#446b3e;--green-700:#5d8454;--green-600:#739a68;--green-400:#9dbb8f;--green-300:#bcd2b2;--green-200:#d7e6d0;--green-100:#eaf2e6;--green-050:#f5f9f2;
  --ink:#22182d;--muted:#786f80;--line:#e9e5ed;--surface:#fff;--page:#f5f3f7;
  --shadow:0 12px 30px rgba(70,42,88,.10);--shadow-soft:0 5px 18px rgba(70,42,88,.07);
  --sidebar-w:178px;--font-main:'Nunito','Segoe UI',Arial,sans-serif;--font-hand:'Caveat','Segoe Print','Comic Sans MS',cursive;--font-script:'Satisfy','Segoe Script','Brush Script MT',cursive;
}
body.gise-clinical{font-family:var(--font-main);}
body.gise-clinical>.app,
body.gise-clinical .app.gise-shell-app{
  width:100vw;height:100dvh;display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);
  background:rgba(255,255,255,.72);backdrop-filter:blur(18px);box-shadow:0 0 55px rgba(68,42,87,.08);overflow:hidden;
}
body.gise-clinical .sidebar{
  background:linear-gradient(180deg,#fff 0%,#faf9fc 65%,#f3f5f0 100%);border-right:1px solid #ece8f0;
  padding:18px 12px 14px;display:flex;flex-direction:column;min-height:0;position:relative;z-index:40;
}
body.gise-clinical .brand{display:flex;flex-direction:column;align-items:center;padding:0 4px 18px;flex:0 0 auto}
body.gise-clinical .brand-leaf{width:32px;height:32px;margin-bottom:-3px}
body.gise-clinical .brand-name{font-family:var(--font-script);font-size:29px;line-height:1;color:var(--purple-800);white-space:nowrap}
body.gise-clinical .brand-role{margin-top:4px;font-size:7.5px;letter-spacing:2.7px;font-weight:900;color:#5c5366;white-space:nowrap}
body.gise-clinical .nav{display:flex;flex-direction:column;gap:5px;min-height:0;overflow:auto;scrollbar-width:thin;padding-right:1px}
body.gise-clinical .nav-separator{height:1px;background:#e9e4ed;margin:5px 5px 2px}
body.gise-clinical .nav-caption{font-size:7px;letter-spacing:.12em;text-transform:uppercase;font-weight:900;color:#9b91a1;padding:4px 10px 1px}
body.gise-clinical .nav-item{
  height:38px;min-height:38px;border-radius:10px;padding:0 10px;display:flex;align-items:center;gap:10px;text-decoration:none;
  color:#342842;font-size:12.5px;font-weight:700;transition:.18s ease;border:1px solid transparent;white-space:nowrap;
}
body.gise-clinical .nav-item svg{width:18px;height:18px;stroke-width:1.9;flex:0 0 auto}
body.gise-clinical .nav-item:hover{background:var(--purple-050);border-color:var(--purple-100)}
body.gise-clinical .nav-item.active{color:#fff;background:linear-gradient(135deg,var(--purple-700),var(--purple-500));box-shadow:0 6px 14px rgba(105,66,139,.20)}
body.gise-clinical .nav-item.active svg{color:#fff}
body.gise-clinical .sidebar-bottom{
  margin-top:auto;border-radius:14px;padding:12px 10px;background:linear-gradient(145deg,#f6f1fa,#f2f6ef);color:var(--purple-800);
  font-family:var(--font-hand);font-size:17px;line-height:1.05;display:flex;align-items:flex-end;gap:7px;min-height:92px;overflow:hidden;flex:0 0 auto;
}
body.gise-clinical .sidebar-bottom img{width:48px;height:48px;object-fit:contain;filter:drop-shadow(0 5px 8px rgba(0,0,0,.12));flex:0 0 auto}
body.gise-clinical .main{min-width:0;height:100%;display:grid;grid-template-rows:74px minmax(0,1fr);overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(249,248,251,.95))}
body.gise-clinical .topbar{
  position:relative;padding:9px 22px 8px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eeeaf1;
  background:radial-gradient(ellipse at 23% 0%,rgba(230,216,242,.72),transparent 48%),rgba(255,255,255,.75);overflow:hidden;min-width:0;
}
body.gise-clinical .topbar-left{display:flex;align-items:center;min-width:0}
body.gise-clinical .topbar-slogan{display:flex;align-items:center;gap:10px;margin-left:6px;min-width:0}
body.gise-clinical .topbar-slogan .leafs{width:46px;height:46px;opacity:.9;flex:0 0 auto}
body.gise-clinical .slogan-text{font-family:var(--font-hand);font-size:31px;line-height:.95;color:var(--purple-800);transform:rotate(-1deg);white-space:nowrap}
body.gise-clinical .profile{display:flex;align-items:center;gap:9px;border:1px solid #ddd6e5;background:#fff;border-radius:14px;padding:7px 10px;box-shadow:var(--shadow-soft);white-space:nowrap;flex:0 0 auto}
body.gise-clinical .avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--purple-600),var(--purple-800));color:#fff;font-size:11px;font-weight:900;flex:0 0 auto}
body.gise-clinical .profile-meta{line-height:1.1}body.gise-clinical .profile-name{font-size:10px;font-weight:900}body.gise-clinical .profile-role{font-size:8.5px;color:var(--muted)}
body.gise-clinical .shell-menu-btn{display:none;border:1px solid #ddd6e5;background:#fff;border-radius:10px;width:36px;height:36px;place-items:center;color:var(--purple-800);margin-right:8px;cursor:pointer}
body.gise-clinical .shell-menu-btn svg{width:19px;height:19px}
body.gise-clinical .shell-backdrop{display:none;position:fixed;inset:0;background:rgba(34,24,45,.34);z-index:35}
body.gise-clinical.shell-menu-open .shell-backdrop{display:block}

@media(max-width:1050px){
  body.gise-clinical{--sidebar-w:72px}
  body.gise-clinical .sidebar{padding:14px 8px 12px}
  body.gise-clinical .brand{padding-bottom:14px}
  body.gise-clinical .brand-name,body.gise-clinical .brand-role,body.gise-clinical .nav-item span,body.gise-clinical .nav-caption,body.gise-clinical .sidebar-copy{display:none}
  body.gise-clinical .brand-leaf{width:34px;height:34px;margin:0}
  body.gise-clinical .nav-item{justify-content:center;padding:0}
  body.gise-clinical .nav-item svg{width:20px;height:20px}
  body.gise-clinical .nav-separator{margin:5px 3px}
  body.gise-clinical .sidebar-bottom{min-height:66px;padding:7px;justify-content:center}
  body.gise-clinical .sidebar-bottom img{width:44px;height:44px}
  body.gise-clinical .slogan-text{font-size:26px}
}
@media(max-width:760px){
  body.gise-clinical{--sidebar-w:0;overflow:hidden}
  body.gise-clinical>.app,body.gise-clinical .app.gise-shell-app{grid-template-columns:minmax(0,1fr)}
  body.gise-clinical .sidebar{position:fixed;left:0;top:0;bottom:0;width:238px;transform:translateX(-104%);transition:transform .22s ease;box-shadow:16px 0 32px rgba(43,29,55,.16);padding:18px 12px 14px}
  body.gise-clinical.shell-menu-open .sidebar{transform:translateX(0)}
  body.gise-clinical .brand-name,body.gise-clinical .brand-role,body.gise-clinical .nav-item span,body.gise-clinical .nav-caption,body.gise-clinical .sidebar-copy{display:block}
  body.gise-clinical .brand-leaf{width:32px;height:32px;margin-bottom:-3px}
  body.gise-clinical .nav-item{justify-content:flex-start;padding:0 10px}
  body.gise-clinical .sidebar-bottom{justify-content:flex-start;min-height:92px;padding:12px 10px}
  body.gise-clinical .topbar{padding:8px 10px;height:64px}
  body.gise-clinical .main{grid-template-rows:64px minmax(0,1fr)}
  body.gise-clinical .shell-menu-btn{display:grid}
  body.gise-clinical .topbar-slogan{margin-left:0;gap:6px}
  body.gise-clinical .topbar-slogan .leafs{width:36px;height:36px}
  body.gise-clinical .slogan-text{font-size:20px;white-space:normal;line-height:.92}
  body.gise-clinical .profile{padding:5px 7px;gap:6px}
  body.gise-clinical .profile-meta{display:none}
  body.gise-clinical .avatar{width:28px;height:28px}
  body.gise-clinical .profile [data-gise-signout]{font-size:0!important;width:22px;height:22px;padding:0!important;position:relative}
  body.gise-clinical .profile [data-gise-signout]::after{content:'↪';font-size:15px;position:absolute;inset:0;display:grid;place-items:center}
}

@media print{
  body.gise-clinical .sidebar,body.gise-clinical .topbar,body.gise-clinical .shell-backdrop{display:none!important}
}
