/* IJsselStudio IP Locatie Checker - Frontend styling (match toolbox style) */
.ijssel-ip-wrap{
  --ijssel-orange:#F99D34;
  --ijssel-green:#77C634;
  --ijssel-light:#F7FCF3;
  --ijssel-border: rgba(119,198,52,.85);
  font-family: inherit;
}

.ijssel-frontend{
  max-width: 1200px;
  margin: 0 auto;
}

.ijssel-form{
  margin: 0;
  padding: 0;
}

.ijssel-row{
  display: flex;
  gap: 14px;
  align-items: stretch;
}

.ijssel-input{
  flex: 1 1 auto;
  width: 100%;
  padding: 14px 16px;
  border: 1px solid var(--ijssel-orange);
  border-radius: 0;
  outline: none;
  font-size: 16px;
  background: #fff;
  box-shadow: none;
}

.ijssel-input:focus{
  border-color: var(--ijssel-orange);
  box-shadow: 0 0 0 2px rgba(249,157,52,.18);
}

.ijssel-btn{
  flex: 0 0 auto;
  padding: 14px 26px;
  background: var(--ijssel-orange);
  color: #fff;
  border: 1px solid var(--ijssel-orange);
  border-radius: 0;
  cursor: pointer;
  font-weight: 700;
  font-size: 15px;
  line-height: 1;
}

.ijssel-btn:hover{
  filter: brightness(0.96);
}

.ijssel-actions{
  margin-top: 14px;
}

.ijssel-btn-export{
  display: inline-block;
  padding: 10px 16px;
  background: #fff;
  color: var(--ijssel-green);
  border: 1px solid var(--ijssel-green);
  border-radius: 0;
  text-decoration: none;
  font-weight: 700;
  font-size: 14px;
}

.ijssel-btn-export:hover{
  background: rgba(119,198,52,.06);
}

.ijssel-table{
  width: 100%;
  border-collapse: collapse;
  margin-top: 18px;
  border: 1px solid var(--ijssel-border);
}

.ijssel-table tr{
  border-top: 1px solid var(--ijssel-border);
}

.ijssel-th{
  width: 35%;
  background: var(--ijssel-light);
  color: #222;
  font-weight: 700;
  text-align: left;
  padding: 16px 18px;
  border-right: 1px solid var(--ijssel-border);
  vertical-align: top;
}

.ijssel-td{
  background: #fff;
  padding: 16px 18px;
  vertical-align: top;
}

.ijssel-notice{
  margin-top: 14px;
  padding: 12px 14px;
  border: 1px solid #d63638;
  background: #fff2f2;
  color: #222;
}

