/* Portal Hanói 2.3.2 — lifecycle, scoped administration and security hardening */
:root{--v23-danger:#b42318;--v23-danger-soft:#fff2f0;--v23-warning:#9a6700;--v23-warning-soft:#fff8df}
.button-danger{border:1px solid #f0b6b0;background:var(--v23-danger-soft);color:var(--v23-danger)}
.button-danger:hover{border-color:var(--v23-danger);background:#ffe8e5}
.text-danger{appearance:none;padding:0;border:0;background:transparent;color:var(--v23-danger);font:inherit;font-weight:750;cursor:pointer}
.panel-narrow{max-width:920px}.field-wide{grid-column:1/-1}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.lifecycle-form{display:inline-flex;margin:0}.project-row-actions,.inline-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.project-row-actions>a{white-space:nowrap}
.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:20px;border:1px solid #f0c6c1;background:linear-gradient(135deg,#fff,#fff6f5)}
.danger-zone>div>span,.danger-zone>summary{color:var(--v23-danger);font-size:10px;font-weight:900;letter-spacing:.13em}.danger-zone h2{margin:5px 0}.danger-zone p{margin:0;color:#75625f}
.danger-zone[open]{display:block}.danger-zone>summary{cursor:pointer}.danger-zone>form{margin-top:16px}
.purge-control{position:relative}.purge-control>summary{cursor:pointer;color:var(--v23-danger);font-size:12px;font-weight:800}.purge-control[open]{min-width:280px;padding:12px;border:1px solid #efc2bd;border-radius:9px;background:#fff9f8}.purge-control .form-stack{margin-top:12px}
.google-global-config{border-top:4px solid var(--v2-green,#31e878)}.google-global-config code{word-break:break-all}.google-global-config .callout{margin-bottom:18px}
.provider-select-grid button:disabled,.provider-choice:disabled{cursor:not-allowed;opacity:.48;filter:grayscale(.55)}
.member-remove{display:grid;gap:8px;min-width:220px}.member-row form.inline-actions{display:grid;grid-template-columns:minmax(140px,1fr) minmax(100px,.7fr) auto;width:min(100%,620px)}
.comment-actions{display:flex;align-items:center;gap:10px;margin-top:8px}.comment-edit{margin-top:10px}.comment-edit textarea{width:100%;min-height:90px}
.event-focus{padding:12px 15px;margin-bottom:14px;border-left:3px solid var(--v2-green,#31e878);border-radius:0 8px 8px 0;background:#eff9f3;color:#355542}.event-focus b{color:#082819}
.trash-retention{color:#6a746e;font-size:12px}.version-chip{display:inline-flex;padding:4px 7px;border-radius:999px;background:#edf8f1;color:#087c39;font-size:10px;font-weight:850}
.global-identity{display:flex;align-items:center;gap:11px;margin:18px 5px 10px;padding:12px;border:1px solid rgba(49,232,120,.24);border-radius:11px;background:rgba(49,232,120,.07)}.global-identity>svg{width:28px;height:28px;color:var(--hanoi)}.global-identity small,.global-identity strong,.global-identity span{display:block}.global-identity small{font-size:8px;letter-spacing:.14em;color:#78a78b}.global-identity strong{font-size:13px;color:#fff}.global-identity span{font-size:10px;color:#8fa497}.leave-client-context{display:block;margin:0 8px 10px;color:#8fbca0;font-size:10px;font-weight:800}.leave-client-context button{border:0;background:transparent;color:inherit;padding:0;cursor:pointer;font:inherit;font-weight:inherit}.leave-client-context:hover{color:#fff}.logout-form{display:flex}.context-switch select{min-width:260px;max-width:320px}.admin-client-picker>.muted{margin-top:-12px}.admin-client-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.admin-client-options>a{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:4px 12px;padding:15px;border:1px solid var(--line);border-radius:11px;background:#fbfdfb}.admin-client-options>a:hover{border-color:var(--hanoi);box-shadow:var(--shadow)}.admin-client-options .client-monogram{grid-row:1/3;width:42px;height:42px}.admin-client-options strong{font-size:13px}.admin-client-options small{color:#168347;font-size:10px;font-weight:800}
@media(max-width:900px){.admin-client-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.danger-zone{align-items:flex-start;flex-direction:column}.member-row form.inline-actions{grid-template-columns:1fr;width:100%}.project-row-actions{align-items:flex-start;flex-direction:column}.purge-control[open]{min-width:0;width:100%}.admin-client-options{grid-template-columns:1fr}}
