/* SKW Recipe Library frontend styles */
.skwrl-single-recipe,
.skwrl-recipe-archive,
.skwrl-submit-wrap { --skwrl-navy:#1F2D4D; --skwrl-gold:#F4A300; --skwrl-gold-light:#FFC247; --skwrl-bg:#F7F7F7; --skwrl-border:#d9dee7; --skwrl-text:#1f2937; color:var(--skwrl-text); }
.skwrl-panel{background:#fff;border:1px solid var(--skwrl-border);border-radius:18px;padding:1.25rem;box-shadow:0 10px 24px rgba(31,45,77,.06);margin:0 0 1.25rem;}
.skwrl-recipe-hero{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;flex-wrap:wrap;}
.skwrl-chip-row{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 .75rem;}
.skwrl-chip{display:inline-flex;align-items:center;padding:.38rem .7rem;border-radius:999px;background:var(--skwrl-bg);border:1px solid var(--skwrl-border);font-size:.9rem;line-height:1.2;}
.skwrl-contributor,.skwrl-summary{margin:.25rem 0 .75rem;}
.skwrl-recipe-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;}
.skwrl-button,
button.skwrl-button,
a.skwrl-button,
.skwrl-recipe-actions .skwrl-button,
.skwrl-submit-wrap button,
.skwrl-submit-wrap input[type="submit"]{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--skwrl-navy)!important;color:#fff!important;border:1px solid var(--skwrl-navy)!important;border-radius:999px!important;padding:.8rem 1.1rem!important;font-weight:700!important;line-height:1.15!important;text-decoration:none!important;box-shadow:none!important;cursor:pointer;min-height:44px;}
.skwrl-button:hover,
button.skwrl-button:hover,
a.skwrl-button:hover,
.skwrl-submit-wrap button:hover,
.skwrl-submit-wrap input[type="submit"]:hover{background:var(--skwrl-gold)!important;color:var(--skwrl-navy)!important;border-color:var(--skwrl-gold)!important;}
.skwrl-button:focus-visible,
.skwrl-submit-wrap button:focus-visible,
.skwrl-submit-wrap input[type="submit"]:focus-visible{outline:3px solid var(--skwrl-gold-light);outline-offset:2px;}
.skwrl-button--secondary,
button.skwrl-button--secondary,
a.skwrl-button--secondary{background:#fff!important;color:var(--skwrl-navy)!important;border:1px solid var(--skwrl-navy)!important;}
.skwrl-button--secondary:hover,
button.skwrl-button--secondary:hover,
a.skwrl-button--secondary:hover{background:var(--skwrl-navy)!important;color:#fff!important;border-color:var(--skwrl-navy)!important;}
.skwrl-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.8rem;margin:0 0 1.25rem;}
.skwrl-meta-item{background:#fff;border:1px solid var(--skwrl-border);border-radius:16px;padding:.85rem 1rem;}
.skwrl-meta-label{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin-bottom:.25rem;}
.skwrl-single-layout{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:1.25rem;align-items:start;}
.skwrl-list{margin:0;padding-left:1.25rem;}
.skwrl-list li{margin-bottom:.55rem;}
.skwrl-notes p:last-child{margin-bottom:0;}

.skwrl-submit-wrap .skwrl-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;}
.skwrl-submit-wrap .skwrl-form-grid .wide{grid-column:1 / -1;}
.skwrl-submit-wrap label{display:block;font-weight:600;margin-bottom:.35rem;color:var(--skwrl-navy);}
.skwrl-submit-wrap input[type="text"],
.skwrl-submit-wrap input[type="email"],
.skwrl-submit-wrap input[type="file"],
.skwrl-submit-wrap select,
.skwrl-submit-wrap textarea{width:100%;padding:.8rem .9rem;border:1px solid var(--skwrl-border);border-radius:14px;background:#fff;color:var(--skwrl-text);}
.skwrl-submit-wrap textarea{min-height:140px;}
.skwrl-help{font-size:.85rem;color:#6b7280;margin:.35rem 0 0;}

.skwrl-make-mode[hidden]{display:none!important;}
.skwrl-make-mode{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:1rem;}
.skwrl-make-mode__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.56);}
.skwrl-make-mode__dialog{position:relative;z-index:1;width:min(760px,100%);max-height:calc(100vh - 2rem);overflow:auto;background:#fff;border-radius:24px;padding:1.25rem 1.25rem 1.4rem;box-shadow:0 30px 80px rgba(0,0,0,.25);}
.skwrl-make-mode__close{position:absolute;top:.9rem;right:.9rem;border:none;background:transparent;color:var(--skwrl-navy);font-size:1.9rem;line-height:1;cursor:pointer;padding:.25rem .5rem;}
.skwrl-make-mode__meta{display:flex;flex-wrap:wrap;gap:.6rem;margin:0 0 1rem;}
.skwrl-make-mode__meta span{background:var(--skwrl-bg);border:1px solid var(--skwrl-border);padding:.4rem .65rem;border-radius:999px;}
.skwrl-make-mode__stepbox{background:var(--skwrl-bg);border:1px solid var(--skwrl-border);border-radius:18px;padding:1rem;margin:1rem 0;}
.skwrl-make-mode__count{font-size:.9rem;color:#6b7280;margin:0 0 .5rem;}
.skwrl-make-mode__step{font-size:1.2rem;line-height:1.55;font-weight:600;color:var(--skwrl-navy);min-height:96px;display:flex;align-items:center;}
.skwrl-make-mode__actions{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap;}
.skwrl-make-mode__actions .skwrl-button{min-width:160px;}

@media print{
  .no-print,.skwrl-recipe-actions,.skwrl-make-mode{display:none!important;}
  .skwrl-panel,.skwrl-meta-item{box-shadow:none!important;border:1px solid #ddd!important;}
}
@media (max-width: 800px){
  .skwrl-single-layout{grid-template-columns:1fr;}
}
@media (max-width: 640px){
  .skwrl-submit-wrap .skwrl-form-grid{grid-template-columns:1fr;}
  .skwrl-make-mode{padding:.5rem;}
  .skwrl-make-mode__dialog{padding:1rem 1rem 1.15rem;}
  .skwrl-make-mode__actions .skwrl-button{width:100%;}
}

.skwrl-vote-count,.skwrl-card-votes{margin:.6rem 0 0;color:var(--skwrl-navy);font-weight:600;}
.skwrl-status-badge{display:inline-block;padding:.25rem .55rem;border-radius:999px;background:var(--skwrl-bg);border:1px solid var(--skwrl-border);font-weight:600;}
.skwrl-status-pending{background:#fff7ed;border-color:#fdba74;color:#9a3412;}
.skwrl-status-rejected{background:#fef2f2;border-color:#fca5a5;color:#991b1b;}
.skwrl-status-converted{background:#ecfdf5;border-color:#86efac;color:#166534;}
.skwrl-make-mode__progress{height:10px;background:#e5e7eb;border-radius:999px;overflow:hidden;margin:0 0 .85rem;}
.skwrl-make-mode__progress-bar{height:100%;width:0;background:linear-gradient(90deg,var(--skwrl-gold),var(--skwrl-navy));transition:width .2s ease;}
@media (max-width: 640px){
  .skwrl-make-mode__step{font-size:1.38rem;line-height:1.72;min-height:160px;}
  .skwrl-make-mode__count{font-size:1rem;}
}



/* =========================
   1.4.2 desktop archive polish
   ========================= */
.skwrl-archive-wrap{max-width:1320px;margin:0 auto}
.skwrl-filters{background:#f7f4ef;border:1px solid rgba(20,48,88,.08);border-radius:24px;padding:22px 24px;margin:0 0 28px}
.skwrl-filter-grid{display:grid;grid-template-columns:1fr;gap:16px}
.skwrl-filters label{display:block;margin:0 0 8px;font-size:.95rem;font-weight:700;color:#3f2f24}
.skwrl-filters input[type="search"],.skwrl-filters select{width:100%!important;min-height:54px;border-radius:18px!important;border:1px solid rgba(154,95,52,.18)!important;background:#fff!important;color:#2c2a28!important;padding:0 16px!important;font-size:1rem!important;box-shadow:none!important;appearance:none}
.skwrl-actions{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.skwrl-clear{display:inline-flex;align-items:center;min-height:52px;padding:0 6px;text-decoration:none;color:#9a5f34!important;font-weight:700}
.skwrl-clear:hover{color:#7d4c29!important}
@media (min-width: 992px){
  .skwrl-filter-grid--wide{grid-template-columns:1.3fr 1fr 1fr 1fr 1fr auto;gap:16px;align-items:end}
}
.skwrl-results-count{margin:0 0 18px;font-size:.98rem;color:#6a625d;font-weight:600}
.skwrl-card-grid{display:grid;grid-template-columns:1fr;gap:28px}
@media (min-width:900px){.skwrl-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1280px){.skwrl-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.skwrl-card{background:#f7f4ef!important;border:1px solid rgba(20,48,88,.08);border-radius:24px!important;overflow:hidden;box-shadow:0 12px 30px rgba(20,48,88,.06);transition:transform .18s ease,box-shadow .18s ease;height:100%}
.skwrl-card:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(20,48,88,.10)}
.skwrl-card-link{display:flex;flex-direction:column;height:100%;text-decoration:none!important;color:inherit!important}
.skwrl-card-image{aspect-ratio:4/3;overflow:hidden;background:#eee7de}
.skwrl-card-image img{width:100%;height:100%;object-fit:cover;display:block}
.skwrl-card-image--placeholder{display:flex;align-items:center;justify-content:center;color:#9a5f34;font-weight:700}
.skwrl-card-body{padding:22px 22px 20px!important;display:flex;flex-direction:column;flex:1 1 auto}
.skwrl-badge{display:inline-block;margin:0 0 10px;font-size:.8rem;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:#9a5f34;font-weight:700}
.skwrl-card-body h3{margin:0 0 12px!important;font-size:1.28rem!important;line-height:1.25!important;color:#3f2f24!important}
.skwrl-card-body p{margin:0 0 16px!important;font-size:1rem;line-height:1.7;color:#9a5f34!important}
.skwrl-card-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin:0 0 14px;font-size:.95rem;color:#7b6a5d}
.skwrl-card-meta span{white-space:nowrap}
.skwrl-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.skwrl-chip{display:inline-flex;align-items:center;min-height:32px;padding:6px 12px;border-radius:999px;background:#fff;border:1px solid rgba(154,95,52,.16);color:#9a5f34;font-size:.88rem;font-weight:600}
.skwrl-card-votes{margin-top:12px}
@media (max-width:991px){
  .skwrl-filters{padding:18px 16px}
  .skwrl-filter-grid--wide{grid-template-columns:1fr}
  .skwrl-actions{display:flex;flex-direction:column;align-items:stretch}
  .skwrl-button,.skwrl-clear{width:100%;justify-content:center}
}


.skwrl-ingredients-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:0 0 1rem;}
.skwrl-ingredients-head h2{margin:0;}
.skwrl-scale-controls{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;}
.skwrl-scale-controls label{font-size:.9rem;font-weight:700;color:var(--skwrl-navy);}
.skwrl-scale-select{min-height:44px;border:1px solid var(--skwrl-border);border-radius:999px;padding:0 .95rem;background:#fff;color:var(--skwrl-navy);font-weight:700;}
.skwrl-list--ingredients li{display:flex;gap:.35rem;align-items:flex-start;flex-wrap:wrap;}
.skwrl-scaled-amount{font-weight:800;color:var(--skwrl-gold-dark,#9a5f34);}
@media (max-width: 640px){.skwrl-ingredients-head{align-items:stretch}.skwrl-scale-controls{width:100%}.skwrl-scale-select{width:100%}}
