/* Shared product rhythm. Theme colors remain owned by themes.css. */
#rf-app[data-theme] {--product-space:24px;--product-radius:14px;--product-control:40px}
#rf-app[data-theme] .rf-card{padding:var(--product-space);border-radius:var(--product-radius)}
#rf-app[data-theme] .rf-btn{min-height:var(--product-control);font-size:14px;line-height:1.4}
#rf-app[data-theme] :is(.rf-card h3,.rf-point-groups h4){font-size:18px;line-height:1.4}
#rf-app[data-theme] :is(.rf-card p,.rf-assessment-point>span){line-height:1.6}
#rf-app[data-theme] :is(button,a,input,textarea,select):focus-visible{outline:2px solid var(--ui-accent);outline-offset:3px}
#rf-app[data-theme] .rf-brief-heading{align-items:flex-start;gap:24px;flex-wrap:wrap}
#rf-app[data-theme] .rf-brief-heading-actions{flex-wrap:wrap;justify-content:flex-end}
#rf-app[data-theme] :is(.rf-brief-fit,.rf-fit-cards){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;min-width:300px}
#rf-app[data-theme] .rf-fit-cards{margin:20px 0}
#rf-app[data-theme] .rf-brief-score{display:flex;flex-direction:column;align-items:flex-start;padding:16px 18px;border:1px solid var(--ui-panel-line);border-top:3px solid var(--ui-accent);border-radius:12px;background:var(--ui-panel);min-width:0}
#rf-app[data-theme] .rf-brief-score:nth-child(2){background:var(--ui-soft)}
#rf-app[data-theme] .rf-brief-score>span{font-size:14px;font-weight:650;color:var(--ui-text)}
#rf-app[data-theme] .rf-brief-score strong{font-size:30px;line-height:1.3;margin-top:6px;color:var(--ui-text)}
#rf-app[data-theme] .rf-brief-score small{font-size:14px;font-weight:400;color:var(--ui-muted)}
#rf-app[data-theme] .rf-brief-score p{font-size:13px;font-weight:400;margin:5px 0 0;color:var(--ui-muted)}
#rf-app[data-theme] .rf-point-groups{gap:20px;margin:24px 0}
#rf-app[data-theme] .rf-point-groups>section{padding:18px;border:1px solid var(--ui-panel-line);border-radius:12px;background:var(--ui-panel);min-width:0}
#rf-app[data-theme] .rf-point-groups>section:first-child h4{color:var(--rf-green)}
#rf-app[data-theme] .rf-point-groups>section:nth-child(2) h4{color:var(--rf-amber)}
#rf-app[data-theme] .rf-assessment-point{display:flex;flex-direction:column;gap:8px;background:var(--ui-panel);border-color:var(--ui-panel-line);padding:14px;font:inherit;font-size:14px;transition:background .16s,border-color .16s}
#rf-app[data-theme] .rf-assessment-point:hover{background:var(--ui-soft);border-color:var(--ui-accent)}
#rf-app[data-theme] .rf-assessment-point small{font-size:12px;border-radius:6px;padding:3px 7px;white-space:normal;background:var(--ui-good-bg);color:var(--rf-green)}
#rf-app[data-theme] .rf-assessment-point small.unsupported{background:var(--ui-warn-bg);color:var(--rf-amber)}
#rf-app[data-theme] .rf-screening-work{border-top:3px solid var(--ui-accent)}
#rf-app[data-theme] .rf-priority-queue{background:var(--ui-panel);border:1px solid var(--ui-panel-line);border-radius:var(--product-radius);padding:24px;margin-bottom:24px}
#rf-app[data-theme] .rf-priority-queue ol{list-style:none;padding:0;margin:0}
#rf-app[data-theme] .rf-priority-queue li{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px 0;border-top:1px solid var(--ui-panel-line)}
#rf-app[data-theme] .rf-priority-queue strong{font-size:16px}
#rf-app[data-theme] .rf-priority-queue li p{font-size:14px;color:var(--ui-muted);margin:4px 0 0;overflow-wrap:anywhere}
#rf-app[data-theme] .rf-priority-order{display:grid;place-items:center;width:32px;height:32px;background:var(--ui-soft);color:var(--ui-accent);border-radius:8px;font-size:14px;font-weight:650}
#rf-app[data-theme] .rf-priority-queue [data-tone="attention"] .rf-priority-order{background:var(--ui-warn-bg);color:var(--rf-amber)}
/* The selected point stays fixed while its source document scrolls independently. */
#rf-app[data-theme] .rf-resume-panel{display:flex;flex-direction:column;width:min(680px,52vw);height:100dvh;padding:0;overflow:hidden;background:var(--ui-panel);box-shadow:-12px 0 48px rgb(0 0 0 / .16);animation:resume-enter .2s ease-out}
#rf-app[data-theme] .rf-resume-backdrop{background:rgb(8 25 18 / .26);animation:resume-shade .18s ease-out}
#rf-app[data-theme] .rf-resume-panel-head{position:static;flex-shrink:0;top:auto;margin:0;padding:18px 24px;background:var(--ui-panel)}
#rf-app[data-theme] .rf-resume-panel-head h3{font-size:16px;overflow-wrap:anywhere}
#rf-app[data-theme] .rf-resume-close{flex-shrink:0}
#rf-app[data-theme] .rf-point-review{flex-shrink:0;max-height:45dvh;overflow:auto;margin:0;padding:18px 24px;border:0;border-bottom:1px solid var(--ui-panel-line);border-radius:0;background:var(--ui-soft)}
#rf-app[data-theme] .rf-point-review h4{font-size:16px;line-height:1.5}
#rf-app[data-theme] :is(.rf-supported-label,.rf-unsupported-label){font-size:14px;margin:8px 0}
#rf-app[data-theme] .rf-evidence-meaning{font-size:14px;color:var(--ui-muted);margin:8px 0}
#rf-app[data-theme] .rf-resume-document{position:relative;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;margin:18px;border-radius:10px;background:var(--ui-panel);scroll-behavior:smooth}
#rf-app[data-theme] .rf-resume-copy{font-family:inherit;font-size:15px;line-height:1.8;padding:24px}
#rf-app[data-theme] .rf-resume-copy mark{background:var(--ui-warn-bg);color:var(--ui-text);box-shadow:0 0 0 2px var(--rf-amber);border-radius:3px;padding:2px 0}
#rf-app[data-theme] .rf-resume-panel-status{padding:24px;color:var(--ui-muted)}
@keyframes resume-enter{from{transform:translateX(24px);opacity:0}to{transform:translateX(0);opacity:1}}
@keyframes resume-shade{from{opacity:0}to{opacity:1}}
@media(max-width:1000px){#rf-app[data-theme] .rf-brief-heading-actions{width:100%;justify-content:flex-start}#rf-app[data-theme] .rf-brief-fit{flex:1}#rf-app[data-theme] .rf-point-groups{grid-template-columns:1fr}#rf-app[data-theme] .rf-resume-panel{width:min(680px,85vw)}}
@media(max-width:600px){#rf-app{--product-space:18px}#rf-app[data-theme] .rf-priority-queue{padding:18px}#rf-app[data-theme] .rf-priority-queue .rf-home-list-heading{align-items:flex-start;flex-direction:column;gap:8px}#rf-app[data-theme] .rf-priority-queue li{grid-template-columns:28px minmax(0,1fr);gap:12px}#rf-app[data-theme] .rf-priority-queue li>.rf-btn{grid-column:2;justify-self:start}#rf-app[data-theme] :is(.rf-brief-fit,.rf-fit-cards){width:100%;min-width:0}#rf-app[data-theme] .rf-brief-score{padding:12px}#rf-app[data-theme] .rf-resume-panel{top:0;bottom:0;width:100%;height:100dvh;border-radius:0}#rf-app[data-theme] .rf-point-review{max-height:48dvh;padding:16px}#rf-app[data-theme] .rf-resume-panel-head{padding:16px}#rf-app[data-theme] .rf-resume-document{margin:12px}#rf-app[data-theme] .rf-resume-copy{padding:18px}}
@media(prefers-reduced-motion:reduce){#rf-app[data-theme] .rf-resume-panel,#rf-app[data-theme] .rf-resume-backdrop{animation:none}#rf-app[data-theme] .rf-resume-document{scroll-behavior:auto}#rf-app[data-theme] .rf-assessment-point{transition:none}}
#rf-app[data-reduce-motion="true"] :is(.rf-resume-panel,.rf-resume-backdrop){animation:none}
#rf-app[data-reduce-motion="true"] .rf-resume-document{scroll-behavior:auto}
#rf-app[data-theme] .rf-job-steps,#rf-app[data-theme] .rf-activation ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0 0 24px;padding:0;gap:12px}
#rf-app[data-theme] .rf-job-steps li,#rf-app[data-theme] .rf-activation li{display:flex;gap:8px;align-items:center;font-size:14px;color:var(--ui-muted);padding:10px;border-bottom:2px solid var(--ui-panel-line)}
#rf-app[data-theme] :is(.rf-job-steps,.rf-activation) [aria-current="step"]{color:var(--ui-accent);border-color:var(--ui-accent);font-weight:650}
#rf-app[data-theme] [data-job-step]{display:grid;gap:18px}
#rf-app[data-theme] [data-job-step][hidden]{display:none}
#rf-app[data-theme] [data-job-step] h4{font-size:20px;margin:0}
#rf-app[data-theme] .rf-wizard-actions{display:flex;gap:12px;justify-content:flex-end;border-top:1px solid var(--ui-panel-line);padding-top:20px}
#rf-app[data-theme] .rf-draft-priority{border:1px solid var(--ui-panel-line);border-radius:12px;padding:16px;margin-bottom:12px}
#rf-app[data-theme] .rf-draft-priority label{display:block;margin:8px 0}
#rf-app[data-theme] .rf-draft-priority input[type="checkbox"]{width:auto;margin-right:6px}
#rf-app[data-theme] .rf-draft-priority input:not([type="checkbox"]){width:100%}
#rf-app[data-theme] .rf-preserve-lines{white-space:pre-wrap}
#rf-app[data-theme] #jobReviewDraft dl{display:grid;grid-template-columns:1fr auto;gap:12px;padding:16px;border-radius:12px;background:var(--ui-soft)}
#rf-app[data-theme] #jobReviewDraft dd{margin:0;font-weight:650}
#rf-app[data-theme] #jobSaveStatus[data-state="error"]{padding:14px;background:var(--ui-error-bg);color:var(--rf-red);border-radius:10px}
#rf-app[data-theme] .rf-activation{padding:20px;margin-bottom:24px;border:1px solid var(--ui-panel-line);border-radius:14px;background:var(--ui-panel)}
#rf-app[data-theme] .rf-activation>div{display:flex;align-items:center;justify-content:space-between;gap:12px}
#rf-app[data-theme] .rf-activation h2{font-size:18px;margin:0}
#rf-app[data-theme] .rf-activation ol{grid-template-columns:repeat(3,minmax(0,1fr));margin:12px 0}
@media(max-width:650px){#rf-app[data-theme] .rf-job-steps{grid-template-columns:repeat(2,minmax(0,1fr))}#rf-app[data-theme] .rf-activation ol{grid-template-columns:1fr}#rf-app[data-theme] .rf-activation>div{align-items:flex-start;flex-direction:column}}
#rf-app[data-theme] .rf-processing-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;list-style:none;padding:16px;margin:16px 0;background:var(--ui-soft);border-radius:12px}
#rf-app[data-theme] .rf-processing-steps li{font-size:14px;line-height:1.5;color:var(--ui-muted)}
#rf-app[data-theme] .rf-processing-steps span{display:block;margin-bottom:6px;font-weight:650}
#rf-app[data-theme] .rf-processing-steps [data-progress="active"]{color:var(--ui-accent);font-weight:650}
#rf-app[data-theme] .rf-recovery{padding:18px;background:var(--ui-warn-bg);border:1px solid var(--rf-amber);border-radius:12px;margin:12px 0}
#rf-app[data-theme] .rf-recovery[hidden]{display:none}
#rf-app[data-theme] .rf-recovery p{font-size:14px;line-height:1.6}
@media(max-width:650px){#rf-app[data-theme] .rf-processing-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
#rf-app[data-theme] .rf-plan-summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px;background:var(--ui-soft);border-radius:12px;margin:16px 0}
#rf-app[data-theme] .rf-plan-summary h4{font-size:22px;margin:6px 0}
#rf-app[data-theme] .rf-plan-summary strong{font-size:24px}
#rf-app[data-theme] .rf-plan-summary p{font-size:14px;margin:6px 0}
#rf-app[data-theme] #teamPlan progress{width:100%;height:10px;accent-color:var(--ui-accent)}
#rf-app[data-theme] #teamPlan details{margin-bottom:20px}
@media(max-width:600px){#rf-app[data-theme] .rf-plan-summary{align-items:flex-start;flex-direction:column}}
