/* Design-only rules the planner screens rely on, extracted by script from the
   design's office.css (Office keeps these classes scoped to their own screens).
   :where() adds no specificity, so office-planner*.css still win as in the design. */
:where(.pl-screen) .xp-empty{padding:22px;text-align:center;font-size:12.5px;color:var(--text-muted)}
:where(.pl-screen) .xp-check{width:15px;height:15px;border:1.5px solid var(--border-strong);border-radius:4px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer}
:where(.pl-screen) .xp-check.is-on{background:var(--brand);border-color:var(--brand)}
:where(.pl-screen) .xp-note{margin-top:12px;padding:9px 11px;background:var(--bg-subtle);border-radius:8px;font-size:11.5px;color:var(--text-muted);line-height:1.5}
:where(.pl-screen) .xp-yn{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}
:where(.pl-screen) .xp-yn.is-y{background:var(--paid-bg);color:var(--paid-text)}
:where(.pl-screen) .xp-yn.is-n{background:var(--void-bg);color:var(--void-text)}
:where(.pl-screen) .pc-note{display:flex;gap:10px;padding:11px 14px;border:1px solid var(--border);background:var(--bg-subtle);border-radius:10px;font-size:12.5px;line-height:1.5;color:var(--text-muted);margin-bottom:16px}
:where(.pl-screen) .pc-warn{display:flex;gap:10px;padding:11px 14px;border:1px solid var(--hold-border);background:var(--hold-bg);color:var(--hold-text);border-radius:10px;font-size:12.5px;line-height:1.5;margin-bottom:16px}
:where(.pl-screen) .pc-row--flag{box-shadow:inset 3px 0 0 var(--hold)}
:where(.pl-screen) .pc-flagbox{display:flex;gap:8px;align-items:flex-start;margin-top:11px;padding:9px 11px;background:var(--hold-bg);border:1px solid var(--hold-border);border-radius:9px;font-size:11.5px;color:var(--hold-text);line-height:1.45}
:where(.pl-screen) .pc-submit{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}
:where(.pl-screen) .pc-submit-s{font-size:11.5px;color:var(--text-muted);line-height:1.45}
:where(.pl-screen) .pg-card{padding:16px 18px}
:where(.pl-screen) .pg-card-h{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);font-weight:600}
:where(.pl-screen) .pg-card-s{font-size:12px;color:var(--text-muted);line-height:1.5;margin-top:4px}
:where(.pl-screen) .pg-facts{display:flex;flex-direction:column;margin-top:11px}
:where(.pl-screen) .pg-fact{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-top:1px solid var(--border);font-size:12.5px}
:where(.pl-screen) .pg-fact:first-child{border-top:0}
:where(.pl-screen) .pg-fact span{color:var(--text-muted)}
:where(.pl-screen) .pg-fact strong{font-weight:500;text-align:right}
:where(.pl-screen) .pb-ex-l{font-size:12px;font-weight:600;display:flex;align-items:center;gap:6px}
:where(.pl-screen) .pb-ex-w{font-size:11px;color:var(--text-muted);line-height:1.4;margin-top:2px}
:where(.pl-screen) .pb-st-ok{display:flex;gap:9px;align-items:flex-start;padding:9px 11px;background:var(--paid-bg);border:1px solid var(--paid-border);border-radius:9px;font-size:11.5px;color:var(--paid-text);line-height:1.45}
:where(.pl-screen) .pb-st-warn{display:flex;gap:8px;align-items:flex-start;padding:9px 11px;background:var(--hold-bg);border:1px solid var(--hold-border);border-radius:9px;font-size:11.5px;color:var(--hold-text);line-height:1.45;margin-top:8px}
:where(.pl-screen) .pc-flagbox.is-soft{background:var(--sched-bg);border-color:var(--sched-border);color:var(--sched-text)}
:where(.pl-screen) .pb-f{display:flex;flex-direction:column;gap:4px}
:where(.pl-screen) .pb-f>span{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle)}
:where(.pl-screen) .pb-f input,:where(.pl-screen) .pb-f textarea{width:100%;box-sizing:border-box;font-family:inherit;font-size:13px;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;padding:8px 11px}
:where(.pl-screen) .pb-f textarea{resize:vertical;line-height:1.5;min-height:64px}
:where(.pl-screen) .pb-f input:focus,:where(.pl-screen) .pb-f textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-bg)}
:where(.pl-screen) .pb-f input::placeholder,:where(.pl-screen) .pb-f textarea::placeholder{color:var(--text-subtle)}
:where(.pl-screen) .pb-f>em{font-style:normal;font-size:10.5px;color:var(--text-subtle);line-height:1.4}
:where(.pl-screen) .ro-chead{display:flex;gap:16px;align-items:flex-start;justify-content:space-between}
