/* Scoped presentation for the Robots.txt + AI Crawler Policy tool. */
.robots-tool {
	--robots-tool-line: var(--line, #d7dee3);
	--robots-tool-surface: var(--surface, #f6f8f9);
	--robots-tool-raised: var(--surface-raised, #fff);
	--robots-tool-ink: var(--ink, #17212b);
	--robots-tool-muted: var(--muted, #5e6b76);
	--robots-tool-accent: var(--accent-strong, #064c91);
	--robots-tool-focus: var(--focus, #f0a500);
	--robots-tool-success: var(--success, #176b45);
	--robots-tool-danger: var(--danger, #a33a3a);
	color: var(--robots-tool-ink);
	font-size: 1rem;
}

.robots-tool *, .robots-tool *::before, .robots-tool *::after { box-sizing: border-box; }
.robots-tool button, .robots-tool input, .robots-tool select, .robots-tool textarea { font: inherit; }
.robots-tool button, .robots-tool input, .robots-tool select, .robots-tool textarea { min-height: 2.75rem; }
.robots-tool button { cursor: pointer; }
.robots-tool button:focus-visible, .robots-tool input:focus-visible, .robots-tool select:focus-visible, .robots-tool textarea:focus-visible, .robots-tool summary:focus-visible, .robots-tool a:focus-visible { outline: 3px solid var(--robots-tool-focus); outline-offset: 3px; }
.robots-tool__header { padding: 1.5rem; margin-bottom: 1rem; border: 1px solid var(--robots-tool-line); border-radius: .75rem; background: var(--robots-tool-raised); }
.robots-tool__eyebrow { margin: 0 0 .4rem; color: var(--robots-tool-accent); font-size: .75rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.robots-tool h2, .robots-tool h3, .robots-tool h4 { margin: 0 0 .75rem; line-height: 1.2; }
.robots-tool h2 { font-size: clamp(1.75rem, 4vw, 2.75rem); }
.robots-tool h3 { font-size: 1.25rem; }
.robots-tool h4 { margin-top: 1.5rem; font-size: 1rem; }
.robots-tool__dek, .robots-tool__hint { color: var(--robots-tool-muted); }
.robots-tool__dek { max-width: 65ch; margin: 0; }
.robots-tool__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(20rem, .85fr); gap: 1rem; align-items: start; }
.robots-tool__builder, .robots-tool__output, .robots-tool__panel { padding: 1.25rem; border: 1px solid var(--robots-tool-line); border-radius: .75rem; background: var(--robots-tool-raised); }
.robots-tool__output { display: grid; gap: 1.25rem; }
.robots-tool__group { min-inline-size: 0; padding: 1rem; margin: 0 0 1rem; border: 1px solid var(--robots-tool-line); border-radius: .5rem; background: var(--robots-tool-surface); }
.robots-tool__group legend { display: flex; align-items: center; justify-content: space-between; gap: .75rem; width: 100%; padding: 0 .25rem; font-weight: 800; }
.robots-tool__group-number { display: inline-block; }
.robots-tool__label { display: grid; gap: .4rem; margin: .9rem 0; font-weight: 700; }
.robots-tool__input, .robots-tool__select, .robots-tool__textarea, .robots-tool__raw { width: 100%; padding: .65rem .75rem; color: var(--robots-tool-ink); border: 1px solid var(--robots-tool-line); border-radius: .35rem; background: var(--robots-tool-raised); }
.robots-tool__textarea, .robots-tool__raw { min-height: 7rem; resize: vertical; line-height: 1.5; }
.robots-tool__raw { color: #fff; background: #1d2935; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .9rem; }
.robots-tool__hint { margin: .5rem 0; font-size: .9rem; }
.robots-tool__rules, .robots-tool__sitemaps { display: grid; gap: .5rem; margin: .75rem 0; }
.robots-tool__rule { display: grid; grid-template-columns: minmax(6.5rem, .3fr) minmax(0, 1fr) auto; gap: .5rem; align-items: center; }
.robots-tool__actions { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.robots-tool__primary-button, .robots-tool__secondary-button, .robots-tool__text-button, .robots-tool__icon-button { border-radius: .35rem; font-weight: 750; }
.robots-tool__primary-button, .robots-tool__secondary-button { padding: .55rem .8rem; }
.robots-tool__primary-button { color: #fff; border: 1px solid var(--robots-tool-accent); background: var(--robots-tool-accent); }
.robots-tool__secondary-button { color: var(--robots-tool-ink); border: 1px solid var(--robots-tool-line); background: var(--robots-tool-raised); }
.robots-tool__text-button { min-height: 2rem; padding: .25rem .4rem; color: var(--robots-tool-accent); border: 0; background: transparent; text-decoration: underline; }
.robots-tool__icon-button { min-width: 2.75rem; padding: .3rem; color: var(--robots-tool-danger); border: 1px solid var(--robots-tool-line); background: var(--robots-tool-raised); font-size: 1.2rem; }
.robots-tool__status { min-height: 1.5rem; margin: 0; color: var(--robots-tool-muted); font-size: .9rem; }
.robots-tool__panel { padding: 1rem; }
.robots-tool__test-result, .robots-tool__validation { margin-top: .9rem; }
.robots-tool__test-status { display: inline-block; padding: .35rem .55rem; margin: 0 0 .75rem; border-radius: .3rem; font-weight: 850; letter-spacing: .05em; }
.robots-tool__test-status.is-allowed, .robots-tool__validation-summary.is-valid { color: var(--robots-tool-success); background: color-mix(in srgb, var(--robots-tool-success) 12%, transparent); }
.robots-tool__test-status.is-blocked, .robots-tool__validation-summary.has-errors { color: var(--robots-tool-danger); background: color-mix(in srgb, var(--robots-tool-danger) 12%, transparent); }
.robots-tool__details { display: grid; grid-template-columns: minmax(8rem, .4fr) minmax(0, 1fr); gap: .4rem .75rem; margin: 0; font-size: .9rem; }
.robots-tool__details dt { color: var(--robots-tool-muted); font-weight: 700; }
.robots-tool__details dd { margin: 0; overflow-wrap: anywhere; }
.robots-tool__validation-summary { padding: .65rem .75rem; margin: 0 0 .75rem; border-radius: .35rem; font-weight: 700; }
.robots-tool__findings, .robots-tool__preset-list { padding-left: 1.2rem; margin: 0; }
.robots-tool__finding { margin: .55rem 0; }
.robots-tool__finding strong { font-size: .78rem; letter-spacing: .04em; }
.robots-tool__finding small { display: block; color: var(--robots-tool-muted); }
.robots-tool__finding--error strong { color: var(--robots-tool-danger); }
.robots-tool__finding--warning strong { color: #8a5c00; }
.robots-tool__finding--info strong { color: var(--robots-tool-accent); }
.robots-tool__education { padding: 1rem 1.25rem; margin-top: 1rem; border: 1px solid var(--robots-tool-line); border-radius: .75rem; background: var(--robots-tool-surface); }
.robots-tool__education summary { cursor: pointer; font-weight: 800; }
.robots-tool__education h3 { margin-top: 1.25rem; font-size: 1rem; }
.robots-tool__education li + li { margin-top: .45rem; }
.robots-tool__preset-list li { margin: .65rem 0; }
.robots-tool__preset-list span, .robots-tool__preset-list small { color: var(--robots-tool-muted); }
.robots-tool__preset-list a { color: var(--robots-tool-accent); }

@media (max-width: 800px) {
	.robots-tool__layout { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
	.robots-tool__header, .robots-tool__builder, .robots-tool__output { padding: 1rem; }
	.robots-tool__rule { grid-template-columns: 1fr auto; }
	.robots-tool__rule .robots-tool__select { grid-column: 1 / -1; }
	.robots-tool__actions > * { flex: 1 1 auto; }
}
