.login-page{display:grid;place-items:center;min-height:100vh;height:auto;grid-template-columns:1fr;background:radial-gradient(ellipse at top,#e5ede5,#f5f4ef)}.login-card{max-width:460px;margin:24px;padding:36px;background:#fff;border:1px solid #d5dcd6;border-radius:12px;box-shadow:0 14px 50px #244b3a14}.login-card h1{color:#244b3a;font-size:28px}.login-card p{line-height:1.8}#login-status{font-size:12px;color:#536c5d}.cloud-box{padding:12px;border:1px solid #d4ded4;border-radius:6px;margin:12px 0;background:#f0f5ee}.cloud-box summary{cursor:pointer;font-weight:600}.cloud-box form{margin-top:8px}.cloud-box input,.cloud-box select{margin:4px 0 8px}.cloud-status{font-size:11px;color:#315e48}.cloud-box img{width:100%;max-height:140px;object-fit:contain;background:#fff}.cloud-member-row{font-size:11px;padding:7px 0;border-bottom:1px solid #dce3d9}.tour-panel{position:fixed;z-index:10000;bottom:24px;left:50%;transform:translateX(-50%);width:min(500px,calc(100vw - 32px));padding:20px;background:#244b3a;color:white;border-radius:12px;box-shadow:0 8px 40px #0005}.tour-panel p{margin:10px 0}.tour-panel button{margin-right:7px}.tour-step{outline:4px solid #c89d50!important;outline-offset:4px;animation:tourPulse 1.3s ease-in-out infinite;position:relative;z-index:2}.tour-count{color:#d6e6d8;font-size:11px}@keyframes tourPulse{50%{outline-color:#f3d38a;box-shadow:0 0 0 12px #c89d5020}}@media(prefers-reduced-motion:reduce){.tour-step{animation:none}}

/* Entry selection and fixed account navigation. */
[hidden]{display:none!important}
.entry-card{max-width:1050px;width:calc(100% - 40px);padding:40px}
.entry-card h1{font-size:30px;margin:16px 0}
.entry-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0}
.entry-choice{display:flex;flex-direction:column;gap:12px;padding:24px 20px;border:1px solid #cbd7cf;border-radius:10px;text-decoration:none;color:#254e40;background:#f9fbf8;min-height:180px}
.entry-choice:hover{border-color:#2b5a48;background:#eef5ee;box-shadow:0 8px 24px #244b3a12}
.entry-choice strong{font-size:21px}.entry-choice span{line-height:1.8}.entry-choice small{color:#65796c;line-height:1.6}
.guest-choice{background:#f5f2e8}.entry-account{font-size:13px;color:#315e48;overflow-wrap:anywhere}.entry-back{display:inline-block;margin:12px 16px 12px 0}
.cloud-workspace header{height:116px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px;align-content:center;gap:8px}
.cloud-workspace main{height:calc(100vh - 116px)}
.account-bar{flex-basis:100%;display:flex;align-items:center;justify-content:flex-end;gap:14px;min-width:0;font-size:12px;border-top:1px solid #e4e9e2;padding-top:7px}
.account-bar span{margin-right:auto;overflow-wrap:anywhere}.account-bar button{padding:6px 16px;background:#244f43;color:white}.account-bar a{white-space:nowrap}
.guest-mode #schemes-panel,.guest-mode [data-tab="schemes"],.guest-mode #exportImage{display:none!important}
@media(max-width:760px){.entry-options{grid-template-columns:1fr}.entry-card{padding:24px;margin:16px}.entry-choice{min-height:120px}.cloud-workspace header{height:auto;min-height:130px;padding:10px 12px}.cloud-workspace main{height:auto}.account-bar{flex-wrap:wrap;gap:8px}.account-bar span{flex-basis:100%}.cloud-workspace .head-right{flex-wrap:wrap}.presentation.cloud-workspace main{height:calc(100vh - 130px)}}

#entry-model{position:fixed;inset:0;width:100%;height:100%;border:0;pointer-events:none}.entry-home .login-page{position:relative;z-index:5;background:rgba(27,49,42,.12);pointer-events:none}.entry-home .login-card{background:rgba(255,255,255,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:auto;border-color:#ffffffb3}.entry-home .entry-choice{background:#ffffff9c}.entry-browsing #entry-model{pointer-events:auto}.entry-browsing{overflow:hidden}

/* Entry backdrop frost: keep the hospital header and foreground choices sharp. */
.entry-home .login-page::before{content:"";position:fixed;inset:116px 0 0;z-index:0;pointer-events:none;background:rgba(237,242,239,.14);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.entry-home .login-card{position:relative;z-index:1}
@media(max-width:760px){.entry-home .login-page::before{top:130px}}
