/* BBS Sensory Wall Planner v1.3.1 - all rules scoped to #bbs-planner */
#bbs-planner{
  --bbsp-bg:#eef8fb; --bbsp-surface:#ffffff; --bbsp-ink:#1d2327; --bbsp-muted:#566269; --bbsp-line:#b9dfe8;
  --bbsp-accent:#E56E94; --bbsp-accent-ink:#1d2327; --bbsp-panel:#f2b705; --bbsp-panel-edge:#a97f00; --bbsp-wall:#eef8fb;
  --bbsp-ok:#1f7a4d; --bbsp-warn:#a85b00; --bbsp-bad:#b3261e;
  color:var(--bbsp-ink); font-family:inherit; font-size:16px; line-height:1.5; margin:24px 0; text-align:left;
}
#bbs-planner *{box-sizing:border-box}
#bbs-planner .bbsp-title{font-size:1.5rem;line-height:1.2;margin:0 0 6px;font-weight:700;color:var(--bbsp-ink)}
#bbs-planner .bbsp-lede{color:var(--bbsp-muted);margin:0 0 18px;max-width:62ch}
#bbs-planner .bbsp-grid{display:grid;grid-template-columns:minmax(250px,320px) minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:760px){#bbs-planner .bbsp-grid{grid-template-columns:1fr}}
#bbs-planner .bbsp-card{background:var(--bbsp-surface);border:1px solid var(--bbsp-line);border-radius:10px;padding:18px;margin:0}
#bbs-planner form.bbsp-card{background:var(--bbsp-bg)}
#bbs-planner .bbsp-stack{display:flex;flex-direction:column;gap:16px}
#bbs-planner .bbsp-field{display:flex;flex-direction:column;gap:4px;margin:0}
#bbs-planner label,#bbs-planner .bbsp-lab{font-weight:600;font-size:.92rem;margin:0;display:block;color:var(--bbsp-ink)}
#bbs-planner h2.bbsp-h,#bbs-planner .bbsp-card h2{font-size:1.15rem;font-weight:700;margin:0 0 10px;line-height:1.25;color:var(--bbsp-ink)}
#bbs-planner .bbsp-hint{color:var(--bbsp-muted);font-size:.85rem}
#bbs-planner input[type=number],#bbs-planner select{font:inherit;color:var(--bbsp-ink);background:#fff;border:1px solid var(--bbsp-line);border-radius:6px;padding:9px 10px;width:100%;height:auto;box-shadow:none;margin:0}
#bbs-planner input[type=range]{width:100%;accent-color:var(--bbsp-accent);margin:0;padding:0;height:auto}
#bbs-planner input:focus-visible,#bbs-planner select:focus-visible,#bbs-planner button:focus-visible,#bbs-planner a:focus-visible{outline:3px solid var(--bbsp-accent);outline-offset:2px}
#bbs-planner .bbsp-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#bbs-planner .bbsp-seg{display:flex;border:1px solid var(--bbsp-line);border-radius:6px;overflow:hidden;background:#fff}
#bbs-planner .bbsp-seg input{position:absolute;opacity:0;pointer-events:none}
#bbs-planner .bbsp-seg label{flex:1;text-align:center;padding:9px 6px;cursor:pointer;font-weight:600;background:#fff;border-right:1px solid var(--bbsp-line)}
#bbs-planner .bbsp-seg label:last-of-type{border-right:0}
#bbs-planner .bbsp-seg input:checked+label{background:var(--bbsp-accent);color:var(--bbsp-accent-ink)}
#bbs-planner .bbsp-seg input:focus-visible+label{outline:3px solid var(--bbsp-ink);outline-offset:-3px}
#bbs-planner .bbsp-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:14px 0}
#bbs-planner .bbsp-tile{border:1px solid var(--bbsp-line);border-radius:8px;padding:10px 12px;background:var(--bbsp-bg)}
#bbs-planner .bbsp-k{font-size:.8rem;color:var(--bbsp-muted)}
#bbs-planner .bbsp-v{font-size:1.45rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2}
#bbs-planner .bbsp-headline{font-size:1.4rem;font-weight:700;line-height:1.2;margin:0}
#bbs-planner .bbsp-pill{display:inline-block;font-size:.78rem;font-weight:600;padding:2px 9px;border-radius:99px;border:1px solid currentColor;margin-right:6px;vertical-align:1px}
#bbs-planner .bbsp-ok{color:var(--bbsp-ok)}
#bbs-planner .bbsp-warn{color:var(--bbsp-warn)}
#bbs-planner .bbsp-bad{color:var(--bbsp-bad)}
#bbs-planner ul.bbsp-notes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
#bbs-planner ul.bbsp-notes li{margin:0;padding:0;color:var(--bbsp-ink)}
#bbs-planner .bbsp-card p{margin:0 0 10px}
#bbs-planner .bbsp-svgbox{overflow-x:auto;border:1px solid var(--bbsp-line);border-radius:8px;background:var(--bbsp-bg)}
#bbs-planner svg{display:block;width:100%;height:auto;min-width:520px;max-width:none}
#bbs-planner .bbsp-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;align-items:center}
#bbs-planner .bbsp-btn{font:inherit;font-weight:600;border-radius:7px;padding:10px 16px;border:1px solid var(--bbsp-ink);cursor:pointer;text-decoration:none;display:inline-block;color:var(--bbsp-ink);background:transparent;line-height:1.3;box-shadow:none;text-shadow:none}
#bbs-planner .bbsp-btn:hover{text-decoration:none;color:var(--bbsp-ink)}
#bbs-planner .bbsp-btn.bbsp-primary{background:var(--bbsp-accent);border-color:var(--bbsp-accent)}
#bbs-planner textarea{font:inherit;font-size:.9rem;width:100%;min-height:170px;background:var(--bbsp-bg);color:var(--bbsp-ink);border:1px solid var(--bbsp-line);border-radius:6px;padding:10px;resize:vertical;box-shadow:none}
#bbs-planner .bbsp-foot{color:var(--bbsp-muted);font-size:.85rem;margin:18px 0 0;max-width:75ch}
@media (prefers-reduced-motion:no-preference){#bbs-planner .bbsp-btn{transition:transform .12s}#bbs-planner .bbsp-btn:hover{transform:translateY(-1px)}}
