/* Feedback widget — shared across all concept pages and the hub. */
.fbw-pill{
  position:fixed;right:16px;bottom:16px;z-index:60;
  display:inline-flex;align-items:center;gap:8px;
  min-height:44px;padding:10px 18px;border:0;border-radius:999px;
  background:#1D1D22;color:#fff;cursor:pointer;
  font:600 15px/1.2 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  box-shadow:0 4px 18px rgba(0,0,0,.28);
}
.fbw-pill:hover{background:#33333B}
.fbw-pill:focus-visible,.fbw-panel button:focus-visible,.fbw-panel a:focus-visible,
.fbw-popover button:focus-visible{outline:3px solid #7AA7FF;outline-offset:2px}
.fbw-panel{
  position:fixed;inset:auto 0 0 0;margin:0;border:0;padding:0;z-index:70;
  width:100%;max-width:none;max-height:88dvh;overflow:auto;
  background:#fff;color:#1D1D22;border-radius:20px 20px 0 0;
  box-shadow:0 -12px 40px rgba(0,0,0,.3);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
@media (min-width:720px){
  .fbw-panel{inset:auto 24px 24px auto;width:390px;border-radius:16px;max-height:min(640px,88vh)}
}
.fbw-panel::backdrop{background:rgba(29,29,34,.35)}
.fbw-body{padding:20px 22px calc(20px + env(safe-area-inset-bottom))}
.fbw-panel h2{font-size:19px;margin:0 34px 4px 0}
.fbw-panel label{display:block;font-size:14px;font-weight:600;margin:14px 0 5px}
.fbw-panel textarea,.fbw-panel input[type=text]{
  width:100%;box-sizing:border-box;padding:10px 12px;font:inherit;font-size:16px;
  border:1px solid #C9C9CF;border-radius:10px;background:#fff;color:inherit;
}
.fbw-panel textarea{min-height:74px;resize:vertical}
.fbw-panel textarea:focus,.fbw-panel input[type=text]:focus{outline:3px solid #7AA7FF;outline-offset:1px}
.fbw-close{
  position:absolute;top:10px;right:10px;width:36px;height:36px;border:0;border-radius:50%;
  background:#F0F0F2;color:#1D1D22;font-size:17px;cursor:pointer;line-height:1;
}
.fbw-react{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:8px}
.fbw-react button{
  min-height:56px;padding:6px 4px;border:2px solid #C9C9CF;border-radius:12px;background:#fff;
  font:600 13px/1.3 inherit;font-family:inherit;color:inherit;cursor:pointer;
}
.fbw-react button span{display:block;font-size:20px;margin-bottom:2px}
.fbw-react button[aria-pressed=true]{border-color:#1D1D22;background:#1D1D22;color:#fff}
.fbw-pinbtn,.fbw-send{
  display:block;width:100%;min-height:46px;margin-top:14px;border-radius:12px;cursor:pointer;
  font:700 15px/1.2 inherit;font-family:inherit;
}
.fbw-pinbtn{background:#fff;color:#1D1D22;border:2px dashed #9a9aa2}
.fbw-pinbtn:hover{border-color:#1D1D22}
.fbw-send{background:#1D1D22;color:#fff;border:0}
.fbw-send:hover{background:#33333B}
.fbw-pinlist{list-style:none;margin:8px 0 0;padding:0;font-size:14px}
.fbw-pinlist li{display:flex;gap:8px;align-items:baseline;padding:5px 0;border-bottom:1px solid #EDEDEF}
.fbw-pinlist .n{flex:none;width:20px;height:20px;border-radius:50%;background:#1D1D22;color:#fff;
  font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;align-self:center}
.fbw-pinlist .t{flex:1;min-width:0}
.fbw-pinlist small{display:block;color:#6b6b73}
.fbw-pinlist button{border:0;background:none;color:#a33;font:inherit;font-size:13px;cursor:pointer;padding:4px}
.fbw-status{min-height:20px;font-size:14px;margin-top:10px;color:#444}
.fbw-status.err{color:#A33}
.fbw-done{text-align:center;padding:14px 0 4px}
.fbw-done .big{font-size:34px;margin-bottom:8px}
.fbw-hint{font-size:13px;color:#6b6b73;margin-top:6px}
/* pin mode */
.fbw-overlay{position:absolute;top:0;left:0;z-index:65;cursor:crosshair;background:rgba(29,29,34,.22)}
.fbw-banner{
  position:fixed;top:14px;left:50%;transform:translateX(-50%);z-index:66;max-width:92vw;
  background:#1D1D22;color:#fff;padding:10px 18px;border-radius:999px;
  font:600 14px/1.3 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  box-shadow:0 4px 18px rgba(0,0,0,.3);text-align:center;
}
.fbw-mark{
  position:absolute;transform:translate(-50%,-50%);width:28px;height:28px;border-radius:50%;
  background:#E4572E;color:#fff;border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.4);
  display:flex;align-items:center;justify-content:center;
  font:700 14px/1 system-ui,sans-serif;pointer-events:none;
}
.fbw-popover{
  position:absolute;z-index:67;width:min(300px,86vw);background:#fff;color:#1D1D22;
  border-radius:14px;padding:14px;box-shadow:0 10px 34px rgba(0,0,0,.35);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
.fbw-popover p{margin:0 0 8px;font-size:14px;font-weight:600}
.fbw-popover textarea{width:100%;box-sizing:border-box;min-height:64px;font:inherit;font-size:16px;
  padding:8px 10px;border:1px solid #C9C9CF;border-radius:10px;resize:vertical}
.fbw-popover .row{display:flex;gap:8px;margin-top:10px}
.fbw-popover button{flex:1;min-height:40px;border-radius:10px;font:700 14px/1 inherit;font-family:inherit;cursor:pointer}
.fbw-popover .ok{background:#1D1D22;color:#fff;border:0}
.fbw-popover .no{background:#fff;color:#1D1D22;border:1px solid #C9C9CF}
@media (prefers-reduced-motion:no-preference){
  .fbw-panel[open]{animation:fbwUp .28s ease}
  @keyframes fbwUp{from{transform:translateY(24px);opacity:.4}to{transform:none;opacity:1}}
}
