.profile-link{display:flex;align-items:center;gap:8px;color:#fff;text-decoration:none}.profile-link:hover{color:#fff}.time-now-wrap{position:relative;display:block}.time-now-wrap .form-control{padding-right:48px}.time-now{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;border-radius:7px;background:#e7f1ea;color:#236149;font-size:.66rem;font-weight:800;padding:4px 7px;transition:transform .2s,background .2s}.time-now:hover{transform:translateY(-50%) scale(1.04);background:#d1e8d9}.time-updated{animation:time-pop .65s ease}@keyframes time-pop{50%{background:#e0f3e5;transform:scale(1.025)}}
.workspace:has(.login-shell){width:100%;max-width:none;min-height:100dvh;margin:0;padding:0!important}.workspace:has(.login-shell)>.app-alert{position:fixed;z-index:20;top:18px;right:18px;left:auto;max-width:min(420px,calc(100vw - 36px))}.login-shell{width:100%;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(440px,.88fr);margin:0;background:#fffdf9;overflow:hidden}.login-story{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 86% 14%,rgba(211,171,75,.29),transparent 27%),linear-gradient(145deg,#0a3028,#175c4d 62%,#27725e)}.login-story:before,.login-story:after{content:'';position:absolute;border:1px solid rgba(243,228,181,.18);border-radius:50%}.login-story:before{width:630px;height:630px;right:-300px;bottom:-310px}.login-story:after{width:330px;height:330px;left:-180px;top:-120px}.login-story-inner{position:relative;z-index:1;width:min(100%,560px);margin:0 auto;padding:clamp(72px,11vh,150px) clamp(32px,4vw,64px) 65px}.story-mark{width:65px;height:65px;border:1px solid rgba(255,255,255,.43);border-radius:20px;display:flex;justify-content:center;align-items:center;gap:3px;margin-bottom:50px;background:rgba(255,255,255,.08)}.story-mark span{width:6px;border-radius:99px;background:#f4da9d;transform:rotate(29deg)}.story-mark span:nth-child(1){height:21px}.story-mark span:nth-child(2){height:34px}.story-mark span:nth-child(3){height:25px}.login-story h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.5rem,4vw,4rem);line-height:1.07;color:#fff;margin:10px 0 18px}.login-story p{max-width:390px;color:#c8dfd3;font-size:1.03rem;line-height:1.65}.story-points{margin-top:42px;display:grid;gap:15px}.story-points div{display:flex;align-items:center;gap:11px;color:#e8f2ed;font-size:.88rem}.story-points b{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:rgba(249,220,157,.13);color:#f2d58d}.story-foot{display:block;margin-top:70px;color:#a9cbbd;letter-spacing:.08em;text-transform:uppercase;font-size:.65rem}.login-panel{display:grid;place-items:center;padding:clamp(36px,6vw,96px);background:linear-gradient(135deg,#fffdf9 0%,#f6faf7 100%)}.login-form-wrap{width:min(410px,100%)}.login-form-wrap h2{margin:4px 0 6px}.mobile-brand{display:none}.field-with-icon{position:relative}.field-with-icon>span{position:absolute;z-index:2;top:50%;transform:translateY(-50%);left:12px;font-size:.78rem;color:#55766a;font-weight:700;border-right:1px solid #d7e5dc;padding-right:8px}.field-with-icon input{padding-left:54px}.password-field{position:relative}.password-field input{padding-right:54px}.password-field button{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#20614e;font-size:.72rem;font-weight:800}.login-actions{display:flex;justify-content:space-between;gap:12px;margin:14px 0 25px;font-size:.76rem}.login-actions a,.signup-hint a{color:#17644e;font-weight:700}.remember-device{color:var(--muted);display:flex;align-items:center;gap:6px}.remember-device input{accent-color:#17644e}.login-submit{padding:.76rem 1rem}.login-submit span{font-size:1.15rem;margin-left:6px;display:inline-block;transition:transform .2s}.login-submit:hover span{transform:translateX(4px)}.signup-hint{text-align:center;color:var(--muted);font-size:.82rem;margin-top:25px}
.profile-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px}.profile-card{position:relative}.profile-cover{height:115px;background:radial-gradient(circle at 78% 15%,rgba(249,221,157,.55),transparent 23%),linear-gradient(110deg,#0e3c32,#216755);position:relative}.profile-cover:after{content:'';position:absolute;width:280px;height:280px;border-radius:50%;border:1px solid rgba(255,255,255,.15);right:-90px;top:-150px}.profile-identity{display:flex;gap:15px;align-items:center;margin-top:-52px;position:relative}.profile-avatar{width:88px;height:88px;border-radius:25px;border:5px solid #fffdf9;display:grid;place-items:center;font-size:2rem;font-weight:800;color:#654610;background:linear-gradient(145deg,#f7e2af,#c58e32);box-shadow:0 8px 20px rgba(57,39,8,.2)}.profile-identity h3{margin:3px 0 5px}.role-badge{background:#e2f0e7;color:#216149;padding:5px 10px;border-radius:999px;font-weight:800;font-size:.68rem;letter-spacing:.05em}.profile-details{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:29px 0}.profile-details div{padding:12px;border:1px solid var(--line);border-radius:12px;background:#fffefa}.profile-details small,.profile-details strong{display:block}.profile-details small{color:var(--muted);font-size:.68rem;margin-bottom:4px}.profile-details strong{font-size:.82rem}.status-active{color:#227149}.profile-tip{display:flex;gap:10px;border-radius:13px;background:#f5f0df;padding:12px 14px;color:#6e5c2d}.profile-tip span{color:#b7852e}.profile-tip p{margin:0;font-size:.78rem}.profile-tip em{font-style:normal;font-weight:800}.clock-card .card-body{padding:1.7rem}.clock-layout{display:flex;gap:26px;align-items:center;margin:25px 0 22px}.analog-clock{width:160px;height:160px;flex:0 0 160px;border:7px solid #e6eee8;border-radius:50%;position:relative;background:radial-gradient(circle at 35% 28%,#fffefa,#eef5ef);box-shadow:inset 0 0 0 1px #c9d8cf,0 12px 24px rgba(17,57,47,.1)}.clock-hand{position:absolute;bottom:50%;left:50%;width:3px;transform-origin:bottom center;border-radius:9px;background:#164d40;transition:transform .4s cubic-bezier(.4,1.5,.6,1)}.clock-hand.hour{height:38px;margin-left:-1.5px}.clock-hand.minute{height:55px;margin-left:-1.5px}.clock-hand.second{height:61px;width:1.5px;margin-left:-.75px;background:#c28a2f}.clock-dot{position:absolute;left:50%;top:50%;width:10px;height:10px;margin:-5px;border-radius:50%;background:#c28a2f;z-index:3}.analog-clock b{position:absolute;font-size:.66rem;color:#547066}.clock-12{top:8px;left:50%;transform:translateX(-50%)}.clock-3{right:10px;top:50%;transform:translateY(-50%)}.clock-6{bottom:8px;left:50%;transform:translateX(-50%)}.clock-9{left:10px;top:50%;transform:translateY(-50%)}.digital-time{font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:1.75rem;letter-spacing:.02em;color:#173d34}.date-line{font-size:.78rem;color:var(--muted);margin:4px 0 7px}.timezone-label{font-size:.65rem;font-weight:800;color:#a27225;text-transform:uppercase;letter-spacing:.1em}.timezone-control{display:flex;gap:12px;align-items:center;padding-top:15px;border-top:1px solid var(--line)}.timezone-control label{margin:0;white-space:nowrap}.timezone-control select{min-height:38px;font-size:.8rem}
@media(max-width:900px){.login-shell{display:block;width:100%;min-height:100dvh}.login-story{display:none}.login-panel{min-height:100dvh;padding:36px 24px}.mobile-brand{display:flex;color:var(--ink)!important;margin-bottom:48px}.mobile-brand .brand-emblem{background:#164d40}.profile-details{grid-template-columns:1fr}.profile-hero{align-items:flex-start;flex-direction:column}.clock-layout{gap:18px}}@media(max-width:440px){.login-panel{padding:28px 20px}.mobile-brand{margin-bottom:38px}.clock-layout{flex-direction:column;align-items:flex-start}.login-actions{flex-direction:column}.profile-avatar{width:76px;height:76px}.profile-identity h3{font-size:1.2rem}}
.round-status{display:inline-block;padding:5px 8px;border-radius:999px;font-size:.68rem;font-weight:800;white-space:nowrap}.round-status.stable{background:#e4f2e8;color:#246043}.round-status.improving{background:#e2f0ef;color:#176456}.round-status.follow-up{background:#f9efd8;color:#7a591d}.round-status.urgent{background:#fbe5e5;color:#9e3434}
.token-badge{display:inline-block;min-width:88px;text-align:center;padding:8px 11px;border-radius:12px;background:linear-gradient(135deg,#f8e7b9,#d7a84b);color:#59400e;font-size:.73rem;font-weight:900;letter-spacing:.04em;box-shadow:0 5px 14px rgba(151,105,24,.16)}.message-status,.attendance-status,.department-badge{display:inline-block;padding:5px 9px;border-radius:999px;font-size:.68rem;font-weight:800;white-space:nowrap}.message-status.sent,.attendance-status.present{background:#dff1e5;color:#236247}.message-status.failed,.attendance-status.absent{background:#f8e2e2;color:#983737}.message-status.pending{background:#f8edd2;color:#79591d}.department-badge{background:#e7f0eb;color:#315f50}.attendance-filters{display:flex;gap:8px;flex-wrap:wrap}.attendance-filters a{padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:#fffdfa;color:#41675b;text-decoration:none;font-size:.72rem;font-weight:800}.attendance-filters a.active,.attendance-filters a:hover{background:#1d5e4d;color:#fff;border-color:#1d5e4d}.records-card input[type=time]{min-width:130px}.records-card select{min-width:125px}
.admin-workspaces{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.workspace-card{display:grid;grid-template-columns:43px 1fr auto;align-items:center;gap:13px;padding:21px;text-decoration:none;border-radius:19px;border:1px solid var(--line);background:rgba(255,253,249,.9);color:var(--ink);box-shadow:0 10px 25px rgba(17,57,47,.06);transition:transform .2s,box-shadow .2s}.workspace-card:hover{color:var(--ink);transform:translateY(-3px);box-shadow:var(--shadow)}.workspace-card>span{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;background:#e2f0e7;color:#276050;font-size:1.1rem}.workspace-card.schedules>span{background:#f7ecd0;color:#9a7025}.workspace-card h5{margin:3px 0 5px}.workspace-card p{font-size:.77rem;color:var(--muted);margin:0}.workspace-card>b{font-size:.75rem;color:#23614d;white-space:nowrap}@media(max-width:720px){.admin-workspaces{grid-template-columns:1fr}.workspace-card{grid-template-columns:40px 1fr}.workspace-card>b{grid-column:2}}
.workspace-card.doctor>span{background:#e4ebfa;color:#385a91}
.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.admin-stats>div{border:1px solid var(--line);border-radius:16px;background:rgba(255,253,249,.85);padding:15px 17px;box-shadow:0 8px 22px rgba(17,57,47,.05)}.admin-stats small,.admin-stats strong,.admin-stats span{display:block}.admin-stats small,.admin-stats span{font-size:.7rem;color:var(--muted)}.admin-stats strong{font-family:'Playfair Display',Georgia,serif;font-size:1.65rem;color:var(--ink-2);line-height:1.1;margin:5px 0}.admin-jump{display:flex;gap:9px;flex-wrap:wrap}.admin-jump a{font-size:.75rem;font-weight:800;color:#276050;background:#e9f2eb;padding:7px 11px;border-radius:999px;text-decoration:none}.admin-jump a:hover{background:#d8e9dc}.admin-accordion .accordion-item{border-color:var(--line)}.admin-accordion .accordion-button{box-shadow:none;background:#fbfcf9;color:var(--ink);font-weight:800;padding:.9rem 0}.admin-accordion .accordion-button:not(.collapsed){background:#f3f8f4}.admin-accordion .accordion-button span{margin-left:auto;margin-right:12px;padding:3px 8px;border-radius:999px;background:#e1eee5;color:#276050;font-size:.7rem}.admin-accordion .accordion-body{padding:14px 0}.admin-item{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #e7eee9;padding:9px 0;font-size:.82rem}.admin-item small{color:var(--muted);font-size:.7rem}.admin-item .btn-link{font-size:.72rem;padding:0}@media(max-width:900px){.admin-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.admin-stats{grid-template-columns:1fr}}
.care-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.care-metrics>div{display:flex;align-items:center;gap:13px;padding:15px 17px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,#fffefa,#f1f8f2);box-shadow:0 8px 22px rgba(17,57,47,.05)}.care-metric-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:#1a5c4b;color:#fff;font-size:.65rem;font-weight:900;letter-spacing:.05em}.care-metrics small,.care-metrics strong,.care-metrics p{display:block}.care-metrics small,.care-metrics p{font-size:.7rem;color:var(--muted)}.care-metrics strong{font-family:'Playfair Display',Georgia,serif;font-size:1.6rem;line-height:1.05;color:var(--ink-2)}.care-metrics p{margin:2px 0 0}@media(max-width:520px){.care-metrics{grid-template-columns:1fr}}
/* Professional motion system for clinical workspaces. */
@keyframes panel-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes soft-glow{0%,100%{box-shadow:0 8px 22px rgba(17,57,47,.05)}50%{box-shadow:0 14px 28px rgba(35,97,77,.13)}}
@keyframes icon-breathe{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.055) rotate(-3deg)}}
@keyframes sheen{from{transform:translateX(-130%) rotate(12deg)}to{transform:translateX(220%) rotate(12deg)}}
@keyframes tap-pop{50%{transform:scale(.965)}100%{transform:scale(1)}}
.workspace>*{animation:panel-rise .52s cubic-bezier(.22,.9,.32,1) both}.workspace>*:nth-child(2){animation-delay:.06s}.workspace>*:nth-child(3){animation-delay:.12s}.workspace>*:nth-child(4){animation-delay:.18s}.workspace>*:nth-child(5){animation-delay:.24s}.clinical-hero{animation:panel-rise .56s cubic-bezier(.22,.9,.32,1) both}.admin-stats>div,.care-metrics>div{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;animation:soft-glow 4.5s ease-in-out infinite}.admin-stats>div:nth-child(2),.care-metrics>div:nth-child(2){animation-delay:.45s}.admin-stats>div:nth-child(3){animation-delay:.9s}.admin-stats>div:nth-child(4){animation-delay:1.35s}.admin-stats>div:hover,.care-metrics>div:hover{transform:translateY(-4px);border-color:#bad5c2;box-shadow:0 14px 30px rgba(17,57,47,.14)}.care-metric-icon,.workspace-card>span{animation:icon-breathe 4.2s ease-in-out infinite}.workspace-card{position:relative;overflow:hidden}.workspace-card:after{content:'';position:absolute;inset:-35% auto -35% -25%;width:22%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.64),transparent);pointer-events:none}.workspace-card:hover:after{animation:sheen .72s ease-out}.workspace-card:hover>span{animation-duration:1.1s}.workspace-card b{transition:transform .22s ease,color .22s ease}.workspace-card:hover b{transform:translateX(4px);color:#0f513d}.card{transition:transform .24s ease,box-shadow .24s ease}.card:hover{box-shadow:0 16px 34px rgba(17,57,47,.10)}.admin-accordion .accordion-button{transition:padding .2s ease,background .2s ease}.admin-accordion .accordion-button:not(.collapsed){padding-left:10px}.admin-item{transition:background .18s ease,padding-left .18s ease}.admin-item:hover{background:#f5faf5;padding-left:7px}.btn,.nav-workspace .nav-link{transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 16px rgba(17,57,47,.13)}.tap-feedback{animation:tap-pop .26s ease}.form-control,.form-select{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.form-control:focus,.form-select:focus{transform:translateY(-1px);box-shadow:0 0 0 .2rem rgba(34,113,73,.13)}.table tbody tr{transition:background .16s ease,transform .16s ease}.table tbody tr:hover{transform:translateX(3px)}.round-status{animation:panel-rise .38s ease both}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Fast 3D interaction layer: compositor-friendly transforms only. */
@media (hover:hover) and (prefers-reduced-motion:no-preference){
  html{scroll-behavior:smooth}
  .btn:not(.btn-close){position:relative;isolation:isolate;overflow:hidden;transform-style:preserve-3d;backface-visibility:hidden;transition:transform .18s cubic-bezier(.2,.8,.25,1),box-shadow .18s ease,filter .18s ease}
  .btn:not(.btn-close):after{content:'';position:absolute;z-index:-1;inset:-65% auto -65% -30%;width:28%;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.62),transparent);transform:translateX(-260%) rotate(14deg);transition:transform .46s ease}
  .btn:not(.btn-close):hover{transform:perspective(680px) translateY(-4px) rotateX(5deg) rotateY(-2deg);box-shadow:0 7px 0 rgba(11,58,46,.32),0 17px 28px rgba(17,57,47,.20);filter:saturate(1.06)}
  .btn:not(.btn-close):hover:after{transform:translateX(820%) rotate(14deg)}
  .btn:not(.btn-close):active{transform:perspective(680px) translateY(2px) rotateX(0) rotateY(0);box-shadow:0 2px 0 rgba(11,58,46,.28),0 5px 10px rgba(17,57,47,.14)}
  .nav-workspace .nav-link:hover{transform:perspective(520px) translateY(-2px) rotateX(4deg);text-shadow:0 4px 14px rgba(255,255,255,.18)}
  .motion-reveal{opacity:0;transform:perspective(900px) translate3d(0,28px,0) rotateX(4deg) scale(.985);transition:opacity .52s ease,transform .52s cubic-bezier(.18,.82,.24,1);animation:none!important}
  .motion-reveal.motion-variant-1{transform:perspective(900px) translate3d(-34px,18px,0) rotateY(4deg) scale(.985)}
  .motion-reveal.motion-variant-2{transform:perspective(900px) translate3d(34px,18px,0) rotateY(-4deg) scale(.985)}
  .motion-reveal.motion-visible{opacity:1;transform:perspective(900px) translate3d(0,0,0) rotateX(0) rotateY(0) scale(1)}
  .motion-tilt{transform-style:preserve-3d;will-change:auto}
  .motion-tilt.tilt-active.motion-visible{transform:perspective(1000px) translateY(-7px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) scale(1.012);box-shadow:0 22px 44px rgba(17,57,47,.18)}
  .admin-stats>div,.care-metrics>div,.care-metric-icon,.workspace-card>span{animation:none}
}

/* Workspace panels are clinical records, not decorative objects. Keep them
   visually stable: no slide-in, tilt, hover lift, or continuous pad motion. */
.workspace,.workspace>*,.clinical-hero,.card,.admin-stats>div,.care-metrics>div,.workspace-card,.motion-reveal,.motion-tilt,.motion-tilt.tilt-active.motion-visible{
  animation:none!important;
  transform:none!important;
  transition:box-shadow .18s ease,border-color .18s ease,background .18s ease!important;
}
.motion-reveal{opacity:1!important}
.admin-stats>div:hover,.care-metrics>div:hover,.workspace-card:hover,.table tbody tr:hover{transform:none!important}
