:root{
  --apple-bg:#f4f6f8;
  --apple-surface:#ffffff;
  --apple-surface-soft:#fbfbfd;
  --apple-text:#172033;
  --apple-secondary:#667085;
  --apple-tertiary:#86868b;
  --apple-line:#d5dbe5;
  --apple-line-soft:#e7eaf0;
  --apple-blue:#146fe8;
  --apple-blue-hover:#0a63d8;
  --apple-green:#248a3d;
  --apple-red:#d70015;
  --apple-orange:#b25000;
  --apple-radius:24px;
  --apple-radius-small:14px;
  --apple-shadow:0 2px 12px rgba(0,0,0,.045);
  --apple-shadow-raised:0 14px 40px rgba(0,0,0,.08);
}

html{background:var(--apple-bg);color-scheme:light}
body,
body[class*="page-"],
body.clean-page{
  margin:0;
  color:var(--apple-text) !important;
  background:var(--apple-bg) !important;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","PingFang SC","Microsoft YaHei",sans-serif !important;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body::before,body::after{display:none !important}
*,*::before,*::after{box-sizing:border-box}
a{color:var(--apple-blue);text-decoration:none}
a:hover{text-decoration:none}

/* One product shell: the desktop product navigation lives in the top bar. */
@media (min-width:901px){
  body[class*="page-"] .layout{display:block !important;min-height:100vh;background:var(--apple-bg) !important}
  body[class*="page-"] .sidebar{display:none !important}
  body[class*="page-"] .content-shell{width:100%;min-width:0 !important;margin:0 !important}
  body[class*="page-"] .content{width:100%;max-width:none !important;padding:28px clamp(24px,3vw,56px) 64px !important}
}

.topbar,
.topbar-compact,
.topbar-mainnav{
  min-height:64px !important;
  height:auto !important;
  padding:10px clamp(20px,3vw,52px) !important;
  gap:20px !important;
  border:0 !important;
  border-bottom:1px solid rgba(0,0,0,.08) !important;
  border-radius:0 !important;
  background:rgba(250,250,252,.86) !important;
  box-shadow:none !important;
  backdrop-filter:saturate(180%) blur(20px) !important;
  -webkit-backdrop-filter:saturate(180%) blur(20px) !important;
}
.topbar-left{flex:0 0 auto;min-width:180px}
.topbar-title-solo,.topbar-breadcrumb,.topbar-module{
  color:var(--apple-text) !important;
  font-size:clamp(22px,2vw,30px) !important;
  font-weight:700 !important;
  letter-spacing:-.035em !important;
}
.topbar-time{
  min-width:170px !important;
  padding:8px 13px !important;
  color:var(--apple-secondary) !important;
  background:#fff !important;
  border:1px solid var(--apple-line-soft) !important;
  border-radius:999px !important;
  box-shadow:none !important;
  font-size:12px !important;
  font-weight:600 !important;
}
.top-nav,.top-nav-header{display:flex !important;align-items:center;justify-content:center;gap:3px !important;min-width:0;overflow-x:auto;scrollbar-width:none}
.top-nav::-webkit-scrollbar{display:none}
.top-nav-link,.top-nav-button{
  min-width:0 !important;
  min-height:34px !important;
  padding:7px 12px !important;
  white-space:nowrap;
  color:#424245 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:999px !important;
  box-shadow:none !important;
  font-size:13px !important;
  font-weight:600 !important;
  transform:none !important;
}
.top-nav-link:hover,.top-nav-button:hover{color:#000 !important;background:rgba(0,0,0,.045) !important;transform:none !important}
.top-nav-link.active,.top-nav-button.active{
  color:#fff !important;
  background:var(--apple-text) !important;
  box-shadow:none !important;
}

/* Titles and page sections. */
.page-head,
.resident-hero,
.window>.top,
.wrap>.hero,
.standalone-top,
.clean-header,
.billing-header,
.rc-header{
  margin:0 0 20px !important;
  padding:30px clamp(24px,3vw,46px) !important;
  color:var(--apple-text) !important;
  background:var(--apple-surface) !important;
  border:1px solid var(--apple-line-soft) !important;
  border-radius:var(--apple-radius) !important;
  box-shadow:var(--apple-shadow) !important;
  overflow:hidden;
}
.page-head::before,.page-head::after,.resident-hero::before,.resident-hero::after,.wrap>.hero::before,.wrap>.hero::after{display:none !important}
.page-head h1,.resident-hero h1,.window>.top h1,.wrap>.hero h1,.standalone-title h1,.clean-title{
  margin:0 !important;
  color:var(--apple-text) !important;
  font-size:clamp(30px,4vw,54px) !important;
  line-height:1.05 !important;
  font-weight:700 !important;
  letter-spacing:-.045em !important;
}
.page-head p,.resident-hero p,.window>.top p,.wrap>.hero p,.standalone-title p,.clean-subtitle{
  margin:9px 0 0 !important;
  color:var(--apple-secondary) !important;
  font-size:15px !important;
  line-height:1.5 !important;
  font-weight:400 !important;
}
h1,h2,h3,h4,.panel-head h3{
  color:var(--apple-text) !important;
  letter-spacing:-.025em !important;
}
h2{font-weight:700 !important} h3,h4,.panel-head h3{font-weight:650 !important}
.muted,.hint,.page-sub,.panel-head p{color:var(--apple-secondary) !important;font-weight:400 !important}

/* Cards use restrained depth and consistent spacing. */
.panel,.card,.card-panel,.kpi,.summary-card,.metric-card,.stat-card,.import-box,.subsection-card,
.mission-card,.resident-card,.inspection-card,.settings-card,.backup-card,.permission-card,
.standalone-shell>section,.window>section,.wrap>section{
  color:var(--apple-text) !important;
  background:var(--apple-surface) !important;
  background-image:none !important;
  border:1px solid var(--apple-line-soft) !important;
  border-radius:var(--apple-radius) !important;
  box-shadow:var(--apple-shadow) !important;
  backdrop-filter:none !important;
}
.panel,.card-panel,.import-box,.subsection-card{padding:22px !important}
.panel:hover,.card:hover,.summary-card:hover,.metric-card:hover{box-shadow:var(--apple-shadow-raised) !important}
.cards{gap:14px !important}
.card{min-height:108px !important;padding:20px !important;transition:transform .25s ease,box-shadow .25s ease !important}
.card:hover{transform:translateY(-3px) !important}
.card::before,.card::after,.panel::before,.panel::after{background-image:none !important}
.card-accent{width:28px !important;height:4px !important;margin-bottom:10px !important;border-radius:99px !important;background:var(--apple-blue) !important}
.card-label{color:var(--apple-secondary) !important;font-size:13px !important;font-weight:600 !important}
.card .num,.kpi-value,.metric-value,.summary-value{color:var(--apple-text) !important;font-weight:700 !important;letter-spacing:-.04em !important}
.card.success .card-accent{background:var(--apple-green) !important}.card.danger .card-accent{background:var(--apple-red) !important}
.panel-head{padding-bottom:13px !important;margin-bottom:15px !important;border-bottom:1px solid var(--apple-line-soft) !important}

/* Controls. */
.btn,button:not(.mobile-menu-btn),input[type="submit"],input[type="button"]{
  min-height:40px !important;
  padding:9px 17px !important;
  border:1px solid transparent !important;
  border-radius:999px !important;
  color:#fff !important;
  background:var(--apple-blue) !important;
  background-image:none !important;
  box-shadow:none !important;
  font-family:inherit !important;
  font-size:14px !important;
  line-height:1.2 !important;
  font-weight:600 !important;
  transition:background .18s ease,transform .18s ease !important;
}
.btn:hover,button:not(.mobile-menu-btn):hover,input[type="submit"]:hover{background:var(--apple-blue-hover) !important;filter:none !important;transform:none !important}
.btn-secondary,.secondary,.pager-btn,.ui-page-button{
  color:var(--apple-blue) !important;
  background:#fff !important;
  border-color:var(--apple-line) !important;
}
.btn-secondary:hover,.secondary:hover,.pager-btn:hover,.ui-page-button:hover{color:var(--apple-blue-hover) !important;background:#f7f7f9 !important}
.btn-danger,.danger-btn{color:#fff !important;background:var(--apple-red) !important}
input:not([type="checkbox"]):not([type="radio"]),select,textarea{
  min-height:44px;
  padding:10px 13px !important;
  color:var(--apple-text) !important;
  background:#fff !important;
  border:1px solid var(--apple-line) !important;
  border-radius:12px !important;
  box-shadow:none !important;
  outline:none;
  font-family:inherit !important;
}
input:focus,select:focus,textarea:focus{border-color:var(--apple-blue) !important;box-shadow:0 0 0 4px rgba(0,113,227,.12) !important}
label{color:#424245 !important;font-weight:600 !important}

/* Dense data stays readable without looking like a spreadsheet export. */
.table-wrap{
  max-width:100%;
  overflow:auto;
  background:#fff !important;
  border:1px solid var(--apple-line-soft) !important;
  border-radius:18px !important;
  box-shadow:none !important;
}
table{width:100%;border-collapse:collapse !important;border-spacing:0 !important;background:#fff !important;border-radius:0 !important}
th{
  padding:11px 13px !important;
  color:var(--apple-secondary) !important;
  background:#f5f5f7 !important;
  border-color:var(--apple-line-soft) !important;
  font-size:12px !important;
  font-weight:600 !important;
  letter-spacing:.01em !important;
  text-transform:none;
}
td{
  padding:11px 13px !important;
  color:var(--apple-text) !important;
  background:#fff !important;
  border-color:var(--apple-line-soft) !important;
  font-size:13px !important;
  line-height:1.35 !important;
}
tbody tr:hover td{background:#fafafa !important}
.table-compact th,.table-compact td{padding:9px 12px !important}

/* Tabs and pagination behave like native segmented controls. */
.ui-workspace-tabs,.settings-section-nav,.resident-tabs,.inspection-tabs{
  position:sticky !important;
  top:65px !important;
  z-index:25 !important;
  display:flex !important;
  justify-content:flex-start !important;
  gap:2px !important;
  width:max-content;
  max-width:100%;
  margin:0 auto 20px !important;
  padding:4px !important;
  overflow-x:auto;
  border:1px solid var(--apple-line-soft) !important;
  border-radius:999px !important;
  background:rgba(232,232,237,.82) !important;
  box-shadow:none !important;
  backdrop-filter:blur(18px) !important;
}
.ui-workspace-tab,.settings-section-tab,.resident-tab,.inspection-tab{
  min-width:0 !important;
  min-height:36px !important;
  padding:8px 15px !important;
  white-space:nowrap;
  color:#424245 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:999px !important;
  box-shadow:none !important;
  font-size:13px !important;
  font-weight:600 !important;
}
.ui-workspace-tab.active,.settings-section-tab.active,.resident-tab.active,.inspection-tab.active{
  color:var(--apple-text) !important;
  background:#fff !important;
  box-shadow:0 1px 4px rgba(0,0,0,.12) !important;
}
.ui-table-pager{padding:14px 0 0 !important;justify-content:center !important}
.ui-page-status{color:var(--apple-secondary) !important;font-weight:500 !important}
.ui-page-button{min-height:36px !important;padding:7px 15px !important;border-radius:999px !important;font-weight:600 !important}
.settings-pager{display:flex !important;align-items:center !important;justify-content:center !important;gap:9px !important;padding:14px 0 0 !important}
.settings-pager button{min-height:36px !important;padding:7px 15px !important;color:var(--apple-blue) !important;background:#fff !important;border:1px solid var(--apple-line) !important;border-radius:999px !important}
.settings-pager button:disabled{opacity:.35 !important}.settings-pager-info{color:var(--apple-secondary) !important;font-size:13px !important}
.pill,.badge,.status-pill,.page-chip{border-radius:999px !important;box-shadow:none !important}
.flash,.readonly-tip{border-radius:14px !important;box-shadow:none !important}

/* Independent windows share the same canvas and page width. */
.standalone-shell,.resident-shell,.window,.wrap,.shell,
.clean-wrap,body.page-report-center .content{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:28px clamp(24px,3vw,56px) 64px !important;
}
.standalone-top,.resident-hero,.window>.top,.wrap>.hero{max-width:none !important}
.topbar-nav{display:flex !important;align-items:center !important;justify-content:center !important;gap:3px !important;max-width:100%;overflow-x:auto;scrollbar-width:none}
.topbar-nav::-webkit-scrollbar{display:none}
.topbar-nav a{
  display:inline-flex !important;
  align-items:center !important;
  min-height:34px !important;
  padding:7px 12px !important;
  white-space:nowrap;
  color:#424245 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:999px !important;
  font-size:13px !important;
  font-weight:600 !important;
}
.topbar-nav a:hover{color:#000 !important;background:rgba(0,0,0,.045) !important}.topbar-nav a.active{color:#fff !important;background:var(--apple-text) !important}

@media (max-width:900px){
  .topbar,.topbar-compact,.topbar-mainnav{position:sticky !important;top:0;padding:11px 14px !important;align-items:flex-start !important}
  .topbar-left{min-width:0}.topbar-time{display:none !important}
  .top-nav,.top-nav-header{width:100%;justify-content:flex-start !important}
  .standalone-shell,.resident-shell,.window,.wrap,.shell,
  body[class*="page-"] .content,.clean-wrap,body.page-report-center .content{padding:16px 12px 42px !important}
  .page-head,.resident-hero,.window>.top,.wrap>.hero,.standalone-top{padding:22px 18px !important;border-radius:20px !important}
  .page-head h1,.resident-hero h1,.window>.top h1,.wrap>.hero h1,.standalone-title h1{font-size:32px !important}
  .panel,.card-panel,.import-box,.subsection-card{padding:16px !important;border-radius:18px !important}
  .cards,.grid2,.grid3,.settings-grid{grid-template-columns:1fr !important}
  .ui-workspace-tabs,.settings-section-nav,.resident-tabs,.inspection-tabs{position:static !important;width:100%;margin-bottom:14px !important;border-radius:14px !important}
  input:not([type="checkbox"]):not([type="radio"]),select,textarea{font-size:16px !important}
}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto !important;animation:none !important;transition:none !important}}

/* Main portal: product overview rather than a decorative dashboard. */
.page{min-height:100vh;background:radial-gradient(circle at 88% 4%,rgba(44,117,255,.10),transparent 27%),radial-gradient(circle at 6% 92%,rgba(30,179,173,.07),transparent 24%),var(--apple-bg) !important}
.page>.shell{width:100% !important;max-width:none !important;padding:26px clamp(24px,3vw,56px) 64px !important}
.page>.shell>.topbar{
  position:relative !important;
  padding:8px 0 24px !important;
  background:transparent !important;
  border:0 !important;
  backdrop-filter:none !important;
}
.system-title{margin:0 !important;color:var(--apple-text) !important;font-size:clamp(30px,3.4vw,52px) !important;line-height:1.05 !important;font-weight:700 !important;letter-spacing:-.045em !important}
.topbar-right{display:flex;align-items:stretch;gap:10px}
.task-badge,.clock{
  color:var(--apple-text) !important;
  background:#fff !important;
  border:1px solid var(--apple-line-soft) !important;
  border-radius:18px !important;
  box-shadow:var(--apple-shadow) !important;
}
.task-icon{font-size:0 !important}.task-icon::before{content:"";display:block;width:10px;height:10px;border-radius:50%;background:var(--apple-red)}
.task-count{color:#fff !important;background:var(--apple-red) !important;border-radius:999px !important}
.clock .time{color:var(--apple-text) !important;font-weight:700 !important;letter-spacing:-.03em !important}.clock .date{color:var(--apple-secondary) !important}
.page>.shell>.hero{
  display:grid !important;
  grid-template-columns:minmax(220px,.42fr) minmax(420px,1.58fr) !important;
  align-items:center !important;
  gap:24px !important;
  min-height:0 !important;
  margin:0 0 18px !important;
  padding:30px !important;
  color:var(--apple-text) !important;
  background:#000 !important;
  background-image:none !important;
  border:0 !important;
  border-radius:28px !important;
  box-shadow:none !important;
}
.page>.shell>.hero::before,.page>.shell>.hero::after{display:none !important}
.page>.shell>.hero h2{margin:0 !important;color:#f5f5f7 !important;font-size:clamp(24px,2.4vw,38px) !important;font-weight:700 !important;letter-spacing:-.04em !important}
.searchbox{margin:0 !important;padding:5px !important;background:#1d1d1f !important;border:1px solid #424245 !important;border-radius:999px !important;box-shadow:none !important}
.searchbox form{display:flex !important;align-items:center !important;gap:8px !important}
.searchbox input{height:48px !important;min-height:48px !important;color:#f5f5f7 !important;background:transparent !important;border:0 !important;box-shadow:none !important}
.searchbox button{height:42px !important;min-height:42px !important;padding:8px 24px !important;flex:0 0 auto}
.entry-grid{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:12px !important;margin:0 0 16px !important}
.entry{
  position:relative;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  min-height:86px !important;
  padding:20px !important;
  overflow:hidden;
  color:var(--apple-text) !important;
  background:#fff !important;
  background-image:none !important;
  border:1px solid var(--apple-line-soft) !important;
  border-radius:20px !important;
  box-shadow:var(--apple-shadow) !important;
  transition:transform .22s ease,box-shadow .22s ease !important;
}
.entry::before,.entry::after{display:none !important}
.entry:hover{transform:translateY(-3px) !important;box-shadow:var(--apple-shadow-raised) !important}
.entry h3{margin:0 !important;font-size:17px !important;font-weight:650 !important;letter-spacing:-.02em !important}
.entry .go{width:28px;height:28px;overflow:hidden;font-size:0 !important;flex:0 0 28px;border-radius:50%;background:#f5f5f7 !important}
.entry .go::after{content:"›";display:grid;place-items:center;width:28px;height:28px;color:var(--apple-blue);font-size:22px;line-height:1}
.entry.resident-hub,.entry.inspection-hub{background:#f0fbf5 !important}.entry.coal-hub{background:#fff8e9 !important}
.stats{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:12px !important;margin:0 0 16px !important}
.stats .stat-card{min-height:112px !important;padding:20px !important;background:#fff !important;border:1px solid var(--apple-line-soft) !important;border-radius:20px !important;box-shadow:var(--apple-shadow) !important}
.stats .label{color:var(--apple-secondary) !important;font-size:13px !important;font-weight:600 !important}.stats .value{color:var(--apple-text) !important;font-size:34px !important;font-weight:700 !important;letter-spacing:-.04em !important}
.quick-actions a{display:inline-flex;padding:8px 13px;border-radius:999px;color:var(--apple-blue) !important;background:#f5f5f7 !important;font-size:13px;font-weight:600}
.task-grid{gap:10px !important}.task-item{padding:18px !important;background:#f5f5f7 !important;border:0 !important;border-radius:16px !important}.task-item .num{color:var(--apple-text) !important;font-weight:700 !important}

/* Login: editorial split layout with a quiet, focused form. */
body>.stage{
  width:100%;
  min-height:100vh;
  padding:clamp(24px,5vw,80px) !important;
  gap:clamp(24px,5vw,80px) !important;
  background:var(--apple-bg) !important;
}
.brand-panel{color:var(--apple-text) !important;background:transparent !important;border:0 !important;box-shadow:none !important}
.brand-panel::before,.brand-panel::after{display:none !important}
.brand-mark{color:var(--apple-secondary) !important;font-weight:600 !important}.brand-dot{background:var(--apple-blue) !important}
.brand-title{color:var(--apple-text) !important;font-size:clamp(46px,6vw,84px) !important;line-height:.98 !important;font-weight:700 !important;letter-spacing:-.055em !important}
.brand-subtitle{max-width:560px;color:var(--apple-secondary) !important;font-size:18px !important;line-height:1.55 !important}
.signal-row{gap:10px !important}.signal-card{padding:17px !important;background:#fff !important;border:1px solid var(--apple-line-soft) !important;border-radius:18px !important;box-shadow:var(--apple-shadow) !important}.signal-card strong{color:var(--apple-text) !important}.signal-card span{color:var(--apple-secondary) !important}
.login-card{max-width:520px !important;padding:clamp(28px,4vw,52px) !important;background:#fff !important;border:1px solid var(--apple-line-soft) !important;border-radius:28px !important;box-shadow:var(--apple-shadow-raised) !important}
.login-card::before,.login-card::after{display:none !important}
.login-kicker{color:var(--apple-blue) !important;font-size:12px !important;font-weight:650 !important;letter-spacing:.08em !important}
.login-head h1{color:var(--apple-text) !important;font-size:42px !important;font-weight:700 !important;letter-spacing:-.045em !important}.login-head .subtitle,.footnote{color:var(--apple-secondary) !important}
.login-card button[type="submit"]{width:100%;min-height:48px !important}

@media (max-width:1100px){.entry-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}.page>.shell>.hero{grid-template-columns:1fr !important}}
@media (max-width:720px){
  .page>.shell{padding:16px 12px 40px !important}.page>.shell>.topbar{padding:4px 2px 16px !important}.system-title{font-size:30px !important}.topbar-right{width:100%}.task-badge,.clock{flex:1}
  .page>.shell>.hero{padding:22px 16px !important;border-radius:22px !important}.entry-grid{grid-template-columns:1fr 1fr !important;gap:9px !important}.entry{min-height:72px !important;padding:15px !important}.entry h3{font-size:15px !important}
  .stats{grid-template-columns:1fr 1fr !important;gap:9px !important}.stats .stat-card{min-height:96px !important;padding:16px !important}
  body>.stage{display:block !important;padding:24px 16px !important}.brand-panel{margin-bottom:22px}.brand-title{font-size:42px !important}.brand-subtitle{font-size:15px !important}.signal-row{display:none !important}.login-card{max-width:none !important;padding:28px 20px !important;border-radius:22px !important}
}

/* Page-specific layout corrections after the global shell conversion. */
body.page-index .index-dashboard-grid{grid-template-columns:1fr !important;gap:16px !important}
body.page-index .index-dashboard-left,body.page-index .index-dashboard-right{gap:16px !important}
body.page-index .index-dashboard-right{grid-row:2}
#settings-permission-panel form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
#settings-permission-panel form>.subsection-card{margin:0 !important;padding:16px !important;border-radius:16px !important}
#settings-permission-panel form>.actions{grid-column:1/-1;margin-top:4px !important}
#settings-permission-panel .role-grid{gap:7px !important}
#settings-permission-panel .checkbox-chip{min-height:38px !important;padding:8px 10px !important;border-radius:12px !important}
.link-btn{
  min-height:0 !important;
  padding:0 !important;
  color:var(--apple-blue) !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
}
.link-btn:hover{color:var(--apple-blue-hover) !important;background:transparent !important;text-decoration:underline !important}

/* Preserve the editable Word table proportions inside person archives. */
.archive-table-wrap{border-radius:14px !important;box-shadow:none !important}
.archive-doc-table{min-width:620px !important;table-layout:fixed !important;border-collapse:collapse !important}
.archive-doc-table td{
  padding:0 5px !important;
  vertical-align:middle !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  color:#1f3352 !important;
  background:#fff !important;
  border:1px solid #d7dde8 !important;
  font-size:12px !important;
  line-height:1 !important;
}
.archive-doc-table tr:first-child td{background:#f8fbff !important;font-weight:700 !important}
.archive-doc-table textarea{
  display:block !important;
  width:100% !important;
  min-width:100% !important;
  min-height:24px !important;
  height:24px !important;
  max-height:24px !important;
  padding:0 2px !important;
  overflow:hidden !important;
  resize:none !important;
  white-space:nowrap !important;
  color:inherit !important;
  background:transparent !important;
  border:0 !important;
  border-radius:3px !important;
  box-shadow:none !important;
  font:inherit !important;
  line-height:24px !important;
}
.archive-doc-table textarea:focus{background:#fff !important;box-shadow:inset 0 0 0 2px rgba(0,113,227,.35) !important}
@media (max-width:640px){.archive-doc-table{min-width:520px !important}.archive-doc-table td{padding:3px 4px !important;font-size:11px !important;line-height:1.25 !important}.archive-doc-table textarea{min-height:26px !important;height:26px !important;line-height:1.25 !important;padding:1px !important}}
@media (max-width:1000px){#settings-permission-panel form{grid-template-columns:1fr 1fr}}
@media (max-width:640px){#settings-permission-panel form{grid-template-columns:1fr}}

/* Portal composition v2: grouped workspaces, fewer containers, stronger hierarchy. */
.page>.shell{padding-top:34px !important}
.page>.shell>.topbar{align-items:flex-start !important;padding-bottom:28px !important}
.system-title{max-width:900px;font-size:clamp(36px,3.2vw,58px) !important;line-height:1 !important}
.task-badge,.clock{min-height:74px !important;padding:13px 18px !important;border-radius:20px !important}
.clock .time{font-size:28px !important}

.page>.shell>.hero{
  grid-template-columns:minmax(260px,.5fr) minmax(480px,1.5fr) !important;
  min-height:156px !important;
  padding:34px 38px !important;
  color:var(--apple-text) !important;
  background:linear-gradient(118deg,#e8effa 0%,#f9fbfd 58%,#edf4fb 100%) !important;
  border:1px solid #dce5f2 !important;
  border-radius:30px !important;
}
.page>.shell>.hero h2{color:var(--apple-text) !important;font-size:clamp(28px,2.6vw,44px) !important}
.page>.shell>.hero .hero-head h2::after{color:#667085 !important;font-weight:500 !important;opacity:1 !important}
.searchbox{width:100% !important;padding:6px !important;background:rgba(255,255,255,.72) !important;border:1px solid rgba(255,255,255,.9) !important;border-radius:18px !important;box-shadow:0 12px 32px rgba(42,77,122,.08) !important}
.searchbox form{display:grid !important;grid-template-columns:minmax(0,1fr) 112px !important;gap:8px !important;width:100% !important}
.searchbox input{width:100% !important;height:52px !important;min-height:52px !important;padding:0 16px !important;color:var(--apple-text) !important;background:#fff !important;border:1px solid #d8e0eb !important;border-radius:13px !important}
.searchbox button{width:112px !important;height:52px !important;min-height:52px !important;padding:0 18px !important;border-radius:13px !important}

.workspace-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;margin:0 0 18px}
.workspace-card{
  --accent:#5794ff;
  --glow:rgba(56,119,255,.54);
  position:relative;
  min-height:250px;
  padding:30px;
  overflow:hidden;
  color:#fff;
  background:linear-gradient(145deg,#0d1525 0%,#142138 58%,#192944 100%);
  border:1px solid rgba(139,165,205,.18);
  border-radius:30px;
  box-shadow:0 22px 52px rgba(22,34,55,.16),inset 0 1px 0 rgba(255,255,255,.08);
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.workspace-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 54%,transparent);box-shadow:0 28px 68px rgba(18,30,52,.22),inset 0 1px 0 rgba(255,255,255,.12)}
.workspace-card::before{content:"";position:absolute;left:30px;top:0;width:76px;height:3px;border-radius:0 0 99px 99px;background:linear-gradient(90deg,var(--accent),rgba(255,255,255,.9));box-shadow:0 0 22px var(--glow);pointer-events:none}
.workspace-card::after{content:"";position:absolute;right:-58px;top:-108px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,var(--glow) 0%,rgba(0,0,0,0) 68%);filter:blur(3px);opacity:.72;pointer-events:none}
.workspace-nonresident{grid-column:span 6;--accent:#63a0ff;--glow:rgba(44,112,255,.38)}
.workspace-resident{grid-column:span 3;--accent:#55c9dd;--glow:rgba(45,183,211,.3)}
.workspace-coal{grid-column:span 3;--accent:#efb75f;--glow:rgba(230,159,55,.28)}
.workspace-operations{grid-column:span 7;min-height:214px;--accent:#7fa7ff;--glow:rgba(72,116,235,.34)}
.workspace-system{grid-column:span 5;min-height:214px;--accent:#59c4da;--glow:rgba(43,175,202,.3)}
.workspace-heading{position:relative;z-index:1;margin-bottom:22px}
.workspace-heading>span{display:block;margin-bottom:7px;color:var(--apple-secondary);font-size:12px;font-weight:650;letter-spacing:.08em}
.workspace-heading h2{margin:0;color:var(--apple-text) !important;font-size:clamp(28px,2.6vw,42px);line-height:1;font-weight:700 !important;letter-spacing:-.045em !important}
.workspace-card .workspace-heading>span{color:var(--accent) !important;text-shadow:0 0 20px var(--glow)}.workspace-card .workspace-heading h2{color:#fff !important}
.workspace-links{position:relative;z-index:1;display:grid;gap:0}
.workspace-links-grid{grid-template-columns:1fr 1fr;column-gap:22px}
.workspace-link{display:flex;align-items:center;justify-content:space-between;min-height:45px;padding:10px 2px;color:#fff;border-bottom:1px solid rgba(255,255,255,.2);font-size:15px;font-weight:600}
.workspace-link:hover{color:#fff;opacity:1;padding-left:7px}
.workspace-link b{font-size:23px;line-height:1;font-weight:400;color:var(--accent);text-shadow:0 0 16px var(--glow)}

.stats{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:0 !important;margin:0 0 20px !important;padding:8px 0 !important;background:transparent !important;border-top:1px solid var(--apple-line) !important;border-bottom:1px solid var(--apple-line) !important}
.stats .stat-card{min-height:96px !important;padding:18px 24px !important;background:transparent !important;border:0 !important;border-right:1px solid var(--apple-line-soft) !important;border-radius:0 !important;box-shadow:none !important}
.stats .stat-card:last-child{border-right:0 !important}
.stats .value{font-size:36px !important}.stats .label{font-size:12px !important}
.stats .stat-card.active .value{color:#16794b !important}.stats .stat-card.stop .value{color:#c43d48 !important}.stats .stat-card.warn .value{color:#b56a13 !important}
.stats .stat-card:nth-child(1){background:linear-gradient(180deg,rgba(22,121,75,.07),transparent) !important;box-shadow:inset 0 3px 0 #249160 !important}
.stats .stat-card:nth-child(2){background:linear-gradient(180deg,rgba(196,61,72,.06),transparent) !important;box-shadow:inset 0 3px 0 #d2535d !important}
.stats .stat-card:nth-child(3){background:linear-gradient(180deg,rgba(181,106,19,.07),transparent) !important;box-shadow:inset 0 3px 0 #d58a2a !important}
.stats .stat-card:nth-child(4){background:linear-gradient(180deg,rgba(50,103,210,.06),transparent) !important;box-shadow:inset 0 3px 0 #3975d5 !important}

/* Remove the generic boxed feeling from normal content pages. */
body[class*="page-"] .panel,.standalone-shell .panel,.resident-shell .panel,.window .panel,.wrap .panel{box-shadow:none !important}
body[class*="page-"] .panel:hover,.standalone-shell .panel:hover,.resident-shell .panel:hover,.window .panel:hover,.wrap .panel:hover{box-shadow:none !important}

/* Login proportions: large editorial title without overwhelming the form. */
body>.stage{grid-template-columns:minmax(0,1.35fr) minmax(440px,.65fr) !important;align-items:center !important}
.brand-title{max-width:790px !important;font-size:clamp(52px,5vw,76px) !important;line-height:.96 !important}
.brand-subtitle{font-size:17px !important}
.login-card{width:100% !important;max-width:560px !important;padding:44px 46px !important}
.login-head h1{font-size:38px !important}
.login-kicker::before,.brand-dot{background:var(--apple-blue) !important}
.signal-card:nth-child(1){background:linear-gradient(145deg,#edf3ff,#fff) !important;border-color:#dce7fb !important}
.signal-card:nth-child(2){background:linear-gradient(145deg,#eef4fb,#fff) !important;border-color:#dce5f0 !important}
.signal-card:nth-child(3){background:linear-gradient(145deg,#eaf4ff,#fff) !important;border-color:#d9e8f8 !important}

@media (max-width:1100px){
  .page>.shell>.hero{grid-template-columns:1fr !important}.workspace-nonresident{grid-column:span 12}.workspace-resident,.workspace-coal{grid-column:span 6}.workspace-operations,.workspace-system{grid-column:span 12}
  body>.stage{grid-template-columns:1fr !important}.brand-panel{max-width:900px}.login-card{max-width:680px !important}
}
@media (max-width:720px){
  .page>.shell>.hero{min-height:0 !important;padding:24px 18px !important}.searchbox form{grid-template-columns:minmax(0,1fr) 84px !important}.searchbox button{width:84px !important}
  .workspace-grid{grid-template-columns:1fr;gap:10px}.workspace-card,.workspace-nonresident,.workspace-resident,.workspace-coal,.workspace-operations,.workspace-system{grid-column:auto;min-height:0;padding:20px;border-radius:21px}.workspace-card::after{width:110px;height:110px}.workspace-heading{margin-bottom:13px}.workspace-heading h2{font-size:28px}.workspace-links-grid{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr 1fr !important}.stats .stat-card:nth-child(2){border-right:0 !important}.stats .stat-card{padding:14px 12px !important}.stats .value{font-size:30px !important}
  .brand-title{font-size:44px !important}.login-card{padding:28px 22px !important}
}
