/* File: assets/css/frontend.css – minor helper styles */
/* ===== Calculator Container ===== */
.sga-calculator-container{
  padding:20px;background:#fff;max-width:800px;margin:0 auto;
}

/* ===== Form ===== */
.sga-form label{display:block;margin-top:10px;font-weight:500;}
.sga-form input{width:100%;padding:8px;margin-top:5px;border:1px solid #ccc;border-radius:4px;}

#sga-run{
  margin-top:15px;padding:12px;width:100%;
  background:#0073aa;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;
}
#sga-run:hover{background:#005f8c;}
#sga-run.sga-busy{opacity:.7;pointer-events:none;}

#sga-calculator .sga-status{margin-top:12px;}

/* ===== Result Cards ===== */
.sga-card{
  padding:18px 20px;margin-top:20px;background:#f9fafb;
  border:1px solid #e5e7eb;border-radius:6px;
}
.sga-card h4{margin:0 0 10px;font-size:18px;font-weight:600;}
.sga-card ul{margin:0;padding-left:18px;}
.sga-card li{margin-bottom:6px;line-height:1.4em;}
.sga-list{margin:0;padding-left:18px;}
.sga-notes{font-size:12px;color:#6b7280;margin-top:8px;}

/* ===== Alerts ===== */
.sga-alert{padding:10px;border-radius:6px;margin:10px 0;}
.sga-alert--info{background:#eef5ff;border:1px solid #cfe0ff;}
.sga-alert--error{background:#ffecec;border:1px solid #ffb6b6;}

/* ===== Table (optional) ===== */
.sga-tbl{width:100%;border-collapse:collapse;}
.sga-tbl td{padding:6px 8px;border-bottom:1px dashed #eee;}

/* ===== Notes / Warn ===== */
.sga-warn{color:#b35b00;font-weight:600;}
.sga-note{margin-top:12px;font-size:12px;color:#666;font-style:italic;}

/* ===== Spinner / Status ===== */
.sga-spinner{padding:20px;text-align:center;font-size:15px;color:#333;}

/* ===== Popup Overlay ===== */
.sga-popup-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.55);
  display:flex;justify-content:center;align-items:center;z-index:99999;animation:fadeIn .25s ease;
}

/* ===== Popup Window ===== */
.sga-popup{
  background:#fff;width:90%;max-width:420px;padding:25px 30px;border-radius:14px;position:relative;
  animation:popupZoom .25s ease;box-shadow:0 8px 35px rgba(0,0,0,.25);
}
.sga-popup h3{text-align:center;margin-bottom:15px;}
.sga-popup label{display:block;margin-bottom:12px;}
.sga-popup input[type="text"],.sga-popup input[type="email"]{
  width:100%;padding:8px 10px;border:1px solid #ccc;border-radius:6px;
}
.sga-popup-consent{font-size:14px;margin:10px 0;}
#sga-popup-send{
  width:100%;padding:10px;background:#008bff;border:none;border-radius:6px;color:#fff;font-size:16px;cursor:pointer;
}
#sga-popup-send:hover{background:#0074d6;}
.sga-popup-close{
  position:absolute;right:12px;top:10px;font-size:28px;background:transparent;border:none;cursor:pointer;color:#555;
}
#sga-popup-status{margin-top:10px;font-size:14px;}
/* --- Modal --- */
.sga-modal { position: fixed; inset: 0; z-index: 9999; }
.sga-modal__backdrop {
  position: absolute; inset: 0; background: rgba(0,0,0,.35);
}
.sga-modal__dialog {
  position: relative; max-width: 680px; margin: 6vh auto; background: #fff;
  border-radius: 10px; box-shadow: 0 10px 30px rgba(0,0,0,.2);
  padding: 0; overflow: hidden;
}
.sga-modal__header, .sga-modal__footer {
  padding: 12px 16px; background: #f7f7f8;
}
.sga-modal__body { padding: 14px 16px; }
.sga-modal__close {
  appearance: none; border: 0; background: transparent; font-size: 24px; line-height: 1; cursor: pointer;
  float: right;
}
/* alerts */
.sga-alert { padding:8px 10px; border-radius:6px; margin:6px 0; }
.sga-alert--ok    { background:#e7f6ed; color:#166534; border:1px solid #bbebc6; }
.sga-alert--error { background:#fde8e8; color:#7f1d1d; border:1px solid #f8c7c7; }
.sga-alert--warn  { background:#fff7ed; color:#7c2d12; border:1px solid #ffedd5; }


/* ===== Animations ===== */
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes popupZoom{from{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}
