
/* Front-end public UI for Zamen Weight Quality */
.flq-public-shell{direction:rtl;max-width:1240px;margin:28px auto;padding:0 14px;font-family:inherit !important}
.flq-public-bg{background:linear-gradient(180deg,#f3fbf8 0%,#f7fafc 40%,#ffffff 100%);border:1px solid #e5edf0;border-radius:28px;padding:18px;box-shadow:0 18px 60px rgba(15,23,42,.06)}
.flq-public-hero{background:linear-gradient(135deg,#0b7d68 0%,#0f5d73 100%);color:#fff;border-radius:24px;padding:28px 26px;display:grid !important;grid-template-columns:1.4fr .95fr;gap:20px;align-items:center;overflow:hidden;position:relative}
.flq-public-hero:before{content:"";position:absolute;left:-60px;top:-60px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.08)}
.flq-public-hero:after{content:"";position:absolute;left:22%;bottom:-70px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.06)}
.flq-public-kicker{display:inline-flex !important;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.14);font-size:12px;font-weight:700;margin-bottom:10px}
.flq-public-title{margin:0 0 8px !important;font-size:34px !important;line-height:1.2 !important;color:#fff !important;font-weight:800 !important}
.flq-public-subtitle{margin:0 !important;color:rgba(255,255,255,.92) !important;font-size:15px !important;line-height:1.9 !important;max-width:760px}
.flq-public-hero-points{display:flex !important;flex-wrap:wrap;gap:10px;margin-top:16px}
.flq-public-point{display:inline-flex !important;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.12);font-size:12px;font-weight:700}
.flq-public-mini-grid{display:grid !important;grid-template-columns:1fr 1fr;gap:12px}
.flq-public-mini{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:14px 14px 12px;backdrop-filter:blur(4px)}
.flq-public-mini .label{font-size:12px;color:rgba(255,255,255,.8);margin-bottom:6px}
.flq-public-mini .value{font-size:24px;font-weight:800;line-height:1.15;color:#fff}
.flq-public-mini .sub{font-size:11px;color:rgba(255,255,255,.82);margin-top:4px;line-height:1.6}
.flq-public-stepbar{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.flq-public-step{background:#fff;border:1px solid #e6edf0;border-radius:20px;padding:16px 16px 15px;box-shadow:0 6px 18px rgba(15,23,42,.04)}
.flq-public-step .num{display:inline-flex !important;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:#e7f7f3;color:#0b7d68;font-weight:800;margin-bottom:8px}
.flq-public-step h4{margin:0 0 6px !important;font-size:15px !important;color:#143d56 !important}
.flq-public-step p{margin:0 !important;color:#5b6e7e !important;font-size:13px !important;line-height:1.8 !important}
.flq-public-info-row{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.flq-public-info-card{display:flex !important;gap:12px;align-items:flex-start;background:#fff;border:1px solid #e8eef2;border-radius:20px;padding:16px;box-shadow:0 8px 22px rgba(15,23,42,.04)}
.flq-public-info-card .icon{flex:0 0 42px;width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#e8f7f3;font-size:20px}
.flq-public-info-card strong{display:block;color:#163b56;font-size:15px;margin-bottom:4px}
.flq-public-info-card p{margin:0;color:#617687;font-size:12px;line-height:1.85}
.flq-public-grid-main{display:grid !important;grid-template-columns:1.1fr .9fr;gap:18px;margin-top:18px}
.flq-public-panel{background:#fff;border:1px solid #e6edf0;border-radius:22px;padding:18px;box-shadow:0 8px 26px rgba(15,23,42,.04)}
.flq-public-panel.soft{background:linear-gradient(180deg,#ffffff 0%,#fbfdfd 100%)}
.flq-public-panel-head{display:flex !important;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.flq-public-panel-title{margin:0 !important;font-size:19px !important;color:#143d56 !important;font-weight:800 !important}
.flq-public-panel-desc{margin:5px 0 0 !important;color:#66788a !important;font-size:13px !important;line-height:1.8 !important}
.flq-public-badge{display:inline-flex !important;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:#edf8f6;color:#0b7d68;font-size:12px;font-weight:700}
.flq-public-search{position:relative}
.flq-public-input{width:100% !important;padding:13px 14px !important;border:1px solid #cfdae1 !important;border-radius:14px !important;background:#fff !important;transition:.18s;border-color:#d6e0e5 !important;box-shadow:inset 0 1px 2px rgba(0,0,0,.02)}
.flq-public-input:focus,.flq-public-shell .flq-field input:focus,.flq-public-shell .flq-field textarea:focus{outline:none !important;border-color:#0b8f79 !important;box-shadow:0 0 0 4px rgba(11,143,121,.10) !important}
#flq-public-results{display:none;position:absolute;z-index:30;right:0;left:0;top:76px;background:#fff;border:1px solid #d9e0e5;border-radius:16px;box-shadow:0 18px 38px rgba(15,23,42,.11);max-height:330px;overflow:auto}
.flq-public-result{padding:12px 13px;border-bottom:1px solid #edf0f2;cursor:pointer;display:flex !important;justify-content:space-between;gap:10px;align-items:center}
.flq-public-result:last-child{border-bottom:none}
.flq-public-result:hover{background:#f7fbfb}
.flq-public-btn{display:inline-flex !important;align-items:center;justify-content:center;background:linear-gradient(135deg,#0b8c76 0%,#0d6f81 100%) !important;color:#fff !important;border:0 !important;border-radius:12px !important;padding:11px 18px !important;text-decoration:none !important;cursor:pointer;font-weight:800;box-shadow:0 10px 20px rgba(11,124,104,.18);transition:transform .12s ease,box-shadow .12s ease}
.flq-public-btn:hover{transform:translateY(-1px);box-shadow:0 14px 24px rgba(11,124,104,.20)}
.flq-public-btn.secondary{background:#fff !important;color:#24556d !important;border:1px solid #c8d7df !important;box-shadow:none !important}
.flq-public-btn.ghost{background:#f3fbf8 !important;color:#0b7d68 !important;border:1px solid #dcefeb !important;box-shadow:none !important}
.flq-public-patient-card{display:grid !important;grid-template-columns:1fr auto;gap:14px;align-items:center}
.flq-public-patient-name{font-size:18px !important;color:#133a55 !important;font-weight:800 !important;margin:0 !important}
.flq-public-patient-meta{display:flex !important;flex-wrap:wrap;gap:8px;margin-top:6px}
.flq-public-meta-chip{display:inline-flex !important;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#f5f8fa;color:#486173;font-size:12px}
.flq-public-stats{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.flq-public-stat{padding:16px;border:1px solid #e8eef2;border-radius:18px;background:linear-gradient(180deg,#ffffff 0%,#fbfcfd 100%)}
.flq-public-stat .label{font-size:12px;color:#718192;margin-bottom:6px}
.flq-public-stat .value{font-size:24px;font-weight:800;color:#163b56;line-height:1.1}
.flq-public-stat .sub{font-size:11px;color:#718192;margin-top:5px;line-height:1.6}
.flq-public-form-grid{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.flq-public-shell .flq-field label{font-size:12px !important;color:#4d6272 !important;font-weight:700 !important;margin-bottom:7px !important}
.flq-public-shell .flq-field input,.flq-public-shell .flq-field textarea{width:100% !important;border-radius:14px !important;border:1px solid #cfdae1 !important;background:#fff !important;padding:11px 12px !important;font-family:inherit !important}
.flq-public-shell .flq-field textarea{min-height:96px !important}
.flq-public-check{display:flex !important;align-items:flex-start;gap:10px;padding:12px 13px;border:1px dashed #cfe0de;background:#f8fdfc;border-radius:16px;margin-top:6px}
.flq-public-check input{margin-top:4px}
.flq-public-section-title{display:flex !important;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin:20px 0 10px}
.flq-public-section-title h3{margin:0 !important;font-size:20px !important;color:#143d56 !important}
.flq-public-section-title p{margin:4px 0 0 !important;color:#6a7b8b !important;font-size:13px !important}
.flq-public-history-wrap{overflow-x:auto;border:1px solid #e8edf1;border-radius:18px}
.flq-public-history-wrap .flq-table{margin:0;width:100%;border-collapse:collapse}
.flq-public-history-wrap .flq-table th{background:#f7fbfb;color:#345267;font-size:12px}
.flq-public-history-wrap .flq-table td{font-size:12px;background:#fff}
.flq-public-login{max-width:520px;margin:40px auto;background:linear-gradient(180deg,#ffffff 0%,#fbfdfd 100%);border:1px solid #e3e7eb;border-radius:24px;padding:26px;box-shadow:0 14px 38px rgba(15,23,42,.08)}
.flq-public-login-head{text-align:center;margin-bottom:16px}
.flq-public-login-head h2{margin:0 0 8px !important;font-size:28px !important;color:#133a55 !important}
.flq-public-login-head p{margin:0 !important;color:#677a8c !important;line-height:1.9 !important}
.flq-public-login-points{display:grid !important;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 18px}
.flq-public-login-point{padding:12px;border:1px solid #ebeff2;border-radius:16px;background:#f8fbfc;font-size:13px;color:#4e6273;line-height:1.8}
.flq-public-login input{width:100% !important;padding:14px !important;border:1px solid #cfd6de !important;border-radius:14px !important;font-size:22px !important;text-align:center !important;letter-spacing:4px !important}
.flq-public-note{padding:12px 14px;border:1px solid #e1ece9;background:#f6fbfa;border-radius:16px;color:#597081;font-size:12px;line-height:1.9}
.flq-public-empty{padding:20px;border:1px dashed #cfe0de;border-radius:18px;background:#f9fcfb;color:#5c7282;line-height:1.9}
.flq-public-report-shell{margin-top:18px}
.flq-public-report-shell .flq-report-page{border:1px solid #dbe4e8;box-shadow:0 10px 28px rgba(15,23,42,.05)}
.flq-public-report-shell .flq-print-toolbar{background:#fbfdfd}
.flq-public-report-shell .flq-letterhead-space{background:linear-gradient(180deg,#ffffff 0%,#fbfdfd 100%)}
.flq-public-status-good{color:#166534 !important}.flq-public-status-okay{color:#0f4c81 !important}.flq-public-status-warn{color:#92400e !important}.flq-public-status-bad{color:#991b1b !important}
@media(max-width:980px){.flq-public-hero,.flq-public-grid-main{grid-template-columns:1fr !important}.flq-public-stats,.flq-public-form-grid,.flq-public-stepbar,.flq-public-info-row{grid-template-columns:1fr !important}.flq-public-mini-grid{grid-template-columns:1fr 1fr !important}}
@media(max-width:640px){.flq-public-bg{padding:12px}.flq-public-hero{padding:22px 18px}.flq-public-title{font-size:28px !important}.flq-public-login-points,.flq-public-mini-grid{grid-template-columns:1fr !important}.flq-public-patient-card{grid-template-columns:1fr !important}.flq-public-stats{grid-template-columns:1fr !important}.flq-public-shell{padding:0 10px}}


/* =========================================================
   Report view inside the public shortcode page
   These rules intentionally live in an external stylesheet
   because Elementor can strip inline <style> blocks.
   ========================================================= */
.flq-public-report-shell .flq-card{
  background:#fff;
  border:1px solid #e3eaee;
  border-radius:22px;
  margin:0;
  padding:0;
  box-shadow:0 12px 34px rgba(15,23,42,.06);
  overflow:hidden;
}
.flq-public-report-shell .flq-report-page{
  background:#fff !important;
  border:1px solid #dbe4e8 !important;
  border-radius:22px !important;
  overflow:hidden !important;
  box-shadow:0 12px 34px rgba(15,23,42,.06) !important;
}
.flq-public-report-shell .flq-print-toolbar{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  padding:14px 18px !important;
  background:linear-gradient(180deg,#fbfdfd 0%,#f6faf9 100%) !important;
  border-bottom:1px solid #e5ecef !important;
}
.flq-public-report-shell .flq-print-toolbar .flq-actions{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:9px !important;
}
.flq-public-report-shell .flq-print-toolbar a.button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:40px !important;
  padding:9px 16px !important;
  border-radius:11px !important;
  border:0 !important;
  background:linear-gradient(135deg,#0b8c76,#0d6f81) !important;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:800 !important;
  box-shadow:0 8px 18px rgba(11,124,104,.18) !important;
}
.flq-public-report-shell .flq-chip{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  padding:7px 11px !important;
  border-radius:999px !important;
  font-size:12px !important;
  font-weight:800 !important;
  background:#edf8f6 !important;
  color:#0b7d68 !important;
}
.flq-public-report-shell .flq-badge-good{background:#e7f8ed !important;color:#166534 !important}
.flq-public-report-shell .flq-badge-okay{background:#eaf4fb !important;color:#0f4c81 !important}
.flq-public-report-shell .flq-badge-warn{background:#fff5e6 !important;color:#92400e !important}
.flq-public-report-shell .flq-badge-bad{background:#fdecec !important;color:#991b1b !important}

/* In the web UI, don't waste vertical space on the pre-printed letterhead gap.
   The dedicated print page still has its own print CSS and keeps the gap. */
.flq-public-report-shell .flq-letterhead-space{
  display:none !important;
}

.flq-public-report-shell .flq-a4{
  padding:20px !important;
  background:#fff !important;
  font-size:13px !important;
  line-height:1.65 !important;
}
.flq-public-report-shell .flq-report-header{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 250px !important;
  gap:18px !important;
  align-items:stretch !important;
}
.flq-public-report-shell .flq-title h2{
  margin:0 0 5px !important;
  font-size:27px !important;
  line-height:1.3 !important;
  color:#123b56 !important;
  font-weight:900 !important;
}
.flq-public-report-shell .flq-title p{
  margin:0 !important;
  color:#718192 !important;
  font-size:13px !important;
}
.flq-public-report-shell .flq-patient-meta{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:4px 18px !important;
  margin-top:14px !important;
  font-size:13px !important;
}
.flq-public-report-shell .flq-patient-meta div{
  padding:7px 0 !important;
  border-bottom:1px dashed #e1e8ec !important;
  color:#4c6374 !important;
}
.flq-public-report-shell .flq-patient-meta strong{
  color:#203e54 !important;
}
.flq-public-report-shell .flq-score-box{
  min-width:0 !important;
  border-radius:20px !important;
  padding:18px !important;
  border:1px solid #d8e4e8 !important;
  background:linear-gradient(145deg,#eff8f6 0%,#f8fbfc 100%) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
.flq-public-report-shell .flq-score-box.good{background:linear-gradient(145deg,#e9fbef,#f8fcfa) !important;border-color:#bfe7ca !important}
.flq-public-report-shell .flq-score-box.okay{background:linear-gradient(145deg,#edf7ff,#f9fbfd) !important;border-color:#cce0f1 !important}
.flq-public-report-shell .flq-score-box.warn{background:linear-gradient(145deg,#fff7e9,#fdfbf7) !important;border-color:#f0d4a4 !important}
.flq-public-report-shell .flq-score-box.bad{background:linear-gradient(145deg,#fff1f1,#fdf9f9) !important;border-color:#efc5c5 !important}
.flq-public-report-shell .flq-score-num{
  font-size:42px !important;
  font-weight:900 !important;
  line-height:1 !important;
  color:#163b56 !important;
  margin-top:6px !important;
}
.flq-public-report-shell .flq-score-label{
  font-size:18px !important;
  font-weight:900 !important;
  color:#1f5368 !important;
  margin-top:7px !important;
}
.flq-public-report-shell .flq-muted{
  color:#708192 !important;
  font-size:12px !important;
}

.flq-public-report-shell .flq-headline{
  margin-top:16px !important;
  padding:13px 15px !important;
  border-radius:15px !important;
  border-right:4px solid #0b8c76 !important;
  background:#f4faf8 !important;
  color:#284b5f !important;
  font-size:14px !important;
  line-height:1.9 !important;
}

.flq-public-report-shell .flq-mini-cards{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
  margin-top:14px !important;
}
.flq-public-report-shell .flq-mini-card{
  padding:14px !important;
  border:1px solid #e6edf0 !important;
  border-radius:18px !important;
  background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%) !important;
  box-shadow:0 6px 16px rgba(15,23,42,.03) !important;
}
.flq-public-report-shell .flq-mini-card .label{
  font-size:12px !important;
  color:#728293 !important;
  margin-bottom:6px !important;
}
.flq-public-report-shell .flq-mini-card .value{
  font-size:25px !important;
  font-weight:900 !important;
  color:#163b56 !important;
  line-height:1.15 !important;
}
.flq-public-report-shell .flq-mini-card .sub{
  font-size:11px !important;
  color:#66798a !important;
  margin-top:6px !important;
  line-height:1.6 !important;
}

.flq-public-report-shell .flq-section{
  margin-top:14px !important;
  padding:16px !important;
  border:1px solid #e6ecef !important;
  border-radius:18px !important;
  background:#fff !important;
}
.flq-public-report-shell .flq-section h3{
  margin:0 0 12px !important;
  color:#143d56 !important;
  font-size:18px !important;
  font-weight:900 !important;
}
.flq-public-report-shell .flq-section h4{
  margin:0 0 9px !important;
  color:#24556d !important;
  font-size:14px !important;
  font-weight:800 !important;
}
.flq-public-report-shell .flq-section ul{
  margin:0 !important;
  padding-right:19px !important;
}
.flq-public-report-shell .flq-section li{
  margin:0 0 6px !important;
  color:#486172 !important;
  line-height:1.8 !important;
}
.flq-public-report-shell .flq-2col{
  display:grid !important;
  grid-template-columns:1.1fr 1fr !important;
  gap:14px !important;
}
.flq-public-report-shell .flq-3col{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
}
.flq-public-report-shell .flq-box-soft{
  height:100% !important;
  padding:13px !important;
  border:1px solid #e5ecef !important;
  border-radius:15px !important;
  background:#f9fbfc !important;
}
.flq-public-report-shell .flq-inline-metrics{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
}
.flq-public-report-shell .flq-inline-metric{
  padding:10px !important;
  border:1px solid #e5ecef !important;
  border-radius:13px !important;
  background:#fff !important;
  color:#66798a !important;
  font-size:11px !important;
}
.flq-public-report-shell .flq-inline-metric b{
  display:block !important;
  margin-top:4px !important;
  color:#173e58 !important;
  font-size:15px !important;
}

.flq-public-report-shell .flq-table{
  width:100% !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  overflow:hidden !important;
  border:1px solid #e3eaee !important;
  border-radius:14px !important;
}
.flq-public-report-shell .flq-table th,
.flq-public-report-shell .flq-table td{
  padding:9px 8px !important;
  text-align:center !important;
  vertical-align:middle !important;
  border-left:1px solid #e8eef1 !important;
  border-bottom:1px solid #e8eef1 !important;
  font-size:12px !important;
}
.flq-public-report-shell .flq-table th{
  background:#f4f9f8 !important;
  color:#315268 !important;
  font-weight:900 !important;
}
.flq-public-report-shell .flq-table td{
  background:#fff !important;
  color:#526a7a !important;
}
.flq-public-report-shell .flq-table tr:last-child td{border-bottom:0 !important}
.flq-public-report-shell .flq-table th:last-child,
.flq-public-report-shell .flq-table td:last-child{border-left:0 !important}
.flq-public-report-shell .flq-kpi-table th:first-child,
.flq-public-report-shell .flq-kpi-table td:first-child,
.flq-public-report-shell .flq-kpi-table td:last-child{
  text-align:right !important;
}

.flq-public-report-shell .flq-notes-lines{margin-top:10px !important}
.flq-public-report-shell .flq-notes-lines .line{
  height:24px !important;
  border-bottom:1px dashed #ccd8df !important;
}
.flq-public-report-shell .flq-foot{
  margin-top:13px !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  background:#f8fafb !important;
  color:#6c7d8c !important;
  font-size:11px !important;
  line-height:1.8 !important;
}
.flq-public-report-shell .flq-footer-space{display:none !important}
.flq-public-report-shell .flq-trend-up-bad{color:#b42318 !important;font-weight:800 !important}
.flq-public-report-shell .flq-trend-down-good{color:#027a48 !important;font-weight:800 !important}
.flq-public-report-shell .flq-trend-neutral{color:#667085 !important;font-weight:800 !important}

@media(max-width:900px){
  .flq-public-report-shell .flq-report-header{grid-template-columns:1fr !important}
  .flq-public-report-shell .flq-mini-cards{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .flq-public-report-shell .flq-2col,
  .flq-public-report-shell .flq-3col{grid-template-columns:1fr !important}
  .flq-public-report-shell .flq-inline-metrics{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .flq-public-report-shell .flq-patient-meta{grid-template-columns:1fr !important}
}
@media(max-width:560px){
  .flq-public-report-shell .flq-a4{padding:14px !important}
  .flq-public-report-shell .flq-title h2{font-size:22px !important}
  .flq-public-report-shell .flq-mini-cards,
  .flq-public-report-shell .flq-inline-metrics{grid-template-columns:1fr !important}
  .flq-public-report-shell .flq-score-num{font-size:34px !important}
}
