:root {
  color: #25382e;
  background: #f3f2ec;
  font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif;
  font-synthesis: none;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 1180px; background: #f3f2ec; }
button, input, select, textarea { font: inherit; }
button, select { cursor: pointer; }

.hidden { display: none !important; }
.login-screen { display: grid; min-height: 100vh; padding: 40px; place-items: center; background: radial-gradient(circle at 78% 18%, rgba(227,197,110,.2), transparent 26%), linear-gradient(145deg, #123824, #205e40); }
.login-card { width: 420px; padding: 39px 42px 35px; border: 1px solid rgba(255,255,255,.12); border-radius: 25px; background: rgba(255,255,255,.97); box-shadow: 0 30px 80px rgba(3,31,18,.3); text-align: center; }
.login-brand-mark { display: grid; width: 58px; height: 58px; margin: 0 auto 17px; place-items: center; border-radius: 18px; background: #176b49; color: #e8cb74; font-family: serif; font-size: 29px; font-weight: 700; }
.login-kicker { margin: 0; color: #a57417; font-size: 10px; font-weight: 700; letter-spacing: 2px; }
.login-card h1 { margin-top: 9px; font-size: 28px; }
.login-copy { margin: 9px 0 0; color: #7c8881; font-size: 12px; }
.login-form { display: grid; gap: 13px; margin-top: 27px; text-align: left; }
.login-form label span { display: block; margin: 0 0 7px 2px; color: #596b61; font-size: 11px; font-weight: 700; }
.login-form input { width: 100%; height: 44px; padding: 0 13px; border: 1px solid #d8e1dc; border-radius: 11px; outline: none; background: #fafbf9; color: #2d4438; font-size: 13px; }
.login-form input:focus { border-color: #438367; box-shadow: 0 0 0 3px rgba(23,107,73,.08); }
.login-form button { height: 45px; border: 0; border-radius: 11px; background: #176b49; color: #fff; font-size: 13px; font-weight: 700; }
.login-form button:hover { background: #125c3e; }
.login-form button:disabled { cursor: wait; opacity: .65; }
.login-error { min-height: 16px; margin: -2px 2px -5px; color: #a04733; font-size: 10px; }
.login-demo-note { margin: 20px 0 0; padding: 12px; border-radius: 11px; background: #f5ecd4; color: #796334; font-size: 10px; line-height: 1.6; }
.app-shell.app-locked { display: none; }
.app-shell { display: grid; min-height: 100vh; grid-template-columns: 248px 1fr; }
.sidebar { position: sticky; top: 0; display: flex; height: 100vh; padding: 29px 21px; flex-direction: column; background: #153d2b; color: #fff; }
.brand { display: flex; align-items: center; gap: 13px; padding: 0 7px 24px; border-bottom: 1px solid rgba(255,255,255,.1); }
.brand-mark { display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid rgba(231,200,112,.55); border-radius: 14px; color: #e7c870; font-family: serif; font-size: 23px; font-weight: 700; }
.brand strong, .brand span { display: block; }
.brand strong { font-family: serif; font-size: 22px; letter-spacing: 3px; }
.brand span { margin-top: 4px; color: rgba(255,255,255,.58); font-size: 11px; }
.workspace-label { margin: 22px 10px 6px; color: #e3c56e; font-size: 10px; font-weight: 700; letter-spacing: 2px; }
nav { display: grid; min-height: 0; margin-right: -6px; padding-right: 6px; gap: 4px; overflow-y: auto; scrollbar-color: rgba(255,255,255,.2) transparent; scrollbar-width: thin; }
nav a { padding: 11px 14px; border-radius: 11px; color: rgba(255,255,255,.63); font-size: 13px; text-decoration: none; }
nav a:hover, nav a.active { background: rgba(255,255,255,.1); color: #fff; }
nav a.active::before { margin-right: 9px; color: #e7c870; content: "●"; font-size: 7px; }
.operator-card { display: flex; flex-shrink: 0; gap: 10px; margin-top: 12px; padding: 11px; align-items: center; border-radius: 14px; background: rgba(255,255,255,.08); }
.operator-avatar { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 11px; background: #e6c973; color: #214a36; font-weight: 700; }
.operator-copy { min-width: 0; flex: 1; }
.operator-card strong, .operator-card small { display: block; }
.operator-card strong { font-size: 12px; }
.operator-card small { margin-top: 4px; color: rgba(255,255,255,.5); font-size: 10px; }
.logout-button { padding: 6px 7px; border: 1px solid rgba(255,255,255,.14); border-radius: 8px; background: transparent; color: rgba(255,255,255,.65); font-size: 9px; }
.logout-button:hover { border-color: rgba(255,255,255,.28); color: #fff; }
.sidebar-note { flex-shrink: 0; margin-top: 12px; padding: 13px; border: 1px solid rgba(255,255,255,.09); border-radius: 13px; color: rgba(255,255,255,.48); font-size: 10px; line-height: 1.6; }
.runtime-disabled { display: none !important; }

main { min-width: 0; padding: 31px 36px 60px; }
header { display: flex; align-items: center; justify-content: space-between; }
.eyebrow, .panel-kicker { margin: 0 0 6px; color: #a57417; font-size: 11px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; }
h1, h2 { margin: 0; }
h1 { color: #203a2d; font-family: serif; font-size: 32px; }
h2 { color: #263e32; font-size: 19px; }
.header-copy { margin: 7px 0 0; color: #7e8882; font-size: 12px; }
.header-actions { display: flex; align-items: center; gap: 11px; }
.status, .current-time { padding: 9px 12px; border-radius: 999px; background: #e6eae7; color: #647169; font-size: 11px; }
.status.online { background: #dff0e5; color: #176b49; }
.status.offline { background: #f5e3dc; color: #a34b34; }
.current-time { background: #fff; }

.metric-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 25px; }
.metric-grid article { position: relative; overflow: hidden; padding: 19px 20px; border: 1px solid rgba(31,63,47,.06); border-radius: 18px; background: #fff; box-shadow: 0 10px 30px rgba(38,67,53,.05); }
.metric-grid article::after { position: absolute; right: -19px; bottom: -27px; width: 74px; height: 74px; border-radius: 50%; background: rgba(23,107,73,.05); content: ""; }
.metric-grid span, .metric-grid small, .metric-grid strong { display: block; }
.metric-grid span { color: #76817a; font-size: 12px; }
.metric-grid strong { margin-top: 8px; color: #173e2c; font-size: 30px; }
.metric-grid small { margin-top: 4px; color: #9aa19c; font-size: 10px; }

.panel { border: 1px solid rgba(31,63,47,.06); border-radius: 20px; background: #fff; box-shadow: 0 11px 32px rgba(38,67,53,.05); }
.workbench { margin-top: 16px; overflow: hidden; }
.workbench-toolbar { display: flex; padding: 22px 24px; align-items: center; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.activity-picker { display: flex; align-items: center; gap: 10px; color: #7b857f; font-size: 11px; }
.activity-picker select { min-width: 300px; height: 39px; padding: 0 34px 0 12px; border: 1px solid #dbe3de; border-radius: 11px; outline: none; background: #f8faf8; color: #30483c; font-weight: 600; }
.activity-picker select:focus { border-color: #438367; box-shadow: 0 0 0 3px rgba(23,107,73,.08); }
.filter-row { display: flex; gap: 14px; padding: 14px 24px; align-items: center; justify-content: space-between; background: #fafbf9; border-bottom: 1px solid #edf0ee; }
.search-box { display: flex; width: min(430px, 45%); height: 39px; padding: 0 12px; align-items: center; border: 1px solid #dfe5e1; border-radius: 11px; background: #fff; }
.search-box span { color: #176b49; font-size: 17px; }
.search-box input { min-width: 0; height: 100%; flex: 1; margin-left: 8px; border: 0; outline: 0; color: #334b3f; font-size: 12px; }
.status-filters { display: flex; gap: 5px; padding: 4px; border-radius: 11px; background: #eaeeeb; }
.status-filters button { height: 31px; padding: 0 13px; border: 0; border-radius: 8px; background: transparent; color: #738078; font-size: 11px; }
.status-filters button.active { background: #fff; color: #176b49; font-weight: 700; box-shadow: 0 4px 12px rgba(32,62,47,.08); }
.workbench-body { display: grid; min-height: 570px; grid-template-columns: minmax(500px, 1.1fr) minmax(380px, .9fr); }
.participant-panel { min-width: 0; border-right: 1px solid #edf0ee; }
.list-heading { display: flex; padding: 14px 19px; align-items: center; justify-content: space-between; border-bottom: 1px solid #edf0ee; color: #3a5145; font-size: 12px; font-weight: 700; }
.list-heading small { color: #929a95; font-size: 10px; font-weight: 400; }
.participant-list { max-height: 650px; overflow: auto; }
.participant-row { display: grid; grid-template-columns: 42px minmax(130px, 1fr) minmax(135px, 1.2fr) 92px 22px; gap: 10px; padding: 15px 16px; align-items: center; border-bottom: 1px solid #f0f2f0; cursor: pointer; transition: background .15s ease; }
.participant-row:hover, .participant-row.active { background: #f1f7f3; }
.participant-row.active { box-shadow: inset 3px 0 #176b49; }
.participant-avatar { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 12px; background: #e7f1ea; color: #176b49; font-family: serif; font-weight: 700; }
.participant-main strong, .participant-main small, .participant-family strong, .participant-family small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.participant-main strong, .participant-family strong { color: #30473b; font-size: 12px; }
.participant-main small, .participant-family small { margin-top: 4px; color: #909894; font-size: 10px; }
.status-badge { display: inline-flex; width: max-content; padding: 6px 9px; border-radius: 999px; background: #f3e8ce; color: #92630f; font-size: 10px; font-weight: 700; }
.status-badge.checked_in { background: #e4eef3; color: #356a80; }
.status-badge.completed { background: #dff0e5; color: #176b49; }
.row-arrow { color: #adb3af; font-size: 20px; }
.loading, .list-empty { padding: 45px 20px; color: #8a938d; font-size: 12px; text-align: center; }

.participant-detail { min-width: 0; padding: 23px; background: #fbfcfa; }
.detail-empty { display: flex; height: 100%; min-height: 430px; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.empty-icon { display: grid; width: 60px; height: 60px; place-items: center; border-radius: 19px; background: #e7f1ea; color: #176b49; font-family: serif; font-size: 23px; font-weight: 700; }
.detail-empty strong, .detail-empty span { display: block; }
.detail-empty strong { margin-top: 16px; color: #31493d; font-size: 15px; }
.detail-empty span { max-width: 250px; margin-top: 7px; color: #8a938d; font-size: 11px; line-height: 1.6; }
.detail-card-head { display: flex; align-items: flex-start; justify-content: space-between; }
.detail-person { display: flex; align-items: center; gap: 12px; }
.detail-person-avatar { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 15px; background: #176b49; color: #fff; font-family: serif; font-size: 18px; font-weight: 700; }
.detail-person strong, .detail-person span { display: block; }
.detail-person strong { color: #263f32; font-size: 17px; }
.detail-person span { margin-top: 5px; color: #7e8982; font-size: 10px; }
.identity-warning { margin-top: 15px; padding: 11px 13px; border-radius: 11px; background: #f4ead2; color: #735f33; font-size: 10px; line-height: 1.55; }
.detail-info { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 15px; }
.detail-info div { padding: 11px; border-radius: 11px; background: #fff; border: 1px solid #edf0ee; }
.detail-info span, .detail-info strong { display: block; }
.detail-info span { color: #919995; font-size: 9px; }
.detail-info strong { margin-top: 5px; color: #3a5045; font-size: 11px; line-height: 1.4; }
.process-title { display: block; margin-top: 20px; color: #30483c; font-size: 12px; font-weight: 700; }
.process-timeline { display: grid; gap: 9px; margin-top: 11px; }
.process-item { display: grid; grid-template-columns: 24px 1fr auto; gap: 9px; align-items: center; }
.process-dot { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 8px; background: #e5f0e8; color: #176b49; font-size: 10px; font-weight: 700; }
.process-item span { color: #53645b; font-size: 10px; }
.process-item time { color: #969e99; font-size: 9px; }
.primary-button, .secondary-button { width: 100%; height: 40px; margin-top: 17px; border: 0; border-radius: 11px; font-size: 12px; font-weight: 700; }
.primary-button { background: #176b49; color: #fff; }
.primary-button:hover { background: #125c3e; }
.primary-button:disabled { cursor: wait; opacity: .65; }
.secondary-button { border: 1px solid #cad8d0; background: #fff; color: #176b49; }
.completion-form { margin-top: 18px; padding-top: 17px; border-top: 1px solid #e5eae7; }
.form-title { display: block; color: #30483c; font-size: 13px; font-weight: 700; }
.form-copy { display: block; margin-top: 5px; color: #8a938d; font-size: 10px; }
.bp-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 13px; }
.field { display: block; }
.field > span { display: block; margin-bottom: 6px; color: #69766f; font-size: 10px; }
.field input, .field textarea { width: 100%; border: 1px solid #dce4df; border-radius: 10px; outline: none; background: #fff; color: #2d4538; font-size: 12px; }
.field input { height: 38px; padding: 0 11px; }
.field textarea { min-height: 68px; padding: 10px 11px; resize: vertical; }
.field input:focus, .field textarea:focus { border-color: #438367; box-shadow: 0 0 0 3px rgba(23,107,73,.07); }
.service-checks { display: grid; gap: 7px; margin-top: 13px; }
.service-checks > span { color: #69766f; font-size: 10px; }
.service-option { display: flex; gap: 8px; padding: 9px 10px; align-items: center; border-radius: 9px; background: #fff; color: #45594e; font-size: 10px; }
.service-option input { accent-color: #176b49; }
.field-notes { margin-top: 12px; }
.completed-result { margin-top: 17px; padding: 14px; border-radius: 13px; background: #e7f2ea; }
.completed-result > strong { display: block; color: #176b49; font-size: 13px; }
.result-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 10px; }
.result-grid div { padding: 10px; border-radius: 9px; background: rgba(255,255,255,.72); }
.result-grid span, .result-grid strong { display: block; }
.result-grid span { color: #77847c; font-size: 9px; }
.result-grid strong { margin-top: 5px; color: #315041; font-size: 11px; }
.result-services { margin-top: 10px; color: #547061; font-size: 10px; line-height: 1.6; }

.bottom-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 16px; }
.bottom-grid .panel { padding: 22px; }
.panel-heading { display: flex; align-items: center; justify-content: space-between; }
.outline-button { height: 34px; padding: 0 12px; border: 1px solid #cbd9d1; border-radius: 9px; background: #fff; color: #176b49; font-size: 10px; font-weight: 700; }
.outline-button:hover { background: #eef6f1; }
.activity-list, .audit-list { display: grid; gap: 9px; margin-top: 16px; }
.activity-row { display: grid; grid-template-columns: 65px minmax(0,1fr) auto; gap: 12px; padding: 12px; align-items: center; border-radius: 12px; background: #f6f8f6; cursor: pointer; }
.activity-row:hover { background: #eff5f1; }
.activity-row.unavailable { opacity: .72; }
.activity-date { display: grid; height: 47px; place-items: center; border-radius: 11px; background: #e5f0e8; color: #176b49; font-size: 12px; font-weight: 700; }
.activity-row strong, .activity-row small { display: block; }
.activity-row strong { color: #32483d; font-size: 11px; }
.activity-row small { margin-top: 5px; color: #8a928d; font-size: 9px; }
.activity-counts { display: flex; gap: 5px; }
.activity-counts span { padding: 5px 7px; border-radius: 999px; background: #edf1ee; color: #637169; font-size: 9px; }
.activity-actions { display: grid; justify-items: end; gap: 7px; }
.activity-state { padding: 4px 7px; border-radius: 999px; background: #f1e6c9; color: #87600f; font-size: 9px; font-weight: 700; }
.activity-state.published { background: #dff0e5; color: #176b49; }
.activity-state.closed { background: #e8e9e8; color: #68736d; }
.manage-activity { padding: 0; border: 0; background: transparent; color: #176b49; font-size: 9px; }
.audit-badge { color: #8b938e; font-size: 9px; }
.audit-empty { padding: 32px 15px; color: #929a95; font-size: 10px; text-align: center; }
.audit-row { display: grid; grid-template-columns: 30px 1fr auto; gap: 10px; padding: 10px 0; align-items: center; border-bottom: 1px solid #eef1ef; }
.audit-row:last-child { border-bottom: 0; }
.audit-mark { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 9px; background: #e8f1eb; color: #176b49; font-size: 10px; font-weight: 700; }
.audit-copy strong, .audit-copy small { display: block; }
.audit-copy strong { color: #354b40; font-size: 10px; }
.audit-copy small { margin-top: 4px; color: #8b948e; font-size: 9px; }
.audit-row time { color: #969e99; font-size: 9px; }
.family-center { margin-top: 16px; overflow: hidden; }
.family-center-heading { display: flex; padding: 23px 25px; align-items: center; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.family-center-heading > div > p:last-child { margin: 6px 0 0; color: #849089; font-size: 10px; }
.family-search { display: flex; width: 370px; height: 39px; padding: 0 12px; align-items: center; border: 1px solid #dfe5e1; border-radius: 11px; background: #fafbf9; }
.family-search span { color: #176b49; font-size: 17px; }
.family-search input { min-width: 0; height: 100%; flex: 1; margin-left: 8px; border: 0; outline: 0; background: transparent; color: #334b3f; font-size: 12px; }
.family-center-body { display: grid; min-height: 540px; grid-template-columns: 380px minmax(0,1fr); }
.household-panel { border-right: 1px solid #edf0ee; }
.household-list { max-height: 650px; overflow: auto; }
.household-row { padding: 15px 17px; border-bottom: 1px solid #eff2f0; cursor: pointer; }
.household-row:hover, .household-row.active { background: #f1f7f3; }
.household-row.active { box-shadow: inset 3px 0 #176b49; }
.household-row-head { display: flex; align-items: center; justify-content: space-between; }
.household-row-head strong { color: #30483c; font-size: 12px; }
.household-row-head span { padding: 4px 7px; border-radius: 999px; background: #e5f0e8; color: #176b49; font-size: 9px; font-weight: 700; }
.household-row > small { display: block; margin-top: 5px; color: #89938d; font-size: 9px; }
.household-stats { display: flex; gap: 5px; margin-top: 9px; }
.household-stats span { padding: 4px 7px; border-radius: 7px; background: #f0f2f0; color: #6b7770; font-size: 9px; }
.household-detail { min-width: 0; padding: 23px 25px; background: #fbfcfa; }
.household-detail-head { display: flex; align-items: flex-start; justify-content: space-between; }
.household-detail-head h3 { margin: 0; color: #294236; font-family: serif; font-size: 22px; }
.household-detail-head p { margin: 6px 0 0; color: #849089; font-size: 10px; }
.household-total { padding: 7px 10px; border-radius: 999px; background: #e4f0e8; color: #176b49; font-size: 10px; font-weight: 700; }
.member-service-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; margin-top: 18px; }
.member-service-card { padding: 14px; border: 1px solid #e5eae7; border-radius: 14px; background: #fff; }
.member-service-head { display: flex; align-items: center; gap: 9px; }
.member-service-avatar { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 10px; background: #176b49; color: #fff; font-family: serif; font-weight: 700; }
.member-service-head div { min-width: 0; flex: 1; }
.member-service-head strong, .member-service-head small { display: block; }
.member-service-head strong { color: #30483c; font-size: 12px; }
.member-service-head small { margin-top: 3px; color: #8a938e; font-size: 9px; }
.member-service-head > span { color: #176b49; font-size: 9px; font-weight: 700; }
.member-latest { margin-top: 11px; padding: 10px; border-radius: 10px; background: #f2f6f3; }
.member-latest span, .member-latest strong { display: block; }
.member-latest span { color: #89938d; font-size: 9px; }
.member-latest strong { margin-top: 5px; color: #345043; font-size: 10px; line-height: 1.5; }
.member-profile-overview { display: grid; grid-template-columns: 1fr 1fr auto; gap: 7px; margin-top: 9px; padding: 9px; align-items: center; border-radius: 10px; background: #e9f2ec; }
.member-profile-overview span,.member-profile-overview strong { display: block; }
.member-profile-overview span { color: #7c8982; font-size: 8px; }
.member-profile-overview strong { margin-top: 4px; color: #315342; font-size: 9px; }
.member-profile-overview button { height: 27px; padding: 0 8px; border: 1px solid #bcd1c5; border-radius: 8px; background: #fff; color: #176b49; font-size: 8px; font-weight: 700; }
.member-records { display: grid; gap: 6px; margin-top: 10px; }
.member-record-row { display: grid; grid-template-columns: 24px 1fr auto; gap: 7px; align-items: center; color: #65736b; font-size: 9px; }
.member-record-icon { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 7px; background: #f3ead3; color: #8d6414; font-weight: 700; }
.member-record-row strong { overflow: hidden; color: #3d5548; text-overflow: ellipsis; white-space: nowrap; }
.member-record-row span:last-child { color: #176b49; }
.member-reminder-head { display: flex; margin-top: 12px; padding-top: 11px; align-items: center; justify-content: space-between; border-top: 1px solid #edf0ee; }
.member-reminder-head strong { color: #40574b; font-size: 9px; }
.member-reminder-head button { padding: 0; border: 0; background: transparent; color: #176b49; font-size: 9px; font-weight: 700; }
.member-reminders { display: grid; gap: 6px; margin-top: 8px; }
.member-reminder-row { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 7px; padding: 8px; align-items: center; border-radius: 9px; background: #f4edda; }
.member-reminder-row > span { color: #936510; font-size: 8px; font-weight: 700; }
.member-reminder-row div { min-width: 0; }
.member-reminder-row strong, .member-reminder-row small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.member-reminder-row strong { color: #55472a; font-size: 9px; }
.member-reminder-row small { margin-top: 3px; color: #8b7d60; font-size: 8px; }
.member-reminder-row button { height: 24px; padding: 0 8px; border: 0; border-radius: 7px; background: #176b49; color: #fff; font-size: 8px; }
.member-reminder-row.completed { background: #edf1ee; opacity: .7; }
.member-reminder-row.completed strong { text-decoration: line-through; }
.member-reminder-empty { padding: 9px; border-radius: 8px; background: #f5f7f5; color: #929a95; font-size: 8px; text-align: center; }
.member-timeline-button { width: 100%; height: 34px; margin-top: 11px; border: 1px solid #cedbd3; border-radius: 9px; background: #fff; color: #176b49; font-size: 9px; font-weight: 700; }
.member-timeline-button span { margin-left: 5px; }
.family-empty { padding: 65px 20px; color: #89938d; font-size: 11px; text-align: center; }
.records-center { margin-top: 16px; overflow: hidden; }
.records-center-heading { display: flex; padding: 23px 25px; align-items: center; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.records-center-heading > div > p:last-child { margin: 6px 0 0; color: #849089; font-size: 10px; }
.records-heading-actions { display: flex; gap: 10px; align-items: center; }
.records-search { display: flex; width: 390px; height: 39px; padding: 0 12px; align-items: center; border: 1px solid #dfe5e1; border-radius: 11px; background: #fafbf9; }
.records-search span { color: #176b49; font-size: 17px; }
.records-search input { min-width: 0; height: 100%; flex: 1; margin-left: 8px; border: 0; outline: 0; background: transparent; color: #334b3f; font-size: 12px; }
.metric-entry-button { height: 39px; padding: 0 15px; border: 0; border-radius: 11px; background: #176b49; color: #fff; font-size: 10px; font-weight: 700; white-space: nowrap; }
.metric-entry-button:hover { background: #125c3e; }
.metric-entry-button:disabled { cursor: not-allowed; background: #dfe6e2; color: #8e9993; }
.records-filters { display: flex; gap: 12px; padding: 14px 24px; align-items: end; border-bottom: 1px solid #edf0ee; background: #fafbf9; }
.records-filters label > span { display: block; margin: 0 0 6px 2px; color: #7f8983; font-size: 9px; }
.records-filters select { min-width: 165px; height: 36px; padding: 0 28px 0 10px; border: 1px solid #dce4df; border-radius: 9px; outline: none; background: #fff; color: #3a5045; font-size: 10px; }
.records-summary { display: flex; gap: 6px; margin-left: auto; }
.records-summary span { padding: 8px 9px; border-radius: 9px; background: #edf2ef; color: #718078; font-size: 9px; }
.records-summary strong { margin-left: 3px; color: #176b49; font-size: 11px; }
.records-center-body { display: grid; min-height: 560px; grid-template-columns: minmax(510px,1.08fr) minmax(390px,.92fr); }
.records-list-panel { border-right: 1px solid #edf0ee; }
.admin-record-list { max-height: 680px; overflow: auto; }
.admin-record-row { display: grid; grid-template-columns: 38px minmax(125px,1fr) minmax(125px,1fr) minmax(95px,.7fr); gap: 10px; padding: 14px 16px; align-items: center; border-bottom: 1px solid #eff2f0; cursor: pointer; }
.admin-record-row:hover, .admin-record-row.active { background: #f1f7f3; }
.admin-record-row.active { box-shadow: inset 3px 0 #176b49; }
.admin-record-row.voided { opacity: .58; }
.admin-record-row.voided .admin-record-result { color: #975746; text-decoration: line-through; }
.admin-record-icon { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 11px; background: #f3ead3; color: #8f6511; font-weight: 700; }
.admin-record-icon.health_metric { background: #e3f0e8; color: #176b49; }
.admin-record-main strong, .admin-record-main small, .admin-record-owner strong, .admin-record-owner small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-record-main strong, .admin-record-owner strong { color: #344d40; font-size: 11px; }
.admin-record-main small, .admin-record-owner small { margin-top: 4px; color: #8b948e; font-size: 9px; }
.admin-record-result { color: #176b49; font-size: 10px; font-weight: 700; text-align: right; }
.admin-record-detail { min-width: 0; padding: 23px 25px; background: #fbfcfa; }
.record-detail-hero { padding: 19px; border-radius: 17px; background: linear-gradient(145deg,#176b49,#245d43); color: #fff; }
.record-detail-hero span, .record-detail-hero strong, .record-detail-hero small { display: block; }
.record-detail-hero span { color: #e5cb7a; font-size: 9px; font-weight: 700; letter-spacing: 1px; }
.record-detail-hero strong { margin-top: 7px; font-family: serif; font-size: 21px; }
.record-detail-hero small { margin-top: 7px; color: rgba(255,255,255,.67); font-size: 10px; }
.record-status-line { display: flex; margin-top: 10px; align-items: center; justify-content: space-between; }
.record-status-badge { padding: 5px 8px; border-radius: 999px; background: #e6f1e9; color: #176b49; font-size: 9px; font-style: normal; font-weight: 700; }
.record-status-badge.voided { background: #f2dfda; color: #984e3b; }
.record-status-badge.corrected { background: #f3ead2; color: #87610f; }
.record-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 13px; }
.record-actions button { height: 36px; border-radius: 10px; font-size: 10px; font-weight: 700; }
.record-correct-button { border: 1px solid #bcd1c5; background: #fff; color: #176b49; }
.record-void-button { border: 1px solid #dfc5bd; background: #fff7f5; color: #984e3b; }
.record-void-summary { margin-top: 13px; padding: 13px; border-radius: 11px; background: #f4e2dd; color: #804b3d; font-size: 10px; line-height: 1.6; }
.record-revision-list { display: grid; gap: 7px; margin-top: 9px; }
.record-revision-row { padding: 10px; border-radius: 10px; background: #f5f0e3; color: #6f6242; font-size: 9px; line-height: 1.55; }
.record-result-box { margin-top: 13px; padding: 14px; border-radius: 13px; background: #e7f2ea; text-align: center; }
.record-result-box span, .record-result-box strong { display: block; }
.record-result-box span { color: #76867d; font-size: 9px; }
.record-result-box strong { margin-top: 6px; color: #176b49; font-size: 20px; }
.record-detail-info { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 13px; }
.record-detail-info div { padding: 10px; border: 1px solid #e8ece9; border-radius: 10px; background: #fff; }
.record-detail-info span, .record-detail-info strong { display: block; }
.record-detail-info span { color: #909994; font-size: 8px; }
.record-detail-info strong { margin-top: 5px; color: #40574b; font-size: 10px; line-height: 1.45; }
.record-trace-title { display: block; margin-top: 16px; color: #30483c; font-size: 11px; font-weight: 700; }
.record-trace { display: grid; gap: 7px; margin-top: 9px; }
.record-trace-row { display: grid; grid-template-columns: 22px 1fr auto; gap: 7px; align-items: center; color: #607067; font-size: 9px; }
.record-trace-row b { display: grid; width: 22px; height: 22px; place-items: center; border-radius: 7px; background: #e5f0e8; color: #176b49; font-size: 9px; }
.record-trace-row time { color: #929a95; }
.settings-center { margin-top: 16px; overflow: hidden; }
.privacy-admin-center { margin-top: 16px; overflow: hidden; }
.privacy-admin-heading { display: flex; padding: 23px 25px; align-items: center; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.privacy-admin-heading > div:first-child > p:last-child { margin: 6px 0 0; color: #849089; font-size: 10px; }
.privacy-admin-filters { display: flex; gap: 9px; }
.privacy-admin-filters label span { display: block; margin: 0 0 5px 2px; color: #7f8983; font-size: 8px; }
.privacy-admin-filters select { min-width: 135px; height: 35px; padding: 0 25px 0 9px; border: 1px solid #dce4df; border-radius: 9px; background: #fff; color: #3a5045; font-size: 9px; }
.privacy-admin-body { display: grid; min-height: 560px; grid-template-columns: minmax(440px,.92fr) minmax(480px,1.08fr); }
.privacy-request-panel { border-right: 1px solid #edf0ee; }
.privacy-request-list { max-height: 680px; overflow: auto; }
.privacy-request-row { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; gap: 10px; padding: 14px 16px; align-items: center; border-bottom: 1px solid #eff2f0; cursor: pointer; }
.privacy-request-row:hover,.privacy-request-row.active { background: #f1f7f3; }
.privacy-request-row.active { box-shadow: inset 3px 0 #176b49; }
.privacy-request-icon { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 11px; background: #e4f0e8; color: #176b49; font-weight: 700; }
.privacy-request-icon.correction { background: #e5edf2; color: #42697d; }
.privacy-request-icon.deletion { background: #f1e1dc; color: #984e3b; }
.privacy-request-row div strong,.privacy-request-row div small { display: block; }
.privacy-request-row div strong { color: #344d40; font-size: 11px; }
.privacy-request-row div small { margin-top: 5px; color: #8b948e; font-size: 9px; }
.privacy-request-status { padding: 6px 8px; border-radius: 999px; background: #f3ead2; color: #8d6414; font-size: 8px; font-weight: 700; }
.privacy-request-status.in_review { background: #e3edf3; color: #3c6b82; }
.privacy-request-status.completed { background: #e3f0e8; color: #176b49; }
.privacy-request-status.rejected,.privacy-request-status.cancelled { background: #f1e1dc; color: #984e3b; }
.privacy-request-detail { min-width: 0; padding: 23px 25px; background: #fbfcfa; }
.privacy-detail-hero { position: relative; padding: 18px; border-radius: 16px; background: linear-gradient(145deg,#173f2d,#245e43); color: #fff; }
.privacy-detail-hero span,.privacy-detail-hero strong,.privacy-detail-hero small { display: block; }
.privacy-detail-hero span { color: #e5ca79; font-size: 9px; font-weight: 700; }
.privacy-detail-hero strong { margin-top: 7px; font-family: serif; font-size: 19px; }
.privacy-detail-hero small { margin-top: 6px; color: rgba(255,255,255,.66); font-size: 9px; }
.privacy-detail-hero i { position: absolute; top: 16px; right: 16px; padding: 6px 8px; border-radius: 999px; background: rgba(255,255,255,.14); color: #fff; font-size: 8px; font-style: normal; }
.privacy-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
.privacy-detail-grid div { padding: 10px; border: 1px solid #e5eae7; border-radius: 10px; background: #fff; }
.privacy-detail-grid span,.privacy-detail-grid strong { display: block; }
.privacy-detail-grid span { color: #8a948e; font-size: 8px; }
.privacy-detail-grid strong { margin-top: 5px; color: #40564b; font-size: 9px; overflow-wrap: anywhere; }
.privacy-detail-block { margin-top: 11px; padding: 12px; border-radius: 11px; background: #f4f6f4; }
.privacy-detail-block.response { background: #e8f2eb; }
.privacy-detail-block span { color: #718078; font-size: 8px; font-weight: 700; }
.privacy-detail-block p { margin: 6px 0 0; color: #40564b; font-size: 10px; line-height: 1.6; }
.privacy-trace-title { margin-top: 14px; color: #30483c; font-size: 11px; font-weight: 700; }
.privacy-trace { display: grid; margin-top: 7px; }
.privacy-trace-row { display: flex; gap: 8px; padding: 7px 0; align-items: flex-start; }
.privacy-trace-row b { display: grid; width: 24px; min-width: 24px; height: 24px; place-items: center; border-radius: 8px; background: #e7f1ea; color: #176b49; font-size: 8px; }
.privacy-trace-row span { color: #40564b; font-size: 9px; font-weight: 700; }
.privacy-trace-row small { display: block; margin-top: 4px; color: #8b948e; font-size: 8px; font-weight: 400; }
.privacy-process-box { margin-top: 12px; padding: 12px; border-radius: 12px; background: #f5ecd5; }
.privacy-process-box label span { display: block; color: #6c5d38; font-size: 9px; font-weight: 700; }
.privacy-process-box textarea { width: 100%; min-height: 62px; margin-top: 7px; padding: 9px; border: 1px solid #dfd2ae; border-radius: 9px; outline: 0; background: #fff; color: #40564b; font-size: 9px; resize: vertical; }
.privacy-process-actions { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; margin-top: 8px; }
.privacy-process-actions button { height: 32px; border: 1px solid #c9d7cf; border-radius: 9px; background: #fff; color: #176b49; font-size: 8px; font-weight: 700; }
.privacy-process-actions button.complete { border: 0; background: #176b49; color: #fff; }
.privacy-process-actions button.reject { border-color: #dfc5bd; background: #fff7f5; color: #984e3b; }
.privacy-readonly-note { margin-top: 12px; padding: 11px; border-radius: 10px; background: #edf1ee; color: #718078; font-size: 9px; text-align: center; }
.privacy-delete-boundary { margin-top: 11px; padding: 10px; border: 1px dashed #d6c9a7; border-radius: 10px; color: #7b6b45; font-size: 8px; line-height: 1.55; text-align: center; }

.appointment-admin-center { margin-top: 16px; overflow: hidden; }
.appointment-admin-heading { display: flex; padding: 23px 25px; align-items: center; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.appointment-admin-heading > div:first-child > p:last-child { margin: 6px 0 0; color: #849089; font-size: 10px; }
.appointment-admin-filters { display: flex; gap: 9px; }
.appointment-admin-filters label span { display: block; margin: 0 0 5px 2px; color: #7f8983; font-size: 8px; }
.appointment-admin-filters select { min-width: 135px; height: 35px; padding: 0 25px 0 9px; border: 1px solid #dce4df; border-radius: 9px; background: #fff; color: #3a5045; font-size: 9px; }
.appointment-admin-body { display: grid; min-height: 560px; grid-template-columns: minmax(440px,.92fr) minmax(480px,1.08fr); }
.appointment-request-panel { border-right: 1px solid #edf0ee; }
.appointment-request-list { max-height: 680px; overflow: auto; }
.appointment-request-row { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; gap: 10px; padding: 14px 16px; align-items: center; border-bottom: 1px solid #eff2f0; cursor: pointer; }
.appointment-request-row:hover,.appointment-request-row.active { background: #f1f7f3; }
.appointment-request-row.active { box-shadow: inset 3px 0 #176b49; }
.appointment-request-icon { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 11px; background: #e4f0e8; color: #176b49; font-weight: 700; }
.appointment-request-icon.consultation { background: #f3e8cd; color: #946711; }
.appointment-request-icon.participation { background: #e4f0e8; color: #176b49; }
.appointment-request-icon.health_support { background: #f3e8cd; color: #946711; }
.appointment-request-icon.medical_navigation { background: #e5edf2; color: #42697d; }
.appointment-request-row div strong,.appointment-request-row div small { display: block; }
.appointment-request-row div strong { color: #344d40; font-size: 11px; }
.appointment-request-row div small { margin-top: 5px; color: #8b948e; font-size: 9px; }
.appointment-request-status { padding: 6px 8px; border-radius: 999px; background: #f3ead2; color: #8d6414; font-size: 8px; font-weight: 700; }
.appointment-request-status.contacting { background: #e3edf3; color: #3c6b82; }
.appointment-request-status.confirmed,.appointment-request-status.accepted,.appointment-request-status.completed { background: #e3f0e8; color: #176b49; }
.appointment-request-status.rejected,.appointment-request-status.cancelled { background: #f1e1dc; color: #984e3b; }
.appointment-request-detail { min-width: 0; padding: 23px 25px; background: #fbfcfa; }
.appointment-detail-hero { position: relative; padding: 18px; border-radius: 16px; background: linear-gradient(145deg,#173f2d,#245e43); color: #fff; }
.appointment-detail-hero span,.appointment-detail-hero strong,.appointment-detail-hero small { display: block; }
.appointment-detail-hero span { color: #e5ca79; font-size: 9px; font-weight: 700; }
.appointment-detail-hero strong { margin-top: 7px; font-family: serif; font-size: 19px; }
.appointment-detail-hero small { margin-top: 6px; color: rgba(255,255,255,.66); font-size: 9px; }
.appointment-detail-hero i { position: absolute; top: 16px; right: 16px; padding: 6px 8px; border-radius: 999px; background: rgba(255,255,255,.14); color: #fff; font-size: 8px; font-style: normal; }
.appointment-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
.appointment-detail-grid div { padding: 10px; border: 1px solid #e5eae7; border-radius: 10px; background: #fff; }
.appointment-detail-grid span,.appointment-detail-grid strong { display: block; }
.appointment-detail-grid span { color: #8a948e; font-size: 8px; }
.appointment-detail-grid strong { margin-top: 5px; color: #40564b; font-size: 9px; overflow-wrap: anywhere; }
.appointment-detail-block { margin-top: 11px; padding: 12px; border-radius: 11px; background: #f4f6f4; }
.appointment-detail-block.response { background: #f5ecd5; }
.appointment-detail-block.confirmed { background: #e8f2eb; }
.appointment-detail-block span { color: #718078; font-size: 8px; font-weight: 700; }
.appointment-detail-block p { margin: 6px 0 0; color: #40564b; font-size: 10px; line-height: 1.6; }
.appointment-trace-title { margin-top: 14px; color: #30483c; font-size: 11px; font-weight: 700; }
.appointment-trace { display: grid; margin-top: 7px; }
.appointment-trace-row { display: flex; gap: 8px; padding: 7px 0; align-items: flex-start; }
.appointment-trace-row b { display: grid; width: 24px; min-width: 24px; height: 24px; place-items: center; border-radius: 8px; background: #e7f1ea; color: #176b49; font-size: 8px; }
.appointment-trace-row span { color: #40564b; font-size: 9px; font-weight: 700; }
.appointment-trace-row small { display: block; margin-top: 4px; color: #8b948e; font-size: 8px; font-weight: 400; }
.appointment-process-box { margin-top: 12px; padding: 12px; border-radius: 12px; background: #f5ecd5; }
.appointment-confirm-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.appointment-process-box label span { display: block; color: #6c5d38; font-size: 9px; font-weight: 700; }
.appointment-process-box input,.appointment-process-box textarea { width: 100%; margin-top: 7px; padding: 9px; border: 1px solid #dfd2ae; border-radius: 9px; outline: 0; background: #fff; color: #40564b; font-size: 9px; }
.appointment-process-box textarea { min-height: 62px; resize: vertical; }
.appointment-process-box > label { display: block; margin-top: 9px; }
.appointment-process-actions { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; margin-top: 8px; }
.appointment-process-actions button { height: 32px; border: 1px solid #c9d7cf; border-radius: 9px; background: #fff; color: #176b49; font-size: 8px; font-weight: 700; }
.appointment-process-actions button.confirm,.appointment-process-actions button.complete { border: 0; background: #176b49; color: #fff; }
.appointment-process-actions button.reject { border-color: #dfc5bd; background: #fff7f5; color: #984e3b; }
.appointment-readonly-note { margin-top: 12px; padding: 11px; border-radius: 10px; background: #edf1ee; color: #718078; font-size: 9px; text-align: center; }
.appointment-medical-boundary { margin-top: 11px; padding: 10px; border: 1px dashed #d6c9a7; border-radius: 10px; color: #7b6b45; font-size: 8px; line-height: 1.55; text-align: center; }

.footprint-admin-center { margin-top: 16px; overflow: hidden; }
.footprint-admin-heading { display: flex; padding: 23px 25px; align-items: center; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.footprint-admin-heading > div > p:last-child { margin: 6px 0 0; color: #849089; font-size: 10px; }
.footprint-admin-heading button { width: auto; min-width: 140px; padding: 0 16px; }
.footprint-admin-heading button:disabled { cursor: not-allowed; opacity: .45; }
.footprint-summary-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; padding: 15px 25px; background: #f8faf8; border-bottom: 1px solid #edf0ee; }
.footprint-summary-grid div { padding: 12px 14px; border: 1px solid #e6ebe8; border-radius: 12px; background: #fff; }
.footprint-summary-grid span,.footprint-summary-grid strong { display: block; }
.footprint-summary-grid span { color: #849089; font-size: 8px; }
.footprint-summary-grid strong { margin-top: 5px; color: #176b49; font-family: serif; font-size: 20px; }
.footprint-filter-row { display: flex; padding: 13px 25px; align-items: flex-end; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.footprint-filter-row label span { display: block; margin: 0 0 5px 2px; color: #7f8983; font-size: 8px; }
.footprint-filter-row select { min-width: 150px; height: 35px; padding: 0 25px 0 9px; border: 1px solid #dce4df; border-radius: 9px; background: #fff; color: #3a5045; font-size: 9px; }
.footprint-filter-row p { margin: 0; color: #8b948e; font-size: 9px; }
.charity-footprint-list { display: grid; min-height: 180px; }
.charity-footprint-row { display: grid; grid-template-columns: 135px minmax(0,1fr) 240px; gap: 17px; padding: 18px 25px; align-items: center; border-bottom: 1px solid #edf0ee; }
.charity-footprint-row.draft { background: #fffdf8; }
.charity-footprint-row.withdrawn { background: #faf9f8; opacity: .8; }
.footprint-row-date strong,.footprint-row-date span { display: block; }
.footprint-row-date strong { color: #29483a; font-family: serif; font-size: 15px; }
.footprint-row-date span { margin-top: 6px; color: #849089; font-size: 9px; line-height: 1.45; }
.footprint-row-title { display: flex; gap: 8px; align-items: center; }
.footprint-row-title strong { color: #30483c; font-size: 12px; }
.footprint-row-title i { padding: 5px 7px; border-radius: 999px; background: #e4f0e8; color: #176b49; font-size: 7px; font-style: normal; font-weight: 700; }
.footprint-row-title i.draft { background: #f3ead2; color: #8d6414; }
.footprint-row-title i.withdrawn { background: #eceeec; color: #747d78; }
.footprint-row-main > p { margin: 6px 0 0; color: #77847d; font-size: 9px; }
.footprint-row-outcome { margin-top: 8px; color: #40564b; font-size: 10px; line-height: 1.55; }
.footprint-row-main > small { display: block; margin-top: 7px; color: #9a701d; font-size: 8px; }
.footprint-row-counts { display: grid; grid-template-columns: repeat(3,1fr); gap: 6px; align-items: center; }
.footprint-row-counts span { padding: 8px 5px; border-radius: 9px; background: #edf4ef; color: #718078; font-size: 7px; text-align: center; }
.footprint-row-counts b { display: block; margin-bottom: 4px; color: #176b49; font-size: 12px; }
.footprint-row-counts button,.footprint-row-counts em { grid-column: 1 / -1; height: 29px; border: 1px solid #cedbd3; border-radius: 8px; background: #fff; color: #176b49; font-size: 8px; font-style: normal; text-align: center; }
.footprint-row-counts em { display: grid; place-items: center; border: 0; background: #f0f2f0; color: #89938d; }
.footprint-boundary-note { margin: 18px 25px 22px; padding: 11px; border: 1px dashed #d8cba9; border-radius: 11px; color: #756746; font-size: 9px; line-height: 1.6; text-align: center; }
.footprint-modal-card { width: min(700px,94vw); }

.content-admin-center { margin-top: 16px; overflow: hidden; }
.content-admin-heading { display: flex; padding: 23px 25px; align-items: center; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.content-admin-heading > div > p:last-child { margin: 6px 0 0; color: #849089; font-size: 10px; }
.content-admin-heading button { width: auto; min-width: 142px; padding: 0 16px; }
.content-admin-heading button:disabled { cursor: not-allowed; opacity: .45; }
.content-summary-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; padding: 15px 25px; background: #f8faf8; border-bottom: 1px solid #edf0ee; }
.content-summary-grid div { padding: 12px 14px; border: 1px solid #e6ebe8; border-radius: 12px; background: #fff; }
.content-summary-grid span,.content-summary-grid strong { display: block; }
.content-summary-grid span { color: #849089; font-size: 8px; }
.content-summary-grid strong { margin-top: 5px; color: #176b49; font-family: serif; font-size: 20px; }
.content-filter-row { display: flex; gap: 10px; padding: 13px 25px; align-items: flex-end; border-bottom: 1px solid #edf0ee; }
.content-filter-row label span { display: block; margin: 0 0 5px 2px; color: #7f8983; font-size: 8px; }
.content-filter-row select { min-width: 140px; height: 35px; padding: 0 25px 0 9px; border: 1px solid #dce4df; border-radius: 9px; background: #fff; color: #3a5045; font-size: 9px; }
.content-filter-row p { flex: 1; margin: 0 0 8px; color: #8b948e; font-size: 9px; text-align: right; }
.managed-content-list { display: grid; min-height: 200px; }
.managed-content-row { display: grid; grid-template-columns: 48px minmax(0,1fr) 220px; gap: 14px; padding: 17px 25px; align-items: center; border-bottom: 1px solid #edf0ee; }
.managed-content-row.draft { background: #fffdf8; }
.managed-content-row.withdrawn { background: #faf9f8; opacity: .8; }
.managed-content-icon { display: grid; width: 47px; height: 47px; place-items: center; border-radius: 14px; background: #e7f1ea; color: #176b49; font-family: serif; font-size: 15px; font-weight: 700; }
.managed-content-icon.food { background: #f4ead1; color: #966811; }
.managed-content-icon.wellbeing { background: #e5ece8; color: #365d4a; }
.managed-content-icon.sleep { background: #e8e9f1; color: #565f84; }
.managed-content-title { display: flex; gap: 7px; align-items: center; }
.managed-content-title strong { color: #30483c; font-size: 12px; }
.managed-content-title i,.managed-content-title em { padding: 4px 7px; border-radius: 999px; background: #e4f0e8; color: #176b49; font-size: 7px; font-style: normal; font-weight: 700; }
.managed-content-title i.draft { background: #f3ead2; color: #8d6414; }
.managed-content-title i.withdrawn { background: #eceeec; color: #747d78; }
.managed-content-title em { background: #f3e8cb; color: #966811; }
.managed-content-main > p { margin: 5px 0 0; color: #7f8b84; font-size: 8px; }
.managed-content-main > div { margin-top: 7px; color: #40564b; font-size: 9px; line-height: 1.55; }
.managed-content-main > small { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 7px; }
.managed-content-main > small span { padding: 4px 6px; border-radius: 7px; background: #f0f4f1; color: #6d7f75; font-size: 7px; }
.managed-content-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.managed-content-meta > span,.managed-content-meta time { padding: 7px; border-radius: 8px; background: #f3f6f4; color: #718078; font-size: 7px; text-align: center; }
.managed-content-meta time { grid-column: 1 / -1; }
.managed-content-meta button,.managed-content-meta em { grid-column: 1 / -1; height: 29px; border: 1px solid #cedbd3; border-radius: 8px; background: #fff; color: #176b49; font-size: 8px; font-style: normal; text-align: center; }
.managed-content-meta em { display: grid; place-items: center; border: 0; background: #f0f2f0; color: #89938d; }
.content-boundary-note { margin: 18px 25px 22px; padding: 11px; border: 1px dashed #d8cba9; border-radius: 11px; color: #756746; font-size: 9px; line-height: 1.6; text-align: center; }
.content-modal-card { width: min(720px,94vw); }
.content-modal-card .content-body-input { min-height: 155px; }

.catalog-admin-center { margin-top: 16px; overflow: hidden; }
.catalog-admin-heading { display: flex; padding: 23px 25px; align-items: center; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.catalog-admin-heading > div:first-child > p:last-child { margin: 6px 0 0; color: #849089; font-size: 10px; }
.catalog-admin-actions { display: flex; gap: 8px; }
.catalog-admin-actions button { width: auto; min-width: 120px; padding: 0 14px; }
.catalog-admin-actions button:disabled { cursor: not-allowed; opacity: .45; }
.catalog-summary-grid { display: grid; grid-template-columns: repeat(6,1fr); gap: 10px; padding: 15px 25px; background: #f8faf8; border-bottom: 1px solid #edf0ee; }
.catalog-summary-grid div { padding: 12px 14px; border: 1px solid #e6ebe8; border-radius: 12px; background: #fff; }
.catalog-summary-grid span,.catalog-summary-grid strong { display: block; }
.catalog-summary-grid span { color: #849089; font-size: 8px; }
.catalog-summary-grid strong { margin-top: 5px; color: #176b49; font-family: serif; font-size: 20px; }
.catalog-filter-row { display: flex; gap: 10px; padding: 13px 25px; align-items: flex-end; border-bottom: 1px solid #edf0ee; }
.catalog-filter-row label span { display: block; margin: 0 0 5px 2px; color: #7f8983; font-size: 8px; }
.catalog-filter-row select { min-width: 140px; height: 35px; padding: 0 25px 0 9px; border: 1px solid #dce4df; border-radius: 9px; background: #fff; color: #3a5045; font-size: 9px; }
.catalog-filter-row p { flex: 1; margin: 0 0 8px; color: #8b948e; font-size: 9px; text-align: right; }
.catalog-admin-body { display: grid; min-height: 430px; grid-template-columns: 1fr 1.15fr; }
.supplier-resource-panel { border-right: 1px solid #edf0ee; }
.supplier-admin-list,.product-admin-list { max-height: 650px; overflow: auto; }
.supplier-admin-row,.product-admin-row { display: grid; grid-template-columns: 44px minmax(0,1fr) auto; gap: 11px; padding: 15px 16px; align-items: center; border-bottom: 1px solid #edf0ee; }
.supplier-admin-row.draft,.product-admin-row.draft { background: #fffdf8; }
.supplier-admin-row.suspended,.product-admin-row.withdrawn { background: #faf9f8; opacity: .8; }
.supplier-admin-mark,.product-admin-mark { display: grid; width: 43px; height: 43px; place-items: center; border-radius: 13px; background: #176b49; color: #fff; font-family: serif; font-size: 15px; font-weight: 700; }
.supplier-admin-row.draft .supplier-admin-mark,.product-admin-row.draft .product-admin-mark { background: #a67820; }
.supplier-admin-row.suspended .supplier-admin-mark,.product-admin-row.withdrawn .product-admin-mark { background: #8b938e; }
.supplier-admin-copy,.product-admin-copy { min-width: 0; }
.supplier-admin-copy > div,.product-admin-copy > div { display: flex; gap: 6px; align-items: center; }
.supplier-admin-copy strong,.product-admin-copy strong { color: #30483c; font-size: 11px; }
.supplier-admin-copy em,.product-admin-copy em { padding: 3px 6px; border-radius: 999px; background: #f3e8cb; color: #966811; font-size: 7px; font-style: normal; }
.supplier-admin-copy p,.product-admin-copy p { display: flex; flex-wrap: wrap; gap: 4px; margin: 5px 0 0; color: #6c7d73; font-size: 8px; }
.supplier-admin-copy p span { padding: 3px 6px; border-radius: 999px; background: #edf3ef; }
.supplier-admin-copy small,.supplier-admin-copy b,.product-admin-copy small,.product-admin-copy b { display: block; margin-top: 5px; color: #87918b; font-size: 8px; font-weight: 400; line-height: 1.45; }
.supplier-admin-copy b,.product-admin-copy b { color: #9a701d; }
.supplier-admin-side,.product-admin-side { display: flex; gap: 6px; align-items: flex-end; flex-direction: column; }
.supplier-admin-side i,.product-admin-side i { padding: 5px 7px; border-radius: 999px; background: #e4f0e8; color: #176b49; font-size: 7px; font-style: normal; font-weight: 700; }
.supplier-admin-side i.draft,.product-admin-side i.draft { background: #f3ead2; color: #8d6414; }
.supplier-admin-side i.suspended,.product-admin-side i.withdrawn { background: #eceeec; color: #747d78; }
.product-admin-side span { max-width: 120px; color: #176b49; font-size: 7px; text-align: right; }
.product-admin-side span.draft,.product-admin-side span.suspended,.product-admin-side span.missing { color: #9a5745; }
.supplier-admin-side button,.product-admin-side button { height: 27px; padding: 0 9px; border: 1px solid #d1ddd5; border-radius: 8px; background: #fff; color: #176b49; font-size: 8px; }
.supplier-admin-side > em,.product-admin-side > em { color: #949c97; font-size: 8px; font-style: normal; }
.catalog-boundary-note { margin: 18px 25px 22px; padding: 11px; border: 1px dashed #d8cba9; border-radius: 11px; color: #756746; font-size: 9px; line-height: 1.6; text-align: center; }
.catalog-modal-card { width: min(680px,94vw); }
.product-modal-card { width: min(760px,94vw); }
.batch-management-heading { display: flex; padding: 22px 25px 15px; align-items: center; justify-content: space-between; border-top: 1px solid #edf0ee; }
.batch-management-heading h3 { margin: 3px 0 0; color: #30483c; font-size: 15px; }
.batch-management-heading > div > p:last-child { margin: 6px 0 0; color: #849089; font-size: 9px; }
.batch-management-heading button { width: auto; min-width: 138px; padding: 0 15px; }
.batch-management-heading button:disabled { opacity: .45; }
.batch-filter-row { display: flex; gap: 10px; padding: 13px 25px; align-items: flex-end; background: #f8faf8; border-top: 1px solid #edf0ee; border-bottom: 1px solid #edf0ee; }
.batch-filter-row label span { display: block; margin: 0 0 5px 2px; color: #7f8983; font-size: 8px; }
.batch-filter-row select { min-width: 180px; height: 35px; padding: 0 25px 0 9px; border: 1px solid #dce4df; border-radius: 9px; background: #fff; color: #3a5045; font-size: 9px; }
.batch-filter-row p { flex: 1; margin: 0 0 9px; color: #8b948e; font-size: 9px; text-align: right; }
.product-batch-admin-list { display: grid; max-height: 620px; overflow: auto; }
.product-batch-admin-row { display: grid; grid-template-columns: 45px minmax(0,1fr) 150px; gap: 12px; padding: 16px 25px; align-items: center; border-bottom: 1px solid #edf0ee; }
.product-batch-admin-row.draft { background: #fffdf8; }
.product-batch-admin-row.withdrawn { background: #faf9f8; opacity: .8; }
.product-batch-mark { display: grid; width: 43px; height: 43px; place-items: center; border-radius: 13px; background: #176b49; color: #fff; font-family: serif; font-size: 14px; font-weight: 700; }
.product-batch-admin-row.draft .product-batch-mark { background: #a67820; }
.product-batch-admin-row.withdrawn .product-batch-mark { background: #8b938e; }
.product-batch-copy > div { display: flex; gap: 6px; align-items: center; }
.product-batch-copy strong { color: #30483c; font-size: 11px; }
.product-batch-copy i,.product-batch-copy em { padding: 3px 6px; border-radius: 999px; background: #edf3ef; color: #567064; font-size: 7px; font-style: normal; }
.product-batch-copy em { background: #f3e8cb; color: #966811; }
.product-batch-copy p,.product-batch-copy small,.product-batch-copy b { display: block; margin: 5px 0 0; color: #7f8b84; font-size: 8px; font-weight: 400; line-height: 1.5; }
.product-batch-copy b { color: #9a701d; }
.product-batch-side { display: flex; gap: 6px; align-items: flex-end; flex-direction: column; }
.product-batch-side > i { padding: 5px 7px; border-radius: 999px; background: #e4f0e8; color: #176b49; font-size: 7px; font-style: normal; font-weight: 700; }
.product-batch-side > i.draft { background: #f3ead2; color: #8d6414; }
.product-batch-side > i.withdrawn { background: #eceeec; color: #747d78; }
.product-batch-side span { color: #176b49; font-size: 7px; text-align: right; }
.product-batch-side span.draft,.product-batch-side span.withdrawn,.product-batch-side span.missing { color: #9a5745; }
.product-batch-side button { height: 27px; padding: 0 9px; border: 1px solid #d1ddd5; border-radius: 8px; background: #fff; color: #176b49; font-size: 8px; }
.product-batch-side em { color: #949c97; font-size: 8px; font-style: normal; }
.product-batch-modal-card { width: min(760px,94vw); }

.commerce-admin-center { margin-top: 16px; overflow: hidden; }
.commerce-admin-heading { display: flex; padding: 23px 25px; align-items: center; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.commerce-admin-heading > div:first-child > p:last-child { margin: 6px 0 0; color: #849089; font-size: 10px; }
.commerce-admin-filters { display: flex; gap: 9px; }
.commerce-admin-filters label span { display: block; margin: 0 0 5px 2px; color: #7f8983; font-size: 8px; }
.commerce-admin-filters select { min-width: 145px; height: 35px; padding: 0 25px 0 9px; border: 1px solid #dce4df; border-radius: 9px; background: #fff; color: #3a5045; font-size: 9px; }
.commerce-summary-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; padding: 15px 25px; background: #f8faf8; border-bottom: 1px solid #edf0ee; }
.commerce-summary-grid div { padding: 12px 14px; border: 1px solid #e6ebe8; border-radius: 12px; background: #fff; }
.commerce-summary-grid span,.commerce-summary-grid strong { display: block; }
.commerce-summary-grid span { color: #849089; font-size: 8px; }
.commerce-summary-grid strong { margin-top: 5px; color: #176b49; font-family: serif; font-size: 20px; }
.commerce-admin-body { display: grid; min-height: 500px; grid-template-columns: .9fr 1.1fr; border-bottom: 1px solid #edf0ee; }
.commerce-order-panel { border-right: 1px solid #edf0ee; }
.commerce-order-list { max-height: 680px; overflow: auto; }
.commerce-order-row { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; gap: 11px; padding: 14px 16px; align-items: center; border-bottom: 1px solid #edf0ee; cursor: pointer; }
.commerce-order-row:hover,.commerce-order-row.active { background: #eef5f0; }
.commerce-order-row.active { box-shadow: inset 3px 0 #176b49; }
.commerce-order-avatar { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 12px; background: #176b49; color: #fff; font-weight: 700; }
.commerce-order-copy strong,.commerce-order-copy span,.commerce-order-copy small { display: block; }
.commerce-order-copy strong { color: #30483c; font-size: 10px; }
.commerce-order-copy span { margin-top: 4px; color: #66756d; font-size: 8px; }
.commerce-order-copy small { margin-top: 4px; color: #909893; font-size: 8px; }
.commerce-order-row > i,.commerce-detail-head > i,.commerce-after-row > i,.commerce-after-detail-head > i { padding: 5px 7px; border-radius: 999px; background: #f3ead2; color: #8d6414; font-size: 7px; font-style: normal; font-weight: 700; white-space: nowrap; }
.commerce-order-row > i.shipped,.commerce-detail-head > i.shipped { background: #e4edf2; color: #3d6c82; }
.commerce-order-row > i.completed,.commerce-detail-head > i.completed,.commerce-after-row > i.completed,.commerce-after-detail-head > i.completed { background: #e4f0e8; color: #176b49; }
.commerce-order-row > i.cancelled,.commerce-detail-head > i.cancelled,.commerce-after-row > i.rejected,.commerce-after-detail-head > i.rejected,.commerce-after-row > i.cancelled,.commerce-after-detail-head > i.cancelled { background: #f1e1dc; color: #95503f; }
.commerce-order-detail,.commerce-after-sale-detail { padding: 20px; overflow: auto; }
.commerce-detail-head { display: grid; grid-template-columns: 45px minmax(0,1fr) auto; gap: 11px; align-items: center; }
.commerce-order-mark { display: grid; width: 43px; height: 43px; place-items: center; border-radius: 13px; background: #176b49; color: #fff; font-size: 13px; font-weight: 700; }
.commerce-detail-head strong,.commerce-detail-head span { display: block; }
.commerce-detail-head strong { color: #30483c; font-size: 13px; }
.commerce-detail-head span { margin-top: 5px; color: #7f8983; font-size: 9px; }
.commerce-demo-note { margin-top: 13px; padding: 11px; border-radius: 10px; background: #f6ecd3; color: #756136; font-size: 9px; line-height: 1.55; }
.commerce-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
.commerce-detail-grid div { padding: 10px; border: 1px solid #e6ebe8; border-radius: 10px; background: #fff; }
.commerce-detail-grid span,.commerce-detail-grid strong { display: block; }
.commerce-detail-grid span { color: #87918b; font-size: 8px; }
.commerce-detail-grid strong { margin-top: 5px; color: #30483c; font-size: 9px; }
.commerce-products-title,.commerce-trace-title { margin-top: 16px; color: #30483c; font-size: 10px; font-weight: 700; }
.commerce-detail-products { margin-top: 7px; border-top: 1px solid #edf0ee; }
.commerce-detail-products > div { display: grid; grid-template-columns: 30px minmax(0,1fr) auto; gap: 9px; padding: 9px 0; align-items: center; border-bottom: 1px solid #edf0ee; }
.commerce-detail-products b { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 9px; background: #f2e6c7; color: #906512; font-size: 8px; }
.commerce-detail-products strong,.commerce-detail-products small { display: block; }
.commerce-detail-products strong { color: #40564b; font-size: 9px; }
.commerce-detail-products small { margin-top: 4px; color: #89928d; font-size: 8px; }
.commerce-detail-products em { color: #176b49; font-size: 9px; font-style: normal; font-weight: 700; }
.commerce-address-box,.commerce-after-description,.commerce-after-reply { margin-top: 12px; padding: 11px; border-radius: 10px; background: #f5f7f5; }
.commerce-address-box span,.commerce-address-box strong,.commerce-after-description span,.commerce-after-description strong,.commerce-after-reply span,.commerce-after-reply strong { display: block; }
.commerce-address-box span,.commerce-after-description span,.commerce-after-reply span { color: #87918b; font-size: 8px; }
.commerce-address-box strong,.commerce-after-description strong,.commerce-after-reply strong { margin-top: 5px; color: #40564b; font-size: 9px; line-height: 1.5; }
.commerce-after-reply { background: #edf4ef; }
.commerce-process-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
.commerce-process-fields span,.commerce-note-field > span { display: block; margin-bottom: 5px; color: #7f8983; font-size: 8px; }
.commerce-process-fields input,.commerce-note-field textarea { width: 100%; border: 1px solid #dce4df; border-radius: 9px; background: #fff; color: #30483c; font-size: 9px; }
.commerce-process-fields input { height: 34px; padding: 0 9px; }
.commerce-note-field { display: block; margin-top: 12px; }
.commerce-note-field textarea { min-height: 60px; padding: 9px; resize: vertical; }
.commerce-detail-actions { display: flex; gap: 8px; margin-top: 10px; }
.commerce-detail-actions button { height: 34px; padding: 0 13px; border: 0; border-radius: 9px; background: #176b49; color: #fff; font-size: 9px; font-weight: 700; }
.commerce-detail-actions button.danger { border: 1px solid #e2c9c2; background: #fff; color: #984e3b; }
.commerce-trace { margin-top: 7px; }
.commerce-trace > div { display: grid; grid-template-columns: 24px 1fr; gap: 8px; padding: 7px 0; border-bottom: 1px solid #edf0ee; }
.commerce-trace b { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 7px; background: #e7f1ea; color: #176b49; font-size: 7px; }
.commerce-trace strong,.commerce-trace small { display: block; }
.commerce-trace strong { color: #40564b; font-size: 8px; }
.commerce-trace small { margin-top: 4px; color: #8b948e; font-size: 7px; }
.commerce-after-sale-heading { display: flex; padding: 20px 25px 13px; align-items: flex-end; justify-content: space-between; }
.commerce-after-sale-heading h3 { margin: 3px 0 0; color: #30483c; font-size: 14px; }
.commerce-after-sale-heading small { color: #89938d; font-size: 8px; }
.commerce-after-sale-body { display: grid; min-height: 380px; grid-template-columns: .9fr 1.1fr; border-top: 1px solid #edf0ee; }
.commerce-after-sale-list { max-height: 520px; overflow: auto; border-right: 1px solid #edf0ee; }
.commerce-after-row { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; gap: 10px; padding: 13px 16px; align-items: center; border-bottom: 1px solid #edf0ee; cursor: pointer; }
.commerce-after-row:hover,.commerce-after-row.active { background: #eef5f0; }
.commerce-after-row.active { box-shadow: inset 3px 0 #176b49; }
.commerce-after-avatar { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 11px; background: #f1e5c6; color: #8d6312; font-size: 9px; font-weight: 700; }
.commerce-after-row strong,.commerce-after-row span,.commerce-after-row small { display: block; }
.commerce-after-row strong { color: #30483c; font-size: 9px; }
.commerce-after-row span { margin-top: 4px; color: #66756d; font-size: 8px; }
.commerce-after-row small { margin-top: 4px; color: #909893; font-size: 7px; }
.commerce-after-detail-head { display: flex; align-items: flex-start; justify-content: space-between; }
.commerce-after-detail-head strong,.commerce-after-detail-head span { display: block; }
.commerce-after-detail-head strong { color: #30483c; font-size: 13px; }
.commerce-after-detail-head span { margin-top: 5px; color: #7f8983; font-size: 9px; }
.commerce-boundary-note { margin: 18px 25px 22px; padding: 11px; border: 1px dashed #d8cba9; border-radius: 11px; color: #756746; font-size: 9px; line-height: 1.6; text-align: center; }

.expert-admin-center { margin-top: 16px; overflow: hidden; }
.expert-admin-heading { display: flex; padding: 23px 25px; align-items: center; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.expert-admin-heading > div:first-child > p:last-child { margin: 6px 0 0; color: #849089; font-size: 10px; }
.expert-admin-actions { display: flex; gap: 8px; }
.expert-admin-actions button { width: auto; min-width: 112px; padding: 0 14px; }
.expert-admin-actions button:disabled { cursor: not-allowed; opacity: .45; }
.expert-summary-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; padding: 15px 25px; background: #f8faf8; border-bottom: 1px solid #edf0ee; }
.expert-summary-grid div { padding: 12px 14px; border: 1px solid #e6ebe8; border-radius: 12px; background: #fff; }
.expert-summary-grid span,.expert-summary-grid strong { display: block; }
.expert-summary-grid span { color: #849089; font-size: 8px; }
.expert-summary-grid strong { margin-top: 5px; color: #176b49; font-family: serif; font-size: 20px; }
.expert-admin-body { display: grid; min-height: 470px; grid-template-columns: 1fr 1fr; }
.expert-resource-panel { border-right: 1px solid #edf0ee; }
.expert-admin-list,.schedule-admin-list { max-height: 620px; overflow: auto; }
.expert-admin-row { display: grid; grid-template-columns: 44px minmax(0,1fr) auto; gap: 11px; padding: 15px 16px; align-items: center; border-bottom: 1px solid #edf0ee; }
.expert-admin-row.draft { background: #fffdf8; }
.expert-admin-row.suspended { background: #faf8f7; opacity: .82; }
.expert-admin-avatar { display: grid; width: 43px; height: 43px; place-items: center; border-radius: 13px; background: #176b49; color: #fff; font-family: serif; font-size: 15px; font-weight: 700; }
.expert-admin-row.draft .expert-admin-avatar { background: #a67820; }
.expert-admin-row.suspended .expert-admin-avatar { background: #8b938e; }
.expert-admin-copy { min-width: 0; }
.expert-admin-copy strong,.expert-admin-copy small,.expert-admin-copy em { display: block; }
.expert-admin-copy strong { color: #30483c; font-size: 11px; }
.expert-admin-copy strong i { margin-left: 5px; padding: 3px 6px; border-radius: 999px; background: #eef4f0; color: #567065; font-size: 7px; font-style: normal; font-weight: 500; }
.expert-admin-copy small { margin-top: 4px; color: #7d8982; font-size: 8px; line-height: 1.4; }
.expert-admin-copy em { margin-top: 5px; color: #9a701d; font-size: 8px; font-style: normal; }
.expert-admin-side,.schedule-admin-side { display: flex; gap: 7px; align-items: flex-end; flex-direction: column; }
.expert-admin-status,.schedule-admin-status { padding: 5px 7px; border-radius: 999px; background: #e4f0e8; color: #176b49; font-size: 7px; font-weight: 700; }
.expert-admin-status.draft,.schedule-admin-status.draft { background: #f3ead2; color: #8d6414; }
.expert-admin-status.suspended,.schedule-admin-status.closed { background: #eceeec; color: #747d78; }
.expert-admin-side button,.schedule-admin-side button { height: 27px; padding: 0 9px; border: 1px solid #d1ddd5; border-radius: 8px; background: #fff; color: #176b49; font-size: 8px; }
.schedule-admin-row { display: grid; grid-template-columns: 48px minmax(0,1fr) auto; gap: 11px; padding: 15px 16px; align-items: center; border-bottom: 1px solid #edf0ee; }
.schedule-admin-row.draft { background: #fffdf8; }
.schedule-admin-row.closed { opacity: .72; }
.schedule-admin-date { display: grid; width: 47px; min-height: 47px; place-items: center; align-content: center; border-radius: 13px; background: #e8f2eb; }
.schedule-admin-date strong { color: #176b49; font-size: 11px; }
.schedule-admin-date small { margin-top: 3px; color: #819087; font-size: 7px; }
.schedule-admin-copy strong,.schedule-admin-copy span,.schedule-admin-copy small { display: block; }
.schedule-admin-copy strong { color: #30483c; font-size: 11px; }
.schedule-admin-copy span { margin-top: 5px; color: #64746b; font-size: 9px; }
.schedule-admin-copy small { margin-top: 5px; color: #8b948e; font-size: 8px; }
.expert-boundary-note { margin: 0 25px 22px; padding: 11px; border: 1px dashed #d8cba9; border-radius: 11px; color: #756746; font-size: 9px; line-height: 1.6; text-align: center; }
.expert-modal-card { width: min(650px,94vw); }
.schedule-modal-card { width: min(610px,94vw); }
.expert-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 13px; }
.expert-form-row .field { margin-top: 0; }
.settings-heading { display: flex; padding: 23px 25px; align-items: center; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.settings-heading > div > p:last-child { margin: 6px 0 0; color: #849089; font-size: 10px; }
.current-access-badge { padding: 8px 11px; border-radius: 999px; background: #e6f1e9; color: #176b49; font-size: 10px; font-weight: 700; }
.current-data-scope { display: grid; grid-template-columns: auto 1fr auto; gap: 10px; margin: 16px 24px 0; padding: 12px 14px; align-items: center; border: 1px solid #dce8e1; border-radius: 12px; background: #eef6f1; }
.current-data-scope b { color: #176b49; font-size: 10px; }
.current-data-scope span { color: #30483c; font-size: 10px; font-weight: 700; }
.current-data-scope small { color: #708078; font-size: 8px; }
.current-account-security { display: grid; grid-template-columns: 38px 1fr auto; gap: 12px; margin: 10px 24px 0; padding: 13px 14px; align-items: center; border: 1px solid #e7dfc9; border-radius: 12px; background: #fbf5e5; }
.security-lock { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 10px; background: #e8cf8c; color: #6f5717; font-size: 11px; font-weight: 700; }
.current-account-security strong { display: block; color: #3f4f47; font-size: 11px; }
.current-account-security p { margin: 4px 0 0; color: #7f755d; font-size: 9px; }
.current-account-security p.attention { color: #a44f38; font-weight: 700; }
.role-overview { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; padding: 20px 24px; background: #fafbf9; border-bottom: 1px solid #edf0ee; }
.role-card { padding: 15px; border: 1px solid #e3e9e5; border-radius: 13px; background: #fff; }
.role-card.current { border-color: #6da388; box-shadow: 0 0 0 3px rgba(23,107,73,.06); }
.role-card-head { display: flex; align-items: center; justify-content: space-between; }
.role-card-head strong { color: #30483c; font-size: 12px; }
.role-card-head span { padding: 4px 7px; border-radius: 999px; background: #edf2ef; color: #748078; font-size: 8px; }
.role-card.current .role-card-head span { background: #dff0e5; color: #176b49; }
.role-card p { margin: 8px 0 0; color: #849089; font-size: 9px; line-height: 1.6; }
.staff-access-locked { display: flex; gap: 14px; margin: 22px 24px; padding: 18px; align-items: center; border-radius: 14px; background: #f4ead2; }
.staff-access-locked > span { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 12px; background: #e8cf8c; color: #745914; font-weight: 700; }
.staff-access-locked strong { color: #564b31; font-size: 12px; }
.staff-access-locked p { margin: 5px 0 0; color: #796e52; font-size: 9px; line-height: 1.6; }
.staff-admin-area { padding: 22px 24px 25px; }
.staff-management-heading, .platform-audit-heading { display: flex; align-items: center; justify-content: space-between; }
.staff-management-heading h3, .platform-audit-heading h3 { margin: 0; color: #30483c; font-size: 14px; }
.staff-management-heading p { margin: 5px 0 0; color: #89938d; font-size: 9px; }
.staff-user-list { display: grid; gap: 8px; margin-top: 14px; }
.staff-user-row { display: grid; grid-template-columns: 42px minmax(130px,1fr) 150px minmax(185px,1fr) 65px 142px; gap: 10px; padding: 12px; align-items: center; border: 1px solid #e6ebe8; border-radius: 12px; background: #fafbf9; }
.staff-user-avatar { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; background: #176b49; color: #fff; font-weight: 700; }
.staff-user-main strong, .staff-user-main small { display: block; }
.staff-user-main strong { color: #344d40; font-size: 11px; }
.staff-user-main small { margin-top: 4px; color: #8a948e; font-size: 9px; }
.staff-role-select,.staff-scope-select { min-width: 0; height: 34px; padding: 0 9px; border: 1px solid #dce4df; border-radius: 9px; background: #fff; color: #3d5448; font-size: 9px; }
.staff-scope-select:disabled { background: #edf2ef; color: #6e7d74; }
.staff-status { color: #176b49; font-size: 9px; font-weight: 700; text-align: center; }
.staff-status.inactive { color: #9a5745; }
.staff-status.locked { color: #a13d32; }
.staff-status.pending { color: #9b741d; }
.staff-row-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.staff-action-button { height: 32px; border: 1px solid #ccd9d1; border-radius: 9px; background: #fff; color: #176b49; font-size: 9px; }
.staff-action-button.danger { border-color: #e1c9c2; color: #9b4e3a; }
.staff-action-button:disabled { cursor: not-allowed; opacity: .45; }
.platform-audit-heading { margin-top: 22px; padding-top: 19px; border-top: 1px solid #edf0ee; }
.platform-audit-heading span { color: #8a938e; font-size: 9px; }
.platform-audit-list { display: grid; gap: 7px; margin-top: 12px; }
.platform-audit-row { display: grid; grid-template-columns: 28px 1fr auto; gap: 9px; padding: 9px 0; align-items: center; border-bottom: 1px solid #eef1ef; }
.platform-audit-row b { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 8px; background: #e8f1eb; color: #176b49; font-size: 9px; }
.platform-audit-row strong, .platform-audit-row small { display: block; }
.platform-audit-row strong { color: #3d5448; font-size: 10px; }
.platform-audit-row small { margin-top: 3px; color: #8b948e; font-size: 8px; }
.platform-audit-row time { color: #959d98; font-size: 8px; }
.staff-modal-card { width: min(500px,92vw); }
.field.scope-disabled { opacity: .62; }
.boundary-panel { display: flex; margin-top: 16px; padding: 22px 25px; align-items: center; justify-content: space-between; border-radius: 19px; background: linear-gradient(145deg, #173f2d, #245e43); color: #fff; }
.boundary-panel .panel-kicker { color: #e4c66e; }
.boundary-panel h2 { color: #fff; font-family: serif; font-size: 21px; }
.boundary-panel > p { max-width: 620px; margin: 0; color: rgba(255,255,255,.65); font-size: 10px; line-height: 1.75; }
.toast { position: fixed; right: 28px; bottom: 28px; z-index: 50; padding: 12px 16px; border-radius: 11px; background: #173f2d; color: #fff; font-size: 11px; opacity: 0; pointer-events: none; transform: translateY(12px); transition: .2s ease; box-shadow: 0 12px 35px rgba(18,56,38,.25); }
.toast.show { opacity: 1; transform: translateY(0); }
.toast.error { background: #9c4935; }
.modal { position: fixed; inset: 0; z-index: 70; display: grid; padding: 35px; place-items: center; background: rgba(14,42,28,.58); backdrop-filter: blur(5px); }
.modal-card { width: min(610px, 92vw); max-height: 92vh; overflow: auto; padding: 29px 31px; border-radius: 22px; background: #fbfcfa; box-shadow: 0 28px 80px rgba(4,30,17,.3); }
.modal-heading { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 20px; }
.icon-button { width: 34px; height: 34px; border: 0; border-radius: 10px; background: #edf1ee; color: #66756d; font-size: 21px; }
.modal-card > .field { margin-top: 13px; }
.metric-modal-card { width: min(560px,92vw); }
.member-timeline-modal-card { width: min(760px,94vw); }
.admin-member-profile-modal-card { width: min(680px,94vw); }
.admin-profile-summary { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.admin-profile-summary div { padding: 14px; border-radius: 12px; background: #e8f2eb; text-align: center; }
.admin-profile-summary strong,.admin-profile-summary span { display: block; }
.admin-profile-summary strong { color: #176b49; font-size: 13px; }
.admin-profile-summary span { margin-top: 5px; color: #7e8a83; font-size: 8px; }
.admin-profile-details { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
.admin-profile-details div { padding: 11px; border: 1px solid #e5eae7; border-radius: 10px; background: #fff; }
.admin-profile-details span,.admin-profile-details strong { display: block; }
.admin-profile-details span { color: #8a948e; font-size: 8px; }
.admin-profile-details strong { margin-top: 5px; color: #40564b; font-size: 10px; }
.admin-profile-block { margin-top: 12px; padding: 12px; border-radius: 11px; background: #f6f7f5; }
.admin-profile-block > span { display: block; color: #66756d; font-size: 9px; font-weight: 700; }
.admin-profile-block > div { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.admin-profile-block i { padding: 6px 8px; border-radius: 999px; background: #e4f0e8; color: #176b49; font-size: 8px; font-style: normal; }
.admin-profile-block em { color: #939b96; font-size: 9px; font-style: normal; }
.admin-profile-trace-title { margin-top: 15px; color: #30483c; font-size: 11px; font-weight: 700; }
.admin-profile-trace { display: grid; max-height: 190px; margin-top: 8px; overflow: auto; }
.admin-profile-trace > div { display: flex; gap: 8px; padding: 8px 0; align-items: flex-start; border-bottom: 1px solid #edf0ee; }
.admin-profile-trace b { display: grid; width: 25px; min-width: 25px; height: 25px; place-items: center; border-radius: 8px; background: #e7f1ea; color: #176b49; font-size: 8px; }
.admin-profile-trace span { color: #40564b; font-size: 9px; font-weight: 700; }
.admin-profile-trace small { display: block; margin-top: 4px; color: #8b948e; font-size: 8px; font-weight: 400; }
.member-timeline-meta { margin: 6px 0 0; color: #849089; font-size: 10px; }
.member-timeline-counts { display: flex; gap: 7px; margin-bottom: 15px; }
.member-timeline-counts span { padding: 7px 10px; border-radius: 999px; background: #edf3ef; color: #748078; font-size: 9px; }
.member-timeline-counts strong { margin-left: 4px; color: #176b49; }
.member-timeline-list { display: grid; max-height: 480px; overflow: auto; }
.member-timeline-row { position: relative; display: grid; grid-template-columns: 38px minmax(0,1fr) auto; gap: 11px; padding: 11px 0; align-items: start; border-bottom: 1px solid #edf0ee; }
.member-timeline-row::before { content: ""; position: absolute; top: 48px; bottom: -12px; left: 18px; width: 1px; background: #dce6e0; }
.member-timeline-row:last-child::before { display: none; }
.member-timeline-icon { display: grid; width: 37px; height: 37px; place-items: center; border-radius: 11px; background: #e5f0e8; color: #176b49; font-size: 10px; font-weight: 700; }
.member-timeline-icon.health { background: #e1f0e7; }
.member-timeline-icon.service { background: #f5ead1; color: #986812; }
.member-timeline-icon.activity { background: #e7eef4; color: #38677f; }
.member-timeline-icon.reminder { background: #f4ead2; color: #936510; }
.member-timeline-copy { min-width: 0; }
.member-timeline-copy > div { display: flex; gap: 7px; align-items: center; }
.member-timeline-copy b { color: #718078; font-size: 8px; }
.member-timeline-copy i { padding: 3px 6px; border-radius: 999px; background: #e7f1ea; color: #176b49; font-size: 8px; font-style: normal; }
.member-timeline-row.pending .member-timeline-copy i { background: #f4ead2; color: #936510; }
.member-timeline-copy strong, .member-timeline-copy small { display: block; }
.member-timeline-copy strong { margin-top: 5px; color: #30483c; font-size: 11px; }
.member-timeline-copy small { margin-top: 5px; color: #849089; font-size: 9px; line-height: 1.5; }
.member-timeline-row time { padding-top: 4px; color: #919a95; font-size: 8px; white-space: nowrap; }
.member-timeline-empty { padding: 60px 20px; color: #89938d; font-size: 10px; text-align: center; }
.member-timeline-empty.error { color: #9b4e3a; }
.outline-modal-button { width: 100%; height: 40px; margin-top: 14px; border: 1px solid #cedbd3; border-radius: 10px; background: #fff; color: #176b49; font-size: 10px; font-weight: 700; }
.metric-value-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 13px; }
.record-action-preview { padding: 14px; border-radius: 12px; background: #edf4ef; }
.record-action-preview strong, .record-action-preview span { display: block; }
.record-action-preview strong { color: #29483a; font-size: 13px; }
.record-action-preview span { margin-top: 5px; color: #687970; font-size: 10px; }
.modal-card .field input, .modal-card .field textarea, .modal-card .field select { width: 100%; border: 1px solid #dce4df; border-radius: 10px; outline: none; background: #fff; color: #2d4538; font-size: 12px; }
.modal-card .field input, .modal-card .field select { height: 40px; padding: 0 11px; }
.modal-card .field textarea { min-height: 70px; padding: 10px 11px; resize: vertical; }
.modal-card .field input:focus, .modal-card .field textarea:focus, .modal-card .field select:focus { border-color: #438367; box-shadow: 0 0 0 3px rgba(23,107,73,.07); }
.activity-form-row { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; margin-top: 13px; }
.activity-form-row.two-columns { grid-template-columns: 1fr 1fr; }
.modal-note { margin: 15px 0 0; padding: 11px 12px; border-radius: 10px; background: #f5ecd4; color: #756136; font-size: 10px; line-height: 1.6; }
.modal-actions { display: grid; grid-template-columns: 1fr 1.5fr; gap: 10px; margin-top: 18px; }
.modal-actions button { height: 42px; border-radius: 11px; font-size: 11px; font-weight: 700; }
.secondary-action { border: 1px solid #ccd9d1; background: #fff; color: #176b49; }
.primary-action { border: 0; background: #176b49; color: #fff; }
.primary-action.danger-action { background: #984e3b; }
.primary-action:disabled { cursor: wait; opacity: .65; }

.notification-admin-center { margin-top: 16px; overflow: hidden; }
.notification-admin-heading { display: flex; padding: 25px 28px 20px; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.notification-admin-heading h2 { margin-top: 4px; color: #173f2d; font-family: serif; font-size: 24px; }
.notification-admin-heading p:last-child { margin-top: 6px; color: #7e8a83; font-size: 10px; }
.notification-summary-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; padding: 18px 28px; background: #f7f8f6; }
.notification-summary-grid div { padding: 15px; border: 1px solid #e7ece9; border-radius: 13px; background: #fff; }
.notification-summary-grid span,.notification-summary-grid strong { display: block; }
.notification-summary-grid span { color: #7f8a84; font-size: 9px; }
.notification-summary-grid strong { margin-top: 8px; color: #176b49; font-family: serif; font-size: 22px; }
.notification-filter-row { display: flex; padding: 15px 28px; align-items: flex-end; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.notification-filter-row label span { display: block; margin-bottom: 6px; color: #738078; font-size: 9px; }
.notification-filter-row select { width: 190px; height: 38px; padding: 0 10px; border: 1px solid #dce4df; border-radius: 10px; background: #fff; color: #30483c; font-size: 10px; }
.notification-filter-row p { margin: 0; color: #849089; font-size: 9px; }
.notification-list-heading { display: flex; padding: 18px 28px 10px; align-items: center; justify-content: space-between; }
.notification-list-heading span { color: #2f483b; font-size: 13px; font-weight: 700; }
.notification-list-heading small { color: #87928b; font-size: 9px; }
.notification-admin-list { display: grid; gap: 8px; padding: 0 28px 22px; }
.notification-admin-row { position: relative; display: grid; grid-template-columns: 40px minmax(0,1fr) 90px; gap: 12px; padding: 14px; align-items: start; border: 1px solid #e5eae7; border-radius: 13px; background: #fff; }
.notification-admin-row.unread { border-color: #b9d6c6; background: #f1f7f3; }
.notification-admin-row.read { opacity: .78; }
.notification-admin-icon { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 12px; background: #e4f0e8; color: #176b49; font-size: 11px; font-weight: 700; }
.notification-admin-copy { min-width: 0; }
.notification-admin-copy > div { display: flex; gap: 8px; align-items: center; }
.notification-admin-copy strong { color: #2f483b; font-size: 11px; }
.notification-admin-copy > div span { padding: 4px 7px; border-radius: 999px; background: #f4ead2; color: #946612; font-size: 8px; }
.notification-admin-copy p { margin: 7px 0 0; color: #66756d; font-size: 9px; line-height: 1.55; }
.notification-admin-copy small { display: block; margin-top: 7px; color: #8a948e; font-size: 8px; }
.notification-admin-status { text-align: right; }
.notification-admin-status i,.notification-admin-status span { display: block; }
.notification-admin-status i { color: #176b49; font-size: 9px; font-style: normal; font-weight: 700; }
.notification-admin-row.read .notification-admin-status i { color: #89938d; }
.notification-admin-status span { max-width: 150px; margin-top: 7px; color: #8b948e; font-size: 8px; line-height: 1.4; }
.notification-boundary-note { padding: 14px 28px; border-top: 1px dashed #d6dfd9; background: #f8f4e8; color: #7c6a42; font-size: 9px; text-align: center; }
.notification-modal-card { width: min(610px,92vw); }

.analytics-center { margin-top: 16px; overflow: hidden; }
.analytics-heading { display: flex; padding: 27px 29px 21px; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.analytics-heading h2 { margin-top: 4px; color: #173f2d; font-family: serif; font-size: 25px; }
.analytics-heading p:last-child { margin-top: 6px; color: #7e8a83; font-size: 10px; }
.analytics-heading-side { display: flex; gap: 12px; align-items: center; }
.analytics-heading-side span { color: #89938d; font-size: 9px; }
.analytics-headline-grid { display: grid; grid-template-columns: repeat(6,1fr); gap: 10px; padding: 19px 29px; background: #f7f8f6; }
.analytics-headline-grid article { position: relative; overflow: hidden; padding: 15px; border: 1px solid #e5ebe7; border-radius: 14px; background: #fff; }
.analytics-headline-grid article::after { position: absolute; right: -15px; bottom: -21px; width: 55px; height: 55px; border-radius: 50%; background: rgba(23,107,73,.05); content: ""; }
.analytics-headline-grid article.attention { border-color: #ead9b7; background: #fffaf0; }
.analytics-headline-grid span,.analytics-headline-grid strong,.analytics-headline-grid small { display: block; }
.analytics-headline-grid span { color: #7e8a83; font-size: 8px; }
.analytics-headline-grid strong { margin-top: 8px; color: #176b49; font-family: serif; font-size: 22px; }
.analytics-headline-grid .attention strong { color: #a36b15; }
.analytics-headline-grid small { margin-top: 4px; color: #9aa19c; font-size: 7px; line-height: 1.4; }
.analytics-primary-grid,.analytics-secondary-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; padding: 0 29px; margin-top: 19px; }
.analytics-secondary-grid { grid-template-columns: 1.2fr .8fr; }
.analytics-block { padding: 19px 20px; border: 1px solid #e8ece9; border-radius: 16px; background: #fff; }
.analytics-block-heading { display: flex; align-items: flex-start; justify-content: space-between; }
.analytics-block-heading h3 { margin-top: 3px; color: #30483c; font-size: 14px; }
.analytics-block-heading > span { color: #8b948e; font-size: 8px; }
.analytics-funnel { display: grid; gap: 12px; margin-top: 18px; }
.analytics-funnel-row { display: grid; grid-template-columns: 92px minmax(0,1fr) 58px; gap: 10px; align-items: center; }
.analytics-funnel-row > span { display: flex; gap: 7px; align-items: center; color: #52645a; font-size: 9px; }
.analytics-funnel-row > span b { display: grid; width: 21px; height: 21px; place-items: center; border-radius: 7px; background: #e5f0e8; color: #176b49; font-size: 8px; }
.analytics-funnel-row > div { height: 10px; overflow: hidden; border-radius: 999px; background: #eef1ef; }
.analytics-funnel-row > div i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#176b49,#5a9678); }
.analytics-funnel-row > strong { color: #28483a; font-size: 11px; text-align: right; }
.analytics-funnel-row > strong small { display: block; margin-top: 2px; color: #8c9690; font-size: 7px; }
.analytics-trend { margin-top: 16px; }
.analytics-trend-bars { display: grid; height: 145px; grid-template-columns: repeat(7,1fr); gap: 10px; align-items: end; border-bottom: 1px solid #e7ece9; }
.analytics-trend-day { display: grid; height: 100%; align-items: end; justify-items: center; grid-template-rows: 1fr auto auto; }
.analytics-trend-stack { display: flex; width: 25px; min-height: 3px; overflow: hidden; flex-direction: column-reverse; align-self: end; border-radius: 6px 6px 2px 2px; background: #edf1ee; }
.analytics-trend-stack i { display: block; min-height: 0; }
.analytics-trend-stack .registration,.analytics-trend-legend .registration::before { background: #176b49; }
.analytics-trend-stack .record,.analytics-trend-legend .record::before { background: #71a88a; }
.analytics-trend-stack .request,.analytics-trend-legend .request::before { background: #d4a84b; }
.analytics-trend-stack .order,.analytics-trend-legend .order::before { background: #5e7f91; }
.analytics-trend-stack .message,.analytics-trend-legend .message::before { background: #a97b71; }
.analytics-trend-day strong { margin-top: 4px; color: #40564b; font-size: 8px; }
.analytics-trend-day > span { margin: 4px 0 7px; color: #8b948e; font-size: 7px; }
.analytics-trend-legend { display: flex; gap: 12px; margin-top: 10px; justify-content: center; }
.analytics-trend-legend span { display: flex; gap: 4px; align-items: center; color: #7d8982; font-size: 7px; }
.analytics-trend-legend span::before { width: 7px; height: 7px; border-radius: 2px; content: ""; }
.analytics-service-heading { display: flex; margin: 21px 29px 11px; align-items: flex-end; justify-content: space-between; }
.analytics-service-heading h3 { margin-top: 3px; color: #30483c; font-size: 14px; }
.analytics-service-heading > span { color: #8b948e; font-size: 8px; }
.analytics-service-grid { display: grid; grid-template-columns: repeat(6,1fr); gap: 9px; padding: 0 29px; }
.analytics-service-grid article { display: grid; grid-template-columns: 34px 1fr; gap: 9px; padding: 13px; align-items: center; border: 1px solid #e6ebe8; border-radius: 13px; background: #fff; }
.analytics-service-grid article > b { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 10px; background: #e4f0e8; color: #176b49; font-size: 9px; }
.analytics-service-grid span,.analytics-service-grid strong { display: block; }
.analytics-service-grid span { color: #78857e; font-size: 8px; }
.analytics-service-grid strong { margin-top: 3px; color: #30483c; font-size: 15px; }
.analytics-service-grid article > i { grid-column: 1 / -1; padding: 4px 6px; border-radius: 7px; background: #f5e8cc; color: #976615; font-size: 7px; font-style: normal; text-align: center; }
.analytics-service-grid article > i.clear { background: #e8f2eb; color: #176b49; }
.analytics-community-list,.analytics-insights { display: grid; gap: 8px; margin-top: 15px; }
.analytics-community-row { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(120px,.8fr) 38px; gap: 11px; padding: 10px 0; align-items: center; border-bottom: 1px solid #edf0ee; }
.analytics-community-row:last-child { border-bottom: 0; }
.analytics-community-row > div:first-child strong,.analytics-community-row > div:first-child span { display: block; }
.analytics-community-row > div:first-child strong { color: #344d40; font-size: 10px; }
.analytics-community-row > div:first-child span { margin-top: 4px; color: #88918c; font-size: 8px; }
.analytics-community-row > div:nth-child(2) > span { display: block; color: #758179; font-size: 7px; }
.analytics-community-row > div:nth-child(2) > b,.analytics-activity-rate > b { display: block; height: 7px; margin-top: 5px; overflow: hidden; border-radius: 999px; background: #edf1ef; }
.analytics-community-row > div:nth-child(2) > b i,.analytics-activity-rate > b i { display: block; height: 100%; border-radius: inherit; background: #4b8b69; }
.analytics-community-row > em { color: #176b49; font-size: 9px; font-style: normal; font-weight: 700; text-align: right; }
.analytics-insight { display: grid; grid-template-columns: 27px 1fr; gap: 10px; padding: 11px; border-radius: 11px; background: #f7f8f6; }
.analytics-insight > b { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 8px; background: #f4e5c5; color: #94630f; font-size: 8px; }
.analytics-insight.good > b { background: #e3efe7; color: #176b49; }
.analytics-insight.notice > b { background: #e2edf2; color: #3c687c; }
.analytics-insight strong,.analytics-insight span { display: block; }
.analytics-insight strong { color: #344d40; font-size: 9px; }
.analytics-insight span { margin-top: 5px; color: #7d8982; font-size: 8px; line-height: 1.5; }
.analytics-activity-block { margin: 19px 29px 0; }
.analytics-activity-list { display: grid; margin-top: 14px; }
.analytics-activity-row { display: grid; grid-template-columns: 55px minmax(0,1fr) 210px 145px; gap: 13px; padding: 11px 0; align-items: center; border-bottom: 1px solid #edf0ee; }
.analytics-activity-row:last-child { border-bottom: 0; }
.analytics-activity-date { display: grid; height: 38px; place-items: center; border-radius: 10px; background: #e5f0e8; color: #176b49; font-size: 9px; font-weight: 700; }
.analytics-activity-copy strong,.analytics-activity-copy span { display: block; }
.analytics-activity-copy strong { color: #344d40; font-size: 10px; }
.analytics-activity-copy span { margin-top: 4px; color: #89928d; font-size: 8px; }
.analytics-activity-stat { display: flex; gap: 6px; }
.analytics-activity-stat span { padding: 6px 8px; border-radius: 8px; background: #f0f3f1; color: #76827a; font-size: 8px; }
.analytics-activity-stat b { color: #176b49; }
.analytics-activity-rate > span { color: #6d7a72; font-size: 8px; }
.analytics-quality-note { display: grid; grid-template-columns: auto 1fr; gap: 8px 14px; margin-top: 18px; padding: 16px 29px; border-top: 1px dashed #d8e0db; background: #f8f4e8; }
.analytics-quality-note strong { color: #765b1f; font-size: 10px; }
.analytics-quality-note span { color: #6f6a58; font-size: 9px; }
.analytics-quality-note small { grid-column: 1 / -1; color: #99917e; font-size: 8px; }

.reports-center { margin-top: 16px; overflow: hidden; }
.reports-heading { display: flex; padding: 27px 29px 21px; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.reports-heading h2 { margin-top: 4px; color: #173f2d; font-family: serif; font-size: 25px; }
.reports-heading p:last-child { max-width: 680px; margin-top: 6px; color: #7e8a83; font-size: 10px; line-height: 1.6; }
.reports-security-badge { padding: 8px 11px; border-radius: 999px; background: #e5f1e9; color: #176b49; font-size: 9px; font-weight: 700; }
.reports-controls { display: grid; grid-template-columns: 1.15fr .7fr .7fr 1.4fr auto; gap: 10px; padding: 18px 29px; align-items: end; background: #f7f8f6; }
.reports-controls label span { display: block; margin-bottom: 6px; color: #738078; font-size: 9px; }
.reports-controls select,.reports-controls input { width: 100%; height: 39px; padding: 0 10px; border: 1px solid #d8e1dc; border-radius: 10px; outline: 0; background: #fff; color: #30483c; font-size: 10px; }
.reports-controls select:focus,.reports-controls input:focus { border-color: #5b9476; box-shadow: 0 0 0 3px rgba(23,107,73,.08); }
.reports-control-actions { display: flex; gap: 8px; }
.reports-control-actions button { white-space: nowrap; }
.report-permission-note { margin: 14px 29px 0; padding: 11px 13px; border-radius: 10px; background: #eaf3ed; color: #3c6e55; font-size: 9px; line-height: 1.5; }
.report-permission-note.sensitive { background: #f7ead0; color: #87601c; }
.report-summary-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; padding: 15px 29px 0; }
.report-summary-grid article { padding: 13px 14px; border: 1px solid #e5ebe7; border-radius: 12px; background: #fff; }
.report-summary-grid span,.report-summary-grid strong { display: block; }
.report-summary-grid span { color: #849089; font-size: 8px; }
.report-summary-grid strong { margin-top: 7px; color: #27493a; font-size: 11px; }
.report-preview-block,.report-history-block { margin: 16px 29px 0; padding: 18px 19px; border: 1px solid #e7ece9; border-radius: 15px; background: #fff; }
.report-block-heading { display: flex; align-items: flex-start; justify-content: space-between; }
.report-block-heading h3 { margin-top: 3px; color: #30483c; font-size: 14px; }
.report-block-heading > span { color: #8b948e; font-size: 8px; }
.report-preview-table { min-height: 100px; margin-top: 14px; }
.report-table-scroll { overflow-x: auto; border: 1px solid #e7ece9; border-radius: 11px; }
.report-preview-table table { width: 100%; min-width: 680px; border-collapse: collapse; font-size: 9px; }
.report-preview-table th { padding: 10px; background: #edf4ef; color: #315442; font-weight: 700; text-align: left; white-space: nowrap; }
.report-preview-table td { padding: 10px; border-top: 1px solid #edf0ee; color: #596960; line-height: 1.45; vertical-align: top; }
.report-preview-table tbody tr:nth-child(even) td { background: #fafbf9; }
.report-empty { display: grid; min-height: 85px; place-items: center; border: 1px dashed #d8e1dc; border-radius: 11px; color: #8a948e; font-size: 9px; text-align: center; }
.report-export-history { display: grid; gap: 8px; margin-top: 14px; }
.report-history-row { display: grid; grid-template-columns: 35px minmax(0,1fr) 140px; gap: 12px; padding: 12px; align-items: center; border: 1px solid #e7ece9; border-radius: 11px; background: #fafbf9; }
.report-history-row > b { display: grid; width: 35px; height: 35px; place-items: center; border-radius: 10px; background: #e3f0e7; color: #176b49; font-size: 9px; }
.report-history-row.sensitive > b { background: #f4e5c4; color: #94630f; }
.report-history-row > div strong,.report-history-row > div span,.report-history-row > div small,.report-history-row aside strong,.report-history-row aside span { display: block; }
.report-history-row > div strong { color: #344d40; font-size: 10px; }
.report-history-row > div span { margin-top: 4px; color: #7d8982; font-size: 8px; }
.report-history-row > div small { margin-top: 4px; color: #918a78; font-size: 8px; }
.report-history-row aside { text-align: right; }
.report-history-row aside strong { color: #446052; font-size: 9px; }
.report-history-row aside span { margin-top: 5px; color: #929b95; font-size: 8px; }
.report-boundary-note { display: grid; grid-template-columns: auto 1fr; gap: 12px; margin-top: 17px; padding: 15px 29px; border-top: 1px dashed #d8e0db; background: #f8f4e8; }
.report-boundary-note strong { color: #765b1f; font-size: 10px; }
.report-boundary-note span { color: #7b7461; font-size: 9px; line-height: 1.55; }

@media (max-width: 1180px) {
  .reports-controls { grid-template-columns: repeat(3,1fr); }
  .report-purpose-field { grid-column: span 2; }
  .reports-control-actions { justify-content: flex-end; }
}

@media (max-width: 760px) {
  .reports-heading { gap: 12px; padding: 21px 18px 17px; flex-direction: column; }
  .reports-controls { grid-template-columns: 1fr; padding: 16px 18px; }
  .report-purpose-field { grid-column: auto; }
  .reports-control-actions { justify-content: stretch; }
  .reports-control-actions button { flex: 1; }
  .report-permission-note { margin: 12px 18px 0; }
  .report-summary-grid { grid-template-columns: 1fr 1fr; padding: 14px 18px 0; }
  .report-preview-block,.report-history-block { margin: 14px 18px 0; }
  .report-history-row { grid-template-columns: 35px 1fr; }
  .report-history-row aside { grid-column: 2; text-align: left; }
  .report-boundary-note { padding: 14px 18px; }
}

.master-data-center { margin-top: 16px; overflow: hidden; }
.master-data-heading { display: flex; gap: 18px; padding: 27px 29px 21px; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.master-data-heading h2 { margin-top: 4px; color: #173f2d; font-family: serif; font-size: 25px; }
.master-data-heading p:last-child { margin-top: 6px; color: #7e8a83; font-size: 10px; }
.master-data-actions { display: flex; gap: 8px; }
.master-data-actions button { white-space: nowrap; }
.master-data-summary-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 11px; padding: 18px 29px; background: #f7f8f6; }
.master-data-summary-grid article { position: relative; overflow: hidden; padding: 15px 17px; border: 1px solid #e5ebe7; border-radius: 14px; background: #fff; }
.master-data-summary-grid article::after { position: absolute; right: -16px; bottom: -21px; width: 60px; height: 60px; border-radius: 50%; background: rgba(23,107,73,.05); content: ""; }
.master-data-summary-grid span,.master-data-summary-grid strong,.master-data-summary-grid small { display: block; }
.master-data-summary-grid span { color: #7e8a83; font-size: 8px; }
.master-data-summary-grid strong { margin-top: 7px; color: #176b49; font-family: serif; font-size: 23px; }
.master-data-summary-grid small { margin-top: 4px; color: #919a94; font-size: 8px; }
.master-data-permission-note { margin: 14px 29px 0; padding: 11px 13px; border-radius: 10px; background: #eaf3ed; color: #3c6e55; font-size: 9px; }
.master-data-primary-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 13px; padding: 16px 29px 0; }
.master-resource-panel { padding: 18px 19px; border: 1px solid #e7ece9; border-radius: 15px; background: #fff; }
.master-service-point-panel { margin: 16px 29px 0; }
.master-resource-heading { display: flex; align-items: flex-start; justify-content: space-between; }
.master-resource-heading h3 { margin-top: 3px; color: #30483c; font-size: 14px; }
.master-resource-heading > span { color: #8b948e; font-size: 8px; }
.organization-admin-list,.community-admin-list,.service-point-admin-list { display: grid; gap: 8px; margin-top: 14px; }
.master-organization-row,.master-community-row,.master-service-point-row { display: grid; gap: 11px; padding: 12px; align-items: center; border: 1px solid #e6ebe8; border-radius: 12px; background: #fafbf9; }
.master-organization-row { grid-template-columns: 36px minmax(0,1fr) 70px; }
.master-community-row { grid-template-columns: minmax(0,1fr) auto 70px; }
.master-service-point-row { grid-template-columns: 36px minmax(0,1fr) 65px 70px; }
.master-organization-row.suspended,.master-community-row.suspended,.master-service-point-row.suspended { opacity: .62; background: #f4f4f2; }
.master-icon { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 10px; background: #e3f0e7; color: #176b49; font-size: 10px; font-weight: 700; }
.master-organization-row strong,.master-organization-row span,.master-organization-row small,.master-community-row strong,.master-community-row span,.master-community-row small,.master-service-point-row strong,.master-service-point-row span,.master-service-point-row small { display: block; }
.master-organization-row strong,.master-community-row strong,.master-service-point-row strong { color: #344d40; font-size: 10px; }
.master-organization-row span,.master-community-row span,.master-service-point-row span { margin-top: 4px; color: #758179; font-size: 8px; }
.master-organization-row small,.master-community-row small,.master-service-point-row small { margin-top: 4px; color: #929a95; font-size: 7px; line-height: 1.45; }
.master-organization-row aside,.master-community-row aside,.master-service-point-row aside { text-align: right; }
.master-organization-row aside i,.master-community-row aside i,.master-service-point-row aside i { display: block; color: #176b49; font-size: 8px; font-style: normal; }
.master-organization-row.suspended aside i,.master-community-row.suspended aside i,.master-service-point-row.suspended aside i { color: #8c8173; }
.master-organization-row aside button,.master-community-row aside button,.master-service-point-row aside button { margin-top: 7px; padding: 5px 8px; border: 1px solid #cbd9d1; border-radius: 7px; background: #fff; color: #176b49; font-size: 8px; }
.master-organization-row aside button:disabled,.master-community-row aside button:disabled,.master-service-point-row aside button:disabled { cursor: not-allowed; opacity: .45; }
.master-usage { display: flex; gap: 6px; }
.master-usage b { min-width: 42px; padding: 6px; border-radius: 8px; background: #eef3f0; color: #176b49; font-size: 10px; text-align: center; }
.master-usage b small { margin-top: 2px; color: #87918b; font-size: 6px; font-weight: 400; }
.master-reference-count { text-align: center; }
.master-reference-count b,.master-reference-count span { display: block; }
.master-reference-count b { color: #176b49; font-size: 13px; }
.master-reference-count span { margin-top: 2px; color: #8a948e; font-size: 7px; }
.master-data-boundary-note { display: grid; grid-template-columns: auto 1fr; gap: 12px; margin-top: 17px; padding: 15px 29px; border-top: 1px dashed #d8e0db; background: #f8f4e8; }
.master-data-boundary-note strong { color: #765b1f; font-size: 10px; }
.master-data-boundary-note span { color: #7b7461; font-size: 9px; line-height: 1.55; }
.master-data-modal-card { width: min(660px,92vw); }

@media (max-width: 1120px) {
  .master-data-heading { flex-direction: column; }
  .master-data-primary-grid { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .master-data-heading { padding: 21px 18px 17px; }
  .master-data-actions { width: 100%; flex-wrap: wrap; }
  .master-data-summary-grid { grid-template-columns: 1fr; padding: 16px 18px; }
  .master-data-permission-note { margin: 12px 18px 0; }
  .master-data-primary-grid { padding: 14px 18px 0; }
  .master-service-point-panel { margin: 14px 18px 0; }
  .master-community-row { grid-template-columns: 1fr 70px; }
  .master-community-row .master-usage { grid-column: 1 / -1; grid-row: 2; }
  .master-service-point-row { grid-template-columns: 36px 1fr 70px; }
  .master-reference-count { display: none; }
  .master-data-boundary-note { padding: 14px 18px; }
}

.system-center { margin-top: 16px; overflow: hidden; }
.system-heading { display: flex; gap: 18px; padding: 27px 29px 21px; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.system-heading h2 { margin-top: 4px; color: #173f2d; font-family: serif; font-size: 25px; }
.system-heading p:last-child { max-width: 650px; margin-top: 6px; color: #7e8a83; font-size: 10px; line-height: 1.6; }
.system-heading-actions { display: flex; gap: 8px; align-items: center; }
.system-health-badge { padding: 8px 11px; border-radius: 999px; font-size: 9px; font-weight: 700; white-space: nowrap; }
.system-health-badge.checking { background: #eef1ef; color: #77827c; }
.system-health-badge.healthy { background: #e1f1e7; color: #176b49; }
.system-health-badge.attention { background: #f6e7c9; color: #8c5f11; }
.system-summary-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 11px; padding: 18px 29px; background: #f7f8f6; }
.system-summary-grid article { position: relative; overflow: hidden; padding: 15px 17px; border: 1px solid #e5ebe7; border-radius: 14px; background: #fff; }
.system-summary-grid article::after { position: absolute; right: -17px; bottom: -22px; width: 65px; height: 65px; border-radius: 50%; background: rgba(23,107,73,.05); content: ""; }
.system-summary-grid span,.system-summary-grid strong,.system-summary-grid small { display: block; }
.system-summary-grid span { color: #7e8a83; font-size: 8px; }
.system-summary-grid strong { margin-top: 7px; color: #176b49; font-family: serif; font-size: 20px; }
.system-summary-grid small { margin-top: 4px; color: #919a94; font-size: 8px; }
.system-primary-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 13px; padding: 16px 29px 0; }
.system-resource-panel,.system-backup-panel,.system-history-block { padding: 18px 19px; border: 1px solid #e7ece9; border-radius: 15px; background: #fff; }
.system-block-heading { display: flex; align-items: flex-start; justify-content: space-between; }
.system-block-heading h3 { margin-top: 3px; color: #30483c; font-size: 14px; }
.system-block-heading > span { color: #6d8b7c; font-size: 8px; }
.system-runtime-list { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 14px; }
.system-runtime-list div { padding: 11px; border-radius: 10px; background: #f4f7f5; }
.system-runtime-list dt { color: #86918b; font-size: 8px; }
.system-runtime-list dd { margin: 5px 0 0; color: #365244; font-size: 10px; font-weight: 700; }
.system-business-heading { display: flex; margin-top: 17px; align-items: center; justify-content: space-between; }
.system-business-heading h4 { color: #30483c; font-size: 11px; }
.system-business-heading span { color: #929b95; font-size: 7px; }
.system-business-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 6px; margin-top: 9px; }
.system-business-grid div { padding: 9px 5px; border: 1px solid #e9eeeb; border-radius: 9px; text-align: center; }
.system-business-grid strong,.system-business-grid span { display: block; }
.system-business-grid strong { color: #176b49; font-size: 13px; }
.system-business-grid span { margin-top: 3px; color: #89938d; font-size: 6px; line-height: 1.35; }
.system-integrity-list { display: grid; gap: 7px; margin-top: 14px; min-height: 120px; }
.system-check-row { display: grid; grid-template-columns: 29px minmax(0,1fr) 40px; gap: 10px; padding: 10px; align-items: center; border: 1px solid #e7ece9; border-radius: 10px; background: #fafbf9; }
.system-check-row > b { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 9px; background: #e2f0e7; color: #176b49; font-size: 10px; }
.system-check-row.attention > b { background: #f5e6c8; color: #916112; }
.system-check-row strong,.system-check-row span { display: block; }
.system-check-row strong { color: #344d40; font-size: 9px; }
.system-check-row span { margin-top: 4px; color: #849089; font-size: 7px; }
.system-check-row em { color: #176b49; font-size: 8px; font-style: normal; font-weight: 700; text-align: right; }
.system-check-row.attention em { color: #916112; }
.system-backup-panel { display: grid; grid-template-columns: minmax(250px,1fr) minmax(340px,1.2fr); gap: 18px 30px; margin: 16px 29px 0; align-items: end; background: #f8f4e8; border-color: #eadfbe; }
.system-backup-copy h3 { margin-top: 3px; color: #4d432c; font-size: 14px; }
.system-backup-copy p:last-child { margin-top: 6px; color: #7d735e; font-size: 8px; line-height: 1.6; }
.system-backup-controls { display: grid; grid-template-columns: 1fr auto; gap: 8px; align-items: end; }
.system-backup-controls label span { display: block; margin-bottom: 6px; color: #756a54; font-size: 8px; }
.system-backup-controls input { width: 100%; height: 39px; padding: 0 10px; border: 1px solid #dccfab; border-radius: 10px; outline: 0; background: #fff; color: #30483c; font-size: 9px; }
.system-backup-controls input:focus { border-color: #5b9476; box-shadow: 0 0 0 3px rgba(23,107,73,.08); }
.system-backup-controls button { height: 39px; padding: 0 17px; white-space: nowrap; }
.system-backup-locked { padding: 12px; border-radius: 10px; background: #fff; color: #86651f; font-size: 9px; }
.system-last-backup { grid-column: 1 / -1; padding-top: 12px; border-top: 1px dashed #d9cda9; color: #8c826d; font-size: 8px; }
.system-last-backup strong,.system-last-backup span { display: block; }
.system-last-backup strong { color: #62563c; }
.system-last-backup span { margin-top: 5px; overflow-wrap: anywhere; }
.system-history-block { margin: 16px 29px 0; }
.system-backup-history { display: grid; gap: 8px; min-height: 70px; margin-top: 14px; }
.system-backup-history-row { display: grid; grid-template-columns: 35px minmax(0,1fr) 140px; gap: 12px; padding: 12px; align-items: center; border: 1px solid #e7ece9; border-radius: 11px; background: #fafbf9; }
.system-backup-history-row > b { display: grid; width: 35px; height: 35px; place-items: center; border-radius: 10px; background: #f2e4c5; color: #8f6113; font-size: 9px; }
.system-backup-history-row strong,.system-backup-history-row span,.system-backup-history-row small { display: block; }
.system-backup-history-row > div strong { color: #344d40; font-size: 9px; overflow-wrap: anywhere; }
.system-backup-history-row > div span { margin-top: 4px; color: #7d8982; font-size: 7px; overflow-wrap: anywhere; }
.system-backup-history-row > div small { margin-top: 4px; color: #918a78; font-size: 8px; }
.system-backup-history-row aside { text-align: right; }
.system-backup-history-row aside strong { color: #446052; font-size: 8px; }
.system-backup-history-row aside span { margin-top: 5px; color: #929b95; font-size: 7px; }
.system-history-empty { display: grid; min-height: 70px; place-items: center; border: 1px dashed #d8e1dc; border-radius: 11px; color: #8a948e; font-size: 8px; text-align: center; }
.system-boundary-note { display: grid; grid-template-columns: auto 1fr; gap: 12px; margin-top: 17px; padding: 15px 29px; border-top: 1px dashed #d8e0db; background: #f4f6f3; }
.system-boundary-note strong { color: #725c2d; font-size: 10px; }
.system-boundary-note span { color: #747f78; font-size: 9px; line-height: 1.55; }

@media (max-width: 1120px) {
  .system-primary-grid { grid-template-columns: 1fr; }
  .system-backup-panel { grid-template-columns: 1fr; align-items: stretch; }
}

@media (max-width: 760px) {
  .system-heading { padding: 21px 18px 17px; flex-direction: column; }
  .system-heading-actions { width: 100%; justify-content: space-between; }
  .system-summary-grid { grid-template-columns: 1fr 1fr; padding: 16px 18px; }
  .system-primary-grid { padding: 14px 18px 0; }
  .system-business-grid { grid-template-columns: repeat(3,1fr); }
  .system-backup-panel,.system-history-block { margin: 14px 18px 0; }
  .system-backup-controls { grid-template-columns: 1fr; }
  .system-backup-history-row { grid-template-columns: 35px 1fr; }
  .system-backup-history-row aside { grid-column: 2; text-align: left; }
  .system-boundary-note { padding: 14px 18px; }
}

.launch-readiness-center { margin-top: 16px; overflow: hidden; }
.launch-heading { display: flex; gap: 18px; padding: 27px 29px 21px; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.launch-heading h2 { margin-top: 4px; color: #173f2d; font-family: serif; font-size: 25px; }
.launch-heading p:last-child { max-width: 700px; margin-top: 6px; color: #7e8a83; font-size: 10px; line-height: 1.6; }
.launch-heading-actions { display: flex; gap: 8px; align-items: center; }
.launch-stage-badge { padding: 8px 11px; border-radius: 999px; font-size: 9px; font-weight: 700; white-space: nowrap; }
.launch-stage-badge.checking { background: #eef1ef; color: #77827c; }
.launch-stage-badge.preparing { background: #f6e7c9; color: #8c5f11; }
.launch-stage-badge.ready { background: #e1f1e7; color: #176b49; }
.launch-summary-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 11px; padding: 18px 29px 13px; background: #f7f8f6; }
.launch-summary-grid article { position: relative; overflow: hidden; padding: 15px 17px; border: 1px solid #e5ebe7; border-radius: 14px; background: #fff; }
.launch-summary-grid article::after { position: absolute; right: -17px; bottom: -22px; width: 65px; height: 65px; border-radius: 50%; background: rgba(23,107,73,.05); content: ""; }
.launch-summary-grid span,.launch-summary-grid strong,.launch-summary-grid small { display: block; }
.launch-summary-grid span { color: #7e8a83; font-size: 8px; }
.launch-summary-grid strong { margin-top: 7px; color: #176b49; font-family: serif; font-size: 22px; }
.launch-summary-grid article:nth-child(3) strong { color: #9a6813; }
.launch-summary-grid small { margin-top: 4px; color: #919a94; font-size: 8px; }
.launch-progress-track { height: 8px; margin: 0 29px 18px; overflow: hidden; border-radius: 999px; background: #e4e9e6; }
.launch-progress-track i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#176b49,#5d987a); transition: width .25s ease; }
.launch-guidance-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; padding: 0 29px; }
.launch-guidance-grid > div { display: grid; grid-template-columns: 36px 1fr; gap: 10px; padding: 13px; align-items: center; border-radius: 12px; background: #edf4ef; }
.launch-guidance-grid > div:nth-child(2) { background: #f8f1de; }
.launch-guidance-grid b { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 11px; background: #176b49; color: #fff; font-size: 10px; }
.launch-guidance-grid > div:nth-child(2) b { background: #b07a1b; }
.launch-guidance-grid p { margin: 0; }
.launch-guidance-grid strong,.launch-guidance-grid span { display: block; }
.launch-guidance-grid strong { color: #315040; font-size: 9px; }
.launch-guidance-grid span { margin-top: 4px; color: #708078; font-size: 8px; line-height: 1.55; }
.launch-checks-block,.launch-manual-block { margin: 16px 29px 0; padding: 18px 19px; border: 1px solid #e7ece9; border-radius: 15px; background: #fff; }
.launch-block-heading { display: flex; align-items: flex-start; justify-content: space-between; }
.launch-block-heading h3 { margin-top: 3px; color: #30483c; font-size: 14px; }
.launch-block-heading > span { color: #77857d; font-size: 8px; }
.launch-automated-groups { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; min-height: 160px; margin-top: 14px; }
.launch-check-group { overflow: hidden; border: 1px solid #e7ece9; border-radius: 12px; background: #fafbf9; }
.launch-check-group-heading { display: flex; padding: 10px 12px; align-items: center; justify-content: space-between; background: #eef4f0; }
.launch-check-group-heading strong { color: #315040; font-size: 10px; }
.launch-check-group-heading span { color: #728078; font-size: 7px; }
.launch-check-list { display: grid; }
.launch-check-item { display: grid; grid-template-columns: 29px minmax(0,1fr) auto; gap: 10px; padding: 11px 12px; align-items: start; border-top: 1px solid #edf0ee; }
.launch-check-item:first-child { border-top: 0; }
.launch-check-item > b { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 9px; background: #f4e7ca; color: #926314; font-size: 8px; }
.launch-check-item.ready > b { background: #e2f0e7; color: #176b49; font-size: 10px; }
.launch-check-item div strong,.launch-check-item div span,.launch-check-item div small,.launch-check-item div em { display: block; }
.launch-check-item div strong { color: #354d41; font-size: 9px; }
.launch-check-item div span { margin-top: 4px; color: #6f7d75; font-size: 7px; overflow-wrap: anywhere; }
.launch-check-item div small { margin-top: 4px; color: #8a948e; font-size: 7px; line-height: 1.5; }
.launch-check-item div em { margin-top: 5px; color: #87631e; font-size: 7px; font-style: normal; line-height: 1.5; }
.launch-check-item.ready div em { color: #58806b; }
.launch-check-item > i { padding: 5px 7px; border-radius: 999px; background: #f7ead0; color: #8d6216; font-size: 7px; font-style: normal; white-space: nowrap; }
.launch-check-item.ready > i { background: #e5f1e9; color: #176b49; }
.launch-manual-permission { margin-top: 13px; padding: 10px 12px; border-radius: 10px; background: #f7f2e3; color: #7a6637; font-size: 8px; }
.launch-manual-list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; min-height: 120px; margin-top: 12px; }
.launch-manual-item { padding: 13px; border: 1px solid #e7ece9; border-radius: 12px; background: #fafbf9; }
.launch-manual-item.completed { border-color: #bcd8c8; background: #f3f8f4; }
.launch-manual-item.in_progress { border-color: #dfd0aa; background: #fffbf1; }
.launch-manual-heading { display: flex; gap: 10px; align-items: flex-start; justify-content: space-between; }
.launch-manual-heading div span,.launch-manual-heading div strong { display: block; }
.launch-manual-heading div span { color: #a37319; font-size: 7px; font-weight: 700; }
.launch-manual-heading div strong { margin-top: 4px; color: #344d40; font-size: 10px; }
.launch-manual-heading select { height: 29px; padding: 0 24px 0 8px; border: 1px solid #d6e0da; border-radius: 8px; background: #fff; color: #40564b; font-size: 8px; }
.launch-manual-item > p { min-height: 30px; margin: 9px 0 0; color: #7d8982; font-size: 8px; line-height: 1.55; }
.launch-manual-item > label { display: block; margin-top: 9px; }
.launch-manual-item > label span { display: block; margin-bottom: 5px; color: #718078; font-size: 7px; font-weight: 700; }
.launch-manual-item > label input { width: 100%; height: 34px; padding: 0 9px; border: 1px solid #dce4df; border-radius: 8px; outline: 0; background: #fff; color: #40564b; font-size: 8px; }
.launch-manual-item > label input:focus { border-color: #5b9476; box-shadow: 0 0 0 3px rgba(23,107,73,.08); }
.launch-manual-footer { display: flex; margin-top: 9px; align-items: center; justify-content: space-between; }
.launch-manual-footer small { color: #929b95; font-size: 7px; }
.launch-manual-footer button { padding: 6px 9px; border: 1px solid #b8cec2; border-radius: 8px; background: #fff; color: #176b49; font-size: 8px; font-weight: 700; }
.launch-manual-footer button:disabled,.launch-manual-heading select:disabled,.launch-manual-item input:disabled { cursor: not-allowed; opacity: .55; }
.launch-boundary-note { display: grid; grid-template-columns: auto 1fr; gap: 12px; margin-top: 17px; padding: 15px 29px; border-top: 1px dashed #d8e0db; background: #f4f6f3; }
.launch-boundary-note strong { color: #725c2d; font-size: 10px; }
.launch-boundary-note span { color: #747f78; font-size: 9px; line-height: 1.55; }

@media (max-width: 1100px) {
  .launch-automated-groups,.launch-manual-list { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .launch-heading { padding: 21px 18px 17px; flex-direction: column; }
  .launch-heading-actions { width: 100%; justify-content: space-between; }
  .launch-summary-grid { grid-template-columns: 1fr 1fr; padding: 16px 18px 12px; }
  .launch-progress-track { margin: 0 18px 16px; }
  .launch-guidance-grid { grid-template-columns: 1fr; padding: 0 18px; }
  .launch-checks-block,.launch-manual-block { margin: 14px 18px 0; }
  .launch-check-item { grid-template-columns: 29px 1fr; }
  .launch-check-item > i { grid-column: 2; justify-self: start; }
  .launch-boundary-note { padding: 14px 18px; }
}

.acquisition-sources-center { margin-top: 16px; overflow: hidden; }
.acquisition-heading { display: flex; gap: 18px; padding: 27px 29px 21px; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.acquisition-heading h2 { margin-top: 4px; color: #173f2d; font-family: serif; font-size: 25px; }
.acquisition-heading p:last-child { max-width: 720px; margin-top: 6px; color: #7e8a83; font-size: 10px; line-height: 1.6; }
.acquisition-summary-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 11px; padding: 18px 29px 13px; background: #f7f8f6; }
.acquisition-summary-grid article { position: relative; overflow: hidden; padding: 15px 17px; border: 1px solid #e5ebe7; border-radius: 14px; background: #fff; }
.acquisition-summary-grid article::after { position: absolute; right: -17px; bottom: -22px; width: 65px; height: 65px; border-radius: 50%; background: rgba(23,107,73,.05); content: ""; }
.acquisition-summary-grid span,.acquisition-summary-grid strong,.acquisition-summary-grid small { display: block; }
.acquisition-summary-grid span { color: #7e8a83; font-size: 8px; }
.acquisition-summary-grid strong { margin-top: 7px; color: #176b49; font-family: serif; font-size: 22px; }
.acquisition-summary-grid small { margin-top: 4px; color: #919a94; font-size: 8px; }
.acquisition-environment-note { margin: 0 29px 15px; padding: 11px 13px; border-radius: 11px; background: #f8f1de; color: #786536; font-size: 8px; line-height: 1.55; }
.acquisition-environment-note.ready { background: #e8f3ec; color: #236747; }
.acquisition-list-heading { display: flex; margin: 0 29px; padding: 2px 0 11px; align-items: flex-end; justify-content: space-between; }
.acquisition-list-heading h3 { margin-top: 3px; color: #30483c; font-size: 14px; }
.acquisition-list-heading > span { color: #87918b; font-size: 8px; }
.acquisition-source-list { display: grid; gap: 10px; min-height: 120px; padding: 0 29px; }
.acquisition-source-card { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(220px,.8fr) auto; gap: 14px; padding: 16px; align-items: center; border: 1px solid #e6ebe8; border-radius: 14px; background: #fff; }
.acquisition-source-card.disabled { opacity: .7; background: #f7f8f6; }
.acquisition-source-main { min-width: 0; }
.acquisition-source-title { display: flex; gap: 8px; align-items: center; }
.acquisition-source-title strong { color: #2e4a3b; font-size: 11px; }
.acquisition-source-title i { padding: 5px 7px; border-radius: 999px; background: #e3f1e8; color: #176b49; font-size: 7px; font-style: normal; white-space: nowrap; }
.acquisition-source-title i.off { background: #ecefed; color: #7b8580; }
.acquisition-source-main > span,.acquisition-source-main > small { display: block; }
.acquisition-source-main > span { margin-top: 6px; color: #708078; font-size: 8px; }
.acquisition-source-main > small { margin-top: 5px; color: #909993; font-size: 7px; }
.acquisition-scene-box { min-width: 0; padding: 10px 12px; border-radius: 10px; background: #f2f6f3; }
.acquisition-scene-box span,.acquisition-scene-box strong,.acquisition-scene-box small { display: block; }
.acquisition-scene-box span { color: #87928b; font-size: 7px; }
.acquisition-scene-box strong { margin-top: 5px; color: #176b49; font-size: 9px; overflow-wrap: anywhere; }
.acquisition-scene-box small { margin-top: 5px; color: #829087; font-size: 7px; overflow-wrap: anywhere; }
.acquisition-source-actions { display: flex; width: 150px; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.acquisition-source-actions button { min-height: 29px; padding: 0 9px; border: 1px solid #bfd2c7; border-radius: 8px; background: #fff; color: #176b49; font-size: 8px; font-weight: 700; }
.acquisition-source-actions button.primary { border-color: #176b49; background: #176b49; color: #fff; }
.acquisition-source-actions button.danger { border-color: #e2c9c2; color: #a14f3d; }
.acquisition-source-actions button:disabled { cursor: not-allowed; opacity: .5; }
.acquisition-boundary-note { display: grid; grid-template-columns: auto 1fr; gap: 12px; margin-top: 17px; padding: 15px 29px; border-top: 1px dashed #d8e0db; background: #f4f6f3; }
.acquisition-boundary-note strong { color: #725c2d; font-size: 10px; }
.acquisition-boundary-note span { color: #747f78; font-size: 9px; line-height: 1.55; }
.acquisition-source-modal-card { width: min(660px,calc(100vw - 36px)); }

@media (max-width: 980px) {
  .acquisition-source-card { grid-template-columns: 1fr 1fr; }
  .acquisition-source-actions { grid-column: 1 / -1; width: auto; justify-content: flex-start; }
}

@media (max-width: 760px) {
  .acquisition-heading { padding: 21px 18px 17px; flex-direction: column; }
  .acquisition-summary-grid { grid-template-columns: 1fr 1fr; padding: 16px 18px 12px; }
  .acquisition-environment-note,.acquisition-list-heading { margin-right: 18px; margin-left: 18px; }
  .acquisition-source-list { padding: 0 18px; }
  .acquisition-source-card { grid-template-columns: 1fr; }
  .acquisition-source-actions { grid-column: auto; }
  .acquisition-boundary-note { padding: 14px 18px; }
}

.follow-up-center { margin-top: 16px; overflow: hidden; }
.follow-up-heading { display: flex; gap: 18px; padding: 25px 28px 20px; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.follow-up-heading h2 { margin-top: 4px; color: #173f2d; font-family: serif; font-size: 24px; }
.follow-up-heading p:last-child { max-width: 720px; margin-top: 6px; color: #7e8a83; font-size: 10px; line-height: 1.6; }
.follow-up-filter-row { display: grid; grid-template-columns: 150px 150px minmax(220px,1fr); gap: 10px; padding: 15px 28px; border-top: 1px solid #edf0ee; border-bottom: 1px solid #edf0ee; background: #fafbf9; }
.follow-up-filter-row label span { display: block; margin: 0 0 5px 2px; color: #7f8983; font-size: 8px; }
.follow-up-filter-row select,.follow-up-filter-row input { width: 100%; height: 35px; padding: 0 10px; border: 1px solid #dce4df; border-radius: 9px; outline: 0; background: #fff; color: #3a5045; font-size: 9px; }
.follow-up-filter-row select:focus,.follow-up-filter-row input:focus { border-color: #438367; box-shadow: 0 0 0 3px rgba(23,107,73,.07); }
.follow-up-body { display: grid; min-height: 510px; grid-template-columns: minmax(390px,.82fr) minmax(470px,1.18fr); }
.follow-up-list-panel { border-right: 1px solid #edf0ee; }
.follow-up-list { display: grid; align-content: start; min-height: 420px; }
.follow-up-row { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; gap: 11px; padding: 14px 18px; align-items: start; border-top: 1px solid #edf0ee; background: #fff; cursor: pointer; }
.follow-up-row:first-child { border-top: 0; }
.follow-up-row:hover,.follow-up-row.selected { background: #eef6f1; }
.follow-up-row.selected { box-shadow: inset 3px 0 #176b49; }
.follow-up-row.closed { opacity: .72; }
.follow-up-row-icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; background: #e4f0e8; color: #176b49; font-size: 11px; font-weight: 700; }
.follow-up-row.overdue .follow-up-row-icon { background: #f7e9d0; color: #9a6710; }
.follow-up-row-main strong,.follow-up-row-main span,.follow-up-row-main small { display: block; }
.follow-up-row-main strong { color: #2f483b; font-size: 10px; }
.follow-up-row-main span { margin-top: 5px; color: #63736a; font-size: 8px; }
.follow-up-row-main small { margin-top: 5px; color: #909993; font-size: 7px; }
.follow-up-row-status { text-align: right; }
.follow-up-row-status i,.follow-up-row-status span { display: block; }
.follow-up-row-status i { padding: 5px 7px; border-radius: 999px; background: #e3f1e8; color: #176b49; font-size: 7px; font-style: normal; font-weight: 700; white-space: nowrap; }
.follow-up-row.overdue .follow-up-row-status i { background: #f7ead0; color: #936310; }
.follow-up-row-status span { margin-top: 7px; color: #8a948e; font-size: 7px; }
.follow-up-detail { padding: 22px; background: #fcfdfb; }
.follow-up-detail-card { max-width: 680px; }
.follow-up-detail-header { display: flex; gap: 15px; align-items: flex-start; justify-content: space-between; }
.follow-up-detail-title { display: flex; min-width: 0; gap: 11px; }
.follow-up-detail-title b { display: grid; width: 42px; height: 42px; flex: 0 0 42px; place-items: center; border-radius: 12px; background: #176b49; color: #fff; }
.follow-up-detail-title strong,.follow-up-detail-title span { display: block; }
.follow-up-detail-title strong { color: #294737; font-size: 14px; }
.follow-up-detail-title span { margin-top: 5px; color: #75837b; font-size: 8px; }
.follow-up-detail-header > i { padding: 6px 9px; border-radius: 999px; background: #e3f1e8; color: #176b49; font-size: 8px; font-style: normal; font-weight: 700; white-space: nowrap; }
.follow-up-purpose { margin: 15px 0 0; padding: 12px 14px; border-radius: 11px; background: #f7efd9; color: #6f5b31; font-size: 9px; line-height: 1.65; }
.follow-up-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 12px; }
.follow-up-detail-grid div { padding: 10px 11px; border: 1px solid #e5eae7; border-radius: 10px; background: #fff; }
.follow-up-detail-grid span,.follow-up-detail-grid strong { display: block; }
.follow-up-detail-grid span { color: #87918b; font-size: 7px; }
.follow-up-detail-grid strong { margin-top: 5px; color: #344d40; font-size: 9px; }
.follow-up-resident-reply { margin-top: 12px; padding: 12px 14px; border-radius: 11px; background: #e8f3ec; }
.follow-up-resident-reply span,.follow-up-resident-reply strong { display: block; }
.follow-up-resident-reply span { color: #6c7e73; font-size: 7px; }
.follow-up-resident-reply strong { margin-top: 5px; color: #176b49; font-size: 9px; line-height: 1.6; }
.follow-up-process { margin-top: 15px; padding-top: 15px; border-top: 1px solid #e4e9e6; }
.follow-up-process h3 { color: #30483c; font-size: 11px; }
.follow-up-process-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 10px; }
.follow-up-process label { display: block; }
.follow-up-process label span { display: block; margin-bottom: 5px; color: #77857d; font-size: 7px; }
.follow-up-process input,.follow-up-process select,.follow-up-process textarea { width: 100%; border: 1px solid #dce4df; border-radius: 9px; outline: 0; background: #fff; color: #3a5045; font-size: 9px; }
.follow-up-process input,.follow-up-process select { height: 35px; padding: 0 9px; }
.follow-up-process textarea { min-height: 62px; padding: 9px; resize: vertical; }
.follow-up-process .full { grid-column: 1 / -1; }
.follow-up-process-actions { display: flex; gap: 7px; margin-top: 10px; flex-wrap: wrap; }
.follow-up-process-actions button { min-height: 34px; padding: 0 12px; border: 1px solid #bfd2c7; border-radius: 9px; background: #fff; color: #176b49; font-size: 8px; font-weight: 700; }
.follow-up-process-actions button.primary { border-color: #176b49; background: #176b49; color: #fff; }
.follow-up-process-actions button.danger { border-color: #e2c9c2; color: #a14f3d; }
.follow-up-process-actions button:disabled { cursor: not-allowed; opacity: .5; }
.follow-up-trace { margin-top: 15px; }
.follow-up-trace h3 { color: #30483c; font-size: 10px; }
.follow-up-trace div { display: grid; grid-template-columns: 21px 1fr auto; gap: 8px; margin-top: 8px; align-items: start; }
.follow-up-trace b { display: grid; width: 21px; height: 21px; place-items: center; border-radius: 7px; background: #e4f0e8; color: #176b49; font-size: 7px; }
.follow-up-trace span { color: #4d6257; font-size: 8px; }
.follow-up-trace small { color: #929b95; font-size: 7px; }

@media (max-width: 980px) {
  .follow-up-body { grid-template-columns: 1fr; }
  .follow-up-list-panel { border-right: 0; border-bottom: 1px solid #edf0ee; }
}

@media (max-width: 760px) {
  .follow-up-heading { padding: 21px 18px 17px; flex-direction: column; }
  .follow-up-filter-row { grid-template-columns: 1fr; padding: 14px 18px; }
  .follow-up-detail { padding: 18px; }
  .follow-up-process-grid,.follow-up-detail-grid { grid-template-columns: 1fr; }
  .follow-up-process .full { grid-column: auto; }
}

.record-locked-box { margin-top: 13px; padding: 20px 16px; border: 1px solid #d9e4dd; border-radius: 14px; background: linear-gradient(145deg,#f5f8f6,#eaf2ed); text-align: center; }
.record-locked-box b { display: grid; width: 42px; height: 42px; margin: 0 auto; place-items: center; border-radius: 13px; background: #176b49; color: #fff; font-size: 17px; }
.record-locked-box strong,.record-locked-box span { display: block; }
.record-locked-box strong { margin-top: 10px; color: #294737; font-size: 13px; }
.record-locked-box span { max-width: 330px; margin: 6px auto 0; color: #77857d; font-size: 9px; line-height: 1.6; }
.record-locked-box button { height: 36px; margin-top: 13px; padding: 0 16px; border: 0; border-radius: 10px; background: #176b49; color: #fff; font-size: 9px; font-weight: 700; }
.admin-record-row.locked .admin-record-result { color: #8c6b29; font-size: 8px; }
.record-access-modal-card { width: min(620px,calc(100vw - 36px)); }
.record-access-preview { margin: 2px 0 13px; padding: 13px 14px; border-radius: 11px; background: #eaf3ed; }
.record-access-preview strong,.record-access-preview span { display: block; }
.record-access-preview strong { color: #284838; font-size: 11px; }
.record-access-preview span { margin-top: 5px; color: #75837b; font-size: 9px; }

.sensitive-access-center { margin-top: 16px; overflow: hidden; }
.sensitive-access-heading { display: flex; gap: 18px; padding: 25px 28px 20px; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid #edf0ee; }
.sensitive-access-heading h2 { margin-top: 4px; color: #173f2d; font-family: serif; font-size: 24px; }
.sensitive-access-heading p:last-child { max-width: 710px; margin-top: 6px; color: #7e8a83; font-size: 10px; line-height: 1.6; }
.sensitive-access-heading > span { padding: 7px 10px; border-radius: 999px; background: #e5f1e9; color: #176b49; font-size: 8px; font-weight: 700; white-space: nowrap; }
.sensitive-access-summary { display: grid; grid-template-columns: repeat(4,1fr); gap: 11px; padding: 18px 28px 13px; background: #f7f8f6; }
.sensitive-access-summary article { padding: 14px 16px; border: 1px solid #e5ebe7; border-radius: 13px; background: #fff; }
.sensitive-access-summary span,.sensitive-access-summary strong,.sensitive-access-summary small { display: block; }
.sensitive-access-summary span { color: #7e8a83; font-size: 8px; }
.sensitive-access-summary strong { margin-top: 6px; color: #176b49; font-family: serif; font-size: 21px; }
.sensitive-access-summary small { margin-top: 4px; color: #919a94; font-size: 7px; }
.sensitive-access-filters { display: grid; grid-template-columns: 170px 150px minmax(240px,1fr); gap: 10px; padding: 14px 28px; border-top: 1px solid #edf0ee; border-bottom: 1px solid #edf0ee; background: #fafbf9; }
.sensitive-access-filters label span { display: block; margin: 0 0 5px 2px; color: #7f8983; font-size: 8px; }
.sensitive-access-filters select,.sensitive-access-filters input { width: 100%; height: 35px; padding: 0 10px; border: 1px solid #dce4df; border-radius: 9px; outline: 0; background: #fff; color: #3a5045; font-size: 9px; }
.sensitive-access-body { display: grid; min-height: 500px; grid-template-columns: minmax(430px,.9fr) minmax(470px,1.1fr); }
.sensitive-access-list-panel { border-right: 1px solid #edf0ee; }
.sensitive-access-list { display: grid; align-content: start; max-height: 640px; overflow: auto; }
.sensitive-access-row { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; gap: 11px; padding: 14px 18px; align-items: start; border-top: 1px solid #edf0ee; cursor: pointer; }
.sensitive-access-row:first-child { border-top: 0; }
.sensitive-access-row:hover,.sensitive-access-row.selected { background: #eef6f1; }
.sensitive-access-row.selected { box-shadow: inset 3px 0 #176b49; }
.sensitive-access-row > b { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; background: #e4f0e8; color: #176b49; font-size: 10px; }
.sensitive-access-row.denied > b,.sensitive-access-row.flagged > b { background: #f5e6d2; color: #9a6710; }
.sensitive-access-row-copy strong,.sensitive-access-row-copy span,.sensitive-access-row-copy small { display: block; }
.sensitive-access-row-copy strong { color: #2f483b; font-size: 10px; }
.sensitive-access-row-copy span { margin-top: 5px; color: #63736a; font-size: 8px; }
.sensitive-access-row-copy small { margin-top: 5px; color: #909993; font-size: 7px; }
.sensitive-access-row-status { text-align: right; }
.sensitive-access-row-status i,.sensitive-access-row-status time { display: block; }
.sensitive-access-row-status i { padding: 5px 7px; border-radius: 999px; background: #e3f1e8; color: #176b49; font-size: 7px; font-style: normal; font-weight: 700; white-space: nowrap; }
.sensitive-access-row.denied .sensitive-access-row-status i { background: #f1e1dc; color: #984e3b; }
.sensitive-access-row-status time { margin-top: 7px; color: #929b95; font-size: 7px; }
.sensitive-access-detail { padding: 22px; background: #fcfdfb; }
.sensitive-access-detail-hero { position: relative; padding: 18px; border-radius: 15px; background: linear-gradient(145deg,#173f2d,#245e43); color: #fff; }
.sensitive-access-detail-hero span,.sensitive-access-detail-hero strong,.sensitive-access-detail-hero small { display: block; }
.sensitive-access-detail-hero span { color: #e5ca79; font-size: 8px; font-weight: 700; }
.sensitive-access-detail-hero strong { margin-top: 6px; font-family: serif; font-size: 18px; }
.sensitive-access-detail-hero small { margin-top: 6px; color: rgba(255,255,255,.68); font-size: 9px; }
.sensitive-access-detail-hero i { position: absolute; top: 16px; right: 16px; padding: 6px 8px; border-radius: 999px; background: rgba(255,255,255,.14); color: #fff; font-size: 8px; font-style: normal; }
.sensitive-access-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
.sensitive-access-detail-grid div { padding: 10px; border: 1px solid #e5eae7; border-radius: 10px; background: #fff; }
.sensitive-access-detail-grid span,.sensitive-access-detail-grid strong { display: block; }
.sensitive-access-detail-grid span { color: #8a948e; font-size: 8px; }
.sensitive-access-detail-grid strong { margin-top: 5px; color: #40564b; font-size: 9px; overflow-wrap: anywhere; }
.sensitive-access-purpose-box { margin-top: 12px; padding: 13px; border-radius: 11px; background: #f6eed8; }
.sensitive-access-purpose-box span,.sensitive-access-purpose-box strong,.sensitive-access-purpose-box small { display: block; }
.sensitive-access-purpose-box span { color: #8b6b27; font-size: 8px; font-weight: 700; }
.sensitive-access-purpose-box strong { margin-top: 6px; color: #594a2c; font-size: 11px; }
.sensitive-access-purpose-box small { margin-top: 5px; color: #817454; font-size: 8px; line-height: 1.55; }
.sensitive-access-risk { margin-top: 12px; padding: 11px 13px; border-radius: 10px; background: #e8f3ec; color: #276849; font-size: 9px; }
.sensitive-access-risk.flagged { background: #f5e4d9; color: #8c4d3e; }
.sensitive-access-boundary { display: grid; grid-template-columns: auto 1fr; gap: 12px; padding: 14px 28px; border-top: 1px dashed #d8e0db; background: #f4f6f3; }
.sensitive-access-boundary strong { color: #725c2d; font-size: 10px; }
.sensitive-access-boundary span { color: #747f78; font-size: 9px; line-height: 1.55; }

@media (max-width: 980px) {
  .sensitive-access-body { grid-template-columns: 1fr; }
  .sensitive-access-list-panel { border-right: 0; border-bottom: 1px solid #edf0ee; }
}

@media (max-width: 760px) {
  .sensitive-access-heading { padding: 21px 18px 17px; flex-direction: column; }
  .sensitive-access-summary { grid-template-columns: 1fr 1fr; padding: 16px 18px 12px; }
  .sensitive-access-filters { grid-template-columns: 1fr; padding: 14px 18px; }
  .sensitive-access-detail { padding: 18px; }
  .sensitive-access-detail-grid { grid-template-columns: 1fr; }
  .sensitive-access-boundary { padding: 14px 18px; }
}
