/* screens-admin.css -- owner Admin page, invite page and locked-account page. Mobile first; tokens only. */
.admin { padding-bottom: var(--space-12); min-width: 0; }
body[data-shell="auth"] .admin { width: min(100%, 72rem); margin-inline: auto; padding: var(--space-6) var(--gutter) var(--space-12); }

.admin-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
@media (min-width: 40rem) { .admin-tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 64rem) { .admin-tiles { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.admin-tile { display: grid; gap: var(--space-1); align-content: start; }
.admin-tile__n { font-size: var(--fs-2xl); font-weight: var(--fw-semibold); line-height: 1.1; }

.admin-list { list-style: none; margin: 0; padding: 0; display: grid; }
.admin-row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: var(--space-3); align-items: center; padding: var(--space-3) 0; border-top: var(--border-w) solid var(--border); }
.admin-row:first-child { border-top: 0; }
.admin-row__main { display: grid; gap: 2px; min-width: 0; }
.admin-row__title { font-weight: var(--fw-semibold); overflow-wrap: anywhere; }
@media (max-width: 30rem) { .admin-row { grid-template-columns: minmax(0, 1fr) auto; } .admin-row > :nth-child(3) { grid-column: 1 / -1; justify-self: start; } }

.admin-orgs { list-style: none; margin: 0; padding: 0; }
.admin-org { display: grid; gap: var(--space-3); }
.admin-org__head { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--space-3); flex-wrap: wrap; }
.admin-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); margin: 0; }
.admin-stats dd { margin: 0; overflow-wrap: anywhere; }
@media (min-width: 40rem) { .admin-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 64rem) { .admin-stats { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.admin-org__actions { padding-top: var(--space-2); border-top: var(--border-w) solid var(--border); }

.admin-link { display: grid; gap: var(--space-3); }
.admin-link__input { width: 100%; font: inherit; font-family: var(--font-mono); font-size: var(--fs-sm); padding: var(--space-3); border: var(--border-w) solid var(--border-strong); border-radius: var(--radius-md); background: var(--surface-2); color: var(--text); min-height: 44px; }
.admin-log summary { cursor: pointer; font-weight: var(--fw-medium); min-height: 44px; display: flex; align-items: center; }

.acct-foot { display: grid; gap: var(--space-2); margin-top: var(--space-4); }
.acct-list { margin: 0; padding-left: 1.2em; display: grid; gap: var(--space-1); color: var(--text-2); }
.acct-note { padding: var(--space-3); border-left: 3px solid var(--border-strong); background: var(--surface-2); border-radius: var(--radius-md); overflow-wrap: anywhere; }

/* standalone /admin.html header */
.admin-bar { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--gutter); border-bottom: var(--border-w) solid var(--border); }
.admin-bar .auth__logo img { height: 1.75rem; }
.admin-bar__tag { margin-left: auto; }
.admin-bar ~ .app__main .auth__hero .auth__logo { display: none; }

/* plan picker */
.plan-cards { display: grid; gap: var(--space-3); }
.plan-card { position: relative; display: grid; gap: var(--space-1); padding: var(--space-4); border: var(--border-w) solid var(--border); border-radius: var(--radius-lg); background: var(--surface); cursor: pointer; min-width: 0; }
.plan-card:has(.plan-card__input:checked) { border-color: var(--accent); box-shadow: 0 0 0 2px var(--accent); }
.plan-card:has(.plan-card__input:checked) .plan-card__name::after { content: ' \2713'; color: var(--accent); }
.plan-card:has(.plan-card__input:focus-visible) { outline: 2px solid var(--accent); outline-offset: 2px; }
.plan-card__input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.plan-card__head { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; }
.plan-card__name { font-weight: var(--fw-semibold); font-size: var(--fs-lg); }
.plan-card__price { font-size: var(--fs-xl); font-weight: var(--fw-semibold); }
.plan-card__per { font-size: var(--fs-sm); font-weight: var(--fw-regular); color: var(--text-2); }
.plan-card__list { list-style: none; margin: var(--space-2) 0 0; padding: 0; display: grid; gap: var(--space-1); color: var(--text-2); font-size: var(--fs-sm); }
.plan-card__list li { display: flex; gap: var(--space-2); align-items: flex-start; }
.plan-card__list svg { flex: none; margin-top: 3px; color: var(--success); }
@media (min-width: 64rem) { .plan-cards--wide { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* announcement banner (owner message to every contractor) */
.announce { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--gutter); background: var(--info-tint); color: var(--info); font-size: var(--fs-sm); }
.announce--warning { background: var(--warning-tint); color: var(--warning); }
.announce__text { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.announce button { background: none; border: 0; color: inherit; font: inherit; text-decoration: underline; cursor: pointer; min-height: 44px; padding: 0 var(--space-2); }

/* upgrade note shown where a plan limit blocks a feature */
.upgrade-note { display: grid; gap: var(--space-2); }
.set-usage { margin: 0; padding-left: 1.2em; display: grid; gap: var(--space-1); }
.admin-plan summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; gap: var(--space-1); flex-wrap: wrap; }
.admin-plan__body { padding-top: var(--space-3); }
.admin-note { padding: var(--space-2) var(--space-3); border-left: 3px solid var(--border-strong); background: var(--surface-2); border-radius: var(--radius-md); overflow-wrap: anywhere; }
