/* OfficePing guest portal - company theme aware */
.guest-body{margin:0;color:var(--text);background:var(--guest-bg,#f4f8fc);min-height:100vh}
.guest-shell{width:min(1180px,calc(100% - 32px));padding:20px 0 42px}
.guest-header{position:sticky;top:12px;z-index:80;margin-bottom:18px;padding:10px 12px;border:1px solid var(--border);border-radius:20px;background:rgba(255,255,255,.94);box-shadow:0 14px 36px rgba(15,23,42,.08);backdrop-filter:blur(14px)}
.guest-brand .logo{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font-weight:950}
.guest-nav{margin-left:auto;background:transparent;box-shadow:none;border:0;padding:0}
.guest-nav a{border:1px solid transparent;padding:9px 13px}
.guest-nav a.active{border-color:var(--border)}
.guest-main{gap:14px}
.guest-page-title{display:flex;align-items:center;min-height:42px;padding:0 4px}
.guest-page-title h1{margin:0;font-size:26px;letter-spacing:-.035em}
.guest-panel,.guest-panel-wide{max-width:none}
.guest-choice-grid{max-width:none}
.guest-choice-card,.guest-body .card{border-radius:20px!important;box-shadow:0 12px 34px rgba(15,23,42,.07)!important}
.guest-choice-card{min-height:145px;padding:22px}
.guest-choice-card strong{font-size:20px}
.guest-body .card-header h2{margin:0}
.guest-body .card-header span,.guest-body .field-hint{color:var(--muted)}

/* Office Neo guest visual */
body.guest-body.office-neo{--guest-bg:linear-gradient(135deg,#f3f8ff 0%,#f8fbff 52%,#eef5ff 100%);--primary:#2563eb;--primary2:#3b82f6}
body.guest-body.office-neo .guest-header{border-color:#d9e5f6}
body.guest-body.office-neo .guest-brand .logo{background:linear-gradient(135deg,#2563eb,#4f8df7);color:#fff;box-shadow:0 9px 22px rgba(37,99,235,.22)}
body.guest-body.office-neo .guest-nav a.active,body.guest-body.office-neo .guest-nav a:hover{background:#eef5ff;color:#1d4ed8}
body.guest-body.office-neo .guest-choice-icon{background:#e8f0ff;color:#2563eb}

/* Office Modern guest visual */
body.guest-body.office-modern{--guest-bg:radial-gradient(circle at 8% 0%,rgba(26,194,185,.15),transparent 26%),linear-gradient(135deg,#f8fffe 0%,#f3fafc 56%,#edf6fb 100%);--primary:#0e8f8c;--primary2:#14aaa5;--text:#10263a;--muted:#62798a;--border:#d4e5e8}
body.guest-body.office-modern .guest-header{border-color:#d4e5e8;background:#fff;box-shadow:0 14px 36px rgba(13,64,93,.08)}
body.guest-body.office-modern .guest-brand .logo{background:linear-gradient(135deg,#13aaa6,#0e8f8c);color:#fff;box-shadow:0 9px 22px rgba(14,143,140,.22)}
body.guest-body.office-modern .guest-nav a.active,body.guest-body.office-modern .guest-nav a:hover{background:#edf9f8;color:#0e7774}
body.guest-body.office-modern .guest-choice-icon{background:#dff7f4;color:#0e8f8c}
body.guest-body.office-modern .primary-btn{background:linear-gradient(135deg,#13aaa6,#0e8f8c)!important;border-color:#0e8f8c!important;color:#fff!important}
body.guest-body.office-modern .secondary-btn{border-color:#cfe0e4!important;color:#163e55!important;background:#fff!important}
body.guest-body.office-modern input,body.guest-body.office-modern select,body.guest-body.office-modern textarea{border-color:#cbdce3!important;background:#fff!important;color:#10263a!important}
body.guest-body.office-modern input:focus,body.guest-body.office-modern select:focus,body.guest-body.office-modern textarea:focus{border-color:#20b8b3!important;box-shadow:0 0 0 3px rgba(18,168,165,.12)!important;outline:none}

@media(max-width:760px){.guest-shell{width:min(100% - 20px,1180px);padding-top:10px}.guest-header{top:6px;align-items:stretch;padding:9px}.guest-nav{width:100%}.guest-page-title h1{font-size:23px}.guest-choice-grid{grid-template-columns:1fr}}
