.platform-page { background: #f6f8f7; }
.platform-shell { display: grid; grid-template-columns: 220px minmax(0, 1fr); min-height: 100vh; }
.platform-sidebar { background: #12372a; color: #fff; display: flex; flex-direction: column; gap: 26px; padding: 26px 20px; }
.platform-sidebar .brand { color: #fff; font-size: 18px; }
.platform-sidebar .brand-mark { background: #fff; color: var(--green); }
.platform-sidebar > p { color: #a9c6b8; font-size: 10px; font-weight: 750; letter-spacing: 1px; margin: 6px 8px -10px; text-transform: uppercase; }
.platform-sidebar nav { display: grid; gap: 7px; }
.platform-sidebar nav a { align-items: center; border-radius: 8px; color: #d9e8e0; display: flex; font-size: 12px; gap: 10px; padding: 11px 12px; text-decoration: none; }
.platform-sidebar nav a:hover, .platform-sidebar nav a.active { background: rgba(255,255,255,.12); color: #fff; }
.platform-sidebar nav span { font-size: 16px; width: 18px; }
.platform-sidebar > div { border-top: 1px solid rgba(255,255,255,.15); display: grid; gap: 4px; margin-top: auto; padding: 18px 8px 0; }
.platform-sidebar > div small { color: #9db9ac; font-size: 9px; }
.platform-sidebar > div strong { font-size: 11px; }
.platform-main { min-width: 0; padding: 34px clamp(24px, 4vw, 58px) 50px; }
.platform-topbar { align-items: start; display: flex; justify-content: space-between; margin-bottom: 24px; }
.platform-topbar h1 { color: var(--green-dark); font-size: 28px; letter-spacing: -.7px; margin: 0; }
.platform-topbar p:last-child { color: var(--muted); font-size: 12px; margin: 8px 0 0; }
.platform-kpis { display: grid; gap: 12px; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 18px; }
.platform-kpis article, .platform-panel { background: #fff; border: 1px solid var(--line); border-radius: 12px; }
.platform-kpis article { display: grid; gap: 6px; padding: 17px; }
.platform-kpis span, .platform-kpis small { color: var(--muted); font-size: 9px; }
.platform-kpis strong { color: var(--green-dark); font-size: 23px; }
.platform-grid { align-items: start; display: grid; gap: 18px; grid-template-columns: minmax(0, 1fr) 300px; }
.platform-panel { padding: 18px; }
.platform-panel > header { align-items: end; display: flex; gap: 18px; justify-content: space-between; }
.platform-panel h2 { color: var(--green-dark); font-size: 16px; margin: 0; }
.platform-panel p { color: var(--muted); font-size: 10px; line-height: 1.5; margin: 5px 0 0; }
.platform-filter { display: grid; gap: 7px; grid-template-columns: minmax(130px, 1fr) 100px auto; }
.platform-filter input, .platform-filter select, .platform-filter button, .platform-create input, .organization-editor input, .platform-admin-list input, .platform-security-form input { background: #fff; border: 1px solid #cbd5d0; border-radius: 8px; font: inherit; font-size: 9px; padding: 8px; }
.platform-filter button { color: var(--green); cursor: pointer; font-weight: 700; }
.organization-list { display: grid; margin-top: 16px; }
.organization-row { border-top: 1px solid var(--line); }
.organization-row summary { align-items: center; cursor: pointer; display: grid; gap: 12px; grid-template-columns: minmax(190px, 1.7fr) repeat(4, minmax(55px, .55fr)) 62px 14px; list-style: none; padding: 13px 4px; }
.organization-row summary::-webkit-details-marker { display: none; }
.organization-row summary > span:not(.org-identity) { display: grid; gap: 2px; }
.organization-row summary > span > strong { font-size: 10px; }
.organization-row summary small { color: var(--muted); font-size: 8px; }
.org-identity { align-items: center; display: flex; gap: 9px; min-width: 0; }
.org-identity > i { background: var(--green-soft); border-radius: 8px; color: var(--green); display: grid; flex: 0 0 30px; font-style: normal; height: 30px; place-items: center; }
.org-identity > span { display: grid; gap: 3px; min-width: 0; }
.org-identity strong, .org-identity small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.organization-row summary em { border-radius: 12px; font-size: 8px; font-style: normal; padding: 5px 7px; text-align: center; }
.organization-row summary em.active { background: var(--green-soft); color: var(--green); }
.organization-row summary em.inactive { background: #f0f1f0; color: var(--muted); }
.organization-row[open] summary > b { transform: rotate(180deg); }
.organization-editor { background: #f7faf8; border-radius: 9px; display: grid; gap: 9px; grid-template-columns: 1.3fr repeat(3, .7fr); margin: 0 0 13px; padding: 13px; }
.organization-editor label, .platform-create label { color: var(--muted); display: grid; font-size: 8px; font-weight: 750; gap: 5px; text-transform: uppercase; }
.organization-editor .platform-check { align-content: center; display: flex; flex-wrap: wrap; grid-column: 1 / -2; text-transform: none; }
.platform-check input { accent-color: var(--green); width: auto; }
.platform-check small { flex-basis: 100%; font-weight: 400; margin-left: 19px; }
.organization-editor button { align-self: end; margin: 0; padding: 9px; }
.platform-side { display: grid; gap: 18px; }
.platform-create { display: grid; gap: 11px; margin-top: 15px; }
.platform-create > div { display: grid; gap: 9px; grid-template-columns: 1fr 1fr; }
.platform-create small { font-size: 8px; font-weight: 400; text-transform: none; }
.platform-create button { width: 100%; }
.platform-events { display: grid; margin-top: 12px; }
.platform-events article { align-items: center; border-top: 1px solid var(--line); display: flex; gap: 8px; padding: 9px 0; }
.platform-events i { background: var(--green-soft); border-radius: 50%; color: var(--green); display: grid; flex: 0 0 23px; font-size: 8px; font-style: normal; height: 23px; place-items: center; }
.platform-events span { display: grid; gap: 2px; min-width: 0; }
.platform-events strong { font-size: 9px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.platform-events small { color: var(--muted); font-size: 8px; }
.platform-security-summary strong { color: var(--green-dark); }
.security-badges { display: flex; flex-wrap: wrap; gap: 5px; margin: 12px 0; }
.security-badges span { border-radius: 14px; font-size: 8px; font-weight: 750; padding: 5px 8px; }
.security-badges .ok { background: var(--green-soft); color: var(--green); }
.security-badges .pending { background: #f3f0e7; color: #806b21; }
.security-badges .blocked { background: #fce9e7; color: #a53a30; }
.platform-inline-link { color: var(--green); font-size: 9px; font-weight: 750; text-decoration: none; }
.platform-admin-list { display: grid; margin-top: 12px; }
.platform-admin-list details { border-top: 1px solid var(--line); padding: 9px 0; }
.platform-admin-list summary { align-items: center; cursor: pointer; display: flex; gap: 8px; justify-content: space-between; list-style: none; }
.platform-admin-list summary::-webkit-details-marker { display: none; }
.platform-admin-list summary span { display: grid; gap: 2px; min-width: 0; }
.platform-admin-list summary strong { font-size: 9px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.platform-admin-list summary small { color: var(--muted); font-size: 8px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.platform-admin-list summary em { border-radius: 12px; font-size: 7px; font-style: normal; padding: 4px 6px; }
.platform-admin-list summary em.active { background: var(--green-soft); color: var(--green); }
.platform-admin-list summary em.inactive { background: #f0f1f0; color: var(--muted); }
.platform-admin-list details > div { background: #f7faf8; border-radius: 8px; display: grid; gap: 6px; margin-top: 8px; padding: 8px; }
.platform-admin-list form { display: flex; gap: 5px; }
.platform-admin-list input { min-width: 0; width: 100%; }
.platform-admin-list button { background: #fff; border: 1px solid #cbd5d0; border-radius: 7px; color: var(--green-dark); cursor: pointer; font-size: 8px; padding: 6px 8px; }
.platform-admin-create { border-top: 1px solid var(--line); margin-top: 10px; padding-top: 12px; }
.platform-security-page { margin: 0 auto; max-width: 1100px; width: 100%; }
.platform-security-grid { align-items: start; display: grid; gap: 18px; grid-template-columns: minmax(0, 1fr) 280px; }
.security-card { min-height: 330px; }
.security-card > p { max-width: 620px; }
.security-card > form:first-of-type { margin-top: 20px; }
.totp-secret { align-items: center; background: #f4f8f6; border: 1px solid #cfe0d7; border-radius: 10px; display: grid; gap: 8px; grid-template-columns: 1fr auto; margin: 20px 0 10px; padding: 14px; }
.totp-secret small { color: var(--muted); font-size: 8px; grid-column: 1 / -1; text-transform: uppercase; }
.totp-secret code, .totp-uri code { color: var(--green-dark); font-size: 12px; overflow-wrap: anywhere; }
.totp-secret button { background: #fff; border: 1px solid #bdd2c7; border-radius: 7px; color: var(--green); cursor: pointer; font-size: 8px; padding: 7px 9px; }
.totp-uri { margin-bottom: 14px; }
.totp-uri summary { color: var(--green); cursor: pointer; font-size: 9px; }
.totp-uri code { display: block; font-size: 8px; margin-top: 8px; }
.platform-security-form { display: grid; gap: 12px; margin-top: 20px; max-width: 420px; }
.platform-security-form label { color: var(--muted); display: grid; font-size: 8px; font-weight: 750; gap: 5px; text-transform: uppercase; }
.platform-security-form button { justify-self: start; }
.security-context dl { display: grid; margin: 14px 0; }
.security-context dl div { border-top: 1px solid var(--line); display: grid; gap: 3px; padding: 9px 0; }
.security-context dt { color: var(--muted); font-size: 8px; }
.security-context dd { color: var(--green-dark); font-size: 10px; font-weight: 700; margin: 0; overflow-wrap: anywhere; }
@media (max-width: 1150px) { .platform-grid { grid-template-columns: 1fr; } .platform-side { grid-template-columns: 1fr 1fr; } }
@media (max-width: 850px) { .platform-shell { grid-template-columns: 70px minmax(0, 1fr); } .platform-sidebar { padding: 20px 10px; } .platform-sidebar .brand > span:last-child, .platform-sidebar > p, .platform-sidebar nav a { font-size: 0; } .platform-sidebar nav a { justify-content: center; } .platform-sidebar > div { display: none; } .platform-kpis { grid-template-columns: 1fr 1fr; } .organization-row summary { grid-template-columns: minmax(170px, 1fr) 55px 55px 62px 14px; } .organization-row summary > span:nth-of-type(4), .organization-row summary > span:nth-of-type(5) { display: none; } }
@media (max-width: 620px) { .platform-main { padding: 24px 14px; } .platform-kpis, .platform-side, .platform-security-grid { grid-template-columns: 1fr; } .platform-panel > header { align-items: stretch; display: grid; } .platform-filter, .organization-editor { grid-template-columns: 1fr; } .organization-editor .platform-check { grid-column: auto; } }

/* Platform administration system — organization-first layout */
.platform-page { --platform-bg: #f4f7f5; --platform-card: #fff; --platform-border: #dce6e1; --platform-ink: #16372c; --platform-subtle: #667b72; background: var(--platform-bg); }
.platform-main { max-width: 1680px; width: 100%; }
.platform-topbar { align-items: center; }
.platform-topbar h1, .platform-org-hero h1 { color: var(--platform-ink); font-size: clamp(25px, 2vw, 32px); letter-spacing: -.8px; line-height: 1.12; margin: 0; }
.platform-topbar .eyebrow, .platform-org-hero .eyebrow { color: #16805b; font-size: 9px; font-weight: 800; letter-spacing: 1.25px; margin: 0 0 7px; text-transform: uppercase; }
.platform-panel, .platform-kpis article { border-color: var(--platform-border); border-radius: 14px; box-shadow: 0 1px 2px rgba(22,55,44,.025); }
.platform-kpis article { min-height: 92px; padding: 18px 20px; }
.platform-kpis span { font-size: 9px; font-weight: 750; letter-spacing: .45px; text-transform: uppercase; }
.platform-kpis strong { font-size: 24px; }
.platform-kpis small { font-size: 9px; }

.platform-button { align-items: center; border: 1px solid transparent; border-radius: 8px; cursor: pointer; display: inline-flex; font: inherit; font-size: 10px; font-weight: 750; justify-content: center; min-height: 34px; padding: 8px 13px; text-decoration: none; transition: background .15s ease, border-color .15s ease, transform .15s ease; }
.platform-button:hover { transform: translateY(-1px); }
.platform-button.primary { background: #147653; color: #fff; }
.platform-button.primary:hover { background: #105f43; }
.platform-button.secondary { background: #fff; border-color: #cbd9d2; color: #245440; }
.platform-button.danger { background: #fff5f4; border-color: #efc7c2; color: #a73e34; }
.platform-button.full { width: 100%; }

.platform-section-card { padding: 20px; }
.platform-section-card > header, .platform-directory > header, .platform-ai-overview > header { align-items: center; display: flex; justify-content: space-between; }
.platform-section-title { align-items: center; display: flex; gap: 11px; min-width: 0; }
.platform-section-title > div { min-width: 0; }
.platform-section-icon { align-items: center; background: #e9f5ef; border-radius: 9px; color: #167a57; display: inline-flex; flex: 0 0 34px; font-size: 15px; height: 34px; justify-content: center; }
.platform-section-icon.violet { background: #f0ecfa; color: #7054af; }
.platform-section-icon.blue { background: #e9f1fb; color: #346ea8; }
.platform-section-icon.amber { background: #fbf2dc; color: #9a6e13; }
.platform-section-title h2 { font-size: 15px; }
.platform-section-title p { font-size: 9px; margin-top: 4px; }

.platform-dashboard-layout { align-items: start; display: grid; gap: 18px; grid-template-columns: minmax(0, 1fr) 320px; }
.platform-dashboard-primary, .platform-dashboard-secondary, .platform-org-primary, .platform-org-secondary { display: grid; gap: 18px; }
.platform-directory { overflow: hidden; padding: 0; }
.platform-directory > header { gap: 22px; padding: 20px; }
.platform-directory .platform-filter { grid-template-columns: minmax(190px, 1fr) 118px auto; width: min(480px, 48%); }
.platform-directory-head, .platform-directory-row { align-items: center; display: grid; gap: 12px; grid-template-columns: minmax(210px, 1.75fr) repeat(4, minmax(62px, .58fr)) 100px 92px; }
.platform-directory-head { background: #f7faf8; border-bottom: 1px solid var(--platform-border); border-top: 1px solid var(--platform-border); color: #7b8e85; font-size: 8px; font-weight: 800; letter-spacing: .5px; padding: 9px 20px; text-transform: uppercase; }
.platform-directory-row { border-bottom: 1px solid #edf2ef; color: var(--platform-ink); min-height: 70px; padding: 12px 20px; text-decoration: none; transition: background .15s ease; }
.platform-directory-row:last-child { border-bottom: 0; }
.platform-directory-row:hover { background: #f7fbf9; }
.platform-directory-row .org-identity > i { height: 36px; width: 36px; }
.platform-directory-row .org-identity strong { font-size: 10px; }
.platform-directory-row .org-identity small { font-size: 8px; }
.platform-metric { display: grid; gap: 3px; }
.platform-metric strong { font-size: 10px; }
.platform-metric small { color: var(--platform-subtle); font-size: 8px; }
.platform-row-action { color: #147653; font-size: 9px; font-weight: 800; text-align: right; white-space: nowrap; }
.platform-row-action b { margin-left: 3px; }

.platform-state { border-radius: 999px; display: inline-flex; font-size: 8px; font-style: normal; font-weight: 800; justify-content: center; line-height: 1; padding: 6px 9px; text-transform: capitalize; white-space: nowrap; }
.platform-state.approved, .platform-state.active { background: #e6f5ed; color: #147653; }
.platform-state.pending_approval, .platform-state.pending { background: #fff4d8; color: #8b691b; }
.platform-state.rejected, .platform-state.suspended { background: #fdebea; color: #a3433b; }
.platform-state.unknown, .platform-state.inactive { background: #eef1ef; color: #6d7b75; }

.platform-ai-overview { padding: 0; overflow: hidden; }
.platform-ai-overview > header { padding: 20px; }
.platform-table-scroll { overflow-x: auto; }
.platform-data-table { border-collapse: collapse; min-width: 760px; width: 100%; }
.platform-data-table th { background: #f7faf8; border-bottom: 1px solid var(--platform-border); border-top: 1px solid var(--platform-border); color: #7b8e85; font-size: 8px; letter-spacing: .45px; padding: 10px 14px; text-align: left; text-transform: uppercase; }
.platform-data-table td { border-bottom: 1px solid #edf2ef; color: #425a50; font-size: 9px; padding: 12px 14px; }
.platform-data-table tr:last-child td { border-bottom: 0; }
.platform-data-table a { color: #147653; font-weight: 750; text-decoration: none; }

.platform-config-form { display: grid; gap: 13px; margin-top: 18px; }
.platform-field { color: #5e746a; display: grid; font-size: 8px; font-weight: 800; gap: 6px; letter-spacing: .2px; text-transform: uppercase; }
.platform-field > span { align-items: center; display: flex; justify-content: space-between; }
.platform-field em { color: #8b9a93; font-size: 7px; font-style: normal; font-weight: 500; letter-spacing: 0; text-transform: none; }
.platform-field input, .platform-field select, .platform-field textarea, .platform-config-form input, .platform-config-form select, .platform-config-form textarea { background: #fff; border: 1px solid #cbd8d2; border-radius: 8px; box-sizing: border-box; color: #203e32; font: inherit; font-size: 10px; min-height: 36px; padding: 9px 10px; width: 100%; }
.platform-field textarea { line-height: 1.5; resize: vertical; }
.platform-field small { color: #8a9992; font-size: 7px; font-weight: 500; letter-spacing: 0; text-transform: none; }
.platform-field input:focus, .platform-field select:focus, .platform-field textarea:focus { border-color: #4a9a79; box-shadow: 0 0 0 3px rgba(24,128,91,.1); outline: 0; }
.platform-field-pair { display: grid; gap: 10px; grid-template-columns: 1fr 1fr; }
.platform-add-admin { border-top: 1px solid var(--platform-border); margin-top: 12px; padding-top: 12px; }
.platform-add-admin > summary { color: #147653; cursor: pointer; font-size: 9px; font-weight: 800; list-style: none; }
.platform-add-admin > summary::-webkit-details-marker { display: none; }
.platform-summary-list { display: grid; margin: 14px 0 16px; }
.platform-summary-list div { align-items: center; border-top: 1px solid #edf2ef; display: flex; gap: 10px; justify-content: space-between; padding: 10px 0; }
.platform-summary-list div:last-child { border-bottom: 1px solid #edf2ef; }
.platform-summary-list dt { color: #75877f; font-size: 8px; }
.platform-summary-list dd { color: var(--platform-ink); font-size: 9px; font-weight: 750; margin: 0; max-width: 170px; overflow-wrap: anywhere; text-align: right; }
.platform-empty { color: #71847b; padding: 28px 20px; text-align: center; }
.platform-empty strong { color: var(--platform-ink); font-size: 11px; }
.platform-empty p { font-size: 9px; }
.platform-empty.compact { padding: 15px 0; }

.platform-breadcrumb { align-items: center; color: #8a9992; display: flex; font-size: 9px; gap: 8px; margin: 0 0 16px; }
.platform-breadcrumb a { color: #147653; font-weight: 750; text-decoration: none; }
.platform-breadcrumb strong { color: #53685f; }
.platform-org-hero { align-items: center; display: grid; gap: 15px; grid-template-columns: auto minmax(0, 1fr) auto; margin-bottom: 20px; }
.platform-org-avatar { align-items: center; background: linear-gradient(145deg, #dff2e9, #c9e5d8); border: 1px solid #c1ddcf; border-radius: 13px; color: #126c4d; display: flex; font-size: 20px; font-weight: 800; height: 52px; justify-content: center; width: 52px; }
.platform-org-hero > div:nth-child(2) > p:last-child { color: var(--platform-subtle); font-size: 10px; margin: 6px 0 0; }
.platform-org-state { align-items: flex-end; display: grid; gap: 7px; justify-items: end; }
.platform-org-state small { color: #7b8d85; font-size: 8px; }
.platform-org-tabs { border-bottom: 1px solid #d5e1db; display: flex; gap: 24px; margin-bottom: 18px; overflow-x: auto; }
.platform-org-tabs a { border-bottom: 2px solid transparent; color: #687c73; font-size: 10px; font-weight: 700; padding: 10px 2px 11px; text-decoration: none; white-space: nowrap; }
.platform-org-tabs a.active { border-color: #16805b; color: #126d4d; }
.organization-kpis { margin-bottom: 18px; }
.platform-org-layout { align-items: start; display: grid; gap: 18px; grid-template-columns: minmax(0, 1.55fr) minmax(280px, .65fr); }
.platform-section-card > header { gap: 15px; }
.platform-access-body { align-items: end; background: #f7faf8; border: 1px solid #e6eee9; border-radius: 10px; display: grid; gap: 18px; grid-template-columns: minmax(150px, .65fr) minmax(280px, 1.35fr); margin-top: 16px; padding: 15px; }
.platform-access-body > div > strong { color: var(--platform-ink); font-size: 10px; }
.platform-access-body > div > p { font-size: 8px; margin-top: 5px; }
.platform-decision-form { align-items: end; display: grid; gap: 8px; grid-template-columns: 1fr auto; }
.platform-decision-form > div { display: flex; gap: 6px; }
.platform-module-list { display: grid; margin-top: 10px; }
.platform-module-row { align-items: center; border-top: 1px solid #e8efeb; display: grid; gap: 12px; grid-template-columns: auto minmax(160px, 1fr) auto auto; padding: 14px 0; }
.platform-module-row:last-child { padding-bottom: 0; }
.platform-module-icon { align-items: center; background: #edf6f2; border-radius: 8px; color: #187654; display: flex; font-size: 13px; height: 32px; justify-content: center; width: 32px; }
.platform-module-row > div strong { color: var(--platform-ink); font-size: 10px; }
.platform-module-row > div p { font-size: 8px; margin: 4px 0 0; }
.platform-module-row > details { grid-column: 2 / -1; }
.platform-module-row > details > summary { color: #167653; cursor: pointer; font-size: 8px; font-weight: 750; list-style: none; }
.platform-module-row > details > summary::-webkit-details-marker { display: none; }
.platform-module-row > details[open] .platform-field { margin-top: 10px; }
.platform-switch { align-items: center; cursor: pointer; display: flex; gap: 7px; }
.platform-switch input { height: 0; opacity: 0; position: absolute; width: 0; }
.platform-switch > span { background: #cdd7d2; border-radius: 999px; height: 18px; position: relative; transition: background .2s; width: 32px; }
.platform-switch > span::after { background: #fff; border-radius: 50%; box-shadow: 0 1px 3px rgba(0,0,0,.2); content: ""; height: 14px; left: 2px; position: absolute; top: 2px; transition: transform .2s; width: 14px; }
.platform-switch input:checked + span { background: #16805b; }
.platform-switch input:checked + span::after { transform: translateX(14px); }
.platform-switch em { color: #667b72; font-size: 8px; font-style: normal; font-weight: 750; }
.ai-usage-strip { background: #f5f8fb; border: 1px solid #e0e8ef; border-radius: 10px; display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 16px; }
.ai-usage-strip > div { border-right: 1px solid #e0e8ef; display: grid; gap: 4px; padding: 11px 13px; }
.ai-usage-strip > div:last-child { border-right: 0; }
.ai-usage-strip span { color: #71828c; font-size: 7px; text-transform: uppercase; }
.ai-usage-strip strong { color: #264a5e; font-size: 11px; }
.ai-config-form { grid-template-columns: 1fr 1fr; }
.ai-config-form .span-2 { grid-column: 1 / -1; }
.platform-check-grid { display: grid; gap: 10px; grid-template-columns: 1fr 1fr; }
.platform-check-grid > label, .platform-check-line { align-items: flex-start; background: #f6faf8; border: 1px solid #e3ece7; border-radius: 9px; display: flex; gap: 9px; padding: 10px; }
.platform-check-grid > label.emergency { background: #fff8f7; border-color: #f1dedb; }
.platform-check-grid input, .platform-check-line input { accent-color: #16805b; margin-top: 2px; }
.platform-check-grid label > span, .platform-check-line > span { display: grid; gap: 3px; }
.platform-check-grid strong, .platform-check-line strong { color: var(--platform-ink); font-size: 8px; }
.platform-check-grid small, .platform-check-line small { color: #788b82; font-size: 7px; }
.ai-config-form footer { align-items: center; border-top: 1px solid #e8efeb; display: flex; justify-content: space-between; padding-top: 13px; }
.ai-config-form footer small { color: #7d8f87; font-size: 8px; }
.organization-integration-list { display: grid; margin: 13px 0; }
.organization-integration-list > div { align-items: center; border-top: 1px solid #e8efeb; display: flex; justify-content: space-between; padding: 10px 0; }
.organization-integration-list > div:last-child { border-bottom: 1px solid #e8efeb; }
.organization-integration-list strong { color: var(--platform-ink); font-size: 9px; }
.platform-integration-actions { align-items: center; display: flex; gap: 14px; justify-content: flex-end; margin-top: 12px; }

@media (max-width: 1250px) {
  .platform-dashboard-layout, .platform-org-layout { grid-template-columns: 1fr; }
  .platform-dashboard-secondary, .platform-org-secondary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .platform-directory-head, .platform-directory-row { grid-template-columns: minmax(210px, 1.6fr) repeat(3, minmax(60px, .5fr)) 100px 88px; }
  .platform-directory-head > span:nth-child(5), .platform-directory-row > span:nth-child(5) { display: none; }
}
@media (max-width: 900px) {
  .platform-directory > header { align-items: stretch; display: grid; }
  .platform-directory .platform-filter { width: 100%; }
  .platform-directory-head, .platform-directory-row { grid-template-columns: minmax(180px, 1.5fr) 65px 65px 94px 82px; }
  .platform-directory-head > span:nth-child(4), .platform-directory-row > span:nth-child(4), .platform-directory-head > span:nth-child(5), .platform-directory-row > span:nth-child(5) { display: none; }
  .platform-access-body { grid-template-columns: 1fr; }
  .platform-dashboard-secondary, .platform-org-secondary { grid-template-columns: 1fr; }
}
@media (max-width: 660px) {
  .platform-topbar { align-items: flex-start; gap: 12px; }
  .platform-directory .platform-filter { grid-template-columns: 1fr; }
  .platform-directory-head { display: none; }
  .platform-directory-row { align-items: start; grid-template-columns: minmax(0, 1fr) auto; }
  .platform-directory-row > .platform-metric { display: none; }
  .platform-directory-row > .platform-state { grid-column: 2; grid-row: 1; }
  .platform-row-action { grid-column: 1 / -1; text-align: left; }
  .platform-org-hero { grid-template-columns: auto minmax(0, 1fr); }
  .platform-org-state { align-items: flex-start; grid-column: 1 / -1; justify-items: start; }
  .platform-module-row { grid-template-columns: auto minmax(120px, 1fr) auto; }
  .platform-module-row > .platform-button { grid-column: 2 / -1; }
  .platform-module-row > details { grid-column: 2 / -1; }
  .platform-decision-form, .ai-config-form, .platform-check-grid { grid-template-columns: 1fr; }
  .ai-config-form .span-2 { grid-column: auto; }
  .ai-usage-strip { grid-template-columns: 1fr 1fr; }
  .ai-usage-strip > div:nth-child(2) { border-right: 0; }
  .ai-usage-strip > div:nth-child(-n+2) { border-bottom: 1px solid #e0e8ef; }
  .ai-config-form footer { align-items: stretch; display: grid; gap: 10px; }
}

/* Organization detail — consistent, readable controls and grouped module updates. */
.platform-organization-page { max-width: 1540px; }
.platform-organization-page .platform-section-card { padding: 24px; }
.platform-organization-page .platform-section-title h2 { font-size: 18px; line-height: 1.25; }
.platform-organization-page .platform-section-title p { font-size: 12px; line-height: 1.45; }
.platform-organization-page .platform-section-icon { border-radius: 11px; flex-basis: 42px; font-size: 18px; height: 42px; }
.platform-organization-page .platform-state { font-size: 10px; padding: 7px 11px; }
.platform-organization-page .platform-button { border-radius: 10px; font-size: 13px; min-height: 42px; padding: 10px 16px; }
.platform-organization-page .platform-button.compact { font-size: 12px; min-height: 36px; padding: 7px 12px; }
.platform-organization-page .platform-form-actions { border-top: 1px solid #e6eee9; display: flex; justify-content: flex-end; margin-top: 3px; padding-top: 14px; }
.platform-organization-page .platform-org-secondary .platform-form-actions .platform-button { width: 100%; }
.platform-organization-page .platform-field { font-size: 10px; gap: 7px; }
.platform-organization-page :is(.platform-field input,.platform-field select,.platform-field textarea,.platform-config-form input,.platform-config-form select,.platform-config-form textarea) { border-radius: 10px; font-size: 13px; min-height: 44px; padding: 10px 12px; }
.platform-organization-page .platform-field em,.platform-organization-page .platform-field small { font-size: 9px; }
.platform-organization-page .platform-check-grid strong,.platform-organization-page .platform-check-line strong { font-size: 12px; }
.platform-organization-page .platform-check-grid small,.platform-organization-page .platform-check-line small { font-size: 10px; line-height: 1.4; }
.platform-organization-page .platform-check-grid > label,.platform-organization-page .platform-check-line { border-radius: 11px; padding: 14px; }
.platform-organization-page .platform-module-list { margin-top: 16px; }
.platform-organization-page .platform-module-row { align-items: center; gap: 16px; grid-template-columns: auto minmax(180px,1fr) auto; padding: 20px 0; }
.platform-organization-page .platform-module-row:last-child { padding-bottom: 4px; }
.platform-organization-page .platform-module-icon { border-radius: 11px; font-size: 17px; height: 42px; width: 42px; }
.platform-organization-page .platform-module-copy strong { font-size: 14px; }
.platform-organization-page .platform-module-copy p { font-size: 11px; line-height: 1.45; margin-top: 5px; }
.platform-organization-page .platform-module-row > details { grid-column: 2 / -1; }
.platform-organization-page .platform-module-advanced > summary { align-items: center; border-radius: 8px; color: #477064; display: inline-flex; font-size: 11px; gap: 5px; padding: 6px 8px; }
.platform-organization-page .platform-module-advanced > summary:hover { background: #eef6f2; color: #126d4d; }
.platform-organization-page .platform-module-advanced > div { background: #f7faf8; border: 1px solid #e2ebe6; border-radius: 11px; margin-top: 9px; padding: 14px; }
.platform-organization-page .platform-switch { gap: 9px; min-width: 105px; justify-content: flex-end; }
.platform-organization-page .platform-switch > span { height: 22px; width: 40px; }
.platform-organization-page .platform-switch > span::after { height: 18px; width: 18px; }
.platform-organization-page .platform-switch input:checked + span::after { transform: translateX(18px); }
.platform-organization-page .platform-switch em { font-size: 11px; min-width: 55px; }
.platform-organization-page .platform-switch input:disabled + span { opacity: .62; }
.platform-organization-page .platform-modules-actions { align-items: center; border-top: 1px solid #e6eee9; display: flex; gap: 16px; justify-content: space-between; margin-top: 16px; padding-top: 18px; }
.platform-organization-page .platform-modules-actions p { font-size: 11px; margin: 0; }
.platform-organization-page .ai-usage-strip span { font-size: 9px; }
.platform-organization-page .ai-usage-strip strong { font-size: 14px; }
.platform-organization-page .ai-usage-strip > div { padding: 14px 16px; }
.platform-organization-page .organization-integration-list strong { font-size: 12px; }

@media (max-width:660px){
  .platform-organization-page .platform-section-card{padding:18px}
  .platform-organization-page .platform-module-row{align-items:start;grid-template-columns:auto minmax(0,1fr)}
  .platform-organization-page .platform-switch{grid-column:2;justify-content:flex-start}
  .platform-organization-page .platform-module-row>details{grid-column:1/-1}
  .platform-organization-page .platform-modules-actions{align-items:stretch;display:grid}
  .platform-organization-page .platform-modules-actions .platform-button{width:100%}
}
