/* Action Center (spec §5) — /action landing, petition cards + singles, forms.
   Session 19. Depends on tokens.css + components.css. */

.t101-action__section { margin: 0 0 var(--t101-sp-12); }
.t101-action__head {
	font-family: var(--t101-font-display);
	font-size: var(--t101-fs-2xl);
	color: var(--t101-evergreen);
	margin: 0 0 var(--t101-sp-2);
}
.t101-action__lede { font-size: var(--t101-fs-base); line-height: 1.6; max-width: 70ch; margin: 0 0 var(--t101-sp-6); color: var(--t101-ink-muted); }
.t101-action__empty { font-family: var(--t101-font-mono); font-size: var(--t101-fs-sm); color: var(--t101-ink-muted); border: 1px dashed var(--t101-line); border-radius: var(--t101-radius-sm); padding: var(--t101-sp-6); }
.t101-action__gate { font-family: var(--t101-font-mono); font-size: var(--t101-fs-sm); border: 1px solid var(--t101-line); border-left: 3px solid var(--t101-brass); border-radius: var(--t101-radius-sm); padding: var(--t101-sp-4); }
.t101-action__ok { font-family: var(--t101-font-mono); font-size: var(--t101-fs-sm); color: var(--t101-evergreen); border: 1px solid var(--t101-brass); border-radius: var(--t101-radius-sm); padding: var(--t101-sp-4); background: color-mix(in srgb, var(--t101-brass) 8%, transparent); }

/* petition grid + cards */
.t101-pet-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: var(--t101-sp-6); }
.t101-pet-card {
	border: 1px solid var(--t101-line);
	border-radius: var(--t101-radius-sm);
	padding: var(--t101-sp-6);
	background: var(--t101-paper);
	display: flex; flex-direction: column;
}
.t101-pet-card--featured { border-color: var(--t101-brass); border-width: 2px; }
.t101-pet-card__title { font-family: var(--t101-font-display); font-size: var(--t101-fs-lg); margin: var(--t101-sp-2) 0; }
.t101-pet-card__title a { color: var(--t101-evergreen); text-decoration: none; }
.t101-pet-card__title a:hover { text-decoration: underline; }
.t101-pet-card__summary { font-size: var(--t101-fs-sm); line-height: 1.6; margin: 0 0 var(--t101-sp-4); }
.t101-pet-card__cta { margin: auto 0 0; }

/* status chip + progress bar (shared card/single) */
.t101-pet__status {
	display: inline-block;
	font-family: var(--t101-font-mono);
	font-size: var(--t101-fs-xs);
	letter-spacing: 0.08em;
	padding: 2px 8px;
	border-radius: var(--t101-radius-sm);
	border: 1px solid var(--t101-line);
	color: var(--t101-ink-muted);
}
.t101-pet__status--open { border-color: var(--t101-brass); color: var(--t101-brass); }
.t101-pet__status--delivered { border-color: var(--t101-river); color: var(--t101-river); }
.t101-pet__target { font-family: var(--t101-font-mono); font-size: var(--t101-fs-xs); color: var(--t101-ink-muted); margin: 0 0 var(--t101-sp-3); }
.t101-pet__bar {
	height: 10px;
	border: 1px solid var(--t101-line);
	border-radius: 999px;
	overflow: hidden;
	background: var(--t101-paper);
	margin: 0 0 var(--t101-sp-2);
}
.t101-pet__bar span { display: block; height: 100%; background: var(--t101-brass); }
.t101-pet__bar.is-pending { border-style: dashed; }
.t101-pet__progress { font-family: var(--t101-font-mono); font-size: var(--t101-fs-xs); color: var(--t101-ink-muted); margin: 0 0 var(--t101-sp-4); }

/* single */
.t101-pet-single__meta { margin: 0 0 var(--t101-sp-3); }
.t101-pet-single__summary { font-size: var(--t101-fs-lg); line-height: 1.6; max-width: 70ch; margin: 0 0 var(--t101-sp-4); }
.t101-pet__signhold { border: 1px dashed var(--t101-line); border-radius: var(--t101-radius-sm); padding: var(--t101-sp-6); margin: var(--t101-sp-8) 0 0; }
.t101-pet__signhold h2 { font-family: var(--t101-font-display); font-size: var(--t101-fs-xl); color: var(--t101-evergreen); margin: 0 0 var(--t101-sp-3); }

/* forms */
.t101-action__form { max-width: 640px; }
.t101-action__field label { display: block; font-family: var(--t101-font-mono); font-size: var(--t101-fs-xs); letter-spacing: 0.06em; text-transform: uppercase; color: var(--t101-ink-muted); margin: 0 0 var(--t101-sp-1); }
.t101-action__field input[type="text"],
.t101-action__field select,
.t101-action__field textarea {
	width: 100%;
	border: 1px solid var(--t101-line);
	border-radius: var(--t101-radius-sm);
	padding: var(--t101-sp-2) var(--t101-sp-3);
	font-size: var(--t101-fs-base);
	background: #fff;
	color: var(--t101-ink);
}
.t101-action__meta { font-family: var(--t101-font-mono); font-size: var(--t101-fs-xs); color: var(--t101-ink-muted); }
.t101-action__aff { color: var(--t101-brass); }

