.ifp-wa-customer{
  --navy:#0b2948;
  --blue:#1769d2;
  --light:#eaf3ff;
  --canvas:#f5f8fc;
  --text:#14243a;
  --muted:#4b6074;
  --border:#dde5ee;
  --ok:#1a8f5a;
  --danger:#a63b3b;
  max-width:1180px;
  margin:32px auto 70px;
  color:var(--text);
  font-family:inherit;
}
.ifp-wa-customer *{box-sizing:border-box}
.ifp-wa-customer-hero,.ifp-wa-customer-detail-head{
  margin-bottom:26px;
}
.ifp-wa-customer-hero h2,.ifp-wa-customer-detail-head h2{
  margin:7px 0 10px;
  color:var(--navy);
  font-size:clamp(30px,4vw,44px);
  line-height:1.1;
}
.ifp-wa-customer-hero p,.ifp-wa-customer-detail-head p{
  color:var(--muted);
  font-size:16px;
  line-height:1.6;
  max-width:760px;
}
.ifp-wa-customer-eyebrow{
  display:block;
  color:var(--blue);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
}
.ifp-wa-customer-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.ifp-wa-customer-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px solid #cddced;
  border-radius:11px;
  padding:11px 16px;
  background:#fff;
  color:var(--blue)!important;
  text-decoration:none!important;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.ifp-wa-customer-btn:hover{border-color:var(--blue);box-shadow:0 0 0 3px rgba(23,105,210,.08)}
