/* Bedarf-Planung Dialog (UI Schritt 1) */
.rr-need-plan-wrap{
  display:flex;
  gap:10px;
  align-items:center;
  width:100%;
}
.rr-need-plan-wrap > input{
  flex:1 1 auto;
  min-width:0;
}

.rr-mini-btn{
  height:34px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(120,120,120,.45);
  background:transparent;
  color:inherit;
  font:inherit;
  cursor:pointer;
  white-space:nowrap;
}
.rr-mini-btn:hover{ filter:brightness(1.04); }
.rr-mini-btn:active{ transform: translateY(1px); }

/* Dialog */
dialog.rr-need-dlg{
  width:min(820px, calc(100vw - 24px));
  border-radius:16px;
  border:1px solid rgba(120,120,120,.45);
  padding:0;
  background: var(--rr-card-bg, #fff);
  color: inherit;
  box-shadow: 0 14px 40px rgba(0,0,0,.25);
}
dialog.rr-need-dlg::backdrop{ background: rgba(0,0,0,.45); }

.rr-need-dlg-h{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  border-bottom:1px solid rgba(120,120,120,.25);
}
.rr-need-dlg-t{ font-weight:700; font-size:16px; margin:0; }
.rr-need-dlg-b{ padding:14px 16px 10px 16px; }

.rr-need-grid{
  display:grid;
  grid-template-columns: 180px minmax(220px, 1fr) 44px;
  gap:10px;
  align-items:center;
}
.rr-need-head{ font-weight:700; opacity:.9; padding-bottom:6px; }
.rr-need-row{ padding:6px 0; border-top:1px dashed rgba(120,120,120,.25); }
.rr-need-row:first-of-type{ border-top:none; }

.rr-need-in{
  width:100%;
  height:34px;
  border-radius:10px;
  border:1px solid rgba(120,120,120,.45);
  background:transparent;
  color:inherit;
  padding:0 10px;
  box-sizing:border-box;
  font:inherit;
}

.rr-need-icon{
  width:34px;
  height:34px;
  border-radius:10px;
  border:1px solid rgba(120,120,120,.45);
  background:transparent;
  color:inherit;
  cursor:pointer;
  display:grid;
  place-items:center;
  font:inherit;
  line-height:1;
}
.rr-need-icon:hover{ filter:brightness(1.04); }
.rr-need-icon:active{ transform: translateY(1px); }
.rr-need-icon[disabled]{ opacity:.45; cursor:default; }

.rr-need-dlg-f{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 16px 14px 16px;
  border-top:1px solid rgba(120,120,120,.25);
}
.rr-need-help{ opacity:.85; font-size:12px; line-height:1.35; }

/* Dark Theme */
body.dark dialog.rr-need-dlg::backdrop,
body[data-theme="dark"] dialog.rr-need-dlg::backdrop,
[data-theme="dark"] dialog.rr-need-dlg::backdrop{ background: rgba(0,0,0,.60); }

body.dark dialog.rr-need-dlg,
body[data-theme="dark"] dialog.rr-need-dlg,
[data-theme="dark"] dialog.rr-need-dlg,
body.dark .rr-mini-btn,
body[data-theme="dark"] .rr-mini-btn,
[data-theme="dark"] .rr-mini-btn,
body.dark .rr-need-in,
body[data-theme="dark"] .rr-need-in,
[data-theme="dark"] .rr-need-in,
body.dark .rr-need-icon,
body[data-theme="dark"] .rr-need-icon,
[data-theme="dark"] .rr-need-icon{ border-color: rgba(220,220,220,.28); }

body.dark .rr-need-dlg-h,
body[data-theme="dark"] .rr-need-dlg-h,
[data-theme="dark"] .rr-need-dlg-h,
body.dark .rr-need-dlg-f,
body[data-theme="dark"] .rr-need-dlg-f,
[data-theme="dark"] .rr-need-dlg-f{ border-color: rgba(220,220,220,.16); }

body.dark .rr-need-row,
body[data-theme="dark"] .rr-need-row,
[data-theme="dark"] .rr-need-row{ border-top-color: rgba(220,220,220,.14); }
