.sitemap-parser{max-width:1200px;margin:28px auto 72px;padding:0 16px;color:#222837;font:17px/1.56 "PT Sans",Arial,sans-serif}.sitemap-parser .cw-tool__hero{margin-bottom:24px}.sitemap-parser .cw-tool__hero h1{font-size:34px;letter-spacing:-.035em}.sitemap-parser .cw-tool__panel,.sitemap-parser .cw-tool__result{background:#fff;border:1px solid #dfe5ee;border-radius:13px;padding:28px 30px 24px;margin:20px 0}.sitemap-parser .cw-tool__panel h2{font-size:23px;margin:0 0 18px}.sp-row{display:flex;gap:12px}.sp-row input{flex:1;min-width:0}.sitemap-parser .cw-tool__button{min-height:56px;border:0;border-radius:7px;padding:0 24px;color:#fff;font-weight:bold;background:linear-gradient(132.6deg,#0f0fff 35.26%,#161cba 74.23%);cursor:pointer}.sp-options{margin-top:20px;border-top:1px solid #dfe5ee;padding-top:16px}.sp-options summary,.sitemap-parser details summary{cursor:pointer;font-weight:bold}.sp-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.sp-grid>div{display:grid;gap:7px}.sp-grid input[type=checkbox]{margin-right:8px}.sitemap-parser textarea{resize:vertical}.sitemap-parser .cw-tool__hint{color:#58667a;margin:14px 0 0}.sitemap-parser progress{width:100%;height:14px;accent-color:#0f0fff}.sp-stats{margin:14px 0;color:#58667a}.sp-secondary{background:#fff;border:1px solid #dfe5ee;border-radius:7px;padding:12px 18px;cursor:pointer}.sitemap-parser #sp-downloads{margin-top:18px}.sitemap-parser a{color:#0f0fff}.sitemap-parser .cw-tool__section{padding:16px 0}.sitemap-parser .cw-tool__section details{margin-top:18px}@media(max-width:640px){.sitemap-parser{padding:0 12px;margin-top:18px;font-size:16px}.sitemap-parser .cw-tool__hero h1{font-size:28px}.sitemap-parser .cw-tool__panel,.sitemap-parser .cw-tool__result{padding:22px 18px}.sp-row,.sp-grid{display:grid;grid-template-columns:1fr}.sitemap-parser .cw-tool__button{width:100%}}

/* Breadcrumbs sit outside .cw-tool and retain the standard site arrows. */
.sitemap-parser-navigation .breadcrumbs { min-width: 0; }
.sitemap-parser-navigation .breadcrumbs li:last-child a { padding-left: 50px; }

.sitemap-parser .sp-history { margin-top: 24px; padding-top: 20px; border-top: 1px solid #dfe5ee; }
.sitemap-parser .sp-history__heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; }
.sitemap-parser .sp-history__heading h3 { margin: 0; font-size: 17px; line-height: 1.4; }
.sitemap-parser .sp-history__clear { padding: 5px 0; border: 0; background: transparent; color: #58667a; font: inherit; font-size: 14px; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.sitemap-parser .sp-history__clear:hover { color: #050a99; }
.sitemap-parser .sp-history__hint { margin: 5px 0 12px; font-size: 14px; color: #58667a; }
.sitemap-parser .sp-history__list { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; list-style-image: none; }
.sitemap-parser .sp-history__list li { min-width: 0; margin: 0; padding: 0; }
.sitemap-parser .sp-history__item { display: grid; grid-template-columns: minmax(0, auto) minmax(0, 1fr) auto; align-items: center; gap: 10px; width: 100%; min-height: 44px; margin: 0; padding: 10px 13px; border: 1px solid #dfe5ee; border-radius: 7px; background: #f6f7fa; color: #222837; text-align: left; font: inherit; font-size: 14px; cursor: pointer; }
.sitemap-parser .sp-history__item:hover { border-color: #b9c6ff; background: #f0f3ff; }
.sitemap-parser .sp-history__item strong, .sitemap-parser .sp-history__path { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sitemap-parser .sp-history__path { color: #58667a; }
.sitemap-parser .sp-history__arrow { color: #0f0fff; }
.sitemap-parser .sp-history button:focus-visible { outline: 2px solid #0f0fff; outline-offset: 3px; }
@media (max-width: 640px) {
  .sitemap-parser .sp-history__item { grid-template-columns: minmax(0, 1fr) auto; gap: 2px 10px; }
  .sitemap-parser .sp-history__item strong { grid-column: 1; }
  .sitemap-parser .sp-history__path { grid-column: 1; grid-row: 2; }
  .sitemap-parser .sp-history__arrow { grid-column: 2; grid-row: 1 / 3; }
}

.sitemap-parser .sp-actions { display: flex; flex-wrap: wrap; gap: 10px; }

.sitemap-parser .sp-progress { scroll-margin-top: 24px; }
.sitemap-parser .sp-progress__heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; }
.sitemap-parser .sp-progress__heading h2 { margin: 0; font-size: 23px; }
.sitemap-parser .sp-progress__badge { display: inline-flex; align-items: center; gap: 7px; border-radius: 20px; padding: 5px 12px; background: #f0f3ff; color: #161cba; font-size: 14px; font-weight: bold; }
.sitemap-parser .sp-progress__badge::before { content: ''; width: 7px; height: 7px; background: currentColor; border-radius: 50%; }
.sitemap-parser .sp-progress__state { margin: 12px 0 22px; color: #58667a; }
.sitemap-parser .sp-progress__count { display: flex; flex-direction: column; gap: 2px; margin-bottom: 26px; }
.sitemap-parser .sp-progress__count output { color: #0f0fff; font-size: clamp(42px, 6vw, 64px); font-weight: bold; line-height: 1.1; letter-spacing: -.04em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.sitemap-parser .sp-progress__count span { color: #58667a; font-size: 15px; }
.sitemap-parser .sp-progress__label { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 9px; font-size: 14px; }
.sitemap-parser .sp-progress__label strong { color: #161cba; font-variant-numeric: tabular-nums; }
.sitemap-parser .sp-progress__bar { height: 12px; overflow: hidden; border-radius: 20px; background: #e9edf5; }
.sitemap-parser .sp-progress__bar span { display: block; height: 100%; width: 0; border-radius: inherit; background: linear-gradient(132.6deg,#0f0fff 35.26%,#161cba 74.23%); transition: width .45s ease; }
.sitemap-parser .sp-progress__hint { margin: 9px 0 20px; color: #58667a; font-size: 13px; }
.sitemap-parser .sp-progress__metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; border-top: 1px solid #dfe5ee; padding: 18px 0 24px; }
.sitemap-parser .sp-progress__metrics div { display: flex; flex-direction: column; gap: 3px; }
.sitemap-parser .sp-progress__metrics strong { font-size: 22px; font-variant-numeric: tabular-nums; }
.sitemap-parser .sp-progress__metrics span { color: #58667a; font-size: 14px; }
.sitemap-parser .sp-progress[data-status='done'] .sp-progress__badge { color: #176345; background: #edf8f2; }
.sitemap-parser .sp-progress[data-status='error'] .sp-progress__badge { color: #a72c30; background: #fff0f0; }
.sitemap-parser .sp-progress[data-status='cancelled'] .sp-progress__badge { color: #58667a; background: #f6f7fa; }
@media(max-width:640px) { .sitemap-parser .sp-progress__metrics { gap: 10px; } .sitemap-parser .sp-progress__metrics span { font-size: 12px; } }
@media(prefers-reduced-motion:reduce) { .sitemap-parser .sp-progress__bar span { transition: none; } }

/* Completion replaces progress with a compact result and adjacent exports. */
.sitemap-parser .sp-progress__title { display: flex; align-items: center; gap: 12px; }
.sitemap-parser .sp-success-mark:not([hidden]) { display: grid; place-items: center; width: 42px; height: 42px; flex-shrink: 0; border-radius: 50%; background: #e3f5eb; color: #176345; }
.sitemap-parser .sp-success-mark svg { width: 26px; height: 26px; }
.sitemap-parser .sp-success-mark path { stroke: currentColor; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 24; stroke-dashoffset: 0; }
.sitemap-parser .sp-downloads:not([hidden]) { display: flex; flex-direction: column; gap: 5px; }
.sitemap-parser #sp-downloads.sp-downloads { margin-top: 0; }
.sitemap-parser .sp-downloads strong { font-size: 18px; }
.sitemap-parser .sp-downloads p { margin: 0 0 12px; color: #58667a; font-size: 14px; }
.sitemap-parser .sp-downloads__buttons { display: flex; flex-wrap: wrap; gap: 10px; }
.sitemap-parser .sp-downloads__buttons a { display: inline-flex; justify-content: center; align-items: center; gap: 18px; min-height: 50px; padding: 10px 18px; border: 1px solid #0f0fff; border-radius: 7px; text-decoration: none; font-weight: bold; font-size: 16px; }
.sitemap-parser a.sp-downloads__primary { background: linear-gradient(132.6deg,#0f0fff 35.26%,#161cba 74.23%); color: #fff; }
.sitemap-parser a.sp-downloads__secondary { background: #fff; color: #0f0fff; }
.sitemap-parser .sp-downloads__buttons a:hover { filter: brightness(.92); }
.sitemap-parser .sp-downloads__buttons a:focus-visible { outline: 2px solid #0f0fff; outline-offset: 4px; }
.sitemap-parser .sp-result-summary { margin: 0 0 20px; font-size: 14px; color: #58667a; }
.sitemap-parser .sp-progress[data-status='done'] .sp-result { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 28px; padding: 26px 28px; margin: 0 0 18px; border: 1px solid #dce4ff; border-radius: 12px; background: linear-gradient(115deg,#f0f3ff,#fafbff); animation: sp-result-reveal .55s ease-out both; }
.sitemap-parser .sp-progress[data-status='done'] .sp-progress__count { margin-bottom: 0; }
.sitemap-parser .sp-progress[data-status='done'] .sp-progress__count output { font-size: clamp(52px,7vw,80px); }
.sitemap-parser .sp-progress[data-status='done'] .sp-success-mark { animation: sp-result-reveal .4s ease-out both; }
.sitemap-parser .sp-progress[data-status='done'] .sp-success-mark path { animation: sp-check-draw .45s ease-out both; }
@keyframes sp-result-reveal { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes sp-check-draw { from { stroke-dashoffset: 24; } to { stroke-dashoffset: 0; } }
@media(max-width:640px) {
  .sitemap-parser .sp-progress[data-status='done'] .sp-result { grid-template-columns: minmax(0,1fr); padding: 22px 18px; gap: 22px; }
  .sitemap-parser .sp-downloads__buttons a { flex: 1 1 120px; gap: 10px; }
  .sitemap-parser .sp-progress__title { gap: 8px; }
  .sitemap-parser .sp-success-mark:not([hidden]) { width: 34px; height: 34px; }
  .sitemap-parser .sp-progress__heading h2 { font-size: 21px; }
}
@media(prefers-reduced-motion:reduce) {
  .sitemap-parser .sp-progress[data-status='done'] .sp-result,
  .sitemap-parser .sp-progress[data-status='done'] .sp-success-mark,
  .sitemap-parser .sp-progress[data-status='done'] .sp-success-mark path { animation: none; }
}

@media(max-width:640px) { .sitemap-parser .sp-downloads__buttons a { flex: 1 1 0; gap: 6px; padding: 10px; font-size: 14px; white-space: nowrap; } }

.sitemap-parser .sp-history__item { grid-template-columns: minmax(0,auto) minmax(0,1fr) auto auto; }
.sitemap-parser .sp-history__date { color: #58667a; font-size: 12px; white-space: nowrap; font-variant-numeric: tabular-nums; }
@media(max-width:640px) {
  .sitemap-parser .sp-history__item { grid-template-columns: minmax(0,1fr) auto; gap: 3px 10px; }
  .sitemap-parser .sp-history__date { grid-column: 1; grid-row: 3; }
  .sitemap-parser .sp-history__arrow { grid-row: 1 / 4; }
}