.ifp-wa-customer-btn.is-primary{background:var(--blue);border-color:var(--blue);color:#fff!important}
.ifp-wa-customer-btn.is-small{padding:8px 12px;font-size:13px}
.ifp-wa-customer-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:16px;background:#fff}
.ifp-wa-customer-table{width:100%;border-collapse:collapse;min-width:760px}
.ifp-wa-customer-table th,.ifp-wa-customer-table td{padding:14px 15px;border-bottom:1px solid #edf1f5;text-align:left;vertical-align:middle;font-size:13px}
.ifp-wa-customer-table th{background:#f8fafc;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}
.ifp-wa-customer-table tr:last-child td{border-bottom:0}
.ifp-wa-customer-table td strong{display:block;color:var(--navy);font-size:14px}
.ifp-wa-customer-table td small{display:block;color:var(--muted);margin-top:4px}
.ifp-wa-customer-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef2f6;color:var(--muted);font-size:11px;font-weight:800;white-space:nowrap}
.ifp-wa-customer-badge.is-blue{background:var(--light);color:var(--blue)}
.ifp-wa-customer-badge.is-ok{background:#e8f7ef;color:var(--ok)}
.ifp-wa-customer-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:18px;
  padding:20px;
  box-shadow:0 1px 2px rgba(11,41,72,.03);
}
.ifp-wa-customer-card h3{margin:0 0 14px;color:var(--navy);font-size:19px}
.ifp-wa-customer-empty{color:var(--muted)}
.ifp-wa-customer-empty strong,.ifp-wa-customer-empty span{display:block}
.ifp-wa-customer-empty span{margin-top:5px}
.ifp-wa-customer-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:20px}
.ifp-wa-customer-detail-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.ifp-wa-customer-back{display:inline-block;margin-bottom:14px;color:var(--blue)!important;text-decoration:none!important;font-weight:800}
.ifp-wa-customer-line{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid #edf1f5}
.ifp-wa-customer-line:last-child{border-bottom:0}
.ifp-wa-customer-line span{color:var(--muted)}
.ifp-wa-customer-line strong{text-align:right;color:var(--navy)}
.ifp-wa-customer-task{padding:16px 0;border-bottom:1px solid #edf1f5}
.ifp-wa-customer-task:first-of-type{padding-top:0}
.ifp-wa-customer-task:last-child{border-bottom:0;padding-bottom:0}
.ifp-wa-customer-task-head{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:12px;align-items:start}
.ifp-wa-customer-task-head strong{display:block;color:var(--navy)}
.ifp-wa-customer-task-head p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.5}
.ifp-wa-customer-check{width:22px;height:22px;border:2px solid #b8c5d2;border-radius:7px;display:grid;place-items:center;font-size:12px;font-weight:900;color:#fff}
.ifp-wa-customer-task.is-received .ifp-wa-customer-check{background:var(--ok);border-color:var(--ok)}
.ifp-wa-customer-delivery{margin:14px 0 0 36px;display:grid;gap:12px}
.ifp-wa-customer-text-form,.ifp-wa-customer-upload-form{padding:14px;border:1px solid #e4ebf3;background:#f9fbfd;border-radius:13px}
.ifp-wa-customer-text-form label,.ifp-wa-customer-upload-form label{display:block;color:var(--navy);font-weight:750;font-size:13px}
.ifp-wa-customer-text-form textarea{width:100%;margin:7px 0 10px;padding:11px 12px;border:1px solid var(--border);border-radius:10px;font:inherit;resize:vertical}
.ifp-wa-customer-upload-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;align-items:end}
.ifp-wa-customer-upload-form input[type=file]{display:block;width:100%;margin-top:7px;padding:9px;border:1px dashed #bfcddd;border-radius:10px;background:#fff}
.ifp-wa-customer-help{grid-column:1/-1;color:var(--muted);font-size:12px}
.ifp-wa-customer-material-list{margin:12px 0 0 36px;display:grid;gap:8px}
.ifp-wa-customer-material{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border:1px solid #e5ebf2;border-radius:11px;background:#fff}
.ifp-wa-customer-material strong{display:block;color:var(--navy);font-size:13px}
.ifp-wa-customer-material p{margin:3px 0 0;color:var(--muted);font-size:12px;white-space:pre-wrap}
.ifp-wa-customer-material-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.ifp-wa-customer-material-actions form{margin:0}
.ifp-wa-customer-link{appearance:none;border:0;background:transparent;padding:0;color:var(--blue)!important;text-decoration:none!important;font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.ifp-wa-customer-link.is-danger{color:var(--danger)!important}
.ifp-wa-customer-summary{margin-top:20px}
.ifp-wa-customer-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ifp-wa-customer-feature-grid>div{padding:14px;background:#f8fafc;border:1px solid #e7edf3;border-radius:12px}
.ifp-wa-customer-feature-grid strong,.ifp-wa-customer-feature-grid span{display:block}
.ifp-wa-customer-feature-grid strong{color:var(--navy);font-size:14px}
.ifp-wa-customer-feature-grid span{margin-top:5px;color:var(--muted);font-size:12px;line-height:1.45}
.ifp-wa-customer-claim{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px;border-color:#cfe2fb;background:var(--light)}
.ifp-wa-customer-claim h3{margin:4px 0 6px}
.ifp-wa-customer-claim p{margin:0;color:#365d83;line-height:1.5}
.ifp-wa-customer-notice{margin:0 0 20px;padding:13px 15px;border-radius:12px;border:1px solid #c5ead6;background:#ecfaf3;color:#176440;font-weight:650}
.ifp-wa-customer-notice.is-error{border-color:#efc4c4;background:#fff5f5;color:#8a2d2d}
@media(max-width:900px){
  .ifp-wa-customer{margin-left:18px;margin-right:18px}
  .ifp-wa-customer-grid{grid-template-columns:1fr}
  .ifp-wa-customer-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .ifp-wa-customer-detail-head,.ifp-wa-customer-claim{align-items:stretch;flex-direction:column}
  .ifp-wa-customer-upload-form{grid-template-columns:1fr}
  .ifp-wa-customer-task-head{grid-template-columns:24px minmax(0,1fr)}
  .ifp-wa-customer-task-head>.ifp-wa-customer-badge{grid-column:2}
  .ifp-wa-customer-delivery,.ifp-wa-customer-material-list{margin-left:0}
  .ifp-wa-customer-material{align-items:flex-start;flex-direction:column}
  .ifp-wa-customer-feature-grid{grid-template-columns:1fr}
}


/* Phase 7 – accessibility and responsive hardening. */
.ifp-wa-customer a:focus-visible,
.ifp-wa-customer button:focus-visible,
.ifp-wa-customer input:focus-visible,
.ifp-wa-customer textarea:focus-visible,
.ifp-wa-customer select:focus-visible,
.ifp-wa-customer-table-wrap:focus-visible{
  outline:3px solid rgba(23,105,210,.32);
  outline-offset:3px;
}
.ifp-wa-customer-table-wrap{-webkit-overflow-scrolling:touch}
.ifp-wa-customer-notice[role="status"]{scroll-margin-top:20px}
@media(max-width:480px){
  .ifp-wa-customer{margin:22px 12px 54px}
  .ifp-wa-customer-card{padding:16px}
  .ifp-wa-customer-hero h2,.ifp-wa-customer-detail-head h2{font-size:clamp(28px,9vw,36px)}
  .ifp-wa-customer-btn{width:100%}
  .ifp-wa-customer-line{align-items:flex-start;flex-direction:column;gap:4px}
  .ifp-wa-customer-line strong{text-align:left}
}
@media(prefers-reduced-motion:reduce){
  .ifp-wa-customer *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}
}

.ifp-wa-screen-reader-text,
.screen-reader-text {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

.ifp-wa-customer-row-actions,
.ifp-wa-customer-detail-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.ifp-wa-customer-delete-project-form{margin:0}
.ifp-wa-customer-btn.is-danger{
  border-color:#e6bcbc;
  color:var(--danger)!important;
  background:#fff;
}
.ifp-wa-customer-btn.is-danger:hover,
.ifp-wa-customer-btn.is-danger:focus-visible{
  border-color:var(--danger);
  background:#fff7f7;
}


/* v0.3.46: projektgebundene Teamdaten */
.ifp-wa-customer-team-card{margin-top:22px}
.ifp-wa-customer-sectionhead{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}
.ifp-wa-customer-sectionhead h3{margin:3px 0 6px}
.ifp-wa-customer-team-list{display:grid;gap:14px}
.ifp-wa-customer-team-row{padding:16px;border:1px solid rgba(0,0,0,.12);border-radius:12px;background:rgba(255,255,255,.58)}
.ifp-wa-customer-team-row-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}
.ifp-wa-customer-team-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ifp-wa-customer-team-row label{display:grid;gap:6px;margin-top:10px}
.ifp-wa-customer-team-row input,.ifp-wa-customer-team-row textarea{width:100%}
.ifp-wa-customer-team-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.ifp-wa-customer-team-photos{margin-top:24px;padding-top:18px;border-top:1px solid rgba(0,0,0,.12)}
.ifp-wa-customer-team-photo-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,1fr) auto;gap:12px;align-items:end;padding:12px 0;border-bottom:1px solid rgba(0,0,0,.08)}
.ifp-wa-customer-team-photo-form label{display:grid;gap:6px}
.ifp-wa-customer-empty.is-notice{margin-bottom:16px}
@media(max-width:700px){
  .ifp-wa-customer-sectionhead,.ifp-wa-customer-team-fields{display:grid;grid-template-columns:1fr}
  .ifp-wa-customer-team-photo-form{grid-template-columns:1fr}
}


/* v0.3.71 – Woo account planning overview, status tabs and inquiry snapshot */
.ifp-wa-customer-inquiry-note{
  display:flex;
  gap:10px 18px;
  align-items:flex-start;
  margin:0 0 18px;
  padding:14px 16px;
  border:1px solid #c9d9ec;
  border-radius:12px;
  background:#f6faff;
  color:#29455f;
}
.ifp-wa-customer-inquiry-note strong{min-width:220px;color:#0b2948}
.ifp-wa-customer-inquiry-note span{line-height:1.5}
.ifp-wa-customer-inquiry-note.is-open{border-color:#b9dfca;background:#f4fbf7}
.ifp-wa-customer-inquiry-note.is-locked{border-color:#cdd8e5;background:#f6f8fb}

.ifp-wa-customer-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 18px;
}
.ifp-wa-customer-tabs a{
  display:inline-flex;
  gap:7px;
  align-items:center;
  padding:8px 12px;
  border:1px solid #d2dce8;
  border-radius:999px;
  background:#fff;
  color:#29455f;
  text-decoration:none;
  font-weight:600;
}
.ifp-wa-customer-tabs a span{
  display:inline-grid;
  min-width:22px;
  height:22px;
  padding:0 5px;
  place-items:center;
  border-radius:999px;
  background:#eef3f8;
  font-size:11px;
}
.ifp-wa-customer-tabs a.is-active{
  border-color:#1769d2;
  background:#eff6ff;
  color:#1157ad;
}

.ifp-wa-customer-timeline{
  list-style:none;
  margin:4px 0 12px;
  padding:0;
}
.ifp-wa-customer-timeline li{
  position:relative;
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  gap:10px;
  padding:0 0 16px;
}
.ifp-wa-customer-timeline li:not(:last-child):before{
  content:"";
  position:absolute;
  left:8px;
  top:15px;
  bottom:0;
  width:2px;
  background:#dbe5ef;
}
.ifp-wa-customer-timeline li>span{
  position:relative;
  z-index:1;
  width:16px;
  height:16px;
  margin-top:2px;
  border:3px solid #c6d2df;
  border-radius:50%;
  background:#fff;
}
.ifp-wa-customer-timeline li.is-done>span{border-color:#27a36a;background:#eaf8f1}
.ifp-wa-customer-timeline li.is-current>span{border-color:#1769d2;background:#eaf3ff}
.ifp-wa-customer-timeline strong,
.ifp-wa-customer-timeline small{display:block}
.ifp-wa-customer-timeline small{margin-top:2px;color:#687b8e}

.ifp-wa-customer-offer{margin-top:18px}
.ifp-wa-customer-offer-total{
  white-space:nowrap;
  color:#0b2948;
  font-size:22px;
}
.ifp-wa-customer-offer-lines{margin-top:14px;border-top:1px solid #e1e8f0}
.ifp-wa-customer-offer-line{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:10px 0;
  border-bottom:1px solid #edf1f5;
}
.ifp-wa-customer-offer-line span strong,
.ifp-wa-customer-offer-line span small{display:block}
.ifp-wa-customer-offer-line span small{margin-top:2px;color:#718397}
.ifp-wa-customer-offer-line>b{white-space:nowrap}
.ifp-wa-customer-offer-discounts{
  margin:14px 0 0;
  padding:12px 14px;
  border-radius:10px;
  background:#f2faf6;
}
.ifp-wa-customer-offer-discounts>strong{display:block;margin-bottom:5px;color:#166a45}
.ifp-wa-customer-offer-discounts>div{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:4px 0;
}
.ifp-wa-customer-offer-discounts b{color:#18794e}
.ifp-wa-customer-offer-recurring{
  display:flex;
  justify-content:space-between;
  gap:15px;
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid #e1e8f0;
}
@media (max-width:700px){
  .ifp-wa-customer-inquiry-note{display:block}
  .ifp-wa-customer-inquiry-note strong{display:block;min-width:0;margin-bottom:5px}
  .ifp-wa-customer-offer-line{align-items:flex-start}
  .ifp-wa-customer-sectionhead{display:block}
  .ifp-wa-customer-offer-total{display:block;margin-top:10px}
}


/* v0.3.71 – vollständiger gespeicherter Planungsstand im Kundenkonto */
.ifp-wa-customer-planning-details{margin-top:18px}
.ifp-wa-customer-detail-sections{display:grid;gap:10px}
.ifp-wa-customer-detail-section{
  overflow:hidden;
  border:1px solid #dce5ee;
  border-radius:11px;
  background:#fff;
}
.ifp-wa-customer-detail-section>summary{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  padding:12px 14px;
  cursor:pointer;
  list-style:none;
  color:#183751;
}
.ifp-wa-customer-detail-section>summary::-webkit-details-marker{display:none}
.ifp-wa-customer-detail-section>summary:after{
  content:"＋";
  order:3;
  color:#61778c;
  font-weight:700;
}
.ifp-wa-customer-detail-section[open]>summary:after{content:"−"}
.ifp-wa-customer-detail-section>summary span{
  margin-left:auto;
  color:#74879a;
  font-size:12px;
  font-weight:600;
}
.ifp-wa-customer-detail-rows{
  padding:0 14px 8px;
  border-top:1px solid #edf1f5;
}
.ifp-wa-customer-detail-row{
  display:grid;
  grid-template-columns:minmax(160px,.42fr) minmax(0,1fr);
  gap:14px;
  padding:10px 0;
  border-bottom:1px solid #f0f3f6;
}
.ifp-wa-customer-detail-row:last-child{border-bottom:0}
.ifp-wa-customer-detail-row>span{color:#65788a}
.ifp-wa-customer-detail-row>strong{font-weight:600;color:#1d3448;overflow-wrap:anywhere}
@media(max-width:700px){
  .ifp-wa-customer-detail-row{grid-template-columns:1fr;gap:3px}
  .ifp-wa-customer-detail-section>summary span{display:none}
}


/* 0.4.11 – Consistent destructive button styling in customer area. */
.ifp-wa-customer button.ifp-wa-customer-link.is-danger,
.ifp-wa-customer a.ifp-wa-customer-link.is-danger,
.ifp-wa-customer button.ifp-wa-customer-button.is-danger{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  padding:8px 13px;
  border:1px solid #e7b8b8!important;
  border-radius:12px;
  background:linear-gradient(180deg,#fff8f8 0%,#fff1f1 100%)!important;
  color:#972525!important;
  font:inherit;
  font-size:12px;
  font-weight:800;
  text-decoration:none!important;
  cursor:pointer;
  box-shadow:0 1px 2px rgba(146,32,32,.08);
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease,color .16s ease;
}
.ifp-wa-customer button.ifp-wa-customer-link.is-danger:hover,
.ifp-wa-customer button.ifp-wa-customer-link.is-danger:focus-visible,
.ifp-wa-customer a.ifp-wa-customer-link.is-danger:hover,
.ifp-wa-customer a.ifp-wa-customer-link.is-danger:focus-visible,
.ifp-wa-customer button.ifp-wa-customer-button.is-danger:hover,
.ifp-wa-customer button.ifp-wa-customer-button.is-danger:focus-visible:hover:focus-visible{
  border-color:#d98f8f!important;
  background:linear-gradient(180deg,#fff1f1 0%,#ffe7e7 100%)!important;
  color:#7f1616!important;
  box-shadow:0 6px 18px rgba(146,32,32,.12);
  transform:translateY(-1px);
  outline:none;
}
.ifp-wa-customer button.ifp-wa-customer-link.is-danger::before,
.ifp-wa-customer a.ifp-wa-customer-link.is-danger::before,
.ifp-wa-customer button.ifp-wa-customer-button.is-danger::before{
  content:"–";
  font-size:14px;
  font-weight:900;
  line-height:1;
}
