:root {
  --platform-teal-950: #063b32;
  --platform-teal-900: #074b3e;
  --platform-teal-800: #0d6652;
  --platform-teal-700: #177a60;
  --platform-mint-100: #def5e8;
  --platform-mint-50: #eff9f3;
  --platform-canvas: #f4f7f3;
  --platform-paper: #ffffff;
  --platform-ink: #18342a;
  --platform-muted: #71887e;
  --platform-line: #dbe8df;
  --platform-amber: #aa741e;
  --platform-amber-bg: #fff6e4;
  --platform-red: #a34e4e;
  --platform-red-bg: #fff0ef;
  --platform-shadow: 0 15px 35px rgb(31 70 53 / 7%);
}

* { box-sizing: border-box; }
html { min-width: 320px; background: var(--platform-canvas); }
body { min-width: 320px; margin: 0; color: var(--platform-ink); background: var(--platform-canvas); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; }
a { color: inherit; }
[hidden] { display: none !important; }

.platform-noise { position: fixed; inset: 0; z-index: -1; pointer-events: none; opacity: .38; background-image: radial-gradient(rgb(25 74 55 / 6%) .65px, transparent .65px); background-size: 13px 13px; }
.platform-eyebrow { margin: 0; color: #4d8870; font-size: 9px; font-weight: 830; letter-spacing: 1.15px; text-transform: uppercase; }
.platform-eyebrow--light { color: #a8d7c1; }
.platform-muted { color: var(--platform-muted); font-size: 12px; line-height: 1.58; }
.platform-button { display: inline-flex; min-height: 38px; align-items: center; justify-content: center; gap: 8px; border: 1px solid transparent; border-radius: 8px; padding: 0 13px; font-size: 10.5px; font-weight: 760; text-decoration: none; transition: transform .15s ease, box-shadow .15s ease, background .15s ease; }
.platform-button:hover:not(:disabled) { transform: translateY(-1px); }
.platform-button--primary { border-color: #167258; color: #fff; background: linear-gradient(135deg, #147758, #0f654d); box-shadow: 0 6px 16px rgb(18 114 83 / 18%); }
.platform-button--primary:hover:not(:disabled) { box-shadow: 0 9px 19px rgb(18 114 83 / 24%); }
.platform-button--secondary { border-color: #d3e4da; color: #40705d; background: #fff; }
.platform-button--quiet { min-height: 31px; border-color: #d4e6db; color: #287254; background: #f7fbf8; font-size: 9.5px; }
.platform-button:disabled { border-color: #e1e9e4; color: #9bab9f; background: #ecf1ed; box-shadow: none; }
.platform-icon-button { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid #d9e8df; border-radius: 8px; color: #467264; background: #fff; font-size: 17px; line-height: 1; transition: .15s; }
.platform-icon-button:hover { border-color: #adcfbc; color: #14694f; background: #f5fbf7; }
.platform-badge, .platform-readonly-chip, .platform-restricted-pill { display: inline-flex; align-items: center; border-radius: 16px; padding: 5px 9px; font-size: 9px; font-weight: 760; white-space: nowrap; }
.platform-badge { color: #687f74; background: #edf3ef; }
.platform-badge.is-ready { color: #197153; background: #e0f3e8; }
.platform-badge.is-warning { color: #9d661a; background: #fff0d6; }
.platform-readonly-chip { color: #52766a; background: #edf4f0; }
.platform-restricted-pill { gap: 6px; color: #477263; background: #edf5f0; }
.platform-restricted-pill i { width: 6px; height: 6px; border-radius: 50%; background: #2da377; }

/* Separate platform-login surface: credentials never persist in browser storage. */
.platform-login { display: grid; min-height: 100vh; grid-template-columns: minmax(360px, .98fr) minmax(410px, .82fr); }
.platform-login-aside { position: relative; display: flex; min-height: 100%; flex-direction: column; overflow: hidden; padding: clamp(34px, 5vw, 72px); color: #fff; background: radial-gradient(circle at 72% 17%, rgb(72 159 118 / 33%), transparent 30%), linear-gradient(145deg, #073f35, #064d40 59%, #0d725a); }
.platform-login-aside::after { position: absolute; right: -120px; bottom: -105px; width: 395px; height: 395px; border: 1px solid rgb(201 248 220 / 13%); border-radius: 50%; content: ""; box-shadow: 0 0 0 48px rgb(202 247 222 / 4%), 0 0 0 96px rgb(202 247 222 / 3%); }
.platform-brand { display: inline-flex; align-items: center; gap: 9px; width: max-content; color: #125b47; font-size: 19px; font-weight: 820; letter-spacing: -.75px; text-decoration: none; }
.platform-brand > span:last-child > span { color: #5aa783; }
.platform-brand--light { position: relative; z-index: 1; color: #fff; }
.platform-brand--light > span:last-child > span { color: #aee5c8; }
.platform-brand-mark { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 9px; color: #bdf0d2; background: #dff8eb; box-shadow: 0 6px 14px rgb(0 33 24 / 16%); }
.platform-brand-mark svg { width: 22px; height: 22px; }
.platform-login-copy { position: relative; z-index: 1; max-width: 520px; margin: auto 0 34px; padding-top: 72px; }
.platform-login-copy h1 { max-width: 530px; margin: 10px 0 14px; color: #fff; font-size: clamp(34px, 4.1vw, 57px); font-weight: 760; letter-spacing: -2.55px; line-height: 1.04; }
.platform-login-copy p:last-child { max-width: 455px; margin: 0; color: #d0e9dc; font-size: 14px; line-height: 1.68; }
.platform-login-points { position: relative; z-index: 1; display: grid; gap: 11px; margin: 0; padding: 0; color: #d6efe2; font-size: 12px; font-weight: 630; list-style: none; }
.platform-login-points span { display: inline-grid; width: 18px; height: 18px; place-items: center; margin-right: 7px; border-radius: 50%; color: #0b563f; background: #aee8c8; font-size: 11px; font-weight: 900; }
.platform-login-foot { position: relative; z-index: 1; margin: 42px 0 0; color: #a4cfbb; font-size: 10px; }
.platform-login-panel { display: grid; place-items: center; padding: 36px; background: #fbfdfb; }
.platform-login-card { width: min(100%, 395px); }
.platform-mobile-brand { display: none; margin-bottom: 37px; }
.platform-login-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.platform-login-card h2 { margin: 12px 0 6px; color: #18372c; font-size: 26px; letter-spacing: -1px; }
.platform-login-card > .platform-muted { margin: 0 0 25px; }
.platform-stack-form { display: grid; gap: 16px; }
.platform-stack-form label { display: grid; gap: 7px; color: #47675a; font-size: 10px; font-weight: 760; }
.platform-stack-form input, .platform-modal input, .platform-modal select, .platform-modal textarea, .platform-filter-label select, .platform-search input { width: 100%; border: 1px solid #d5e4db; border-radius: 8px; color: #254438; background: #fff; font-size: 12px; outline: none; transition: border-color .15s, box-shadow .15s; }
.platform-stack-form input { height: 42px; padding: 0 11px; }
.platform-stack-form input:focus, .platform-modal input:focus, .platform-modal select:focus, .platform-modal textarea:focus, .platform-filter-label select:focus, .platform-search input:focus { border-color: #77b596; box-shadow: 0 0 0 3px rgb(112 183 145 / 14%); }
.platform-input-action { position: relative; display: block; }
.platform-input-action input { padding-right: 55px; }
.platform-text-button { position: absolute; top: 50%; right: 9px; border: 0; color: #237457; background: transparent; font-size: 10px; font-weight: 760; transform: translateY(-50%); }
.platform-form-error { margin: -4px 0 0; border-left: 3px solid #c55b5b; border-radius: 0 6px 6px 0; padding: 8px 10px; color: #9b4747; background: #fff4f3; font-size: 10px; line-height: 1.45; }
.platform-button--wide { width: 100%; min-height: 43px; margin-top: 3px; justify-content: space-between; padding-inline: 15px; }
.platform-login-note { margin: 18px 0 0; color: #7e9389; font-size: 10px; line-height: 1.55; }
.platform-return-link { display: inline-block; margin-top: 18px; color: #43806a; font-size: 10px; font-weight: 700; text-decoration: none; }
.platform-return-link:hover { color: #17684d; text-decoration: underline; }

/* Fixed platform shell. */
.platform-shell { min-height: 100vh; background: var(--platform-canvas); }
.platform-sidebar { position: fixed; z-index: 30; top: 0; bottom: 0; left: 0; display: flex; width: 286px; flex-direction: column; overflow-y: auto; color: #d7efe2; background: linear-gradient(180deg, #07443a, #063a31); }
.platform-sidebar-top { display: flex; align-items: center; justify-content: space-between; padding: 28px 24px 20px; }
.platform-close-sidebar { display: none; width: 30px; height: 30px; border-color: rgb(207 249 224 / 14%); color: #c7ecd9; background: rgb(255 255 255 / 7%); }
.platform-nav-label { margin: 18px 25px 8px; color: #88b4a3; font-size: 8px; font-weight: 850; letter-spacing: 1.3px; }
.platform-nav { display: grid; gap: 4px; padding: 0 14px; }
.platform-nav-item { display: flex; width: 100%; min-height: 43px; align-items: center; gap: 11px; border: 1px solid transparent; border-radius: 9px; padding: 0 11px; color: #b7d5c7; background: transparent; font-size: 11.5px; font-weight: 650; text-align: left; transition: .16s; }
.platform-nav-item svg { width: 17px; height: 17px; flex: 0 0 17px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; color: #91c5ae; }
.platform-nav-item:hover { color: #fff; background: rgb(180 239 205 / 9%); }
.platform-nav-item.is-active { border-color: rgb(255 255 255 / 20%); color: #155a47; background: #dff4e9; box-shadow: 0 5px 18px rgb(0 26 18 / 16%); }
.platform-nav-item.is-active svg { color: #1e785c; }
.platform-sidebar-bottom { margin-top: auto; padding: 14px; border-top: 1px solid rgb(210 248 227 / 10%); }
.platform-version-card { display: flex; align-items: center; gap: 9px; border: 1px solid rgb(200 241 218 / 15%); border-radius: 10px; padding: 10px; background: rgb(0 25 19 / 18%); }
.platform-version-mark { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 7px; color: #0d5e47; background: #ccf2da; font-size: 9px; font-weight: 850; }
.platform-version-card > span:nth-child(2) { display: grid; gap: 2px; min-width: 0; flex: 1; }
.platform-version-card strong { color: #e9f8ef; font-size: 10px; }.platform-version-card small { color: #97c1af; font-size: 8px; }.platform-version-card b { border-radius: 5px; padding: 3px 4px; color: #bdf3d1; background: rgb(121 223 162 / 15%); font-size: 7px; letter-spacing: .35px; }
.platform-workspace-link { display: flex; align-items: center; gap: 7px; margin-top: 11px; padding: 5px 3px; color: #aed3c2; font-size: 10px; font-weight: 680; text-decoration: none; }.platform-workspace-link:hover { color: #fff; }
.platform-sidebar-scrim { display: none; }
.platform-workspace { min-width: 0; margin-left: 286px; }
.platform-topbar { position: sticky; z-index: 20; top: 0; display: flex; min-height: 75px; align-items: center; justify-content: space-between; gap: 20px; border-bottom: 1px solid #e2ece5; padding: 0 clamp(22px, 3vw, 42px); background: rgb(251 253 251 / 93%); backdrop-filter: blur(12px); }
.platform-topbar-left, .platform-topbar-actions { display: flex; min-width: 0; align-items: center; gap: 12px; }
.platform-menu-button { display: none; }
.platform-breadcrumb { margin: 0 0 3px; color: #8aa096; font-size: 8px; font-weight: 800; letter-spacing: .7px; }.platform-breadcrumb span { margin: 0 5px; color: #b4c2bb; }.platform-topbar-left strong { color: #315348; font-size: 11px; }
.platform-profile { display: inline-flex; align-items: center; gap: 5px; border: 0; padding: 0; color: #658277; background: transparent; }.platform-profile > span { display: grid; width: 31px; height: 31px; place-items: center; border-radius: 50%; color: #fff; background: linear-gradient(135deg, #3b9974, #196b53); font-size: 10px; font-weight: 800; }.platform-profile i { width: 0; height: 0; border-top: 4px solid #78938a; border-right: 4px solid transparent; border-left: 4px solid transparent; }
.platform-logout { border: 0; padding: 0; color: #638075; background: transparent; font-size: 10px; font-weight: 740; }.platform-logout:hover { color: #a54e4e; }
.platform-content { width: min(100%, 1650px); margin: 0 auto; padding: clamp(26px, 3.5vw, 49px); }
.platform-view { animation: platform-view-in .2s ease both; }
@keyframes platform-view-in { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.platform-page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 22px; }.platform-page-heading h1 { margin: 6px 0 6px; color: #173329; font-size: clamp(30px, 3vw, 43px); letter-spacing: -1.85px; line-height: 1.04; }.platform-page-heading p:not(.platform-eyebrow) { max-width: 730px; margin: 0; color: #71877d; font-size: 11.5px; line-height: 1.58; }
.platform-safety-banner { display: grid; grid-template-columns: auto 1fr; gap: 12px; margin: 0 0 14px; border: 1px solid #ebd7aa; border-radius: 11px; padding: 13px 15px; color: #86601f; background: linear-gradient(110deg, #fff8e9, #fffdf8); }.platform-safety-icon { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 7px; color: #a56f18; background: #ffecc4; font-size: 13px; font-weight: 900; }.platform-safety-banner strong { display: block; color: #79571d; font-size: 10px; }.platform-safety-banner p { max-width: 950px; margin: 4px 0 0; color: #92743f; font-size: 10px; line-height: 1.55; }
.platform-stat-grid { display: grid; gap: 12px; margin-bottom: 14px; }.platform-stat-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }.platform-stat-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.platform-stat-card { min-height: 106px; border: 1px solid #dfeae3; border-radius: 12px; padding: 16px; background: #fff; box-shadow: 0 8px 21px rgb(33 73 53 / 3%); }.platform-stat-card span { display: block; color: #778c82; font-size: 9px; font-weight: 730; }.platform-stat-card strong { display: block; margin-top: 10px; color: #1e4033; font-size: 25px; letter-spacing: -1px; }.platform-stat-card small { display: block; margin-top: 6px; color: #95a59e; font-size: 8.5px; }
.platform-panel, .platform-catalogue-card { border: 1px solid #dce9e1; border-radius: 13px; background: #fff; box-shadow: var(--platform-shadow); }.platform-table-panel { padding: 0 clamp(14px, 2vw, 23px) 8px; }
.platform-panel-toolbar, .platform-catalogue-toolbar { display: flex; align-items: center; gap: 10px; padding: 15px 0; }.platform-table-note { margin-left: auto; color: #81958b; font-size: 9px; }.platform-search { position: relative; width: min(100%, 370px); }.platform-search > span { position: absolute; z-index: 1; top: 50%; left: 10px; color: #7e9a8d; font-size: 18px; transform: translateY(-52%); }.platform-search input { height: 37px; padding: 0 10px 0 32px; }.platform-filter-label { display: grid; grid-template-columns: auto auto; align-items: center; gap: 7px; color: #70887d; font-size: 9px; font-weight: 720; white-space: nowrap; }.platform-filter-label select { min-width: 118px; height: 34px; padding: 0 25px 0 8px; font-size: 10px; }
.platform-table-scroll { width: 100%; overflow-x: auto; }.platform-data-table { width: 100%; border-collapse: collapse; min-width: 620px; }.platform-data-table th { border-bottom: 1px solid #e5eee8; padding: 10px; color: #82978d; font-size: 8px; font-weight: 820; letter-spacing: .68px; text-align: left; }.platform-data-table td { border-bottom: 1px solid #edf2ee; padding: 13px 10px; color: #587167; font-size: 10.5px; vertical-align: middle; }.platform-data-table tbody tr:last-child td { border-bottom: 0; }.platform-data-table tbody tr:hover td { background: #fbfdfb; }.platform-table-empty { padding: 31px !important; color: #889b92 !important; text-align: center; }

/* Catalogue two-pane review surface. */
.platform-catalogue-pagination { display: flex; align-items: center; justify-content: space-between; gap: 8px; border-top: 1px solid #e5eee8; padding: 10px 11px; color: #81958b; background: #fcfefc; font-size: 8.5px; }.platform-catalogue-pagination > span { min-width: 0; overflow: hidden; text-align: center; text-overflow: ellipsis; white-space: nowrap; }.platform-catalogue-pagination .platform-button { min-height: 30px; padding-inline: 8px; font-size: 8.5px; }.platform-catalogue-pagination .platform-button:disabled { border-color: #e3ebe6; color: #a5b3ab; background: #f5f8f6; }
.platform-catalogue-card { overflow: hidden; }.platform-catalogue-toolbar { flex-wrap: wrap; padding: 14px 17px; border-bottom: 1px solid #e4eee7; background: #fcfefc; }.platform-catalogue-toolbar .platform-search { flex: 1 1 340px; }.platform-inline-error { margin: 12px 17px 0; border-left: 3px solid #c35d5d; border-radius: 0 6px 6px 0; padding: 8px 10px; color: #9b4d4d; background: #fff4f3; font-size: 10px; line-height: 1.45; }
.platform-catalogue-layout { display: grid; min-height: 590px; grid-template-columns: minmax(285px, .7fr) minmax(0, 1.55fr); }.platform-catalogue-list-pane { border-right: 1px solid #e3ede7; background: #fbfdfb; }.platform-list-heading { display: flex; align-items: center; justify-content: space-between; padding: 15px 16px 11px; border-bottom: 1px solid #edf2ef; }.platform-list-heading strong { color: #3b5e50; font-size: 10px; }.platform-list-heading span { color: #899d93; font-size: 8.5px; }
.platform-catalogue-groups { display: grid; gap: 4px; max-height: 650px; overflow-y: auto; padding: 8px; }.platform-empty-list { display: grid; gap: 5px; margin: 7px; border: 1px dashed #d7e6dd; border-radius: 9px; padding: 19px 14px; color: #80948a; background: #fff; font-size: 9px; line-height: 1.5; }.platform-empty-list strong { color: #557569; font-size: 10px; }
.platform-group-button { display: grid; grid-template-columns: 1fr auto; gap: 8px; width: 100%; border: 1px solid transparent; border-radius: 9px; padding: 11px; color: #47685c; background: transparent; text-align: left; }.platform-group-button:hover { border-color: #dcebe2; background: #f5fbf7; }.platform-group-button.is-selected { border-color: #bfe0cd; background: #eaf7ef; box-shadow: inset 3px 0 0 #2d8c67; }.platform-group-button strong { display: block; overflow: hidden; max-width: 220px; color: #2c5142; font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }.platform-group-button small { display: block; margin-top: 4px; overflow: hidden; color: #82958c; font-size: 8.5px; text-overflow: ellipsis; white-space: nowrap; }.platform-group-status { align-self: start; border-radius: 10px; padding: 3px 6px; color: #6d8378; background: #eef4f0; font-size: 7.5px; font-weight: 800; text-transform: uppercase; }.platform-group-status--active { color: #197454; background: #dff4e8; }.platform-group-status--draft { color: #a66e1d; background: #fff0d2; }.platform-group-status--inactive, .platform-group-status--archived { color: #8d6666; background: #f5ebeb; }
.platform-catalogue-detail { min-width: 0; padding: clamp(18px, 2.6vw, 31px); background: #fff; }.platform-detail-empty { display: grid; min-height: 500px; place-content: center; justify-items: center; max-width: 340px; margin: auto; color: #82958c; text-align: center; }.platform-detail-empty-mark { display: grid; width: 44px; height: 44px; place-items: center; margin-bottom: 13px; border-radius: 14px; color: #2b8562; background: #e9f6ee; font-size: 23px; font-weight: 850; }.platform-detail-empty h2 { margin: 0; color: #34564a; font-size: 16px; }.platform-detail-empty p { margin: 7px 0 0; font-size: 10px; line-height: 1.55; }
.platform-detail-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; border-bottom: 1px solid #e7eee9; padding-bottom: 18px; }.platform-detail-top h2 { margin: 5px 0 4px; color: #1d3c30; font-size: clamp(20px, 2.1vw, 28px); letter-spacing: -1px; }.platform-detail-top p { margin: 0; color: #758a80; font-size: 10px; line-height: 1.55; }.platform-detail-actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }.platform-detail-actions .platform-button { min-height: 32px; padding-inline: 10px; font-size: 9px; }
.platform-status-line { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px; }.platform-status-chip { display: inline-flex; align-items: center; min-height: 21px; border-radius: 12px; padding: 0 7px; color: #58776a; background: #edf4f0; font-size: 8px; font-weight: 760; }.platform-status-chip--green { color: #187154; background: #e0f5e9; }.platform-status-chip--amber { color: #9a671b; background: #fff0d5; }.platform-status-chip--muted { color: #756b6b; background: #f1eded; }
.platform-detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 17px; }.platform-detail-kv { border: 1px solid #e2ece5; border-radius: 9px; padding: 10px; background: #fcfefc; }.platform-detail-kv span { display: block; color: #8b9f95; font-size: 8px; font-weight: 760; letter-spacing: .42px; text-transform: uppercase; }.platform-detail-kv strong { display: block; margin-top: 5px; overflow-wrap: anywhere; color: #315547; font-size: 10px; line-height: 1.45; }
.platform-detail-section { margin-top: 18px; }.platform-detail-section > header { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 9px; }.platform-detail-section h3 { margin: 0; color: #365b4c; font-size: 11px; }.platform-detail-section > header span { color: #8a9c93; font-size: 8.5px; }.platform-clinical-note { border-left: 3px solid #77b894; border-radius: 0 8px 8px 0; padding: 10px 12px; color: #5e786d; background: #f4faf6; font-size: 10px; line-height: 1.6; white-space: pre-wrap; }.platform-clinical-note.is-empty { color: #879b91; font-style: italic; }
.platform-brand-cards { display: grid; gap: 8px; }.platform-brand-card { display: grid; grid-template-columns: 1fr auto; gap: 9px; border: 1px solid #e0ebe4; border-radius: 9px; padding: 11px; background: #fcfefd; }.platform-brand-card strong { display: block; color: #315546; font-size: 10px; }.platform-brand-card p { margin: 3px 0 0; color: #7c9188; font-size: 9px; }.platform-brand-meta { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 7px; }.platform-brand-meta span { border-radius: 5px; padding: 3px 5px; color: #668075; background: #edf4f0; font-size: 7.5px; }.platform-brand-edit { align-self: start; border: 0; padding: 3px; color: #267456; background: transparent; font-size: 9px; font-weight: 760; }.platform-brand-edit:hover { text-decoration: underline; }

/* Dialogs and repeatable brand editor. */
.platform-modal.is-busy { cursor: progress; }.platform-modal.is-busy::after { position: sticky; z-index: 3; bottom: 0; display: block; width: max-content; margin: 0 0 12px auto; border-radius: 14px; padding: 4px 9px; color: #477364; background: #edf6f0; content: "Saving governed change…"; font-size: 8px; font-weight: 760; }
.platform-brand-row { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr) minmax(94px, .75fr) 104px 30px !important; }
@media (max-width: 680px) { .platform-brand-row { grid-template-columns: 1fr 1fr 30px !important; }.platform-brand-row label:nth-child(3), .platform-brand-row label:nth-child(4) { grid-column: 1 / 3; } }
@media (max-width: 430px) { .platform-brand-row { grid-template-columns: 1fr 30px !important; }.platform-brand-row label:nth-child(2), .platform-brand-row label:nth-child(3), .platform-brand-row label:nth-child(4) { grid-column: 1 / 2; }.platform-brand-remove { grid-column: 2; grid-row: 1; } }
.platform-modal-backdrop { position: fixed; z-index: 100; inset: 0; display: grid; overflow-y: auto; place-items: center; padding: 26px; background: rgb(5 38 30 / 43%); backdrop-filter: blur(3px); }.platform-modal { width: min(100%, 800px); max-height: min(840px, calc(100vh - 52px)); overflow: auto; border: 1px solid #d5e6dc; border-radius: 14px; background: #fff; box-shadow: 0 28px 70px rgb(2 35 25 / 27%); }.platform-modal--small { width: min(100%, 520px); }.platform-modal > header { position: sticky; z-index: 2; top: 0; display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; border-bottom: 1px solid #e4ede7; padding: 18px 21px; background: rgb(255 255 255 / 96%); backdrop-filter: blur(10px); }.platform-modal h2 { margin: 5px 0 0; color: #1f4033; font-size: 19px; letter-spacing: -.6px; }.platform-modal form { padding: 20px 21px 18px; }.platform-modal-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }.platform-modal-grid--one { grid-template-columns: 1fr; }.platform-modal label { display: grid; gap: 6px; color: #4d6c60; font-size: 9.5px; font-weight: 760; }.platform-modal label em { color: #ad6359; font-size: 8px; font-style: normal; font-weight: 650; }.platform-modal input, .platform-modal select { height: 38px; padding: 0 9px; }.platform-modal textarea { min-height: 78px; resize: vertical; padding: 9px; line-height: 1.45; }.platform-notes-label, .platform-reason-label { margin-top: 15px; }.platform-notes-label small { color: #84988e; font-size: 8.5px; font-weight: 580; line-height: 1.45; }.platform-brand-editor { margin-top: 16px; border: 1px solid #dfeae3; border-radius: 10px; padding: 13px; background: #fbfdfb; }.platform-brand-editor-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }.platform-brand-editor-heading strong { display: block; color: #3c6152; font-size: 10px; }.platform-brand-editor-heading span { display: block; max-width: 480px; margin-top: 3px; color: #84968e; font-size: 8.5px; line-height: 1.45; }.platform-brand-rows { display: grid; gap: 9px; margin-top: 12px; }.platform-brand-row { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr) 104px 30px; gap: 8px; align-items: end; }.platform-brand-row label { min-width: 0; }.platform-brand-row input, .platform-brand-row select { height: 34px; }.platform-brand-remove { display: grid; width: 30px; height: 34px; place-items: center; border: 1px solid #ecd8d8; border-radius: 7px; color: #a65f5f; background: #fff8f7; font-size: 17px; }.platform-modal footer { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: 17px; border-top: 1px solid #e5ede8; padding-top: 14px; }.platform-modal footer > span { max-width: 390px; color: #7c9187; font-size: 8.5px; line-height: 1.5; }.platform-modal footer > div { display: flex; gap: 8px; }.platform-toast { position: fixed; z-index: 120; right: 21px; bottom: 21px; max-width: min(360px, calc(100vw - 42px)); border: 1px solid #bbdfca; border-radius: 9px; padding: 10px 12px; color: #246849; background: #f1fbf5; box-shadow: 0 12px 32px rgb(26 80 54 / 16%); font-size: 10px; font-weight: 690; }

@media (max-width: 1150px) { .platform-sidebar { width: 252px; }.platform-workspace { margin-left: 252px; }.platform-stat-grid--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }.platform-catalogue-layout { grid-template-columns: minmax(255px, .64fr) minmax(0, 1.36fr); }.platform-topbar { padding-inline: 24px; }.platform-restricted-pill { display: none; } }
@media (max-width: 860px) { .platform-sidebar { width: 278px; transform: translateX(-101%); transition: transform .2s ease; }.platform-shell.is-sidebar-open .platform-sidebar { transform: translateX(0); }.platform-sidebar-scrim { position: fixed; z-index: 29; inset: 0; background: rgb(3 30 23 / 32%); }.platform-shell.is-sidebar-open .platform-sidebar-scrim { display: block; }.platform-workspace { margin-left: 0; }.platform-menu-button, .platform-close-sidebar { display: grid; }.platform-topbar { min-height: 68px; }.platform-content { padding: 24px 18px 38px; }.platform-topbar-actions .platform-profile, .platform-logout { display: none; }.platform-catalogue-layout { grid-template-columns: 1fr; }.platform-catalogue-list-pane { border-right: 0; border-bottom: 1px solid #e3ede7; }.platform-catalogue-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 255px; }.platform-detail-empty { min-height: 275px; }.platform-detail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 680px) { .platform-login { grid-template-columns: 1fr; }.platform-login-aside { display: none; }.platform-login-panel { min-height: 100vh; padding: 25px; }.platform-mobile-brand { display: inline-flex; }.platform-topbar-actions #platformRefresh { display: none; }.platform-page-heading { align-items: flex-start; flex-direction: column; }.platform-page-heading > .platform-button, .platform-page-heading > .platform-readonly-chip { width: 100%; }.platform-stat-grid--three, .platform-stat-grid--four { grid-template-columns: 1fr 1fr; }.platform-stat-card { min-height: 94px; padding: 13px; }.platform-stat-card strong { font-size: 21px; }.platform-panel-toolbar, .platform-catalogue-toolbar { align-items: stretch; flex-direction: column; }.platform-search { width: 100%; }.platform-filter-label { grid-template-columns: 72px 1fr; }.platform-filter-label select { width: 100%; }.platform-table-note { margin-left: 0; }.platform-catalogue-groups { grid-template-columns: 1fr; }.platform-detail-top { flex-direction: column; }.platform-detail-actions { justify-content: flex-start; }.platform-modal-backdrop { align-items: start; padding: 10px; }.platform-modal { max-height: none; min-height: calc(100vh - 20px); }.platform-modal > header, .platform-modal form { padding-right: 15px; padding-left: 15px; }.platform-modal-grid { grid-template-columns: 1fr; }.platform-brand-row { grid-template-columns: 1fr 1fr 30px; }.platform-brand-row label:nth-child(3) { grid-column: 1 / 3; }.platform-modal footer { align-items: stretch; flex-direction: column; }.platform-modal footer > div { justify-content: flex-end; } }
@media (max-width: 430px) { .platform-topbar { padding-inline: 13px; }.platform-topbar-left { gap: 8px; }.platform-breadcrumb { max-width: 168px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.platform-content { padding-inline: 13px; }.platform-stat-grid--three, .platform-stat-grid--four { grid-template-columns: 1fr; }.platform-detail-grid { grid-template-columns: 1fr; }.platform-brand-row { grid-template-columns: 1fr 30px; }.platform-brand-row label:nth-child(2), .platform-brand-row label:nth-child(3) { grid-column: 1 / 2; }.platform-brand-remove { grid-column: 2; grid-row: 1; }.platform-profile { display: none; } }
