.office-body,
.office-login-body {
  --op-sidebar: 286px;
  --op-accent: var(--atlas-brand);
  --op-accent-2: var(--atlas-brand-secondary);
  --op-surface: color-mix(in srgb, var(--atlas-surface) 88%, transparent);
  --op-surface-solid: var(--atlas-surface);
  --op-border: var(--atlas-border);
  --op-muted: var(--atlas-text-muted);
  --op-radius: var(--atlas-radius-lg);
  --op-shadow: var(--atlas-shadow-lg);
}

.office-body {
  min-height: 100vh;
  background:
    radial-gradient(900px 520px at 92% -10%, color-mix(in srgb, var(--op-accent) 15%, transparent), transparent 68%),
    radial-gradient(760px 480px at 10% 105%, color-mix(in srgb, var(--op-accent-2) 12%, transparent), transparent 70%),
    #07101c;
}
.office-body::before { content:none; }
.office-shell { min-height:100vh; display:grid; grid-template-columns:var(--op-sidebar) minmax(0,1fr); position:relative; }
.office-workspace { min-width:0; display:flex; flex-direction:column; min-height:100vh; }
.office-nav { height:100vh; position:sticky; top:0; z-index:500; display:flex; flex-direction:column; padding:18px; background:linear-gradient(180deg,rgba(8,18,31,.98),rgba(5,12,22,.98)); border-left:1px solid var(--op-border); box-shadow:-20px 0 50px rgba(0,0,0,.15); }
.office-brand { display:grid; grid-template-columns:52px minmax(0,1fr) auto; gap:12px; align-items:center; padding:4px 2px 22px; border-bottom:1px solid var(--op-border); }
.office-brand-mark { width:52px; height:52px; border-radius:16px; display:grid; place-items:center; overflow:hidden; color:#fff; font-size:22px; font-weight:900; background:linear-gradient(145deg,color-mix(in srgb,var(--op-accent) 82%,#fff),color-mix(in srgb,var(--op-accent-2) 82%,#000)); box-shadow:0 10px 30px color-mix(in srgb,var(--op-accent) 25%,transparent),inset 0 0 0 1px rgba(255,255,255,.18); }
.office-brand-mark img { width:100%; height:100%; object-fit:cover; background:#fff; }
.office-brand-copy { min-width:0; }
.office-brand-copy strong { color:#fff; font-size:15px; display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.office-brand-copy small { display:flex; align-items:center; gap:5px; color:#a78bfa; margin-top:5px; font-size:11px; }
.office-brand-copy small svg { width:14px; height:14px; }
.office-nav-close { display:none; border:0; background:transparent; color:#fff; font-size:28px; cursor:pointer; }
.office-nav-links { display:flex; flex-direction:column; gap:5px; padding-top:20px; overflow:auto; }
.office-nav-label { padding:14px 13px 5px; color:#60748c; font-size:10px; font-weight:900; letter-spacing:.08em; }
.office-nav-links a { min-height:46px; display:flex; align-items:center; gap:12px; padding:10px 13px; border:1px solid transparent; border-radius:13px; color:#aebcd0; font-size:13px; font-weight:800; }
.office-nav-links a svg { width:20px; height:20px; flex:0 0 auto; color:#71849b; transition:.2s ease; }
.office-nav-links a:hover { color:#fff; background:rgba(255,255,255,.045); border-color:rgba(255,255,255,.06); transform:translateX(-2px); }
.office-nav-links a.active { color:#fff; background:linear-gradient(135deg,color-mix(in srgb,var(--op-accent) 22%,transparent),color-mix(in srgb,var(--op-accent-2) 13%,transparent)); border-color:color-mix(in srgb,var(--op-accent) 32%,transparent); box-shadow:inset 3px 0 0 var(--op-accent); }
.office-nav-links a.active svg { color:#62ddb0; }
.office-nav-footer { margin-top:auto; padding-top:16px; border-top:1px solid var(--op-border); display:grid; gap:12px; }
.office-user-chip { display:grid; grid-template-columns:40px minmax(0,1fr); gap:10px; align-items:center; }
.office-user-chip>span { width:40px; height:40px; display:grid; place-items:center; border-radius:12px; background:rgba(255,255,255,.07); color:#fff; font-weight:900; }
.office-user-chip strong,.office-user-chip small { display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.office-user-chip strong { color:#eef6ff; font-size:12px; }.office-user-chip small { color:#71849b; font-size:10px; margin-top:2px; }
.office-nav .nav-logout-form { margin:0; }.office-nav .nav-logout-button { width:100%; display:flex; align-items:center; justify-content:center; gap:9px; border:1px solid rgba(248,113,113,.16); background:rgba(239,68,68,.06); color:#fca5a5; border-radius:12px; padding:10px; cursor:pointer; font-family:inherit; font-weight:800; }
.office-nav .nav-logout-button svg { width:18px; height:18px; }.office-nav .nav-logout-button:hover { background:rgba(239,68,68,.13); border-color:rgba(248,113,113,.3); }
.office-topbar { min-height:76px; position:sticky; top:0; z-index:300; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px clamp(16px,3vw,34px); background:rgba(7,16,28,.78); backdrop-filter:blur(20px); border-bottom:1px solid var(--op-border); }
.office-topbar-start,.office-topbar-end { display:flex; align-items:center; gap:12px; }.office-breadcrumb small,.office-breadcrumb strong { display:block; }.office-breadcrumb small { color:#71849b; font-size:10px; }.office-breadcrumb strong { color:#f8fbff; font-size:14px; margin-top:2px; }.office-topbar-end { border:1px solid var(--op-border); background:rgba(255,255,255,.03); border-radius:99px; padding:8px 12px; color:#a9b8ca; font-size:11px; font-weight:800; }
.office-live-dot { width:8px; height:8px; border-radius:50%; background:#34d399; box-shadow:0 0 0 5px rgba(52,211,153,.09),0 0 14px rgba(52,211,153,.65); }
.office-menu-button { display:none; align-items:center; gap:8px; border:1px solid var(--op-border); border-radius:12px; background:rgba(255,255,255,.04); color:#fff; padding:9px 11px; font:700 12px inherit; cursor:pointer; }.office-menu-button svg { width:20px; height:20px; }
.office-main { flex:1; padding:clamp(18px,3vw,34px); min-width:0; }.office-content { width:min(100%,1480px); margin:0 auto; }
.office-portal-footer { display:flex; justify-content:space-between; gap:14px; padding:18px clamp(16px,3vw,34px); color:#64758a; border-top:1px solid var(--op-border); font-size:10px; }
.office-nav-backdrop { display:none; }

.office-body .card { border:1px solid var(--op-border); border-radius:var(--op-radius); background:linear-gradient(145deg,rgba(14,29,49,.88),rgba(9,20,35,.84)); box-shadow:0 12px 36px rgba(0,0,0,.16); backdrop-filter:blur(18px); padding:clamp(17px,2.2vw,24px); }
.office-body .card h2 { color:#f8fbff; font-size:17px; margin:0 0 6px; }.office-body .card h3 { color:#eef6ff; }
.office-page-head { display:flex; justify-content:space-between; align-items:center; gap:18px; margin:0 0 22px; }.office-page-head h1 { font-size:clamp(24px,3.5vw,36px); line-height:1.15; color:#fff; margin:0 0 7px; letter-spacing:-.025em; }.office-page-head p { margin:0; max-width:680px; }
.office-body .hint { color:var(--op-muted); line-height:1.7; }.office-body .btn { border-radius:12px; min-height:42px; display:inline-flex; align-items:center; justify-content:center; gap:8px; font-weight:800; }.office-body .btn:not(.secondary):not(.danger) { background:linear-gradient(135deg,color-mix(in srgb,var(--op-accent) 90%,#fff),color-mix(in srgb,var(--op-accent) 72%,#052d24)); color:#fff; text-shadow:0 1px 1px rgba(0,0,0,.25); box-shadow:0 10px 24px color-mix(in srgb,var(--op-accent) 18%,transparent); }.office-body .btn.secondary { background:rgba(255,255,255,.045); border-color:var(--op-border); color:#d9e4f1; }.office-body .btn.secondary:hover { background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.18); }
.office-body .input,.office-body .select { min-height:46px; border-radius:12px; border:1px solid rgba(148,163,184,.16); background:rgba(4,12,23,.58); color:#eef6ff; }.office-body textarea.input { min-height:120px; }.office-body .input:focus,.office-body .select:focus { border-color:color-mix(in srgb,var(--op-accent) 55%,transparent); box-shadow:0 0 0 4px color-mix(in srgb,var(--op-accent) 10%,transparent); }
.office-body label { color:#d7e2ef; }.office-body .notice { border-radius:14px; margin-bottom:18px; }
.office-preview-banner { display:flex; align-items:center; gap:13px; padding:13px 16px; margin-bottom:20px; border:1px solid rgba(96,165,250,.28); background:rgba(59,130,246,.09); border-radius:15px; color:#dbeafe; }.office-preview-banner>svg { width:23px; height:23px; color:#60a5fa; }.office-preview-banner div { flex:1; }.office-preview-banner strong,.office-preview-banner span { display:block; }.office-preview-banner span { color:#93c5fd; font-size:11px; margin-top:2px; }.office-preview-banner form { margin:0; }

.office-hero-card { position:relative; overflow:hidden; min-height:220px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:22px; align-items:end; margin-bottom:18px; padding:clamp(22px,4vw,38px)!important; background:radial-gradient(600px 250px at 85% 15%,color-mix(in srgb,var(--op-accent) 24%,transparent),transparent 68%),linear-gradient(135deg,#102841,#0a182a 62%,#0d2330)!important; }
.office-hero-card::after { content:""; position:absolute; width:260px; height:260px; left:-70px; top:-95px; border-radius:50%; border:1px solid rgba(255,255,255,.07); box-shadow:0 0 0 32px rgba(255,255,255,.02),0 0 0 64px rgba(255,255,255,.012); }.office-hero-content { position:relative; z-index:1; }.office-eyebrow { display:inline-flex; align-items:center; gap:7px; padding:6px 10px; border-radius:99px; border:1px solid rgba(110,231,183,.22); background:rgba(109,40,217,.1); color:#ddd6fe; font-size:10px; font-weight:900; }.office-hero-card h1 { margin:14px 0 8px; color:#fff; font-size:clamp(26px,4vw,42px); }.office-hero-card p { max-width:680px; color:#a9b9cc; line-height:1.8; margin:0; }.office-hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }.office-hero-logo { position:relative; z-index:1; width:130px; height:130px; border-radius:30px; overflow:hidden; display:grid; place-items:center; color:#fff; font-size:46px; font-weight:900; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); box-shadow:0 22px 50px rgba(0,0,0,.28); }.office-hero-logo img { width:100%; height:100%; object-fit:cover; background:#fff; }
.office-kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:18px; }.office-kpi { min-height:132px; position:relative; overflow:hidden; }.office-kpi-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }.office-kpi-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:13px; background:color-mix(in srgb,var(--kpi-color,var(--op-accent)) 13%,transparent); color:var(--kpi-color,var(--op-accent)); }.office-kpi-icon svg { width:22px; height:22px; }.office-kpi strong { display:block; font-size:30px; color:#fff; margin-top:18px; line-height:1; }.office-kpi span { display:block; color:#91a2b8; font-size:11px; margin-top:8px; }.office-kpi small { color:var(--kpi-color,var(--op-accent)); font-weight:900; font-size:10px; }
.office-dashboard-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr); gap:18px; align-items:start; }.office-stack { display:grid; gap:18px; }.office-section-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:17px; }.office-section-head h2 { margin:0!important; }.office-text-link { color:#c4b5fd; font-size:11px; font-weight:900; }.office-health-list,.office-latest-list,.office-ranking-list { display:grid; gap:10px; }.office-health-item,.office-latest-item,.office-ranking-item { display:flex; align-items:center; gap:12px; padding:12px; border:1px solid rgba(148,163,184,.1); border-radius:14px; background:rgba(255,255,255,.025); }.office-health-item>span,.office-latest-thumb { width:42px; height:42px; flex:0 0 auto; display:grid; place-items:center; border-radius:12px; background:rgba(245,158,11,.1); color:#fbbf24; }.office-health-item svg { width:20px; height:20px; }.office-health-item div,.office-latest-item div,.office-ranking-item div { min-width:0; flex:1; }.office-health-item strong,.office-latest-item strong,.office-ranking-item strong { display:block; color:#eef6ff; font-size:12px; }.office-health-item small,.office-latest-item small,.office-ranking-item small { display:block; color:#788ba2; font-size:10px; margin-top:4px; }.office-health-item a { font-size:10px; }.office-latest-item { color:inherit; }.office-latest-thumb { overflow:hidden; background:rgba(59,130,246,.1); color:#93c5fd; }.office-latest-thumb img { width:100%; height:100%; object-fit:cover; }.office-listing-status { padding:5px 8px; border-radius:99px; font-size:9px!important; font-weight:900; background:rgba(148,163,184,.09); color:#b9c6d5!important; }.office-listing-status.active { background:rgba(109,40,217,.1); color:#c4b5fd!important; }.office-listing-status.expired { background:rgba(239,68,68,.1); color:#fca5a5!important; }
.office-chart { height:170px; display:flex; align-items:flex-end; gap:9px; padding-top:20px; }.office-chart-column { flex:1; min-width:0; display:flex; height:100%; flex-direction:column; justify-content:flex-end; align-items:center; gap:8px; }.office-chart-bar { width:min(30px,80%); min-height:4px; border-radius:8px 8px 3px 3px; background:linear-gradient(to top,var(--op-accent),#66e1b4); box-shadow:0 0 18px color-mix(in srgb,var(--op-accent) 22%,transparent); }.office-chart-column small { color:#687c94; font-size:9px; }.office-ranking-item b { color:#75dfb8; font-size:12px; }

.office-listing-toolbar { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:18px; }.office-filter-tabs { display:flex; gap:7px; overflow:auto; padding:3px 0 8px; scrollbar-width:none; }.office-filter-tabs a { flex:0 0 auto; padding:8px 12px; border:1px solid var(--op-border); border-radius:99px; color:#91a2b8; font-size:10px; font-weight:900; background:rgba(255,255,255,.025); }.office-filter-tabs a.active { color:#f3e8ff; border-color:color-mix(in srgb,var(--op-accent) 35%,transparent); background:color-mix(in srgb,var(--op-accent) 12%,transparent); }.office-listing-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.office-listing-card { display:grid; grid-template-columns:154px minmax(0,1fr); min-height:190px; overflow:hidden; padding:0!important; }.office-listing-media { position:relative; min-height:190px; background:linear-gradient(145deg,#12263c,#091522); }.office-listing-media img { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; }.office-listing-media-placeholder { height:100%; display:grid; place-items:center; color:#607a94; }.office-listing-media-placeholder svg { width:38px; height:38px; }.office-listing-media .office-listing-status { position:absolute; top:11px; right:11px; backdrop-filter:blur(12px); }.office-listing-card-body { min-width:0; padding:17px; display:flex; flex-direction:column; }.office-listing-card h2 { font-size:15px!important; margin:0 0 5px!important; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }.office-listing-location { color:#8496ab; font-size:10px; }.office-listing-price { color:#fff; font-size:17px; font-weight:900; margin:12px 0; }.office-listing-metrics { display:flex; gap:12px; color:#7f91a6; font-size:10px; }.office-listing-card-actions { display:flex; gap:7px; flex-wrap:wrap; margin-top:auto; padding-top:12px; }.office-listing-card-actions form { margin:0; }.office-listing-card-actions .btn { min-height:34px; padding:6px 10px; font-size:9px; }.office-empty-state { grid-column:1/-1; text-align:center; padding:54px 20px!important; }.office-empty-state svg { width:54px; height:54px; color:#526a83; margin-bottom:12px; }

.office-form-layout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); gap:18px; align-items:start; }.office-form-main,.office-form-side { display:grid; gap:18px; }.office-form-side { position:sticky; top:96px; }.office-form-section-title { display:flex; align-items:flex-start; gap:12px; margin-bottom:20px; }.office-form-step { width:34px; height:34px; flex:0 0 auto; display:grid; place-items:center; border-radius:11px; background:color-mix(in srgb,var(--op-accent) 12%,transparent); color:#75dfb8; font-weight:900; font-size:11px; }.office-form-section-title h2 { margin:0!important; }.office-form-section-title p { margin:4px 0 0; color:#7e90a6; font-size:10px; }.office-picker-controls { display:grid; grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) auto; gap:10px; align-items:end; }.office-picker-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr); gap:12px; margin-top:13px; }.office-picker-map { min-height:430px; border:1px solid var(--op-border); border-radius:16px; overflow:hidden; background:#08121f; }.office-picker-results { border:1px solid var(--op-border); border-radius:16px; padding:14px; background:rgba(3,10,19,.38); }.office-picker-list { display:grid; gap:7px; max-height:370px; overflow:auto; }.office-picker-result { border:1px solid var(--op-border); border-radius:12px; background:rgba(255,255,255,.025); color:#e4edf7; padding:10px; text-align:right; cursor:pointer; font-family:inherit; }.office-picker-result:hover { background:rgba(255,255,255,.07); }.office-selected-parcel { margin-top:14px; padding:16px; border:1px solid rgba(139,92,246,.22); border-radius:15px; background:rgba(109,40,217,.08); }.office-selected-parcel[hidden] { display:none; }.office-selected-parcel .meta { grid-template-columns:repeat(4,minmax(0,1fr)); }.listing-image-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:12px; }.listing-image-admin { padding:10px; display:grid; gap:8px; border:1px solid var(--op-border); border-radius:14px; background:rgba(255,255,255,.025); }.listing-image-admin img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:10px; }.office-sticky-save { display:flex; flex-wrap:wrap; gap:10px; position:sticky; bottom:14px; z-index:40; padding:12px; border:1px solid var(--op-border); border-radius:16px; background:rgba(7,16,28,.9); backdrop-filter:blur(18px); box-shadow:var(--op-shadow); }

.office-profile-layout { display:grid; grid-template-columns:340px minmax(0,1fr); gap:18px; align-items:start; }.office-profile-preview { position:sticky; top:96px; overflow:hidden; padding:0!important; }.office-profile-preview-cover { height:130px; background:linear-gradient(135deg,color-mix(in srgb,var(--op-accent) 42%,#0a1d2e),#122b45); background-size:cover; background-position:center; }.office-profile-preview-body { text-align:center; padding:0 20px 22px; }.office-profile-preview-logo { width:88px; height:88px; margin:-44px auto 12px; display:grid; place-items:center; overflow:hidden; border-radius:24px; border:5px solid #0d1c2f; background:#152b42; color:#fff; font-size:32px; font-weight:900; }.office-profile-preview-logo img { width:100%; height:100%; object-fit:cover; background:#fff; }.office-profile-preview h2 { margin:0 0 6px!important; }.office-profile-preview p { color:#8ea0b4; font-size:11px; line-height:1.7; }.office-profile-completeness { margin-top:16px; text-align:right; }.office-profile-completeness-head { display:flex; justify-content:space-between; gap:10px; color:#aab9c9; font-size:10px; }.office-progress { height:7px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.06); margin-top:8px; }.office-progress span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--op-accent),#66e1b4); }.office-media-upload { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.office-media-field { border:1px dashed rgba(148,163,184,.2); border-radius:14px; padding:14px; background:rgba(255,255,255,.02); }.office-media-field img { width:100%; height:110px; object-fit:cover; border-radius:10px; margin-top:10px; }.office-security-card { max-width:660px; margin:0 auto; }.office-security-note { display:flex; gap:12px; padding:14px; border-radius:14px; background:rgba(59,130,246,.07); border:1px solid rgba(96,165,250,.14); color:#b7c9df; font-size:11px; line-height:1.7; }.office-security-note svg { width:22px; height:22px; flex:0 0 auto; color:#60a5fa; }
.office-pagination { display:flex; justify-content:center; align-items:center; gap:8px; margin-top:18px; }.office-pagination span { color:#8496ab; font-size:10px; }

.office-page-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:22px; }.office-page-heading h1 { margin:4px 0 7px; color:#fff; font-size:clamp(25px,3.4vw,36px); }.office-page-heading p { margin:0; color:#8ea0b4; }.office-section-kicker { color:#c4b5fd; font-size:10px; font-weight:900; letter-spacing:.07em; }.office-security-badge { display:flex; align-items:center; gap:10px; padding:10px 14px; border:1px solid rgba(139,92,246,.22); border-radius:15px; background:rgba(16,185,129,.06); color:#c4b5fd; }.office-security-badge>svg { width:24px; height:24px; }.office-security-badge strong,.office-security-badge small { display:block; }.office-security-badge strong { color:#f3e8ff; font-size:11px; }.office-security-badge small { color:#70a890; font-size:9px; margin-top:2px; }.office-security-layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:18px; align-items:start; }.office-security-form-card { max-width:760px; width:100%; }.office-card-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; padding-bottom:18px; margin-bottom:18px; border-bottom:1px solid var(--op-border); }.office-card-heading span { color:#c4b5fd; font-size:9px; font-weight:900; }.office-card-heading h2 { margin:5px 0 0!important; }.office-card-heading>svg { width:30px; height:30px; color:#c4b5fd; }.office-security-form-card .form-stack { max-width:580px; }.office-security-tips { display:grid; gap:10px; }.office-security-tips .card { position:relative; overflow:hidden; }.office-security-tips h3 { margin:12px 0 5px; }.office-security-tips p { margin:0; color:#8496ab; font-size:10px; line-height:1.7; }.office-tip-index { color:#4d657d; font-size:10px; font-weight:900; letter-spacing:.12em; }

/* Office interaction contract: compact, readable controls without page-wide buttons. */
.office-body .btn {
  width:auto;
  max-width:100%;
  min-height:40px;
  padding:9px 14px;
  flex:0 0 auto;
  font-size:12px;
  line-height:1.25;
  white-space:normal;
  text-align:center;
}
.office-body .office-primary-action { width:fit-content; min-height:42px; font-size:12.5px; }
.office-body .atlas-actions { width:auto; align-items:center; }
.office-body .atlas-actions>.btn,
.office-body .atlas-actions>button { flex:0 0 auto; min-height:40px; }
.office-page-counter { display:inline-flex; align-items:center; min-height:36px; padding:7px 12px; border:1px solid rgba(96,165,250,.22); border-radius:99px; background:rgba(59,130,246,.08); color:#bfdbfe; font-size:11px; font-weight:900; }
.office-inline-note,.office-feature-state { display:flex; align-items:flex-start; gap:13px; margin-bottom:18px; padding:15px 17px; border:1px solid rgba(96,165,250,.2); border-radius:16px; background:linear-gradient(135deg,rgba(59,130,246,.09),rgba(139,92,246,.07)); color:#cbdcf0; }
.office-inline-note>svg,.office-feature-state>svg { width:24px; height:24px; flex:0 0 auto; color:#93c5fd; }
.office-inline-note strong,.office-feature-state strong { display:block; color:#f1f7ff; margin-bottom:3px; }
.office-feature-state p { margin:4px 0 0; color:#9fb1c7; line-height:1.75; }

.office-listing-card-actions { align-items:center; }
.office-listing-card-actions .btn { min-height:36px; padding:7px 11px; font-size:11px; }
.office-action-menu { position:relative; }
.office-action-menu>summary { min-height:36px; display:inline-flex; align-items:center; padding:7px 11px; border:1px solid var(--op-border); border-radius:11px; background:rgba(255,255,255,.045); color:#d9e4f1; cursor:pointer; font-size:11px; font-weight:800; list-style:none; }
.office-action-menu>summary::-webkit-details-marker { display:none; }
.office-action-menu>summary::after { content:"⌄"; margin-right:7px; color:#8ea0b4; }
.office-action-menu[open]>summary { border-color:rgba(167,139,250,.35); background:rgba(139,92,246,.1); }
.office-action-menu-panel { position:absolute; z-index:60; left:0; bottom:calc(100% + 8px); min-width:176px; display:grid; gap:6px; padding:9px; border:1px solid rgba(148,163,184,.2); border-radius:13px; background:#0b1829; box-shadow:0 18px 46px rgba(0,0,0,.38); }
.office-action-menu-panel form,.office-action-menu-panel .btn { width:100%; }

.office-referral-list { gap:14px; }
.office-body .office-referral-card { position:relative; overflow:visible; background:linear-gradient(145deg,rgba(15,31,52,.94),rgba(8,20,35,.9)); }
.office-referral-card::before { content:none; }
.office-referral-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; padding-bottom:15px; margin-bottom:15px; border-bottom:1px solid var(--op-border); }
.office-referral-head h2 { margin:5px 0 3px!important; }
.office-referral-head p { margin:0; color:#8295aa; }
.office-referral-facts { grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.office-referral-facts>div { padding:11px; border:1px solid rgba(148,163,184,.1); border-radius:12px; background:rgba(255,255,255,.025); }
.office-referral-facts strong { color:#8ea3ba; font-size:10px; }
.office-referral-facts p { margin:5px 0 0; color:#eef6ff; line-height:1.55; }
.office-referral-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; padding-top:14px; margin-top:14px; border-top:1px solid var(--op-border); }
.office-referral-actions form { margin:0; }
.office-referral-decision { width:100%; display:grid; grid-template-columns:minmax(220px,1fr) auto; gap:10px; align-items:end; }
.office-referral-decision label>span { display:block; margin-bottom:6px; color:#8fa2b8; font-size:10px; font-weight:800; }
.office-compact-actions { display:flex; flex-wrap:wrap; gap:8px; }

.office-login-body { --op-accent:var(--identity-primary,#6d28d9); --op-accent-2:var(--identity-secondary,#3b82f6); min-height:100vh; margin:0; color:#eaf2fb; background:#07101c; }.office-login-body::before { content:""; position:fixed; inset:0; pointer-events:none; background:radial-gradient(850px 620px at 12% 10%,color-mix(in srgb,var(--op-accent) 17%,transparent),transparent 66%),radial-gradient(640px 480px at 88% 95%,color-mix(in srgb,var(--op-accent-2) 12%,transparent),transparent 67%),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px); background-size:auto,auto,44px 44px,44px 44px; }.office-login-shell { min-height:100vh; position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(440px,.75fr); }.office-login-story { padding:clamp(30px,6vw,82px); display:flex; flex-direction:column; justify-content:center; position:relative; overflow:hidden; }.office-login-story::after { content:""; position:absolute; width:440px; height:440px; left:-230px; top:17%; border-radius:50%; border:1px solid rgba(255,255,255,.06); box-shadow:0 0 0 52px rgba(255,255,255,.015),0 0 0 104px rgba(255,255,255,.01); }.office-login-brand { position:absolute; top:clamp(24px,4vw,52px); right:clamp(26px,6vw,82px); display:flex; align-items:center; gap:12px; color:#fff; }.office-login-brand-mark { width:48px; height:48px; overflow:hidden; display:grid; place-items:center; border-radius:15px; background:linear-gradient(145deg,var(--op-accent),color-mix(in srgb,var(--op-accent-2) 78%,#07101c)); box-shadow:0 15px 35px color-mix(in srgb,var(--op-accent) 20%,transparent); }.office-login-brand-mark img { width:100%; height:100%; object-fit:contain; background:#fff; }.office-login-brand strong,.office-login-brand small { display:block; }.office-login-brand strong { font-size:14px; }.office-login-brand small { color:#7890aa; font-size:9px; margin-top:3px; }.office-login-story-copy { max-width:690px; position:relative; z-index:2; }.office-login-story-copy h1 { margin:16px 0 14px; font-size:clamp(37px,5vw,68px); line-height:1.08; letter-spacing:-.045em; color:#fff; }.office-login-story-copy p { max-width:600px; color:#9babc0; line-height:1.9; font-size:14px; }.office-login-features { max-width:700px; display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:38px; position:relative; z-index:2; }.office-login-features article { display:flex; align-items:flex-start; gap:10px; padding:14px; border:1px solid rgba(148,163,184,.12); border-radius:15px; background:rgba(255,255,255,.025); }.office-login-features article>span { width:35px; height:35px; flex:0 0 auto; display:grid; place-items:center; border-radius:11px; color:#c4b5fd; background:rgba(109,40,217,.1); }.office-login-features svg { width:18px; height:18px; stroke-width:1.8; }.office-login-features strong,.office-login-features small { display:block; }.office-login-features strong { color:#eef6ff; font-size:10px; }.office-login-features small { color:#73879e; font-size:9px; line-height:1.55; margin-top:4px; }.office-login-trust { position:absolute; bottom:30px; right:clamp(26px,6vw,82px); color:#60758d; font-size:9px; }.office-login-panel { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:clamp(22px,4vw,58px); border-right:1px solid rgba(148,163,184,.12); background:rgba(5,13,23,.68); backdrop-filter:blur(22px); }.office-login-card { width:min(100%,460px); }.office-login-heading>span { color:#c4b5fd; font-size:10px; font-weight:900; }.office-login-heading h2 { margin:8px 0 7px; color:#fff; font-size:30px; }.office-login-heading p { margin:0 0 25px; color:#8092a8; font-size:11px; }.office-login-form { display:grid; gap:17px; }.office-login-form label>span { display:block; color:#d5e0ec; font-size:11px; font-weight:800; margin-bottom:8px; }.office-input-wrap { position:relative; }.office-input-wrap>svg { position:absolute; width:19px; height:19px; top:50%; right:15px; transform:translateY(-50%); z-index:1; color:#60758c; stroke-width:1.7; }.office-login-body .office-input-wrap .input { width:100%; min-height:54px; padding-right:46px; border:1px solid rgba(148,163,184,.15); border-radius:14px; background:rgba(8,20,34,.8); color:#fff; }.office-login-body .office-input-wrap .input:focus { border-color:color-mix(in srgb,var(--op-accent) 55%,transparent); box-shadow:0 0 0 4px color-mix(in srgb,var(--op-accent) 10%,transparent); }.office-login-submit { min-height:54px; margin-top:3px; border:0!important; border-radius:14px!important; display:flex!important; align-items:center; justify-content:center; gap:10px; color:#fff!important; font-weight:900!important; background:linear-gradient(135deg,color-mix(in srgb,var(--op-accent) 90%,#fff),color-mix(in srgb,var(--op-accent) 78%,#1e1040))!important; box-shadow:0 16px 32px color-mix(in srgb,var(--op-accent) 20%,transparent)!important; }.office-login-submit svg { width:19px; height:19px; stroke-width:2; }.office-login-links { display:flex; justify-content:space-between; gap:10px; margin-top:20px; }.office-login-links a { color:#8fa2b8; font-size:10px; font-weight:800; }.office-login-links a:hover { color:#c4b5fd; }.office-login-help { max-width:420px; color:#5e738b; text-align:center; font-size:9px; line-height:1.7; margin:25px 0 0; }

@media (max-width:1200px) { .office-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.office-listing-grid { grid-template-columns:1fr; }.office-dashboard-grid { grid-template-columns:minmax(0,1fr); }.office-form-layout { grid-template-columns:1fr; }.office-form-side { position:static; }.office-profile-layout { grid-template-columns:280px minmax(0,1fr); }.office-login-shell { grid-template-columns:minmax(0,1fr) minmax(390px,.78fr); }.office-login-features { grid-template-columns:1fr; max-width:520px; }.office-login-features article { padding:10px 13px; } }
@media (max-width:960px) {
  .office-shell { display:block; }.office-nav { position:fixed; right:0; top:0; width:min(88vw,310px); transform:translateX(105%); transition:transform .25s ease; }.office-nav-open .office-nav { transform:none; }.office-nav-backdrop { display:block; position:fixed; inset:0; z-index:490; border:0; background:rgba(0,0,0,.62); opacity:0; visibility:hidden; transition:.2s ease; }.office-nav-open .office-nav-backdrop { opacity:1; visibility:visible; }.office-nav-close,.office-menu-button { display:flex; }.office-main { padding:20px 16px; }.office-topbar { min-height:68px; }.office-topbar-end { display:none; }.office-profile-layout { grid-template-columns:1fr; }.office-profile-preview { position:static; }.office-portal-footer { padding:16px; }
}
@media (max-width:700px) {
  .office-page-head { display:grid; }.office-page-head>.btn { width:auto; justify-self:start; }.office-hero-card { grid-template-columns:1fr; min-height:auto; }.office-hero-logo { width:82px; height:82px; border-radius:22px; grid-row:1; }.office-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.office-kpi { min-height:120px; }.office-kpi strong { font-size:25px; }.office-listing-card { grid-template-columns:108px minmax(0,1fr); }.office-listing-media { min-height:210px; }.office-listing-card-actions .btn { flex:0 0 auto; }.office-picker-controls,.office-picker-grid { grid-template-columns:1fr; }.office-picker-map { min-height:330px; }.office-selected-parcel .meta { grid-template-columns:repeat(2,minmax(0,1fr)); }.office-media-upload { grid-template-columns:1fr; }.office-preview-banner { align-items:flex-start; flex-wrap:wrap; }.office-preview-banner form { width:auto; }.office-preview-banner .btn { width:auto; }.office-portal-footer { display:grid; }.office-body .form-row { grid-template-columns:1fr; }.office-referral-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }.office-referral-decision { grid-template-columns:1fr; }.office-action-menu-panel { right:0; left:auto; }
}
@media (max-width:430px) { .office-main { padding:16px 11px; }.office-content { width:100%; }.office-body .card { border-radius:16px; padding:16px; }.office-kpi-grid { gap:8px; }.office-kpi { padding:14px!important; }.office-listing-card { grid-template-columns:1fr; }.office-listing-media { min-height:180px; }.office-listing-card-body { padding:15px; }.office-hero-actions .btn { width:auto; }.office-chart { gap:5px; }.office-breadcrumb small { display:none; }.office-referral-facts { grid-template-columns:1fr; }.office-compact-actions .btn { flex:1 1 calc(50% - 4px); }.office-sticky-save .btn { flex:0 1 auto; } }
@media (prefers-reduced-motion:reduce) { .office-nav,.office-nav-links a,* { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; } }

@media (max-width:960px) { .office-security-layout { grid-template-columns:1fr; }.office-security-tips { grid-template-columns:repeat(3,1fr); }.office-login-shell { grid-template-columns:1fr; }.office-login-story { min-height:420px; padding:110px 28px 42px; }.office-login-brand { right:28px; }.office-login-story-copy h1 { font-size:clamp(34px,8vw,56px); }.office-login-features { grid-template-columns:repeat(3,1fr); max-width:none; }.office-login-trust { display:none; }.office-login-panel { min-height:600px; border-right:0; border-top:1px solid rgba(148,163,184,.12); } }
@media (max-width:700px) { .office-page-heading { display:grid; }.office-security-badge { width:100%; }.office-security-tips { grid-template-columns:1fr; }.office-login-story { min-height:auto; padding:100px 20px 34px; }.office-login-brand { right:20px; top:24px; }.office-login-story-copy h1 { font-size:36px; }.office-login-story-copy p { font-size:12px; }.office-login-features { grid-template-columns:1fr; margin-top:24px; }.office-login-panel { min-height:auto; padding:44px 20px; }.office-login-heading h2 { font-size:26px; } }

/* Impeccable operational floor: preserve density without sacrificing legibility. */
.office-body,
.office-login-body { font-size: 15px; }
.office-body :where(small, .office-nav-label, .office-section-kicker, .office-listing-status, .office-listing-location, .office-listing-metrics, .office-chart-column small, .office-filter-tabs a, .office-page-counter, .office-tip-index),
.office-login-body :where(small, .office-login-heading > span, .office-login-links a, .office-login-help) {
  font-size: .75rem !important;
  line-height: 1.55;
}
.office-body :where(.office-nav-label, .office-user-chip small, .office-breadcrumb small, .office-portal-footer, .office-listing-location, .office-listing-metrics, .office-profile-completeness-head) {
  color: #91a6bd;
}
.office-body :where(.btn, .office-menu-button, .office-nav-close, .office-action-menu > summary, .office-page-counter),
.office-login-body :where(.btn, .office-login-links a) {
  min-height: 44px;
}
.office-body :where(.office-menu-button, .office-nav-close) { min-width: 44px; }
.office-body .office-listing-card-actions .btn,
.office-body .office-action-menu > summary {
  min-height: 44px;
  padding: 9px 12px;
  font-size: .75rem;
}
.office-body :where(.office-text-link, .office-section-head > a) {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  font-size: .78rem;
}
.office-login-body .office-login-links a {
  display: inline-flex;
  align-items: center;
}
body.office-body .btn,
body.office-body .office-action-menu > summary { min-height: 44px !important; }
.office-body :where(.office-topbar-end, .office-kpi > span, .office-referral-facts strong, .office-referral-decision label > span) {
  font-size: 12px !important;
  line-height: 1.55;
}