@media (max-width: 720px){
  .ijssel-row{ flex-direction: column; }
  .ijssel-btn{ width: 100%; }
  .ijssel-th{ width: 45%; }
}
/* Table reset to match the green/white style exactly (override theme zebra/striping) */
.ijssel-ip-wrap.ijssel-frontend .ijssel-table{
  background: #fff !important;
  color: #222;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-table,
.ijssel-ip-wrap.ijssel-frontend .ijssel-table *{
  box-sizing: border-box;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-table tr,
.ijssel-ip-wrap.ijssel-frontend .ijssel-table th,
.ijssel-ip-wrap.ijssel-frontend .ijssel-table td{
  background-image: none !important;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-table tr:nth-child(odd) td,
.ijssel-ip-wrap.ijssel-frontend .ijssel-table tr:nth-child(even) td{
  background: #fff !important;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-table tr:nth-child(odd) th,
.ijssel-ip-wrap.ijssel-frontend .ijssel-table tr:nth-child(even) th{
  background: var(--ijssel-light) !important;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-table th{
  border-right: 1px solid var(--ijssel-border) !important;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-table td{
  border-left: 0 !important;
}
/* Nuclear override: force right column (td) to pure white, even if theme zebra uses !important */
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr,
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr td{
  background-color: #fff !important;
  background: #fff !important;
}

/* Keep left column (th) light green */
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr th{
  background-color: var(--ijssel-light) !important;
  background: var(--ijssel-light) !important;
}

/* Explicitly cancel common theme zebra selectors */
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr:nth-child(odd),
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr:nth-child(even),
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr:nth-child(odd) td,
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr:nth-child(even) td{
  background-color:#fff !important;
  background:#fff !important;
}
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr:nth-child(odd) th,
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr:nth-child(even) th{
  background-color:var(--ijssel-light) !important;
  background:var(--ijssel-light) !important;
}

/* Some themes add striping via box-shadow/filters */
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr,
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr td,
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr th{
  box-shadow:none !important;
  filter:none !important;
}
/* Kill theme overlays/pseudo-elements that can create zebra backgrounds */
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr::before,
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr::after,
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody td::before,
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody td::after,
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody th::before,
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody th::after{
  content: none !important;
  display: none !important;
}

/* Also cancel any background images/gradients and shadows applied by the theme */
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody tr,
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody td,
.ijssel-ip-wrap.ijssel-frontend table.ijssel-table tbody th{
  background-image: none !important;
  box-shadow: none !important;
}
/* Use DIV grid instead of <table> to avoid theme table striping completely */
.ijssel-grid{
  margin-top: 18px;
  border: 1px solid var(--ijssel-border);
}

.ijssel-grid-row{
  display: grid;
  grid-template-columns: 35% 1fr;
  border-top: 1px solid var(--ijssel-border);
}

.ijssel-grid-row:first-child{
  border-top: 0;
}

.ijssel-grid-th{
  background: var(--ijssel-light) !important;
  border-right: 1px solid var(--ijssel-border);
  padding: 16px 18px;
  font-weight: 700;
  color: #222;
}

.ijssel-grid-td{
  background: #fff !important;
  padding: 16px 18px;
  color: #222;
}

@media (max-width: 720px){
  .ijssel-grid-row{ grid-template-columns: 45% 1fr; }
}
/* Force form to match style (orange border + orange button) regardless of theme */
.ijssel-ip-wrap.ijssel-frontend .ijssel-input{
  border: 1px solid var(--ijssel-orange) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-btn{
  background: var(--ijssel-orange) !important;
  border-color: var(--ijssel-orange) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
/* Spacing: apply padding to the whole widget so input + export align perfectly */
.ijssel-ip-wrap.ijssel-frontend{
  padding: 20px !important;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-actions{
  padding: 0 !important;
  margin-top: 14px !important;
}
/* Extra safety: if a page builder resets wrapper padding, keep spacing via inner row */
.ijssel-ip-wrap.ijssel-frontend .ijssel-row{
  margin-left: 0 !important;
  padding-left: 0 !important;
}
/* HARD padding wrapper (theme-proof) */
.ijssel-ip-wrap.ijssel-frontend{
  display:block !important;
  width:100% !important;
  max-width: 1200px;
  margin: 0 auto;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-pad{
  padding: 20px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* Backup: if some builder strips padding, also pad the row/actions/results */
.ijssel-ip-wrap.ijssel-frontend .ijssel-row{
  padding: 0 !important;
  margin: 0 !important;
}
.ijssel-ip-wrap.ijssel-frontend .ijssel-actions{
  margin-top: 14px !important;
}
/* FIX v1.2.6: padding hoort op container, niet op input */
.ijssel-ip-wrap,
.ijssel-ip-wrap *{
  box-sizing: border-box !important;
}

/* 20px ruimte rondom het hele blok */
.ijssel-ip-wrap.ijssel-frontend{
  padding: 20px !important;
}

/* Extra: als een builder de outer padding wegdrukt, pak de inner wrapper ook */
.ijssel-ip-wrap.ijssel-frontend .ijssel-pad{
  padding: 20px !important;
}

/* Input padding terug naar normaal (geen 20px) */
.ijssel-ip-wrap.ijssel-frontend .ijssel-input{
  padding: 14px 16px !important;
}
/* v1.2.9 FIX: formulier exact uitlijnen met titel */
.ijssel-ip-wrap.ijssel-frontend{
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

/* Zorg voor nette verticale ruimte */
.ijssel-ip-wrap.ijssel-frontend .ijssel-row{
  margin-top: 20px !important;
}
/* v1.3.0 FIX: alles 0 zodat formulier exact uitlijnt met de paginatitel */
.ijssel-ip-wrap.ijssel-frontend{
  padding: 0 !important;
  margin: 0 !important;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-pad{
  padding: 0 !important;
  margin: 0 !important;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-form{
  margin: 0 !important;
  padding: 0 !important;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-row{
  margin: 0 !important;
  padding: 0 !important;
}

.ijssel-ip-wrap.ijssel-frontend .ijssel-actions{
  margin: 14px 0 0 0 !important; /* alleen ruimte onder formulier, mag je ook 0 willen */
  padding: 0 !important;
}