/* ---------- Phase 4d signature engine (child 0.2.26) ---------- */
.t101-pet-sign { border: 1px solid var(--t101-line); border-radius: var(--t101-radius-sm); padding: var(--t101-sp-6); margin: var(--t101-sp-8) 0 0; background: var(--t101-paper-raised); }
.t101-pet-sign__head { font-family: var(--t101-font-display); font-size: var(--t101-fs-xl); color: var(--t101-evergreen); margin: 0 0 var(--t101-sp-3); }
.t101-pet-sign__ok { border-left: 3px solid var(--t101-brass); background: var(--t101-brass-soft); padding: var(--t101-sp-2) var(--t101-sp-3); margin: 0 0 var(--t101-sp-4); }
.t101-pet-sign__note { font-family: var(--t101-font-mono); font-size: var(--t101-fs-xs); color: var(--t101-ink-muted); }
.t101-pet-sign__onbehalf { font-family: var(--t101-font-mono); font-size: var(--t101-fs-xs); letter-spacing: 0.05em; text-transform: uppercase; color: var(--t101-brass); }
.t101-pet-sign__attest { display: flex; gap: var(--t101-sp-2); align-items: flex-start; margin: var(--t101-sp-4) 0; max-width: 640px; }
.t101-signers { margin: var(--t101-sp-8) 0 0; }
.t101-signers__head { font-family: var(--t101-font-display); font-size: var(--t101-fs-lg); color: var(--t101-evergreen); margin: 0 0 var(--t101-sp-2); }
.t101-signers__list { list-style: none; margin: 0; padding: 0; }
.t101-signers__list li { padding: var(--t101-sp-2) 0; border-bottom: 1px solid var(--t101-line); }
.t101-signers__name { font-weight: 600; }
.t101-signers__title { font-family: var(--t101-font-mono); font-size: var(--t101-fs-xs); letter-spacing: 0.05em; text-transform: uppercase; color: var(--t101-ink-muted); margin-left: var(--t101-sp-2); }
.t101-signers__nation { color: var(--t101-clay); margin-left: var(--t101-sp-2); }
.t101-signers--supporting { margin-top: var(--t101-sp-6); }
.t101-signers__count { font-family: var(--t101-font-mono); font-size: var(--t101-fs-xs); color: var(--t101-ink-muted); margin: 0 0 var(--t101-sp-2); }

/* ------------------------------------------------------------------ S47:
   petition "Why this nomination matters" — lede + two-column point grid
   (single column mobile). Valid tokens only per tokens.css inventory. */
.t101-pet-why { margin: var(--t101-sp-8) 0; }
.t101-pet-why__lede { color: var(--t101-ink-muted); }
ul.t101-pet-why__grid {
	list-style: none;
	margin: var(--t101-sp-6) 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--t101-sp-4) var(--t101-sp-6);
}
ul.t101-pet-why__grid li {
	margin: 0;
	padding: 0 0 var(--t101-sp-4) var(--t101-sp-4);
	border-bottom: 1px solid var(--t101-line);
	position: relative;
}
ul.t101-pet-why__grid li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .5em;
	width: 8px;
	height: 8px;
	background: var(--t101-brass);
}
ul.t101-pet-why__grid li strong { color: var(--t101-evergreen); }
@media (max-width: 700px) {
	ul.t101-pet-why__grid { grid-template-columns: 1fr; }
}

/* -------------------------------------------------------------- S47:
   petition hearing-video embed — responsive 16:9 card, token borders. */
.t101-pet-video { margin: var(--t101-sp-8) 0; }
.t101-pet-video__cap { color: var(--t101-ink-muted); }
.t101-pet-video__frame {
	aspect-ratio: 16 / 9;
	border: 1px solid var(--t101-line);
	border-radius: var(--t101-radius-sm);
	overflow: hidden;
	background: #000;
}
.t101-pet-video__frame iframe { width: 100%; height: 100%; border: 0; display: block; }

/* -------------------------------------------------------------- S47:
   96-hour signature-drive countdown CTA (dark card — 2-class scopes
   per the TB/dark-context cascade gotcha). */
.t101-pet-drive { margin: var(--t101-sp-8) 0; padding: var(--t101-sp-6);
	background: var(--t101-evergreen); border-radius: var(--t101-radius-sm);
	text-align: center; }
.t101-pet-drive .t101-pet-drive__head { color: var(--t101-paper);
	font-family: var(--t101-font-display); font-weight: 700;
	font-size: var(--t101-fs-lg); margin: 0 0 var(--t101-sp-4); }
.t101-pet-drive .t101-pet-drive__clock { display: flex; justify-content: center;
	align-items: baseline; gap: var(--t101-sp-2); flex-wrap: wrap;
	margin-bottom: var(--t101-sp-4); }
.t101-pet-drive .t101-pet-drive__clock span { font-family: var(--t101-font-mono);
	font-size: var(--t101-fs-2xl); color: var(--t101-brass); line-height: 1; }
.t101-pet-drive .t101-pet-drive__clock em { font-family: var(--t101-font-mono);
	font-style: normal; font-size: 0.7rem; letter-spacing: 0.08em;
	text-transform: uppercase; color: var(--t101-paper); opacity: .7;
	margin-right: var(--t101-sp-3); }
.t101-pet-drive .t101-pet-drive__sub { color: var(--t101-paper); opacity: .85;
	margin: 0 0 var(--t101-sp-4); }
.t101-pet-drive .t101-pet-drive__act { margin: 0; }
.t101-pet-drive .t101-pet-drive__btn { display: inline-block;
	background: var(--t101-brass); color: var(--t101-evergreen);
	font-family: var(--t101-font-mono); text-transform: uppercase;
	letter-spacing: 0.06em; padding: var(--t101-sp-3) var(--t101-sp-6);
	border-radius: var(--t101-radius-sm); text-decoration: none; }
.t101-pet-drive .t101-pet-drive__btn:hover { background: var(--t101-paper); }
