/* Rig Ready — front end, from the v3 one-page design handoff.
   Production changes from the handoff stylesheet:
     - the `body` rule is dropped; it would restyle the whole store
     - the `.tsm-*` price stand-ins are dropped; the live site ships its own
     - the price slot is 190px, not 164: the real price component puts its label
       and amount on one line and a three-digit amount broke after "$152.0"
     - the machine tile and the tabs render as links, so [aria-current] and
       [aria-selected] carry the states the prototype put on buttons
     - --rr-max makes the page width tunable in one place */

.rr{--rr-max:680px;max-width:var(--rr-max);margin:0 auto;padding:20px 16px 48px;background:#F5F6F7;color:#2b2d31;font:16px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;display:flex;flex-direction:column;gap:28px;container-type:inline-size;-webkit-font-smoothing:antialiased}
.rr *,.rr *::before,.rr *::after{box-sizing:border-box}
.rr br{display:none}
.rr h1,.rr h2,.rr h3{margin:0;padding:0;font-weight:700;color:#1c1d20;line-height:1.15;text-transform:none;text-wrap:balance}
.rr h1{font-size:34px;letter-spacing:-.02em}.rr h2{font-size:17px;letter-spacing:-.005em}
.rr p,.rr dl,.rr dd,.rr dt,.rr ul{margin:0;padding:0;text-wrap:pretty}
.rr ul{list-style:none}
.rr a{color:#C00000;text-decoration:none}
@media (hover:hover){.rr a:hover{color:#8a0000;text-decoration:underline}}
.rr .rr-card{background:#fff;border:0;border-radius:16px;box-shadow:0 1px 2px rgba(20,22,26,.05),0 0 0 1px rgba(20,22,26,.04);overflow:clip}
.rr .rr-pad{padding:20px 16px}
.rr .rr-stack{display:flex;flex-direction:column;gap:12px}
.rr .rr-muted{color:#6b7077;font-size:14px}
.rr .rr-eyebrow{font-size:13px;font-weight:600;letter-spacing:.02em;color:#6b7077}
.rr .rr-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 22px;border:0;border-radius:12px;background:#E00000;color:#fff;font-family:inherit;font-weight:600;font-size:16px;line-height:1.2;text-decoration:none;cursor:pointer;text-align:center}
.rr a.rr-btn{color:#fff}
@media (hover:hover){.rr .rr-btn:hover{background:#c20000;color:#fff;text-decoration:none}}
.rr .rr-btn--ghost,.rr a.rr-btn--ghost{background:#eceef0;color:#1c1d20}
@media (hover:hover){.rr .rr-btn--ghost:hover{background:#e0e3e6;color:#1c1d20}}
.rr .rr-btn--sm{min-height:48px;padding:0 16px;font-size:15px}
.rr .rr-btn--quiet{background:none;color:#6b7077;font-weight:500;min-height:48px;padding:0 8px;text-decoration:underline}
@media (hover:hover){.rr .rr-btn--quiet:hover{background:none;color:#1c1d20}}
.rr .rr-btn[disabled]{background:#e6e8ea;color:#8b9096;cursor:not-allowed}
.rr .rr-btn,.rr .rr-stepb,.rr .rr-tile,.rr .rr-tab{transition:background-color 120ms ease-out,color 120ms ease-out,transform 120ms ease-out,box-shadow 120ms ease-out;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.rr .rr-btn:active:not([disabled]),.rr .rr-stepb:active:not([disabled]){transform:scale(.97)}
.rr :focus-visible{outline:3px solid rgba(224,0,0,.3);outline-offset:2px}
.rr .rr-hero{display:flex;flex-direction:column;gap:0;padding:0;background:#fff;border-radius:16px;box-shadow:0 1px 2px rgba(20,22,26,.05),0 0 0 1px rgba(20,22,26,.04);overflow:hidden}
.rr .rr-hero>.rr-head{padding:20px 16px 18px}
.rr .rr-hero>.rr-muted,.rr .rr-hero>p{padding:12px 16px 16px;border-top:1px solid #efeff1}
.rr .rr-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}
.rr .rr-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid #efeff1;background:#fafafb}
.rr .rr-stat{display:flex;flex-direction:column;gap:4px;padding:16px;border:0;border-left:1px solid #efeff1;background:none}
.rr .rr-stat:first-child{border-left:0}
.rr .rr-stat b{font-size:34px;line-height:1;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:#1c1d20}
.rr .rr-stat > span{font-size:13px;color:#6b7077;line-height:1.25}
.rr .rr-stat--due b{color:#C00000}
.rr .rr-rigcard{background:none;box-shadow:none;border-radius:0;overflow:visible}
.rr .rr-righ{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 12px;padding:0 4px 8px}
.rr .rr-righ h2{display:flex;flex-wrap:wrap;gap:0 8px;align-items:baseline}
.rr .rr-rigs{display:flex;flex-direction:column;background:#fff;border-radius:16px;box-shadow:0 1px 2px rgba(20,22,26,.05),0 0 0 1px rgba(20,22,26,.04);overflow:hidden;padding:0}
.rr .rr-tile{display:grid;grid-template-columns:1fr auto 14px;grid-template-areas:"t s c" "m s c";align-items:center;column-gap:10px;row-gap:1px;min-height:68px;padding:12px 16px;border:0;border-top:1px solid #efeff1;border-radius:0;background:#fff;color:#1c1d20;font-family:inherit;text-align:left;cursor:pointer;width:100%;text-decoration:none}
.rr .rr-tile:first-child{border-top:0}
.rr .rr-tile::after{content:"\203A";grid-area:c;font-size:22px;color:#b3b7bd;line-height:1}
@media (hover:hover){.rr .rr-tile:hover{background:#fafafb;color:#1c1d20;text-decoration:none}}
.rr .rr-tile:active{background:#f1f2f4}
.rr .rr-tile[aria-current="true"]{background:#f3f4f6}
.rr .rr-tile[aria-current="true"] .rr-tile-t{color:#C00000}
.rr .rr-tile-t{grid-area:t;font-weight:600;font-size:17px;overflow-wrap:anywhere}
.rr .rr-tile-s{grid-area:m;font-size:14px;color:#6b7077;overflow-wrap:anywhere}
.rr .rr-tile .rr-st{grid-area:s;margin:0;justify-self:end}
.rr .rr-st{display:inline-flex;align-items:center;font-size:13px;font-weight:600;color:#4d5157;white-space:nowrap;margin:0;padding:0;border:0;background:none}
.rr .rr-st::before{content:"";width:8px;height:8px;border-radius:50%;margin-right:7px;flex:none}
.rr .rr-st--due{color:#B00000}.rr .rr-st--due::before{background:#E00000}
.rr .rr-st--ok::before{background:#2f8f55}
.rr .rr-st--none{color:#6b7077}.rr .rr-st--none::before{border:1.5px solid #9aa0a7}
.rr .rr-panel-h{padding:20px 16px 12px;display:flex;flex-direction:column;gap:14px}
.rr .rr-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin:4px 16px 8px;padding:3px;border-radius:12px;background:#eceef0}
.rr .rr-tab{display:flex;align-items:center;justify-content:center;min-height:44px;padding:4px 6px;border:0;border-radius:9px;background:none;color:#52575e;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;text-align:center;text-decoration:none}
@media (hover:hover){.rr .rr-tab:hover{color:#1c1d20;text-decoration:none}}
.rr .rr-tab[aria-selected="true"]{background:#fff;color:#1c1d20;box-shadow:0 1px 3px rgba(20,22,26,.12)}
.rr .rr-field{display:flex;flex-direction:column;gap:6px}
.rr .rr-field label{font-weight:600}
.rr .rr-field label i{font-style:normal;font-weight:400;color:#6b7077;font-size:14px;margin-left:6px}
.rr .rr-input{width:100%;min-height:52px;padding:10px 14px;border:0;border-radius:12px;background:#f1f2f4;color:#1c1d20;font-family:inherit;font-size:16px;line-height:1.3;margin:0}
.rr textarea.rr-input{min-height:96px;resize:vertical}
.rr .rr-help{font-size:14px;color:#6b7077}
.rr .rr-inline{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch}
.rr .rr-inline .rr-input{flex:1 1 160px;width:auto}
.rr .rr-nudge{display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:#fff3f3;border-radius:12px;color:#4a0000}
.rr details.rr-more{border-top:1px solid #efeff1;padding-top:4px}
.rr details.rr-more summary{min-height:48px;display:flex;align-items:center;font-weight:600;color:#C00000;cursor:pointer}
.rr .rr-note{padding:4px 16px 12px;font-size:13px;color:#6b7077;background:none;border:0}
.rr .rr-task{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:14px 16px;border-top:1px solid #efeff1}
.rr .rr-task-b{flex:1 1 240px;min-width:0;display:flex;flex-direction:column;gap:3px}
.rr .rr-name{font-weight:600;overflow-wrap:anywhere}
.rr .rr-meta{font-size:14px;color:#6b7077;overflow-wrap:anywhere}
.rr .rr-src{display:inline-block;margin-left:6px;padding:0 7px;border-radius:4px;background:#eceef0;font-size:12px;font-weight:600;color:#4d5157}
.rr .rr-src--shop{background:#1c1d20;color:#fff}
.rr .rr-hist{padding:14px 16px;border-top:1px solid #efeff1;display:flex;flex-direction:column;gap:3px}
.rr .rr-hd{font-variant-numeric:tabular-nums;font-size:13px;color:#6b7077;font-weight:600}
.rr .rr-empty{padding:8px 16px 20px;color:#4d5157}
.rr .rr-tier{display:flex;justify-content:space-between;gap:8px;padding:16px 16px 6px;border-top:1px solid #efeff1;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#6b7077}
.rr .rr-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 16px;border-top:1px solid #f3f3f5;transition:background-color 120ms ease-out;scroll-margin-bottom:104px}
.rr .rr-row--on{background:#fff7f7}
/* 200px basis, not the prototype's 260: the price slot needed 190px rather than
   164, and at 680px wide a 260 basis pushed the stepper onto its own line. */
.rr .rr-pick{flex:1 1 200px;min-width:0;display:flex;align-items:flex-start;gap:12px;min-height:48px;padding:4px 0;cursor:pointer;margin:0}
.rr .rr-pick input{flex:0 0 28px;width:28px;height:28px;margin:2px 0 0;accent-color:#E00000}
.rr .rr-pick-b{display:flex;flex-direction:column;gap:2px;min-width:0}
.rr .rr-pn{font-weight:600;color:#2b2d31;font-family:ui-monospace,Menlo,monospace;font-size:13px}
.rr .rr-priceslot{flex:0 0 190px;width:190px}
.rr .rr-priceslot .woocommerce-Price-amount{white-space:nowrap}
.rr .rr-step{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.rr .rr-stepb{width:44px;min-height:52px;padding:0;border:0;border-radius:12px;background:#eceef0;color:#1c1d20;font-family:inherit;font-size:22px;font-weight:600;line-height:1;cursor:pointer}
.rr .rr-stepb[disabled]{color:#a5aab0;background:#f3f4f6;cursor:not-allowed}
.rr .rr-qty{flex:0 0 44px;width:44px;padding:10px 0;text-align:center;appearance:textfield;-moz-appearance:textfield;font-weight:600}
.rr .rr-qty::-webkit-outer-spin-button,.rr .rr-qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.rr .rr-na{flex:1 1 200px;font-size:14px;color:#6b7077;font-weight:500}
.rr .rr-row--off .rr-name,.rr .rr-row--off .rr-pn,.rr .rr-row--off .rr-meta{color:#8b9096}
.rr .rr-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:12px 16px;background:rgba(255,255,255,.86);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border-top:1px solid rgba(20,22,26,.08);font-variant-numeric:tabular-nums;position:sticky;bottom:0;z-index:2}
.rr .rr-bar--inline{position:static;background:#fff}
.rr .rr-total{font-size:24px;font-weight:700;line-height:1.1;letter-spacing:-.01em;color:#1c1d20}
.rr .rr-bar .rr-btn{flex:1 1 180px}
.rr .rr-retire{text-align:center}
.rr .rr-pitch{display:flex;flex-direction:column;gap:12px}
.rr .rr-chips{display:flex;flex-wrap:wrap;gap:8px}
.rr .rr-chip{padding:6px 12px;border:1px solid #e0e3e6;border-radius:999px;background:#fff;font-size:14px;font-weight:600}
.rr .rr-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.rr .woocommerce-message,.rr .woocommerce-error,.rr .woocommerce-info{margin:0}
@media (prefers-reduced-motion:reduce){.rr *{transition-duration:.01ms !important}.rr .rr-btn:active,.rr .rr-stepb:active{transform:none !important}}
@media (prefers-reduced-transparency:reduce){.rr .rr-bar{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}}
@container (max-width:540px){.rr .rr-stats{grid-template-columns:1fr 1fr}.rr .rr-stat:nth-child(3){border-left:0}.rr .rr-stat:nth-child(n+3){border-top:1px solid #efeff1}.rr .rr-pick{flex-basis:100%}.rr .rr-priceslot{flex:1 1 160px;width:auto;min-width:160px}.rr .rr-na{margin-left:40px}.rr h1{font-size:30px}}

/* ---------------------------------------------------------- the rig card.
   A week grid, black on white, no status: a printed sheet cannot know what has
   been recorded since it came off the printer, and a stale "due" on paper is
   worse than no due date at all. */
.rr.rr-print{--rr-max:860px}
.rr .rr-sheet{background:#fff;border-radius:16px;box-shadow:0 1px 2px rgba(20,22,26,.05),0 0 0 1px rgba(20,22,26,.04);padding:24px 20px}
.rr .rr-sheet-h{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;padding-bottom:14px;border-bottom:2px solid #1c1d20}
.rr .rr-sheet-h h1{font-size:28px}
.rr .rr-sheet-sub{font-size:14px;color:#4d5157;margin-top:2px}
.rr .rr-sheet-wk{display:flex;align-items:baseline;gap:8px;font-size:14px;color:#4d5157}
.rr .rr-sheet-wk .rr-rule{display:block;width:150px;border-bottom:1px solid #1c1d20}
.rr .rr-sheet-m{margin-top:22px}
.rr .rr-sheet-m h2{font-size:18px;display:flex;flex-wrap:wrap;gap:0 10px;align-items:baseline}
.rr .rr-sheet-m h2 span{font-weight:400;font-size:14px;color:#4d5157}
.rr .rr-grid{width:100%;border-collapse:collapse;margin-top:10px;font-size:14px}
.rr .rr-grid th,.rr .rr-grid td{border:1px solid #c9ccd0;padding:8px 10px;text-align:left;vertical-align:top}
.rr .rr-grid thead th{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#4d5157;background:#f3f4f6}
.rr .rr-grid-task{font-weight:600;color:#1c1d20}
.rr .rr-grid-note{display:block;font-weight:400;font-size:13px;color:#4d5157;margin-top:3px}
.rr .rr-grid-when{white-space:nowrap;font-weight:400;color:#4d5157;width:1%}
.rr .rr-grid-day{width:34px;text-align:center;padding:8px 4px}
.rr .rr-grid-week{text-align:left;white-space:nowrap;color:#4d5157}
.rr .rr-box{display:inline-block;width:17px;height:17px;border:1.5px solid #1c1d20;border-radius:3px;vertical-align:-3px}
.rr .rr-grid-week .rr-box{margin-right:7px}
.rr .rr-sheet-src{margin-top:8px;font-size:12px;color:#6b7077}
.rr .rr-sheet-foot{margin-top:26px;padding-top:12px;border-top:1px solid #c9ccd0;font-size:12px;color:#6b7077}

@media print{
	body *{visibility:hidden !important}
	.rr-print,.rr-print *{visibility:visible !important}
	.rr-print{position:absolute !important;left:0;top:0;width:100%;max-width:none;margin:0;padding:0;background:#fff;gap:0;display:block}
	.rr-noprint{display:none !important}
	.rr .rr-sheet{box-shadow:none;border-radius:0;padding:0}
	.rr .rr-grid th,.rr .rr-grid td{border-color:#1c1d20}
	.rr .rr-grid thead th{background:none}
	.rr .rr-sheet-m{break-inside:avoid;page-break-inside:avoid}
	.rr .rr-sheet-h{border-bottom-width:2px}
	@page{margin:14mm}
}


/* ---------------------------------------------------------- v4 layout (Oct 27).
Wide two-column dashboard: fleet on the left, selected machine on the right.
Site rules applied: 1px #D9DCE0 border on every card, black/red only (no pink tints). */
.rr.rr--v4{--rr-max:1140px;padding:8px 0 48px;gap:20px}
.rr--v4 .rr-layout{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:24px;align-items:start}
.rr--v4 .rr-layout--solo{grid-template-columns:minmax(0,760px);justify-content:center}
.rr--v4 .rr-side{display:flex;flex-direction:column;gap:20px;min-width:0}
.rr--v4 .rr-main{display:flex;flex-direction:column;gap:12px;min-width:0}
.rr--v4 .rr-card,.rr--v4 .rr-hero,.rr--v4 .rr-rigs{border:1px solid #D9DCE0;box-shadow:0 1px 2px rgba(20,22,26,.05)}
.rr--v4 .rr-hero{border-radius:16px}
.rr--v4 .rr-hero--empty .rr-head{padding:24px 20px}
.rr--v4 .rr-sum{display:grid;grid-template-columns:repeat(3,1fr)}
.rr--v4 .rr-sum-i{display:flex;flex-direction:column;gap:4px;padding:16px 14px;border-left:1px solid #efeff1;cursor:help}
.rr--v4 .rr-sum-i:first-child{border-left:0}
.rr--v4 .rr-sum-i b{font-size:30px;line-height:1;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:#1c1d20}
.rr--v4 .rr-sum-i span{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#4d5157}
.rr--v4 .rr-sum-i span::before{content:"";width:8px;height:8px;border-radius:50%;flex:none}
.rr--v4 .rr-sum-i--due.is-on b{color:#C00000}
.rr--v4 .rr-sum-i--due:not(.is-on) span::before{background:#c9ccd0}
.rr--v4 .rr-sum-i--due span::before{background:#E00000}
.rr--v4 .rr-sum-i--ok span::before{background:#2f8f55}
.rr--v4 .rr-sum-i--none span::before{border:1.5px solid #9aa0a7}
.rr--v4 .rr-hero-f{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border-top:1px solid #efeff1;background:#fafafb}
.rr--v4 .rr-btn--xs{min-height:40px;padding:0 14px;font-size:14px;border-radius:10px}
.rr--v4 .rr-righ{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px 8px}
.rr--v4 .rr-righ-t{display:flex;align-items:center;gap:8px;min-width:0}
.rr--v4 .rr-righ-t h2{font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#1c1d20;overflow-wrap:anywhere}
.rr--v4 .rr-righ-a{display:flex;gap:12px;flex:none}
.rr--v4 .rr-righ-a a{font-size:13px;font-weight:600;color:#1c1d20;text-decoration:underline;text-underline-offset:2px}
@media (hover:hover){.rr--v4 .rr-righ-a a:hover{color:#C00000}}
.rr--v4 .rr-badge{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}
.rr--v4 .rr-badge::before{content:"";width:6px;height:6px;border-radius:50%}
.rr--v4 .rr-badge--due{background:#1c1d20;color:#fff}.rr--v4 .rr-badge--due::before{background:#ff4d4d}
.rr--v4 .rr-badge--ok{background:#eef6f1;color:#1f6b3e}.rr--v4 .rr-badge--ok::before{background:#2f8f55}
.rr--v4 .rr-badge--none{background:#eceef0;color:#4d5157}.rr--v4 .rr-badge--none::before{border:1.5px solid #9aa0a7}
.rr--v4 .rr-tile{min-height:64px;padding:12px 14px;border-left:3px solid transparent}
.rr--v4 .rr-tile-t{font-size:16px}
.rr--v4 .rr-tile-s{font-size:13px}
.rr--v4 .rr-tile[aria-current="true"]{background:#f3f4f6;border-left-color:#E00000}
.rr--v4 .rr-tile[aria-current="true"] .rr-tile-t{color:#1c1d20}
.rr--v4 .rr-tile--empty{grid-template-columns:1fr;grid-template-areas:"t" "m"}
.rr--v4 .rr-tile--empty::after{content:none}
.rr--v4 .rr-tile--empty .rr-tile-t{color:#C00000;font-size:15px}
.rr--v4 .rr-panel-h{padding:24px 24px 14px}
.rr--v4 .rr-tabs{margin:4px 24px 12px}
.rr--v4 .rr-note,.rr--v4 .rr-empty{padding-left:24px;padding-right:24px}
.rr--v4 .rr-task,.rr--v4 .rr-hist,.rr--v4 .rr-tier,.rr--v4 .rr-row,.rr--v4 .rr-bar{padding-left:24px;padding-right:24px}
.rr--v4 .rr-retire{text-align:right}
.rr--v4 .rr-row--on{background:#f3f4f6}
.rr--v4 .rr-nudge{background:#f3f4f6;color:#1c1d20;border:1px solid #D9DCE0}
@media (hover:hover){.rr--v4 .rr-tile:hover{background:#fafafb}}
@media (max-width:860px){
.rr.rr--v4{padding:8px 16px 40px}
.rr--v4 .rr-layout{grid-template-columns:minmax(0,1fr)}
.rr--v4 .rr-panel-h{padding:20px 16px 12px}
.rr--v4 .rr-tabs{margin:4px 16px 8px}
.rr--v4 .rr-note,.rr--v4 .rr-empty,.rr--v4 .rr-task,.rr--v4 .rr-hist,.rr--v4 .rr-tier,.rr--v4 .rr-row,.rr--v4 .rr-bar{padding-left:16px;padding-right:16px}
.rr--v4 .rr-retire{text-align:center}
}


/* v4.1 (Oct 27): smoothness. Site hover-lift is switched off inside the app
(.tsm-no-lift on the root): it was lifting whole containers and the tab pills. */
.rr--v4 .rr-main{transition:opacity 150ms ease}
.rr--v4 .rr-main.is-loading{opacity:.55}
.rr--v4 .rr-tile{transition:background-color 120ms ease,border-color 120ms ease}
.rr--v4 .rr-tile:active{background:#eceef0}
.rr--v4 .rr-tab{transition:background-color 150ms ease,color 150ms ease,box-shadow 150ms ease}
.rr--v4 .rr-tab:active{background:rgba(255,255,255,.6)}
.rr--v4 .rr-hero,.rr--v4 .rr-rigs,.rr--v4 .rr-card{cursor:auto}


/* v4.2 (Oct 27): page header + icons. The theme's plain page title is hidden
here because the app header carries the H1. */
body:has(.rr--v4) .page-header{display:none}
.rr--v4 .rr-ic{display:block;flex:none}
.rr--v4 .rr-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;padding:24px 28px;background:#fff;border:1px solid #D9DCE0;border-radius:16px;box-shadow:0 1px 2px rgba(20,22,26,.05);position:relative;overflow:hidden}
.rr--v4 .rr-top::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#E00000}
.rr--v4 .rr-top-l{display:flex;align-items:center;gap:18px;min-width:0;flex:1 1 420px}
.rr--v4 .rr-top-ic{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:14px;background:#E00000;color:#fff;flex:none}
.rr--v4 .rr-top-t{display:flex;flex-direction:column;gap:4px;min-width:0}
.rr--v4 .rr-top-eb{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#C00000}
.rr--v4 .rr-top h1{font-size:34px;letter-spacing:-.02em;line-height:1.05}
.rr--v4 .rr-top-sub{font-size:15px;color:#6b7077;max-width:560px}
.rr--v4 .rr-top-a{display:flex;flex-wrap:wrap;gap:8px}
.rr--v4 .rr-top-a .rr-btn{min-height:44px;padding:0 18px;gap:6px}
.rr--v4 .rr-sum-i{gap:6px}
.rr--v4 .rr-sum-i span::before{content:none}
.rr--v4 .rr-sum-i .rr-ic{color:#9aa0a7;margin-bottom:2px}
.rr--v4 .rr-sum-i--due.is-on .rr-ic{color:#E00000}
.rr--v4 .rr-sum-i--ok .rr-ic{color:#2f8f55}
.rr--v4 .rr-righ-ic{display:flex;color:#6b7077}
.rr--v4 .rr-righ-a a{display:inline-flex;align-items:center;gap:4px}
.rr--v4 .rr-tile{grid-template-columns:40px 1fr auto 14px;grid-template-areas:"i t s c" "i m s c"}
.rr--v4 .rr-tile-ic{grid-area:i;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:#f1f2f4;color:#1c1d20;transition:background-color 120ms ease,color 120ms ease}
.rr--v4 .rr-tile[aria-current="true"] .rr-tile-ic{background:#E00000;color:#fff}
.rr--v4 .rr-tile--empty{grid-template-columns:40px 1fr;grid-template-areas:"i t" "i m"}
.rr--v4 .rr-tile--empty .rr-tile-ic{color:#C00000}
.rr--v4 .rr-tab{gap:6px}
.rr--v4 .rr-tab .rr-ic{opacity:.7}
.rr--v4 .rr-tab[aria-selected="true"] .rr-ic{opacity:1;color:#E00000}
.rr--v4 .rr-btn .rr-ic{margin-left:-2px}
@media (max-width:860px){
.rr--v4 .rr-top{padding:20px 18px}
.rr--v4 .rr-top-l{gap:14px;flex-basis:100%}
.rr--v4 .rr-top-ic{width:46px;height:46px;border-radius:12px}
.rr--v4 .rr-top h1{font-size:28px}
.rr--v4 .rr-top-a{width:100%}
.rr--v4 .rr-top-a .rr-btn{flex:1 1 0}
}
@media (max-width:480px){.rr--v4 .rr-tab .rr-ic{display:none}}

.rr.rr--v4{padding-top:28px}
@media (max-width:860px){.rr.rr--v4{padding-top:16px}}
.rr--v4 .rr-top-a .rr-btn{white-space:nowrap}
@media (max-width:860px){.rr--v4 .rr-top-a .rr-btn{padding:0 12px}}

/* v4.3 (Oct 27): Avrom: no coloured accent stripes on container edges, no icon on the header or machine tiles. */
.rr--v4 .rr-top::before{content:none;display:none}
.rr--v4 .rr-tile{border-left:0}
.rr--v4 .rr-tile:not(.rr-tile--empty){grid-template-columns:1fr auto 14px;grid-template-areas:"t s c" "m s c"}
.rr--v4 .rr-tile[aria-current="true"]{background:#f1f2f4}
.rr--v4 .rr-tile[aria-current="true"] .rr-tile-t{color:#1c1d20;font-weight:700}

/* v4.4 (Oct 27): spares list cleanup. One price (yours), MSRP struck through only
when it differs, one-line part info, compact pill stepper, quiet rows. */
.rr--v4 form[data-rr-stock] .rr-note{padding-top:14px}
.rr--v4 .rr-tier{padding:18px 24px 8px;font-size:11px;letter-spacing:.08em;color:#8b9096;border-top:0}
.rr--v4 .rr-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:20px;min-height:64px;padding:10px 24px;border-top:1px solid #f0f1f3;transition:background-color 120ms ease}
.rr--v4 .rr-row--on{background:#f7f7f8}
@media (hover:hover){.rr--v4 .rr-row:not(.rr-row--off):hover{background:#fafafb}.rr--v4 .rr-row--on:hover{background:#f3f4f5}}
.rr--v4 .rr-pick{flex:none;min-height:0;padding:6px 0;gap:14px;align-items:center;min-width:0}
.rr--v4 .rr-pick input{flex:0 0 20px;width:20px;height:20px;margin:0;accent-color:#1c1d20;cursor:pointer}
.rr--v4 .rr-pick-b{gap:1px;min-width:0}
.rr--v4 .rr-pick .rr-name{font-size:15px;font-weight:600;line-height:1.3;color:#1c1d20}
.rr--v4 .rr-pick .rr-meta{font-size:13px;color:#8b9096;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rr--v4 .rr-pn{font-family:inherit;font-size:13px;font-weight:600;color:#6b7077;font-variant-numeric:tabular-nums}
.rr--v4 .rr-priceslot{flex:none;width:auto;min-width:84px;display:flex;flex-direction:column;align-items:flex-end;gap:0;text-align:right}
.rr--v4 .rr-price{font-size:16px;font-weight:700;letter-spacing:-.01em;color:#1c1d20;font-variant-numeric:tabular-nums;white-space:nowrap}
.rr--v4 .rr-was{font-size:12px;color:#9aa0a7;text-decoration:line-through;font-variant-numeric:tabular-nums}
.rr--v4 .rr-step{display:inline-flex;align-items:center;gap:0;padding:2px;border-radius:999px;background:#f1f2f4;flex:none;opacity:.55;transition:opacity 120ms ease}
.rr--v4 .rr-row--on .rr-step,.rr--v4 .rr-step:focus-within{opacity:1}
@media (hover:hover){.rr--v4 .rr-row:hover .rr-step{opacity:1}}
.rr--v4 .rr-stepb{width:32px;height:32px;min-height:32px;border-radius:999px;background:transparent;font-size:18px;font-weight:500;color:#1c1d20}
@media (hover:hover){.rr--v4 .rr-stepb:not([disabled]):hover{background:#e2e4e7}}
.rr--v4 .rr-stepb:active:not([disabled]){transform:scale(.92)}
.rr--v4 .rr-qty{flex:0 0 30px;width:30px;height:32px;min-height:32px;padding:0;background:transparent;border-radius:0;font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}
.rr--v4 .rr-row--off .rr-step{opacity:.35}
.rr--v4 .rr-na{flex:none;font-size:13px;text-align:right}
.rr--v4 .rr-bar{padding:12px 24px;gap:12px 20px;border-top:1px solid #e6e8eb}
.rr--v4 .rr-bar .rr-muted{font-size:13px}
.rr--v4 .rr-total{font-size:20px}
.rr--v4 .rr-bar .rr-btn{min-height:48px;flex:0 1 280px;margin-left:auto}
@media (max-width:640px){
.rr--v4 .rr-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:12px 16px}
.rr--v4 .rr-pick{grid-column:1 / -1}
.rr--v4 .rr-priceslot{align-items:flex-start;text-align:left;padding-left:34px;flex-direction:row;align-items:baseline;gap:8px}
.rr--v4 .rr-na{text-align:left;padding-left:34px;margin:0}
.rr--v4 .rr-bar{padding:12px 16px}
.rr--v4 .rr-bar .rr-btn{flex:1 1 100%}
}

/* v4.5 (Oct 27): part names link to the product page; panel buttons sit on the title row. */
.rr--v4 .rr-pick .rr-plink{display:inline-flex;align-items:center;gap:5px;color:#1c1d20;text-decoration:none;width:fit-content;max-width:100%}
.rr--v4 .rr-plink .rr-ic{flex:none;color:#9aa0a7;transition:color 120ms ease,transform 120ms ease}
@media (hover:hover){.rr--v4 .rr-pick .rr-plink:hover{color:#C00000;text-decoration:underline;text-underline-offset:2px}.rr--v4 .rr-plink:hover .rr-ic{color:#C00000;transform:translate(1px,-1px)}}
.rr--v4 #rr-machine > .rr-panel-h:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px 16px}
.rr--v4 #rr-machine > .rr-panel-h:first-child > .rr-stack{grid-column:1;grid-row:1}
.rr--v4 #rr-machine > .rr-panel-h:first-child > .rr-inline{grid-column:2;grid-row:1;flex-wrap:nowrap}
.rr--v4 #rr-machine > .rr-panel-h:first-child > .rr-nudge{grid-column:1 / -1}
.rr--v4 #rr-machine > .rr-panel-h:first-child > .rr-inline .rr-btn{min-height:40px;padding:0 14px;font-size:14px;border-radius:10px;gap:6px;white-space:nowrap}
.rr--v4 #rr-machine > .rr-panel-h:first-child > .rr-inline .rr-ic{width:16px;height:16px}
@media (max-width:640px){
.rr--v4 #rr-machine > .rr-panel-h:first-child{grid-template-columns:minmax(0,1fr)}
.rr--v4 #rr-machine > .rr-panel-h:first-child > .rr-inline{grid-column:1;grid-row:auto}
}

/* v4.6 (Oct 27): success / error notices restyled (no green top bar, no pink focus ring). */
body:has(.rr--v4) :is(.woocommerce-message,.woocommerce-info,.woocommerce-error){position:relative;display:flex;align-items:center;gap:10px;margin:0 0 4px !important;padding:14px 18px 14px 46px !important;background:#fff !important;border:1px solid #D9DCE0 !important;border-radius:12px !important;box-shadow:0 1px 2px rgba(20,22,26,.05) !important;color:#1c1d20 !important;font-size:15px !important;font-weight:500;line-height:1.4;outline:none !important;list-style:none;transition:opacity 200ms ease}
body:has(.rr--v4) :is(.woocommerce-message,.woocommerce-info,.woocommerce-error)::before{position:absolute !important;left:16px !important;top:50% !important;transform:translateY(-50%);margin:0 !important;font-size:18px !important;line-height:1 !important}
body:has(.rr--v4) .woocommerce-message::before{color:#2f8f55 !important}
body:has(.rr--v4) .woocommerce-error::before{color:#E00000 !important}
body:has(.rr--v4) .woocommerce-info::before{color:#1c1d20 !important}
body:has(.rr--v4) :is(.woocommerce-message,.woocommerce-info,.woocommerce-error):focus,body:has(.rr--v4) :is(.woocommerce-message,.woocommerce-info,.woocommerce-error):focus-visible{outline:none !important;box-shadow:0 1px 2px rgba(20,22,26,.05) !important}
body:has(.rr--v4) .woocommerce-message.rr-gone{opacity:0}

/* v4.7: inline remove confirmation */
.rr--v4 .rr-ask{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px 10px;padding:12px 14px;background:#fff;border:1px solid #D9DCE0;border-radius:12px}
.rr--v4 .rr-ask span{flex:1 1 220px;font-size:14px;font-weight:500;color:#1c1d20;text-align:left}
.rr--v4 .rr-ask .rr-btn{min-height:40px;padding:0 16px;font-size:14px;border-radius:10px}
.rr--v4 .rr-btn--danger{background:#E00000;color:#fff}
