/* PRO_SAVED_BREEDING_SETTINGS_001C_COMPACT_LIBRARY_AND_LOAD_GUARDS */
.pro-saved-breeding-workspace-actions,
.pro-saved-breeding-page-library,
.pro-saved-breeding-modal {
  --psbs-border: rgba(141, 174, 255, .22);
  --psbs-glass: rgba(13, 22, 43, .92);
  --psbs-muted: #a9b8d5;
  --psbs-text: #f7f9ff;
  --psbs-accent: #7ea6ff;
}

.pro-saved-breeding-workspace-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 16px;
  padding: 16px 18px;
  border: 1px solid var(--psbs-border);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(22, 36, 68, .96), rgba(14, 23, 43, .9));
  box-shadow: 0 18px 48px rgba(3, 8, 20, .22), inset 0 1px rgba(255,255,255,.04);
}
.pro-saved-breeding-workspace-actions > div:first-child { display:grid; gap:3px; }
.pro-saved-breeding-workspace-actions span,
.pro-saved-breeding-page-header span,
.pro-saved-breeding-card header span { color:#8fb4ff; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.pro-saved-breeding-workspace-actions strong { color:var(--psbs-text); font-size:15px; }
.pro-saved-breeding-workspace-actions small { color:var(--psbs-muted); }
.pro-saved-breeding-workspace-actions > div:last-child { display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }

.pro-saved-breeding-button {
  min-height: 35px;
  padding: 7px 11px;
  border: 1px solid rgba(143,180,255,.28);
  border-radius: 11px;
  background: rgba(28,42,72,.9);
  color:#eaf0ff;
  font: inherit;
  font-weight:750;
  cursor:pointer;
}
.pro-saved-breeding-button:hover:not(:disabled) { transform:translateY(-1px); border-color:rgba(143,180,255,.62); }
.pro-saved-breeding-button.is-primary { background:linear-gradient(135deg,#5b83e6,#7659d8); border-color:transparent; color:white; }
.pro-saved-breeding-button.is-secondary { background:rgba(19,31,55,.78); }
.pro-saved-breeding-button.is-danger-quiet { color:#ffb8c2; border-color:rgba(255,113,132,.25); background:rgba(95,25,40,.18); }
.pro-saved-breeding-button:disabled { opacity:.42; cursor:not-allowed; transform:none; }

.pro-saved-breeding-overlay {
  position:fixed;
  inset:0;
  z-index:2147483646 !important;
  isolation:isolate;
  display:grid;
  place-items:center;
  padding:24px;
}
.pro-saved-breeding-overlay[hidden] { display:none; }
.pro-saved-breeding-backdrop { position:absolute; inset:0; z-index:0; background:rgba(2,6,16,.78); backdrop-filter:blur(12px); }
.pro-saved-breeding-modal { position:relative; z-index:1; width:min(920px,96vw); max-height:90vh; overflow:hidden; border:1px solid var(--psbs-border); border-radius:24px; background:var(--psbs-glass); color:var(--psbs-text); box-shadow:0 34px 100px rgba(0,0,0,.58); }
#proSavedBreedingLoadOverlay .pro-saved-breeding-modal { width:min(1180px,96vw); }
.pro-saved-breeding-modal-header { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; padding:22px 24px 18px; border-bottom:1px solid rgba(141,174,255,.15); background:linear-gradient(135deg,rgba(75,103,174,.22),rgba(44,34,96,.12)); }
.pro-saved-breeding-modal-header span { color:#8fb4ff; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.pro-saved-breeding-modal-header h2 { margin:5px 0 0; font-size:25px; }
.pro-saved-breeding-close { border:1px solid rgba(255,255,255,.15); border-radius:10px; padding:8px 11px; background:rgba(255,255,255,.06); color:#eef3ff; cursor:pointer; }
.pro-saved-breeding-modal-body { padding:22px 24px 24px; overflow:auto; max-height:calc(90vh - 90px); }
.pro-saved-breeding-modal-body.is-library { padding-top:18px; }
.pro-saved-breeding-location { display:flex; justify-content:space-between; gap:12px; padding:12px 14px; border:1px solid rgba(126,166,255,.18); border-radius:12px; background:rgba(126,166,255,.07); margin-bottom:16px; }
.pro-saved-breeding-location span { color:var(--psbs-muted); }
.pro-saved-breeding-field { display:grid; gap:7px; margin-top:15px; }
.pro-saved-breeding-field > span { font-weight:800; }
.pro-saved-breeding-field > span b { margin-left:6px; color:#95a7c7; font-size:11px; text-transform:uppercase; }
.pro-saved-breeding-field input,
.pro-saved-breeding-field textarea { width:100%; box-sizing:border-box; border:1px solid rgba(141,174,255,.22); border-radius:12px; background:rgba(4,11,25,.62); color:#f7f9ff; padding:12px 13px; font:inherit; resize:vertical; }
.pro-saved-breeding-field small { color:var(--psbs-muted); text-align:right; }
.pro-saved-breeding-dates { display:flex; gap:18px; flex-wrap:wrap; margin-top:14px; color:var(--psbs-muted); font-size:13px; }
.pro-saved-breeding-dates strong { color:#eaf0ff; }
.pro-saved-breeding-help { margin-top:16px; padding:12px 14px; border-left:3px solid #7ea6ff; border-radius:8px; background:rgba(126,166,255,.08); color:#cbd7ef; }
.pro-saved-breeding-error { margin-top:14px; padding:11px 13px; border:1px solid rgba(255,100,125,.35); border-radius:10px; background:rgba(110,22,39,.25); color:#ffc1ca; }
.pro-saved-breeding-modal-actions { display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap; margin-top:20px; }
.pro-saved-breeding-library-intro { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:16px; }
.pro-saved-breeding-library-intro p { margin:0; color:#becae1; max-width:680px; }
.pro-saved-breeding-list,
.pro-saved-breeding-page-list { display:grid; gap:10px; align-items:start; }
.pro-saved-breeding-list { grid-template-columns:repeat(auto-fit,minmax(420px,1fr)); }

.pro-saved-breeding-card { display:flex; flex-direction:column; min-width:0; border:1px solid rgba(141,174,255,.18); border-radius:14px; padding:12px 13px; background:linear-gradient(145deg,rgba(21,33,59,.9),rgba(12,21,40,.86)); color:#f5f8ff; box-shadow:0 10px 28px rgba(2,7,18,.16); }
.pro-saved-breeding-card.is-loaded { border-color:rgba(108,220,174,.55); box-shadow:0 0 0 1px rgba(108,220,174,.12),0 10px 28px rgba(2,7,18,.16); }
.pro-saved-breeding-card header { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
.pro-saved-breeding-card header span { font-size:9px; }
.pro-saved-breeding-card h3 { margin:3px 0 0; font-size:16px; line-height:1.18; }
.pro-saved-breeding-loaded { flex:0 0 auto; color:#7ee2b6; font-size:10px; }
.pro-saved-breeding-description-wrap { margin-top:8px; }
.pro-saved-breeding-description { display:-webkit-box; margin:0; overflow:hidden; color:#c7d2e8; white-space:pre-wrap; line-height:1.42; font-size:12px; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.pro-saved-breeding-card.is-description-expanded .pro-saved-breeding-description { display:block; overflow:visible; -webkit-line-clamp:unset; }
.pro-saved-breeding-description em { color:#8291ad; }
.pro-saved-breeding-description-toggle { margin:4px 0 0; padding:0; border:0; background:transparent; color:#9ebcff; font:inherit; font-size:10.5px; font-weight:800; cursor:pointer; }
.pro-saved-breeding-description-toggle:hover,.pro-saved-breeding-description-toggle:focus-visible { color:#c8d8ff; text-decoration:underline; outline:none; }
.pro-saved-breeding-meta { display:flex; flex-wrap:wrap; gap:4px 12px; margin-top:8px; }
.pro-saved-breeding-meta span { color:#97a8c6; font-size:10.5px; }
.pro-saved-breeding-meta strong { color:#e6ecfa; }
.pro-saved-breeding-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin-top:8px; }
.pro-saved-breeding-summary span { min-width:0; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:7px 8px; border-radius:9px; background:rgba(255,255,255,.035); color:#c8d3e8; font-size:10.5px; }
.pro-saved-breeding-summary b { color:#9ebcff; }
.pro-saved-breeding-summary em { overflow:hidden; color:#c8d3e8; font-style:normal; text-overflow:ellipsis; white-space:nowrap; }
.pro-saved-breeding-card-tail { display:flex; align-items:flex-end; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-top:auto; }
.pro-saved-breeding-compatibility { display:inline-flex; margin-top:9px; padding:5px 8px; border-radius:999px; font-size:10px; font-weight:800; }
.pro-saved-breeding-compatibility.is-ready { color:#8ce6bd; background:rgba(57,174,123,.12); }
.pro-saved-breeding-compatibility.is-warning { color:#ffd58f; background:rgba(207,143,44,.13); }
.pro-saved-breeding-compatibility.is-blocked { color:#ffacba; background:rgba(210,65,88,.13); }
.pro-saved-breeding-card footer { display:flex; justify-content:flex-end; gap:7px; flex-wrap:wrap; margin-top:9px; padding-top:9px; border-top:1px solid rgba(255,255,255,.07); }
.pro-saved-breeding-empty { display:grid; gap:6px; padding:28px; text-align:center; border:1px dashed rgba(141,174,255,.22); border-radius:16px; color:#9fb0ce; }
.pro-saved-breeding-empty strong { color:#e8eefb; }
.pro-saved-breeding-empty.is-error { border-color:rgba(255,100,125,.28); }

.pro-saved-breeding-page-library { margin-top:22px; padding:22px; border:1px solid rgba(141,174,255,.18); border-radius:22px; background:linear-gradient(145deg,rgba(15,25,47,.92),rgba(10,17,33,.9)); }
.pro-saved-breeding-page-header { display:flex; justify-content:space-between; align-items:flex-end; gap:20px; margin-bottom:18px; }
.pro-saved-breeding-page-header h2 { margin:5px 0 4px; color:#f6f8ff; }
.pro-saved-breeding-page-header p { margin:0; color:#aebbd3; max-width:760px; }
.pro-saved-breeding-page-list { grid-template-columns:repeat(auto-fit,minmax(310px,1fr)); }

.pro-saved-breeding-toast { position:fixed; right:22px; bottom:22px; z-index:2147483647 !important; max-width:min(520px,calc(100vw - 44px)); padding:13px 16px; border-radius:12px; color:#f7f9ff; background:#1d2d51; box-shadow:0 18px 55px rgba(0,0,0,.4); }
.pro-saved-breeding-toast.is-success { background:#174936; }
.pro-saved-breeding-toast.is-error { background:#6a2331; }
.pro-saved-breeding-toast[hidden] { display:none; }
body.pro-saved-breeding-modal-open { overflow:hidden; }

@media (max-width:760px) {
  .pro-saved-breeding-workspace-actions,
  .pro-saved-breeding-page-header,
  .pro-saved-breeding-library-intro { align-items:stretch; flex-direction:column; }
  .pro-saved-breeding-workspace-actions > div:last-child { justify-content:stretch; }
  .pro-saved-breeding-workspace-actions .pro-saved-breeding-button { flex:1; }
  .pro-saved-breeding-overlay { padding:10px; }
  .pro-saved-breeding-modal { width:100%; max-height:96vh; }
  .pro-saved-breeding-modal-body { padding:17px; }
  .pro-saved-breeding-page-list { grid-template-columns:1fr; }
}


/* Premium Glass replacement guard for pending Sire / Dam-sire drafts. */
.pro-saved-breeding-confirm-overlay[hidden] { display:none!important; }
.pro-saved-breeding-confirm-overlay { position:fixed; inset:0; z-index:2147483647; display:grid; place-items:center; padding:24px; }
.pro-saved-breeding-confirm-backdrop { position:absolute; inset:0; background:rgba(7,16,38,.67); backdrop-filter:blur(10px) saturate(115%); }
.pro-saved-breeding-confirm-panel { position:relative; width:min(700px,calc(100vw - 34px)); padding:26px 28px 24px; border:1px solid rgba(90,176,246,.48); border-radius:24px; color:#fff; background:radial-gradient(circle at 93% 3%,rgba(34,211,238,.20),transparent 36%),radial-gradient(circle at 4% 100%,rgba(147,93,255,.20),transparent 42%),linear-gradient(143deg,rgba(5,18,44,.99),rgba(24,53,132,.975) 54%,rgba(62,49,154,.955)); box-shadow:0 30px 86px rgba(3,12,35,.48),inset 0 1px 0 rgba(255,255,255,.26); }
.pro-saved-breeding-confirm-panel>span { display:block; color:#7fe8f1; font-size:9px; font-weight:950; letter-spacing:.16em; text-transform:uppercase; }
.pro-saved-breeding-confirm-panel h2 { margin:7px 0 8px; color:#fff; font-size:clamp(24px,2.2vw,33px); line-height:1.06; letter-spacing:-.03em; }
.pro-saved-breeding-confirm-panel>p { margin:0; color:rgba(231,241,255,.9); font-size:13px; line-height:1.5; }
.pro-saved-breeding-confirm-impact { margin-top:17px; padding:14px 15px; border:1px solid rgba(151,205,255,.23); border-radius:15px; background:rgba(255,255,255,.09); }
.pro-saved-breeding-confirm-impact b,.pro-saved-breeding-confirm-impact em { display:block; color:rgba(240,248,255,.94); }
.pro-saved-breeding-confirm-impact b { font-size:9px; font-weight:950; letter-spacing:.12em; text-transform:uppercase; }
.pro-saved-breeding-confirm-impact em { margin-top:6px; font-size:11px; font-style:normal; font-weight:700; line-height:1.48; }
.pro-saved-breeding-confirm-actions { display:grid; grid-template-columns:1.15fr .85fr; gap:9px; margin-top:18px; }
.pro-saved-breeding-confirm-actions button { min-height:43px; padding:9px 14px; border:1px solid rgba(197,220,255,.30); border-radius:12px; color:#fff; background:rgba(255,255,255,.10); font-size:11px; font-weight:900; cursor:pointer; box-shadow:inset 0 1px 0 rgba(255,255,255,.14); }
.pro-saved-breeding-confirm-actions button.is-primary { border-color:rgba(95,228,223,.42); background:linear-gradient(135deg,#0d8b84,#2d73eb); box-shadow:0 12px 24px rgba(8,78,160,.25),inset 0 1px 0 rgba(255,255,255,.22); }
.pro-saved-breeding-confirm-actions button.is-danger { border-color:rgba(255,139,160,.50); background:linear-gradient(135deg,#a82443,#d8425c); box-shadow:0 12px 24px rgba(112,15,45,.30),inset 0 1px 0 rgba(255,255,255,.20); }
.pro-saved-breeding-confirm-actions button:hover,.pro-saved-breeding-confirm-actions button:focus-visible { transform:translateY(-1px); border-color:rgba(214,235,255,.62); outline:none; }
@media (max-width:940px) { .pro-saved-breeding-list { grid-template-columns:1fr; } }
@media (max-width:650px) { .pro-saved-breeding-confirm-actions { grid-template-columns:1fr; } .pro-saved-breeding-confirm-panel { padding:22px 19px; } }
