/* Peacock Cichlid Zone Tools — all styles are scoped to .pcz-tools */
.pcz-tools {
  --pcz-ink: #13233c;
  --pcz-muted: #61718a;
  --pcz-navy: #101d34;
  --pcz-accent: #3478ec;
  --pcz-border: #dbe5f1;
  --pcz-soft: #f4f8fd;
  --pcz-radius: 12px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 15px;
  line-height: 1.65;
  color: var(--pcz-ink);
  max-width: 1120px;
  margin: 0 auto 48px;
  box-sizing: border-box;
}
.pcz-tools *, .pcz-tools *::before, .pcz-tools *::after { box-sizing: border-box; }
.pcz-tools h2, .pcz-tools h3, .pcz-tools h4 { color: var(--pcz-ink); letter-spacing: -0.025em; line-height: 1.3; }
.pcz-tools p { margin: 0 0 14px; }
.pcz-tools button, .pcz-tools input, .pcz-tools select { font: inherit; }
.pcz-tools a { text-decoration: none; }
.pcz-tools :focus-visible { outline: 3px solid #82afff; outline-offset: 3px; }
.pcz-hero {
  padding: clamp(26px, 5.5vw, 58px);
  background: radial-gradient(circle at 90% 16%, rgba(49,104,181,.26), transparent 35%), linear-gradient(135deg, #0b172b, #182940);
  border-radius: 15px; color: #f8fbff; margin: 0 0 24px;
}
.pcz-hero-label { font-size: 11px; font-weight: 800; letter-spacing: .14em; color: #a9c7f9; margin-bottom: 12px; }
.pcz-tools .pcz-hero h2 { color: #fff; margin: 0 0 12px; font-weight: 800; font-size: clamp(25px, 3.5vw, 40px); }
.pcz-tools .pcz-hero p { color: #d4dfeb; max-width: 640px; font-size: clamp(14px, 1.7vw, 16px); margin-bottom: 0; }
.pcz-hero-stats { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.pcz-hero-stats span { background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.16); padding: 6px 11px; border-radius: 50px; font-size: 12px; color: #e3edff; }
.pcz-hero-stats strong { color: #fff; }
.pcz-hub-controls { margin: 16px 0 18px; }
.pcz-search-label { display: block; font-weight: 700; font-size: 13px; margin-bottom: 8px; }
.pcz-search-wrap { position: relative; max-width: 530px; }
.pcz-search-wrap > span { position: absolute; top: 4px; left: 14px; font-size: 25px; color: var(--pcz-muted); pointer-events: none; }
.pcz-search-wrap input { width: 100%; background: #fff; min-height: 48px; border: 1px solid #d1dfee; border-radius: 10px; padding: 11px 14px 11px 43px; color: var(--pcz-ink); }
.pcz-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 9px; }
.pcz-tools .pcz-chip { border: 1px solid var(--pcz-border); border-radius: 100px; padding: 7px 13px; color: #354c66; font-size: 12px; font-weight: 650; line-height: 1.25; background: #fff; cursor: pointer; min-height: 34px; }
.pcz-tools .pcz-chip:hover { background: #eaf2ff; }
.pcz-tools .pcz-chip.is-active { border-color: var(--pcz-accent); background: #e9f1ff; color: #1552ac; }
.pcz-count { color: var(--pcz-muted); font-size: 12px; }
.pcz-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
.pcz-tools .pcz-tool-card { display: flex; flex-direction: column; min-width: 0; background: #fff; border: 1px solid #dce4ed; border-radius: 12px; padding: 19px 18px 16px; box-shadow: 0 2px 6px rgba(15,34,61,.035); color: var(--pcz-ink); min-height: 205px; transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease; }
.pcz-tools .pcz-tool-card[hidden] { display: none !important; }
.pcz-tools a.pcz-tool-card:hover { transform: translateY(-3px); border-color: #8aaff1; box-shadow: 0 12px 24px rgba(30,56,98,.11); }
.pcz-card-top { display: flex; justify-content: space-between; align-items: start; margin-bottom: 14px; }
.pcz-card-icon { background: #edf4ff; color: #3166bd; display: grid; place-items: center; width: 37px; height: 37px; border-radius: 9px; font-size: 12px; font-weight: 800; letter-spacing: .04em; font-variant-numeric: tabular-nums; }
.pcz-card-arrow { display: inline-block; width: 9px; height: 9px; margin: 5px 3px 0 0; border-top: 2px solid #7195d3; border-right: 2px solid #7195d3; transform: rotate(45deg); }
.pcz-tools .pcz-tool-card h3 { margin: 0 0 7px; font-size: 15px; font-weight: 800; }
.pcz-tools .pcz-tool-card p { font-size: 12px; line-height: 1.5; color: var(--pcz-muted); margin: 0 0 17px; }
.pcz-card-bottom { display: flex; justify-content: space-between; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: auto; }
.pcz-category-label { font-size: 11px; color: #6c809b; }
.pcz-status { font-size: 11px; color: #75859c; font-weight: 700; }
.pcz-status.pcz-ready { color: #1765bf; }
.pcz-empty { padding: 25px; background: #f4f8fc; border: 1px solid var(--pcz-border); border-radius: 10px; margin-top: 12px; }
.pcz-editorial { margin-top: 44px; border: 1px solid var(--pcz-border); border-radius: 14px; padding: clamp(22px, 4.4vw, 42px); background: #fff; }
.pcz-section-kicker { color: #4779be; font-size: 11px; font-weight: 800; letter-spacing: .1em; margin-bottom: 7px; }
.pcz-tools .pcz-editorial h2 { font-size: clamp(23px, 3vw, 30px); margin: 0 0 18px; }
.pcz-tools .pcz-editorial h3 { font-size: 18px; margin: 23px 0 9px; }
.pcz-tools .pcz-editorial p { font-size: 14px; line-height: 1.85; color: #43546d; }
.pcz-faq { border-top: 1px solid var(--pcz-border); padding-top: 4px; margin-top: 22px; }
.pcz-faq details { border-bottom: 1px solid #e7edf4; padding: 14px 0; }
.pcz-faq summary { font-size: 14px; font-weight: 750; color: #20334c; cursor: pointer; }
.pcz-faq details p { margin: 12px 0 0; }
.pcz-breadcrumb { font-size: 13px; color: #8290a4; margin: 4px 0 15px; }
.pcz-breadcrumb a { color: #2c63b0; }
.pcz-breadcrumb span { margin-left: 6px; }
.pcz-tool-hero { margin-bottom: 20px; }
.pcz-tool-layout { display: grid; grid-template-columns: minmax(0, 1.95fr) minmax(205px, .9fr); align-items: start; gap: 17px; }
.pcz-form-panel, .pcz-tip-panel, .pcz-result-panel { padding: 25px; border: 1px solid var(--pcz-border); border-radius: 13px; background: #fff; }
.pcz-panel-heading { display: flex; align-items: start; gap: 12px; margin-bottom: 23px; }
.pcz-step { background: #eaf2ff; border-radius: 8px; padding: 9px; font-weight: 850; font-size: 13px; color: #255eac; }
.pcz-tools .pcz-panel-heading h3 { font-size: 19px; margin: 0 0 5px; }
.pcz-tools .pcz-panel-heading p { font-size: 13px; color: var(--pcz-muted); margin: 0; }
.pcz-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.pcz-field { margin-bottom: 17px; min-width: 0; }
.pcz-field label { display: block; font-size: 13px; font-weight: 750; margin-bottom: 7px; }
.pcz-required { color: #a84a42; }
.pcz-optional { font-size: 11px; color: var(--pcz-muted); font-weight: 500; }
.pcz-tools .pcz-field input, .pcz-tools .pcz-field select { width: 100%; background: #fff; color: #182c45; border: 1px solid #ccd8e8; border-radius: 8px; min-height: 44px; padding: 9px 10px; font-size: 13px; }
.pcz-tools .pcz-field select { cursor: pointer; }
.pcz-tools .pcz-field small { display: block; margin-top: 5px; font-size: 11px; color: var(--pcz-muted); line-height: 1.5; }
.pcz-input-with-unit { display: grid; grid-template-columns: minmax(0, 1fr) 86px; gap: 5px; }
.pcz-tools .pcz-field .pcz-input-with-unit select { padding-left: 6px; }
.pcz-form-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 8px; }
.pcz-tools .pcz-btn { border-radius: 9px; border: 1px solid transparent; font-weight: 750; padding: 11px 17px; min-height: 43px; font-size: 13px; cursor: pointer; }
.pcz-tools .pcz-primary { background: #266be0; color: #fff; }
.pcz-tools .pcz-primary:hover { background: #1759c6; }
.pcz-tools .pcz-secondary { background: #fff; border-color: #cddbed; color: #2b4261; }
.pcz-tools .pcz-secondary:hover { background: #f1f5fc; }
.pcz-tip-panel { background: #f5f8fd; }
.pcz-tip-icon { display: inline-block; padding: 5px 8px; border-radius: 6px; background: #e2ebf9; color: #2b5e9d; font-size: 10px; font-weight: 800; letter-spacing: .09em; line-height: 1; }
.pcz-tools .pcz-tip-panel h3 { font-size: 17px; margin: 10px 0; }
.pcz-tools .pcz-tip-panel p, .pcz-tools .pcz-tip-panel li { font-size: 13px; line-height: 1.7; color: #52657f; }
.pcz-tip-panel ul { margin: 13px 0 0; padding-left: 20px; }
.pcz-result-panel { margin-top: 21px; scroll-margin-top: 25px; }
.pcz-result-panel[hidden] { display: none; }
.pcz-result-banner { padding: 18px; border-radius: 10px; border: 1px solid #c9dbee; background: #eef5ff; }
.pcz-result-banner[data-level="higher"] { background: #fff0eb; border-color: #f2c2b4; }
.pcz-result-banner[data-level="caution"] { background: #fff8e8; border-color: #ead9ab; }
.pcz-result-banner[data-level="conditional"] { background: #e9f8f1; border-color: #b2dbc7; }
.pcz-result-banner strong { display: block; font-size: 17px; color: #243953; margin-bottom: 5px; }
.pcz-tools .pcz-result-banner p { margin-bottom: 0; font-size: 13px; }
.pcz-result-metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin: 16px 0 22px; }
.pcz-metric { padding: 12px; background: var(--pcz-soft); border: 1px solid #e3ecf7; border-radius: 9px; }
.pcz-metric strong { display: block; font-size: 16px; color: #172c47; }
.pcz-metric span { display: block; color: var(--pcz-muted); font-size: 11px; margin-top: 2px; }
.pcz-tools .pcz-result-panel h4 { font-size: 15px; margin: 18px 0 9px; }
.pcz-guidance-list { padding-left: 22px; margin: 0 0 16px; }
.pcz-guidance-list li { margin-bottom: 9px; font-size: 13px; line-height: 1.65; color: #475b76; }
.pcz-tools .pcz-result-disclaimer { font-size: 12px; color: #6b7a8f; background: #f4f7fb; border-radius: 8px; padding: 13px; }
.pcz-copy-feedback { font-size: 12px; margin-left: 9px; color: #385e88; }
.pcz-related { margin-top: 35px; }
.pcz-tools .pcz-related h2 { font-size: 22px; margin: 0 0 14px; }
.pcz-related-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.pcz-tools .pcz-related-card { display: flex; flex-direction: column; gap: 5px; padding: 17px; border: 1px solid var(--pcz-border); border-radius: 10px; color: #1c385e; background: #fff; }
.pcz-tools a.pcz-related-card:hover { border-color: #85abe9; background: #f8fbff; }
.pcz-related-card span { align-self: flex-start; background: #edf4ff; color: #3166bd; border-radius: 6px; padding: 5px 7px; font-size: 10px; font-weight: 800; letter-spacing: .05em; line-height: 1.25; }
.pcz-related-card strong { font-size: 13px; }
.pcz-related-card small { font-size: 11px; color: var(--pcz-muted); }
.pcz-related-card.is-upcoming { background: #f7f9fc; }
@media (max-width: 800px) {
  .pcz-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pcz-tool-layout { grid-template-columns: 1fr; }
  .pcz-tip-panel { order: 2; }
}
@media (max-width: 520px) {
  .pcz-tools { font-size: 14px; }
  .pcz-hero { border-radius: 11px; }
  .pcz-card-grid, .pcz-field-grid, .pcz-related-grid { grid-template-columns: 1fr; }
  .pcz-tools .pcz-tool-card { min-height: 0; padding: 16px; }
  .pcz-form-panel, .pcz-tip-panel, .pcz-result-panel { padding: 17px; }
  .pcz-result-metrics { grid-template-columns: 1fr; }
  .pcz-tools .pcz-btn { flex: 1; }
  .pcz-hero-stats { gap: 6px; }
}
@media (prefers-reduced-motion: reduce) { .pcz-tools .pcz-tool-card { transition: none; } }

/* Version 1.1: clear short answers and question-based editorial guides */
.pcz-tools .pcz-editorial .pcz-direct-answer {
  padding: 17px 20px;
  margin: 0 0 25px;
  border-left: 4px solid #3777d6;
  border-radius: 0 10px 10px 0;
  background: #edf5ff;
  color: #233f60;
  font-size: 14px;
  line-height: 1.75;
}
.pcz-tools .pcz-editorial a { color: #1761ae; text-decoration: underline; text-underline-offset: 2px; }
.pcz-tools .pcz-faq h2 { margin: 14px 0 11px; font-size: clamp(21px, 2.6vw, 27px); }
.pcz-tools .pcz-faq summary { padding-right: 25px; }
.pcz-tools .pcz-faq summary:hover { color: #1757a2; }
.pcz-tools .pcz-faq details p { max-width: 750px; }

/* Design option 2: Lake Blue. A light and friendly aquarium-inspired layout. */
.pcz-tools.pcz-theme-lake {
  --pcz-ink: #153449;
  --pcz-muted: #536e7b;
  --pcz-border: #cde5e8;
  --pcz-accent: #007b91;
  --pcz-soft: #f0faf9;
}
.pcz-tools.pcz-theme-lake .pcz-hero {
  background: radial-gradient(circle at 90% 10%, #b8ece7 0%, transparent 38%), linear-gradient(117deg,#e5f9f9,#f0f8ff);
  color: #12364e;
  border: 1px solid #c8e8e8;
  border-radius: 24px;
}
.pcz-tools.pcz-theme-lake .pcz-hero-label { color: #087b8c; }
.pcz-tools.pcz-theme-lake .pcz-hero h2 { color: #12364e; }
.pcz-tools.pcz-theme-lake .pcz-hero p { color: #365e6d; }
.pcz-tools.pcz-theme-lake .pcz-hero-stats span { background: #fff; border-color: #d4e9ea; color: #345a68; }
.pcz-tools.pcz-theme-lake .pcz-hero-stats strong { color: #06758b; }
.pcz-tools.pcz-theme-lake .pcz-tool-card { border: 1px solid #d4e9ed; border-top: 4px solid #6fb9c3; border-radius: 16px; background: #fdffff; box-shadow: 0 9px 24px rgba(8,89,105,.055); }
.pcz-tools.pcz-theme-lake a.pcz-tool-card:hover { border-color: #3ba2b1; box-shadow: 0 13px 28px rgba(8,89,105,.12); }
.pcz-tools.pcz-theme-lake .pcz-card-icon { border-radius: 50%; background: #dff5f3; color: #04798a; }
.pcz-tools.pcz-theme-lake .pcz-card-arrow { color: #1595a0; }
.pcz-tools.pcz-theme-lake .pcz-chip.is-active { background: #dbf3f1; border-color: #299fac; color: #085e6e; }
.pcz-tools.pcz-theme-lake .pcz-chip:hover { background: #e4f7f5; }
.pcz-tools.pcz-theme-lake .pcz-status.pcz-ready { color: #007d91; }
.pcz-tools.pcz-theme-lake .pcz-section-kicker, .pcz-tools.pcz-theme-lake .pcz-breadcrumb a { color: #087f8a; }
.pcz-tools.pcz-theme-lake .pcz-editorial .pcz-direct-answer { background: #e8f7f5; border-left-color: #168d9b; color: #234f5b; }
.pcz-tools.pcz-theme-lake .pcz-editorial a { color: #007d91; }
.pcz-tools.pcz-theme-lake .pcz-faq summary:hover { color: #006579; }
.pcz-tools.pcz-theme-lake .pcz-primary { background: #008e9b; }
.pcz-tools.pcz-theme-lake .pcz-primary:hover { background: #006e7c; }
.pcz-tools.pcz-theme-lake .pcz-step { background: #e3f6f4; color: #087787; }

/* Design option 3: Clean Editorial. Minimal white and sand with compact cards. */
.pcz-tools.pcz-theme-minimal {
  --pcz-ink: #283345;
  --pcz-muted: #697789;
  --pcz-border: #d7dbe3;
  --pcz-accent: #9d6d30;
  --pcz-soft: #f9f7f3;
}
.pcz-tools.pcz-theme-minimal .pcz-hero { background: #fcfbf8; color: #222c39; border: 1px solid #e8dfd3; border-left: 6px solid #a77a42; border-radius: 6px; padding: clamp(24px, 4vw, 44px); }
.pcz-tools.pcz-theme-minimal .pcz-hero-label { color: #9e6a29; }
.pcz-tools.pcz-theme-minimal .pcz-hero h2 { color: #232b36; font-family: Georgia, 'Times New Roman', serif; letter-spacing: -.03em; }
.pcz-tools.pcz-theme-minimal .pcz-hero p { color: #556073; }
.pcz-tools.pcz-theme-minimal .pcz-hero-stats span { background: #fff; border-color: #e7e1d8; color: #556073; }
.pcz-tools.pcz-theme-minimal .pcz-hero-stats strong { color: #4b3d2b; }
.pcz-tools.pcz-theme-minimal .pcz-card-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 11px; }
.pcz-tools.pcz-theme-minimal .pcz-tool-card { min-height: 190px; border-radius: 6px; box-shadow: none; padding: 17px 15px 13px; border-color: #dfe1e6; }
.pcz-tools.pcz-theme-minimal a.pcz-tool-card:hover { box-shadow: 0 5px 17px rgba(42,49,64,.09); border-color: #aa8a60; }
.pcz-tools.pcz-theme-minimal .pcz-card-icon { background: #f5efe4; border-radius: 5px; color: #815d31; }
.pcz-tools.pcz-theme-minimal .pcz-card-arrow { color: #9b7e59; }
.pcz-tools.pcz-theme-minimal .pcz-tool-card h3 { font-size: 14px; }
.pcz-tools.pcz-theme-minimal .pcz-chip { border-radius: 5px; }
.pcz-tools.pcz-theme-minimal .pcz-chip.is-active { background: #f4ede1; border-color: #bfa583; color: #725126; }
.pcz-tools.pcz-theme-minimal .pcz-chip:hover { background: #f6f1e9; }
.pcz-tools.pcz-theme-minimal .pcz-section-kicker, .pcz-tools.pcz-theme-minimal .pcz-breadcrumb a { color: #986a34; }
.pcz-tools.pcz-theme-minimal .pcz-editorial { border-radius: 6px; }
.pcz-tools.pcz-theme-minimal .pcz-editorial .pcz-direct-answer { background: #f9f3e9; border-left-color: #a77b46; color: #504434; }
.pcz-tools.pcz-theme-minimal .pcz-editorial a { color: #986629; }
.pcz-tools.pcz-theme-minimal .pcz-faq summary:hover { color: #986629; }
.pcz-tools.pcz-theme-minimal .pcz-primary { background: #845e30; }
.pcz-tools.pcz-theme-minimal .pcz-primary:hover { background: #654621; }
.pcz-tools.pcz-theme-minimal .pcz-step { background: #f4eee4; color: #845e30; }
@media (max-width: 1050px) { .pcz-tools.pcz-theme-minimal .pcz-card-grid { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width: 800px) { .pcz-tools.pcz-theme-minimal .pcz-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 520px) { .pcz-tools.pcz-theme-minimal .pcz-card-grid { grid-template-columns: 1fr; } }


/* v1.2 — Native Gutenberg content below shortcode. Every heading and FAQ is editable. */
.pcz-editable-guide {
  box-sizing: border-box;
  width: 100%;
  max-width: 1120px;
  margin: 28px auto 54px;
  padding: clamp(20px, 4.4vw, 42px);
  border: 1px solid #dbe5f1;
  border-radius: 14px;
  background: #fff;
  color: #13233c;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}
.pcz-editable-guide h2 { margin: 0 0 18px; font-size: clamp(23px, 3vw, 30px); line-height: 1.3; letter-spacing: -.025em; color: #13233c; }
.pcz-editable-guide h3 { margin: 23px 0 9px; font-size: 18px; line-height: 1.35; color: #13233c; }
.pcz-editable-guide p { margin: 0 0 15px; line-height: 1.85; font-size: 14px; color: #43546d; }
.pcz-editable-guide p.pcz-section-kicker { color: #4779be; font-weight: 800; font-size: 11px; letter-spacing: .10em; margin-bottom: 7px; }
.pcz-editable-guide p.pcz-direct-answer { padding: 17px 20px; border-left: 4px solid #3777d6; border-radius: 0 10px 10px 0; background: #edf5ff; color: #233f60; margin: 0 0 25px; }
.pcz-editable-guide a { color: #1761ae; text-decoration: underline; text-underline-offset: 2px; }
.pcz-editable-guide .pcz-faq { border-top: 1px solid #dbe5f1; padding-top: 10px; margin-top: 27px; }
.pcz-editable-guide .pcz-faq details { border-bottom: 1px solid #e7edf4; padding: 14px 0; }
.pcz-editable-guide .pcz-faq summary { color: #20334c; cursor: pointer; font-size: 14px; font-weight: 750; }
.pcz-editable-guide .pcz-faq details p { margin: 12px 0 0; }
.pcz-editable-guide .pcz-faq h2 { margin: 14px 0 11px; }
@media (max-width: 520px) { .pcz-editable-guide { padding: 20px 17px; } }
/* v1.3 stocking tool validation feedback */
.pcz-tools .pcz-form-error { color: #ad3030; font-size: 13px; margin: 0 0 8px; }
.pcz-tools .pcz-form-error:empty { display: none; }
/* v1.3 checkbox groups and small helper text are scoped to tool pages */
.pcz-tools .pcz-check-fieldset { border: 1px solid #dbe5f1; border-radius: 10px; padding: 14px 15px 16px; margin: 4px 0 18px; min-width: 0; }
.pcz-tools .pcz-check-fieldset legend { font-size: 13px; font-weight: 750; color: #20334c; padding: 0 7px; }
.pcz-tools .pcz-check-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.pcz-tools .pcz-check-grid label { display: flex; align-items: start; gap: 8px; font-size: 12.5px; line-height: 1.55; cursor: pointer; }
.pcz-tools .pcz-check-grid input { flex: none; margin-top: 4px; accent-color: #266be0; }
.pcz-tools .pcz-form-note { padding: 12px 14px; background: #f4f8fd; border-radius: 9px; color: #53677f; font-size: 12px; }
.pcz-tools .pcz-target-note { background: #edf5ff; padding: 12px 15px; border-radius: 9px; font-size: 13px; }
@media (max-width:520px) {.pcz-tools .pcz-check-grid {grid-template-columns:1fr;}}

/* v1.4 nitrogen cycle trend reader — scoped to plugin pages */
.pcz-tools .pcz-cycle-history { margin-top: 22px; }
.pcz-tools .pcz-cycle-table-wrap { overflow-x:auto; max-width:100%; }
.pcz-tools .pcz-cycle-table { width:100%; border-collapse:collapse; min-width:540px; font-size:12px; }
.pcz-tools .pcz-cycle-table th, .pcz-tools .pcz-cycle-table td { text-align:left; padding:10px 9px; border-bottom:1px solid #dce6f2; white-space:nowrap; }
.pcz-tools .pcz-cycle-table th { color:#243c5c; background:#f4f8fd; }
.pcz-tools .pcz-cycle-delete { border:1px solid #d8e2ef; background:#fff; color:#5a3658; border-radius:6px; padding:5px 8px; cursor:pointer; }
.pcz-tools .pcz-cycle-visual { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:12px 0 20px; color:#53677f; font-size:12px; }
.pcz-tools .pcz-cycle-spark { border:1px solid #dce6f2; border-radius:9px; padding:12px; min-width:0; }
.pcz-tools .pcz-cycle-spark strong { font-size:12px; display:block; }
.pcz-tools .pcz-cycle-spark small { color:#53677f; font-size:10px; }
@media(max-width:720px){.pcz-tools .pcz-cycle-visual{grid-template-columns:1fr;}}
/* Ensure toggle fields collapse cleanly, even when a theme assigns custom display rules. */
.pcz-tools [hidden] { display:none!important; }

/* v2.0 interactive territory sketch and breeding log */
.pcz-tools .pcz-rock-controls {display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0;}
.pcz-tools .pcz-rock-controls label {font-weight:650;font-size:13px;}
.pcz-tools .pcz-rock-controls select {max-width:240px;padding:9px;border-radius:8px;border:1px solid #cad8e8;}
.pcz-tools .pcz-rock-grid {display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;background:#e9eff8;padding:8px;border-radius:12px;border:1px solid #cbd9ed;max-width:730px;}
.pcz-tools .pcz-rock-cell {min-width:0;aspect-ratio:1;display:block;padding:0;border:1px solid #cfdbeb;background:#fff;border-radius:4px;cursor:pointer;}
.pcz-tools .pcz-rock-cell.is-rock {background:#5a7489;border-color:#425c72;}
.pcz-tools .pcz-rock-cell.is-hide {background:#4a958a;border-color:#2b776f;}
.pcz-tools .pcz-rock-cell:focus-visible {outline:3px solid #efba52;outline-offset:1px;}
.pcz-tools .pcz-rock-cell:hover {filter:brightness(.93);}
.pcz-tools .pcz-breeding-log {margin-top:22px;}
.pcz-tools .pcz-breeding-entry {display:flex;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid #dae3f0;padding:10px 0;overflow-wrap:anywhere;}
.pcz-tools .pcz-breeding-entry .pcz-btn {flex:none;padding:7px 11px;}
@media(max-width:640px){.pcz-tools .pcz-rock-grid{gap:2px;padding:4px;}.pcz-tools .pcz-rock-cell {border-radius:2px;}}
