/* ===== OWN COPY of the shared theme.css + tool.css rules this tool uses (rule 171, separation plan P3, 2026-10-25) =====
   Copied from theme  by devkit/sep.js (rules that match this box in every state + the class names its own scripts add),
   every selector scoped to :where(#th-tool[data-module="unit-price"] *). The shared files no longer reach inside this box (data-own).
   Change these rules only for THIS tool, in its own chat. ===== */
/* theme.css copy */
:root:where(#th-tool[data-module="unit-price"] *){
  --bg:#FAFAFC; --surface:#FFFFFF; --surface-2:#F2F3F8; --ink:#0B1020; --muted:#5B6275; --line:#E4E6EE;
  --brand:#4338CA; --brand-2:#4F46E5; --brand-ink:#3730A3; --brand-soft:#EEF0FF; --on-brand:#FFFFFF;
  --ai:#7C3AED; --ai-ink:#6D28D9; --ai-soft:#F4EFFF; --blue:#2563EB;
  --grad:linear-gradient(135deg,#2563EB 0%,#4F46E5 45%,#7C3AED 100%);
  --warn:#9A4A07; --ok:#1B6B3A;
  --shadow:0 1px 2px rgba(11,16,32,.04),0 4px 16px rgba(11,16,32,.05);
  --shadow-lg:0 2px 4px rgba(11,16,32,.04),0 24px 60px rgba(11,16,32,.10);
  --radius:16px; --radius-sm:10px;
  --font:'Geist','Geist Variable',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
  --serif:'Instrument Serif',ui-serif,Georgia,serif;
  --mono:'Geist Mono','Geist Mono Variable',ui-monospace,SFMono-Regular,Menlo,monospace;
  --dot:rgba(11,16,32,.06); --glow-a:rgba(37,99,235,.14); --glow-b:rgba(124,58,237,.14);
  --stripe:rgba(11,16,32,.035);
  color-scheme:light;
}
:root[data-theme="dark"]:where(#th-tool[data-module="unit-price"] *){
  --bg:#07090F; --surface:#0E121B; --surface-2:#161B27; --ink:#EEF0F6; --muted:#9AA3B8; --line:#212738;
  --brand:#6366F1; --brand-2:#4F46E5; --brand-ink:#A5B4FC; --brand-soft:#171A36; --on-brand:#FFFFFF;
  --ai:#8B5CF6; --ai-ink:#C4B5FD; --ai-soft:#1C1733; --blue:#60A5FA;
  --grad:linear-gradient(135deg,#60A5FA 0%,#818CF8 45%,#C084FC 100%);
  --shadow:0 1px 0 rgba(255,255,255,.03) inset,0 1px 2px rgba(0,0,0,.5),0 8px 24px rgba(0,0,0,.35);
  --shadow-lg:0 1px 0 rgba(255,255,255,.04) inset,0 24px 60px rgba(0,0,0,.55);
  --dot:rgba(255,255,255,.045); --glow-a:rgba(59,130,246,.22); --glow-b:rgba(139,92,246,.24);
  --stripe:rgba(255,255,255,.035);
  color-scheme:dark;
}@media (prefers-color-scheme:dark){
:root:not([data-theme="light"]):where(#th-tool[data-module="unit-price"] *){
  --bg:#07090F; --surface:#0E121B; --surface-2:#161B27; --ink:#EEF0F6; --muted:#9AA3B8; --line:#212738;
  --brand:#6366F1; --brand-2:#4F46E5; --brand-ink:#A5B4FC; --brand-soft:#171A36; --on-brand:#FFFFFF;
  --ai:#8B5CF6; --ai-ink:#C4B5FD; --ai-soft:#1C1733; --blue:#60A5FA;
  --grad:linear-gradient(135deg,#60A5FA 0%,#818CF8 45%,#C084FC 100%);
  --shadow:0 1px 0 rgba(255,255,255,.03) inset,0 1px 2px rgba(0,0,0,.5),0 8px 24px rgba(0,0,0,.35);
  --shadow-lg:0 1px 0 rgba(255,255,255,.04) inset,0 24px 60px rgba(0,0,0,.55);
  --dot:rgba(255,255,255,.045); --glow-a:rgba(59,130,246,.22); --glow-b:rgba(139,92,246,.24);
  --stripe:rgba(255,255,255,.035);
  color-scheme:dark;
  }}
:root:where(#th-tool[data-module="unit-price"] *){
  /* spacing scale (4 px steps) */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:20px; --sp-6:24px; --sp-7:32px; --sp-8:40px;
  /* what the spacing is for */
  --gap-label:6px;      /* label → its box, box → its hint line */
  --gap-msg:12px;       /* v1.40: a box → the message or hint under it — the smallest space between two different things */
  --gap-min:8px;        /* v1.40: the absolute minimum between any two boxes, buttons or messages (the spacing check fails below it) */
  --gap-item:12px;      /* items in a list, choice cards in a box */
  --gap-grid:16px;      /* boxes/cards side by side */
  --gap-block:20px;     /* blocks inside one part of a tool (input → result → check) */
  --gap-section:22px;   /* main parts of a tool card */
  --sec-pad:26px;       /* space above a new part that starts with a divider line */
  --pad-box:16px;       /* inside a bordered box */
  --pad-card:12px 14px; /* inside a small choice card */
  --pad-result:24px 26px; /* inside the big result panel */
  --r-box:16px; --r-card:12px; --r-btn:12px; --r-pill:999px;
  --tap:44px;           /* smallest thing a finger has to hit */
  --h-btn:44px;         /* v1.39.1 THE button height (owner rule: every normal button is this tall — never set a custom height) */
  --h-btn-sm:36px;      /* small buttons in tool toolbars (.btn.sm) */
  --pad-field:14px 16px; /* inside every text box and output panel: text never touches a border */
  /* type scale = the Word Counter / Case Converter / KM to Miles standard; never bigger */
  --fs-meta:12.5px;     /* counts, small notes */
  --fs-label:13px;      /* field labels, box titles, hints */
  --fs-sm:14px;         /* checklist lines, choice text */
  --fs-body:15px;       /* sentences, buttons, part titles */
  --fs-input:20px;      /* the main text box */
  --fs-slug:22px;       /* one-line mono result */
  --fs-result:clamp(30px,3vw,36px); /* big number result (v1.37: was up to 48 px — owner: too big) */
  /* v1.37 ToolHa type standard (owner 2026-09-30): nothing bigger than these, no text smaller than --fs-min */
  --fs-hero:clamp(36px,5vw,60px);  /* ONE big hero title per landing page (home, All tools, A–Z, company pages) */
  --fs-h1:clamp(30px,3.4vw,42px);  /* page / tool title */
  --fs-h2:clamp(22px,2.2vw,28px);  /* section titles */
  --fs-h3:clamp(17px,1.5vw,19px);  /* v1.41.3: a smaller title for an optional part inside a tool (between --fs-h2 and a box title) */
  --fs-min:12.5px;                 /* smallest normal text (notes, units, counts) */
  --fs-tag:12px;                   /* only UPPERCASE labels, badges and number pins */
  --lh-tight:1.35; --lh-text:1.5;
}@media (width <= 768px){
:root:where(#th-tool[data-module="unit-price"] *){--pad-field:12px 14px;--gap-grid:14px;--gap-block:16px;--gap-section:18px;--sec-pad:22px;--pad-box:14px;--pad-result:20px;--fs-slug:19px}}
*:where(#th-tool[data-module="unit-price"] *){box-sizing:border-box}
html:where(#th-tool[data-module="unit-price"] *){-webkit-text-size-adjust:100%}
body:where(#th-tool[data-module="unit-price"] *){margin:0;font-family:var(--font);background:var(--bg);color:var(--ink);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a:where(#th-tool[data-module="unit-price"] *){color:var(--brand-ink);text-decoration:none}
a:hover:where(#th-tool[data-module="unit-price"] *){text-decoration:underline;text-underline-offset:3px}
h1:where(#th-tool[data-module="unit-price"] *),h2:where(#th-tool[data-module="unit-price"] *),h3:where(#th-tool[data-module="unit-price"] *){line-height:1.1;letter-spacing:-.02em;margin:0}
p:where(#th-tool[data-module="unit-price"] *){margin:0}
button:where(#th-tool[data-module="unit-price"] *),input:where(#th-tool[data-module="unit-price"] *),select:where(#th-tool[data-module="unit-price"] *),textarea:where(#th-tool[data-module="unit-price"] *){font:inherit;color:inherit}
:focus-visible:where(#th-tool[data-module="unit-price"] *){outline:3px solid color-mix(in srgb,var(--ai) 55%,transparent);outline-offset:2px;border-radius:6px}
.wrap:where(#th-tool[data-module="unit-price"] *){max-width:1280px;margin:0 auto;padding:0 32px}
.muted:where(#th-tool[data-module="unit-price"] *){color:var(--muted)}
.btn:where(#th-tool[data-module="unit-price"] *){height:var(--h-btn);padding:0 18px;border-radius:12px;border:1px solid transparent;display:inline-flex;align-items:center;gap:8px;font-weight:650;cursor:pointer;font-size:15px}
:root:where(#th-tool[data-module="unit-price"] *){
  --btn-grad:linear-gradient(120deg,var(--brand-2) 0%,var(--ai) 100%);
  /* v1.35 main typing box (see tool.css "v1.35"): same height as the homepage search box (76 px, 72 px on phones) */
  --h-main:76px;--r-main:20px;
  --field-ring:linear-gradient(120deg,var(--brand-2) 0%,var(--ai) 100%);
  --field-glow:0 6px 22px -10px color-mix(in srgb,var(--ai) 45%,transparent);
  --field-glow-hover:0 8px 28px -10px color-mix(in srgb,var(--ai) 60%,transparent);
  --btn-grad-hover:linear-gradient(120deg,color-mix(in srgb,var(--brand-2) 40%,var(--ai)) 0%,color-mix(in srgb,var(--ai) 88%,#fff) 100%);
  --btn-glow:0 6px 18px -9px color-mix(in srgb,var(--ai) 60%,transparent);
  --btn-glow-hover:0 10px 26px -9px color-mix(in srgb,var(--ai) 85%,transparent);
  --btn-glow-press:0 3px 10px -6px color-mix(in srgb,var(--ai) 70%,transparent);
  --btn2-border:color-mix(in srgb,var(--brand) 24%,var(--line));
  --btn2-border-hover:color-mix(in srgb,var(--brand) 55%,var(--line));
  --btn2-bg-hover:color-mix(in srgb,var(--brand) 5%,var(--surface));
  --btn2-shade:0 8px 20px -12px color-mix(in srgb,var(--brand) 60%,transparent);
}
.btn:where(#th-tool[data-module="unit-price"] *){transition:border-color .3s ease,background-color .3s ease,box-shadow .3s ease,color .2s ease}
.btn-brand:where(#th-tool[data-module="unit-price"] *){position:relative;isolation:isolate;border-color:transparent;color:#fff;background:var(--btn-grad) border-box;box-shadow:var(--btn-glow);filter:none}
.btn-brand:where(#th-tool[data-module="unit-price"] *)::before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;pointer-events:none;background:var(--btn-grad-hover);opacity:0;transition:opacity .35s ease}
.btn-brand:hover:where(#th-tool[data-module="unit-price"] *){text-decoration:none;filter:none;box-shadow:var(--btn-glow-hover)}
.btn-brand:hover:where(#th-tool[data-module="unit-price"] *)::before{opacity:1}
.btn-brand:active:where(#th-tool[data-module="unit-price"] *){box-shadow:var(--btn-glow-press)}
.btn-ghost:where(#th-tool[data-module="unit-price"] *){background:var(--surface);border-color:var(--btn2-border);color:var(--ink);box-shadow:0 1px 2px rgba(11,16,32,.04)}
.btn-ghost:hover:where(#th-tool[data-module="unit-price"] *){text-decoration:none;background:var(--btn2-bg-hover);border-color:var(--btn2-border-hover);box-shadow:var(--btn2-shade)}
.btn[disabled]:where(#th-tool[data-module="unit-price"] *)::before{display:none}@media (prefers-reduced-motion:reduce){
.btn:where(#th-tool[data-module="unit-price"] *),.btn:where(#th-tool[data-module="unit-price"] *)::before{transition:none}}
.chip:where(#th-tool[data-module="unit-price"] *){display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:14px;font-weight:550;white-space:nowrap}
.chip:hover:where(#th-tool[data-module="unit-price"] *){border-color:color-mix(in srgb,var(--brand) 45%,var(--line));text-decoration:none}
body:has(>.hdr):where(#th-tool[data-module="unit-price"] *)::before{content:"";position:absolute;left:0;right:0;top:0;height:760px;z-index:-1;pointer-events:none;background-image:linear-gradient(var(--dot) 1px,transparent 1px),linear-gradient(90deg,var(--dot) 1px,transparent 1px);background-size:56px 56px;background-position:50% -1px;-webkit-mask-image:radial-gradient(ellipse 75% 100% at 50% 0%,#000 35%,transparent 80%);mask-image:radial-gradient(ellipse 75% 100% at 50% 0%,#000 35%,transparent 80%)}@media (width <= 768px){
body:has(>.hdr):where(#th-tool[data-module="unit-price"] *)::before{height:560px;-webkit-mask-image:linear-gradient(#000 45%,transparent);mask-image:linear-gradient(#000 45%,transparent)}}@media print{
body:where(#th-tool[data-module="unit-price"] *)::before{display:none!important;content:none!important}}
.card:where(#th-tool[data-module="unit-price"] *){background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.field:where(#th-tool[data-module="unit-price"] *){display:flex;flex-direction:column;gap:6px}
.field label:where(#th-tool[data-module="unit-price"] *){font-size:13px;font-weight:650;color:var(--muted)}
.inp:where(#th-tool[data-module="unit-price"] *){height:46px;border:1px solid var(--line);border-radius:12px;padding:0 14px;background:var(--surface);font-size:16px;width:100%}
textarea.inp:where(#th-tool[data-module="unit-price"] *){height:auto;padding:var(--pad-field);line-height:var(--lh-text)}
.inp:focus:where(#th-tool[data-module="unit-price"] *){outline:none;border-color:var(--ai);box-shadow:0 0 0 4px color-mix(in srgb,var(--ai) 18%,transparent)}
select.inp:where(#th-tool[data-module="unit-price"] *){appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 13px) 20px;background-size:5px 5px;background-repeat:no-repeat;padding-right:36px}@media (width <= 1024px){
.wrap:where(#th-tool[data-module="unit-price"] *){padding:0 18px}}@media (width <= 768px){
body:where(#th-tool[data-module="unit-price"] *){padding-bottom:68px}}@media (width <= 576px){
:root:where(#th-tool[data-module="unit-price"] *){--h-main:72px}}
.chip:where(#th-tool[data-module="unit-price"] *){white-space:nowrap}
[hidden]:where(#th-tool[data-module="unit-price"] *){display:none!important}
.row:where(#th-tool[data-module="unit-price"] *){display:flex;gap:10px;align-items:center;flex-wrap:wrap}
:root:where(#th-tool[data-module="unit-price"] *){--acc0:#7C3AED;--acc1:#2563EB;--acc2:#0D9488;--acc3:#D97706;--acc4:#DB2777;--acc5:#059669}
:root[data-theme="dark"]:where(#th-tool[data-module="unit-price"] *){--acc0:#8B5CF6;--acc1:#60A5FA;--acc2:#2DD4BF;--acc3:#FBBF24;--acc4:#F472B6;--acc5:#34D399}@media (prefers-color-scheme:dark){
:root:not([data-theme="light"]):where(#th-tool[data-module="unit-price"] *){--acc0:#8B5CF6;--acc1:#60A5FA;--acc2:#2DD4BF;--acc3:#FBBF24;--acc4:#F472B6;--acc5:#34D399}}
small:where(#th-tool[data-module="unit-price"] *){font-size:max(var(--fs-min),.85em)}
.btn:not(.tool-actions .btn):where(#th-tool[data-module="unit-price"] *){height:auto!important;min-height:var(--h-btn);padding-top:8px;padding-bottom:8px;line-height:1.25}
.btn.sm:not(.tool-actions .btn):where(#th-tool[data-module="unit-price"] *){height:auto!important;min-height:var(--h-btn-sm);padding-top:6px;padding-bottom:6px}
html:where(#th-tool[data-module="unit-price"] *),body:where(#th-tool[data-module="unit-price"] *){overflow-x:clip}@supports (appearance:base-select){
html select:not([multiple]):not([size]):where(#th-tool[data-module="unit-price"] *),html select:not([multiple]):not([size]):where(#th-tool[data-module="unit-price"] *)::picker(select){appearance:base-select}
html select:not([multiple]):not([size]):where(#th-tool[data-module="unit-price"] *){align-items:center}
html select:not([multiple]):not([size]):where(#th-tool[data-module="unit-price"] *)::picker-icon{display:none}
html select:not([multiple]):not([size]):where(#th-tool[data-module="unit-price"] *)::picker(select){
    box-sizing:border-box;min-inline-size:anchor-size(self-inline);
    max-inline-size:min(calc(100% - 16px),max(anchor-size(self-inline),20rem));
    max-block-size:min(24rem,calc(100dvh - 16px));overflow:auto;overscroll-behavior:contain;
    position-area:var(--th-pick-area,block-end span-all);justify-self:anchor-center;margin:4px 8px;padding:4px;border:1px solid var(--line);border-radius:12px;
    background:var(--surface);color:var(--ink);box-shadow:0 12px 32px rgba(15,23,42,.18);
    position-try-order:normal;position-try-fallbacks:flip-block,--th-pick-fit}
html select:not([multiple]):not([size]) option:where(#th-tool[data-module="unit-price"] *){
    padding:8px 10px;border-radius:8px;white-space:normal;overflow-wrap:anywhere;line-height:1.35;gap:8px;min-block-size:36px}
html select:not([multiple]):not([size]) option:is(:hover,:focus-visible):where(#th-tool[data-module="unit-price"] *){background:color-mix(in srgb,var(--brand) 10%,transparent);outline:none}
html select:not([multiple]):not([size]) option:checked:where(#th-tool[data-module="unit-price"] *){background:color-mix(in srgb,var(--brand) 16%,transparent);color:var(--brand-ink);font-weight:600}
html select:not([multiple]):not([size]) option:disabled:where(#th-tool[data-module="unit-price"] *){opacity:.5}
html select:not([multiple]):not([size]) optgroup:where(#th-tool[data-module="unit-price"] *){font-weight:700;padding-block:4px}
html select:not([multiple]):not([size]) option:where(#th-tool[data-module="unit-price"] *)::checkmark{color:var(--brand-ink)}}
/* tool.css copy */
:root:where(#th-tool[data-module="unit-price"] *){--h-drop:17.5rem}
.t-drop:where(#th-tool[data-module="unit-price"] *){position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--gap-item);min-height:var(--h-drop);padding:var(--pad-result);border:2px dashed color-mix(in srgb,var(--brand) 45%,var(--line));border-radius:var(--r-card);background:color-mix(in srgb,var(--brand) 4%,var(--surface));text-align:center;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}
.t-drop[hidden]:where(#th-tool[data-module="unit-price"] *){display:none}
.t-drop:hover:where(#th-tool[data-module="unit-price"] *),.t-drop.is-drag:where(#th-tool[data-module="unit-price"] *){border-color:var(--brand);border-style:solid;background:color-mix(in srgb,var(--brand) 10%,var(--surface))}
.t-drop:focus-visible:where(#th-tool[data-module="unit-price"] *){outline:none;border-color:var(--brand);border-style:solid;box-shadow:var(--field-glow-hover)}
.tool:where(#th-tool[data-module="unit-price"] *){padding:24px;display:flex;flex-direction:column;gap:18px;position:relative;border-radius:24px}
.tool:where(#th-tool[data-module="unit-price"] *)::before{content:"";position:absolute;inset:-1px;border-radius:25px;padding:1px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 55%,transparent),transparent 35%,transparent 65%,color-mix(in srgb,var(--ai) 55%,transparent));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}@media (width <= 1024px){
.tool:where(#th-tool[data-module="unit-price"] *){padding:16px}}
.tool-zone:where(#th-tool[data-module="unit-price"] *){padding-bottom:8px}
.tool:where(#th-tool[data-module="unit-price"] *){padding:22px 24px 20px;gap:16px}
.tt-label:where(#th-tool[data-module="unit-price"] *){font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.chip[aria-pressed="true"]:where(#th-tool[data-module="unit-price"] *){background:var(--ink);color:var(--bg);border-color:var(--ink)}
.inp.sm:where(#th-tool[data-module="unit-price"] *){height:36px;font-size:14px;padding:0 34px 0 12px;width:auto;border-radius:10px;background-position:calc(100% - 16px) 16px,calc(100% - 11px) 16px}
.btn.sm:where(#th-tool[data-module="unit-price"] *){height:var(--h-btn-sm);padding:0 12px;font-size:14px;border-radius:10px}
.tool-foot:where(#th-tool[data-module="unit-price"] *){display:flex;flex-direction:column;gap:12px;border-top:1px dashed var(--line);padding-top:14px}
.hist:where(#th-tool[data-module="unit-price"] *){display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.hist .chip:where(#th-tool[data-module="unit-price"] *){cursor:pointer;font-size:13px;font-variant-numeric:tabular-nums}
.linkish:where(#th-tool[data-module="unit-price"] *){background:none;border:0;color:var(--muted);cursor:pointer;font-size:13px;text-decoration:underline;text-underline-offset:3px;padding:0}
#th-tool .t-fullrow:where(#th-tool[data-module="unit-price"] *){grid-column:1/-1!important;flex:1 1 100%!important;max-width:100%!important;min-width:0}
#th-tool .t-selw:where(#th-tool[data-module="unit-price"] *){display:contents}
#th-tool .t-selw.on:where(#th-tool[data-module="unit-price"] *){display:grid;min-width:0;max-width:100%}
#th-tool .t-selw.on>select:where(#th-tool[data-module="unit-price"] *){grid-area:1/1;width:100%!important;max-width:100%!important;height:auto!important;color:transparent!important;-webkit-text-fill-color:transparent;text-shadow:none}
#th-tool .t-selw.on>select option:where(#th-tool[data-module="unit-price"] *){color:var(--ink);-webkit-text-fill-color:var(--ink)}
#th-tool .t-selt:where(#th-tool[data-module="unit-price"] *){display:none}
#th-tool .t-selw.on>.t-selt:where(#th-tool[data-module="unit-price"] *){display:block;grid-area:1/1;align-self:center;min-width:0;pointer-events:none;white-space:normal;overflow-wrap:anywhere;text-align:start;z-index:1}
#th-tool .t-fullrow select:where(#th-tool[data-module="unit-price"] *),#th-tool select.t-fullrow:where(#th-tool[data-module="unit-price"] *){width:100%;max-width:100%}
#th-tool:where(#th-tool[data-module="unit-price"] *){overflow-wrap:break-word}
#th-tool .chip:where(#th-tool[data-module="unit-price"] *){white-space:normal;overflow-wrap:anywhere}
#th-tool .hist .chip:where(#th-tool[data-module="unit-price"] *){white-space:normal;overflow-wrap:anywhere;text-overflow:clip;overflow:visible;text-align:left}@media (width <= 576px){
.tool:where(#th-tool[data-module="unit-price"] *){padding:16px}}
.tool-hero:where(#th-tool[data-module="unit-price"] *){position:relative;overflow-x:clip;padding-bottom:30px}
.tool-hero:where(#th-tool[data-module="unit-price"] *)::after{content:"";position:absolute;left:50%;top:120px;width:900px;max-width:100%;height:360px;transform:translateX(-50%);background:radial-gradient(closest-side at 35% 50%,var(--glow-a),transparent 70%),radial-gradient(closest-side at 65% 50%,var(--glow-b),transparent 70%);filter:blur(24px);opacity:.8;pointer-events:none}
.tool-hero>.wrap:where(#th-tool[data-module="unit-price"] *){position:relative;z-index:1}
.tool-zone .tool:where(#th-tool[data-module="unit-price"] *){max-width:1040px;margin:0 auto;background:var(--surface);box-shadow:var(--shadow-lg)}
.tool-zone .tool:where(#th-tool[data-module="unit-price"] *){transition:box-shadow .25s}
.tool-zone .tool:focus-within:where(#th-tool[data-module="unit-price"] *){box-shadow:var(--shadow-lg),0 0 0 4px color-mix(in srgb,var(--brand) 14%,transparent)}@media print{
html:root:where(#th-tool[data-module="unit-price"] *),html:root[data-theme="dark"]:where(#th-tool[data-module="unit-price"] *),html:root:not([data-theme="light"]):where(#th-tool[data-module="unit-price"] *){--bg:#fff;--surface:#fff;--surface-2:#F3F4F6;--ink:#111;--muted:#4B5563;--line:#D1D5DB;--brand-soft:#EEF0FF;--brand-ink:#3730A3;color-scheme:light}
body:where(#th-tool[data-module="unit-price"] *){background:#fff!important;color:#111}
dialog:where(#th-tool[data-module="unit-price"] *){display:none!important}
.tool-hero:where(#th-tool[data-module="unit-price"] *){background:none!important;padding:0!important}
.tool:where(#th-tool[data-module="unit-price"] *){box-shadow:none!important;border:1px solid #D1D5DB!important;break-inside:auto}
.tool :is(tr,li,figure,img,svg,canvas,.t-msg,.t-btnrow,.uc-thermo):where(#th-tool[data-module="unit-price"] *){break-inside:avoid}
.tool :is(h2,h3,h4,legend,summary,label,thead,.t-bx-h,.t-sec-h):where(#th-tool[data-module="unit-price"] *){break-after:avoid}
body:where(#th-tool[data-module="unit-price"] *){padding-bottom:0!important}
.tool-zone:where(#th-tool[data-module="unit-price"] *){padding-bottom:0!important}
.tool .btn:where(#th-tool[data-module="unit-price"] *),.hist:where(#th-tool[data-module="unit-price"] *){display:none!important}
details:not([open])>*:not(summary):where(#th-tool[data-module="unit-price"] *){display:none}
a:where(#th-tool[data-module="unit-price"] *){color:inherit;text-decoration:none}}@media print{
.tool:where(#th-tool[data-module="unit-price"] *)::before,.tool:where(#th-tool[data-module="unit-price"] *)::after,.tool-hero:where(#th-tool[data-module="unit-price"] *)::after{display:none!important;content:none!important}}
.t-stack:not([hidden]):where(#th-tool[data-module="unit-price"] *){display:flex;flex-direction:column;gap:var(--gap-block)}
.t-box:where(#th-tool[data-module="unit-price"] *){margin:0;min-width:0;border:1px solid var(--line);border-radius:var(--r-box);padding:var(--pad-box);background:var(--surface);display:flex;flex-direction:column;gap:var(--gap-item)}
.t-box>legend:where(#th-tool[data-module="unit-price"] *){float:left;width:100%;padding:0;margin:0 0 var(--gap-item);font-size:var(--fs-label);font-weight:650;color:var(--ink)}
.t-bx>legend:where(#th-tool[data-module="unit-price"] *){margin-bottom:0;font-size:var(--fs-body);font-weight:700}
.t-bx>legend small:where(#th-tool[data-module="unit-price"] *){display:block;margin-top:2px;font-size:var(--fs-label);font-weight:400;line-height:var(--lh-text);color:var(--muted)}
.t-bx-b:where(#th-tool[data-module="unit-price"] *){display:flex;flex-direction:column;gap:var(--gap-block);min-width:0}
.t-tone:where(#th-tool[data-module="unit-price"] *){--tone:var(--brand);border-color:color-mix(in srgb,var(--tone) 40%,var(--line));border-top:5px solid var(--tone);background:color-mix(in srgb,var(--tone) 8%,var(--surface))}
.t-tone>legend:where(#th-tool[data-module="unit-price"] *){color:color-mix(in srgb,var(--tone) 62%,var(--ink))}
.t-tone>legend small:where(#th-tool[data-module="unit-price"] *){color:var(--muted)}
.t-tone>legend:where(#th-tool[data-module="unit-price"] *)::before{content:"";display:inline-block;width:10px;height:10px;margin-right:8px;border-radius:50%;background:var(--tone)}
.t-tone-1:where(#th-tool[data-module="unit-price"] *){--tone:var(--acc1)}
.t-tone-2:where(#th-tool[data-module="unit-price"] *){--tone:var(--acc2)}
.t-hint:where(#th-tool[data-module="unit-price"] *){display:block;margin-top:var(--gap-label);font-size:var(--fs-label);color:var(--muted)}
.t-msg:where(#th-tool[data-module="unit-price"] *){margin:0;padding:10px 14px;border-radius:var(--r-card);font-size:var(--fs-sm);font-weight:600;line-height:var(--lh-text);color:var(--warn);background:color-mix(in srgb,var(--warn) 9%,var(--surface));border:1px solid color-mix(in srgb,var(--warn) 30%,var(--line))}
.t-msg.is-err:where(#th-tool[data-module="unit-price"] *){color:var(--bad,#c0392b);background:color-mix(in srgb,var(--bad,#c0392b) 8%,var(--surface));border-color:color-mix(in srgb,var(--bad,#c0392b) 30%,var(--line))}
.t-msg.is-info:where(#th-tool[data-module="unit-price"] *){color:var(--ink);background:var(--brand-soft);border-color:color-mix(in srgb,var(--brand) 25%,var(--line))}
.t-msg[hidden]:where(#th-tool[data-module="unit-price"] *){display:none}
:root[data-theme="dark"] .t-msg:where(#th-tool[data-module="unit-price"] *){color:color-mix(in srgb,var(--warn) 40%,#fff)}
:root[data-theme="dark"] .t-msg.is-err:where(#th-tool[data-module="unit-price"] *){color:color-mix(in srgb,var(--bad,#c0392b) 45%,#fff)}
:root[data-theme="dark"] .t-msg.is-info:where(#th-tool[data-module="unit-price"] *){color:var(--ink)}@media (prefers-color-scheme:dark){
:root:not([data-theme="light"]) .t-msg:where(#th-tool[data-module="unit-price"] *){color:color-mix(in srgb,var(--warn) 40%,#fff)}
:root:not([data-theme="light"]) .t-msg.is-err:where(#th-tool[data-module="unit-price"] *){color:color-mix(in srgb,var(--bad,#c0392b) 45%,#fff)}
:root:not([data-theme="light"]) .t-msg.is-info:where(#th-tool[data-module="unit-price"] *){color:var(--ink)}}
.t-tw:where(#th-tool[data-module="unit-price"] *){overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.t-table:where(#th-tool[data-module="unit-price"] *){width:100%;border-collapse:collapse;font-size:var(--fs-sm);font-variant-numeric:tabular-nums}
.t-table th:where(#th-tool[data-module="unit-price"] *),.t-table td:where(#th-tool[data-module="unit-price"] *){padding:10px 14px;text-align:left;border-bottom:1px solid var(--line)}
.t-table thead th:where(#th-tool[data-module="unit-price"] *){font-size:var(--fs-label);color:var(--muted);font-weight:650;background:var(--surface-2)}
.t-table tbody tr:last-child td:where(#th-tool[data-module="unit-price"] *){border-bottom:0}
.tool :is(input,textarea):where(#th-tool[data-module="unit-price"] *)::placeholder{color:color-mix(in srgb,var(--muted) 70%,transparent);opacity:1;font-weight:400;font-size:max(12px,.875em);letter-spacing:0}
:root:where(#th-tool[data-module="unit-price"] *){--glow-card:0 16px 36px -20px color-mix(in srgb,var(--ai) 50%,transparent),0 1px 2px rgba(11,16,32,.04)}
.ag-i:where(#th-tool[data-module="unit-price"] *){flex:none;display:inline-grid;place-items:center;width:22px;height:22px;padding:0;border-radius:50%;border:1px solid color-mix(in srgb,var(--brand) 35%,var(--line));background:var(--brand-soft);color:var(--brand-ink);font:italic 700 13px/1 Georgia,serif;cursor:help}
.ag-i:hover:where(#th-tool[data-module="unit-price"] *),.ag-i[aria-expanded="true"]:where(#th-tool[data-module="unit-price"] *){background:var(--brand);border-color:var(--brand);color:#fff}
.ag-i:focus-visible:where(#th-tool[data-module="unit-price"] *){outline:2px solid var(--ai);outline-offset:2px}
.ag-how>summary:where(#th-tool[data-module="unit-price"] *){list-style:none;display:flex;align-items:center;gap:10px;width:100%;min-height:var(--tap);cursor:pointer;border-radius:10px;font-size:var(--fs-sm);font-weight:650;color:var(--ink)}
.ag-how>summary:where(#th-tool[data-module="unit-price"] *)::-webkit-details-marker{display:none}
.ag-sum-w:where(#th-tool[data-module="unit-price"] *){display:inline-flex;align-items:center;gap:10px}
.ag-how>summary:hover .ag-sum-t:where(#th-tool[data-module="unit-price"] *){color:var(--brand-ink);text-decoration:underline;text-underline-offset:3px}
.ag-how>summary:hover .ag-i:where(#th-tool[data-module="unit-price"] *),.ag-how[open]>summary .ag-i:where(#th-tool[data-module="unit-price"] *){background:var(--brand);border-color:var(--brand);color:#fff}
.ag-how>summary:focus-visible:where(#th-tool[data-module="unit-price"] *){outline:2px solid var(--ai);outline-offset:2px}
.ag-how .ag-howt:where(#th-tool[data-module="unit-price"] *){margin-top:var(--gap-label);padding:var(--pad-field);border-radius:var(--r-card);background:var(--surface-2)}
.ag-howt:where(#th-tool[data-module="unit-price"] *){margin-top:10px;display:grid;gap:8px;font-size:var(--fs-sm);line-height:var(--lh-text);color:var(--ink)}
.ag-howt p:where(#th-tool[data-module="unit-price"] *){margin:0}@media print{
.ag-i:where(#th-tool[data-module="unit-price"] *){display:none!important}}
.tool .field:where(#th-tool[data-module="unit-price"] *){min-width:0}
:where(.tool) :is(input,select,textarea):where(#th-tool[data-module="unit-price"] *){max-width:100%}
.tool .chip:where(#th-tool[data-module="unit-price"] *){max-width:100%}
.tool .hist .row:where(#th-tool[data-module="unit-price"] *){min-width:0;max-width:100%}
.tool .hist .chip:where(#th-tool[data-module="unit-price"] *){min-width:0;overflow:hidden}@container tool (width <= 22.5rem){
select.inp:where(#th-tool[data-module="unit-price"] *){padding-right:26px;background-position:calc(100% - 13px) 20px,calc(100% - 8px) 20px}
select.inp.sm:where(#th-tool[data-module="unit-price"] *){padding-right:28px;background-position:calc(100% - 14px) 16px,calc(100% - 9px) 16px}}@container tool (width <= 22.5rem){
select.inp:where(:not(.sm)):where(#th-tool[data-module="unit-price"] *){padding-left:10px;padding-right:24px}}@container tool (width <= 36rem){
.t-cards thead:where(#th-tool[data-module="unit-price"] *){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.t-cards:where(#th-tool[data-module="unit-price"] *),.t-cards tbody:where(#th-tool[data-module="unit-price"] *){display:block}
.t-cards tr:where(#th-tool[data-module="unit-price"] *){display:grid;grid-template-columns:minmax(0,1fr);column-gap:10px;row-gap:2px;padding:10px 14px;border-bottom:1px solid var(--line)}
.t-cards tr:has(>td.t-num):where(#th-tool[data-module="unit-price"] *){grid-template-columns:auto minmax(0,1fr)}
.t-cards tbody tr:last-child:where(#th-tool[data-module="unit-price"] *){border-bottom:0}
.t-cards tbody th:where(#th-tool[data-module="unit-price"] *),.t-cards td:where(#th-tool[data-module="unit-price"] *),.t-cards tbody tr:last-child td:where(#th-tool[data-module="unit-price"] *){display:block;padding:0;border:0;min-width:0;overflow-wrap:anywhere}
.t-cards tr:has(>td.t-num)>td:not(.t-num):where(#th-tool[data-module="unit-price"] *){grid-column:2}
.t-cards td.t-key:where(#th-tool[data-module="unit-price"] *){font-weight:650}
.t-cards td.t-main:where(#th-tool[data-module="unit-price"] *){font-weight:600}
.t-cards td[data-label]:where(#th-tool[data-module="unit-price"] *)::before{content:attr(data-label) " ";color:var(--muted)}
.t-cards td:empty:where(#th-tool[data-module="unit-price"] *){display:none}}
#th-tool .t-btnrow:where(#th-tool[data-module="unit-price"] *){display:flex;flex-wrap:nowrap;align-items:stretch;gap:8px;margin:0}
#th-tool .t-btnrow>.btn:where(#th-tool[data-module="unit-price"] *){flex:1 1 auto;min-width:min-content;justify-content:center;text-align:center;white-space:normal}
#th-tool .t-btnrow>label.btn:where(#th-tool[data-module="unit-price"] *){font-size:14px;font-weight:650;color:var(--ink)}@container tool (width > 36rem){
#th-tool .t-btnrow.t-btnrow-nat>.btn:where(#th-tool[data-module="unit-price"] *){flex:0 1 auto}}@container tool (width <= 22.5rem){
#th-tool .t-btnrow>.btn.sm:where(#th-tool[data-module="unit-price"] *){padding-left:8px;padding-right:8px;gap:6px}}
#th-tool .t-main:where(#th-tool[data-module="unit-price"] *){align-self:flex-start;flex:0 0 auto;width:auto;max-width:100%}@container tool (width <= 22.5rem){
#th-tool .t-main:where(#th-tool[data-module="unit-price"] *){align-self:stretch;width:100%}}
#th-tool .t-btnrow:has(>.btn~.btn):not(:has(>.btn~.btn~.btn)):where(#th-tool[data-module="unit-price"] *){flex-wrap:wrap}
#th-tool .t-btnrow:has(>.btn~.btn):not(:has(>.btn~.btn~.btn))>.btn:where(#th-tool[data-module="unit-price"] *){flex:1 1 max-content;max-width:none}@container tool (width > 36rem){
#th-tool .t-btnrow.t-btnrow-nat:has(>.btn~.btn):not(:has(>.btn~.btn~.btn))>.btn:where(#th-tool[data-module="unit-price"] *){flex:0 1 auto}}
#th-tool .t-btnrow:has(>.btn~.btn~.btn):where(#th-tool[data-module="unit-price"] *){flex-wrap:wrap}
#th-tool .t-btnrow:has(>.btn~.btn~.btn)>.btn:where(#th-tool[data-module="unit-price"] *){flex:1 1 0px;max-width:none;min-width:min(100%,max(0px,calc((480px - 100%) * 999)))}
#th-tool .t-btnrow:has(>.btn~.btn~.btn~.btn~.btn)>.btn:where(#th-tool[data-module="unit-price"] *){min-width:min(100%,max(0px,calc((600px - 100%) * 999)))}@container tool (width > 36rem){
#th-tool .t-btnrow.t-btnrow-nat:has(>.btn~.btn~.btn)>.btn:where(#th-tool[data-module="unit-price"] *){flex:0 1 auto}}
#th-tool .t-btnrow:has(>.btn~.btn~.btn~.btn):not(:has(>.btn~.btn~.btn~.btn~.btn))>.btn:where(#th-tool[data-module="unit-price"] *){flex:0 1 auto;min-width:min(calc(50% - 4px),max(0px,calc((600px - 100%) * 999)));max-width:max(calc(50% - 4px),calc((100% - 600px) * 999))}
#th-tool .t-btnrow.t-stack>.btn:where(#th-tool[data-module="unit-price"] *){flex:1 1 100%!important;max-width:none!important}
#th-tool .t-bal:where(#th-tool[data-module="unit-price"] *){flex-wrap:wrap!important}
#th-tool .t-bal>.btn:where(#th-tool[data-module="unit-price"] *){flex:1 1 var(--bal-w)!important;max-width:var(--bal-w)!important;min-width:0!important}
#th-tool .btn.t-noicon>svg:where(#th-tool[data-module="unit-price"] *){display:none}
#th-tool .btn:not(.sm)>svg:where(#th-tool[data-module="unit-price"] *){width:18px!important;height:18px!important}
#th-tool .btn>svg:where(#th-tool[data-module="unit-price"] *){flex:none}
#th-tool .t-btnrow.t-nat:where(#th-tool[data-module="unit-price"] *){justify-content:center}
#th-tool .t-btnrow.t-nat>.btn:where(#th-tool[data-module="unit-price"] *){flex:0 1 auto!important;max-width:100%}
#th-tool:where(#th-tool[data-module="unit-price"] *){container:tool/inline-size}
#th-tool :where(img,video,iframe):where(#th-tool[data-module="unit-price"] *){max-width:100%}
#th-tool:has(.uc-dir):where(#th-tool[data-module="unit-price"] *){-webkit-tap-highlight-color:transparent}
/* ===== end of the own copy; the tool's own rules follow ===== */
/* own tooltip (.unitprice-tip) + toast (.unitprice-toast): copied from theme.css .th-tt / .toast and renamed (rule 171 (j)) */
.unitprice-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:12px;font-size:14px;font-weight:600;opacity:0;transition:.25s;z-index:60;pointer-events:none}
.unitprice-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.unitprice-tip{position:fixed;z-index:9999;left:0;top:0;padding:7px 11px;border-radius:10px;background:var(--ink);color:var(--bg);font:500 12.5px/1.45 var(--font,system-ui,sans-serif);box-shadow:0 6px 24px rgba(11,16,32,.22);pointer-events:none;opacity:0;transform:translateY(3px);transition:opacity .12s,transform .12s;white-space:normal;overflow-wrap:anywhere}
.unitprice-tip.on{opacity:1;transform:none}
.unitprice-tip::after{content:"";position:absolute;left:var(--ax,50%);bottom:-5px;width:10px;height:10px;margin-left:-5px;background:inherit;transform:rotate(45deg);border-radius:2px}
.unitprice-tip.below::after{bottom:auto;top:-5px}@media (prefers-reduced-motion:reduce){
.unitprice-tip{transition:none}}@media print{
.unitprice-toast{display:none}}
/* Unit Price Calculator (module look). Standard font sizes and spacing tokens only; the shared parts (.t-box, .t-bx, .t-tone, .t-btnrow,
   .t-msg, .t-hint, .t-table, .t-cards, .t-tw …) come from the site's tool.css. Layout uses intrinsic grids and flex-wrap, no per-tool @media.
   The only @media is the colour-scheme one every tool uses for its status colours. */
#th-tool.up{--up-ok:#166534;--up-info:#2563eb;--up-bad:#b91c1c}
:root[data-theme="dark"] #th-tool.up{--up-ok:#4ade80;--up-info:#60a5fa;--up-bad:#f87171}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) #th-tool.up{--up-ok:#4ade80;--up-info:#60a5fa;--up-bad:#f87171}}

#th-tool.up{gap:var(--gap-block)}
#th-tool.up [hidden]{display:none !important}

/* the question and the first things to do */
.up-ask{display:flex;flex-direction:column;gap:var(--gap-label);text-align:center}
.up-q{margin:0;font-size:var(--fs-h3);font-weight:720;line-height:var(--lh-tight);color:var(--ink)}
.up-sub{margin:0;font-size:var(--fs-sm);line-height:var(--lh-text);color:var(--muted)}
.up-hint,.up-note,.up-lim{margin:0}
.up-pn .inp{width:100%}

/* products */
.up-prods{display:flex;flex-wrap:wrap;gap:var(--gap-min);align-items:center;padding-top:var(--gap-block);border-top:1px solid var(--line)}
.up-prods:empty{display:none}
.up-tabs{display:contents}
.up-chip{display:inline-flex;align-items:center;gap:var(--gap-min);min-height:var(--h-btn-sm);max-width:100%;padding:var(--sp-1) var(--sp-4);border:1.5px solid var(--btn2-border);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-sm);font-weight:650;cursor:pointer;transition:border-color .15s,background-color .15s}
.up-chip:hover{border-color:var(--btn2-border-hover);background:var(--btn2-bg-hover)}
.up-chip[aria-selected="true"]{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 10%,var(--surface));color:var(--brand-ink)}
.up-cn{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.up-cok{flex:none;color:var(--up-ok);font-weight:800}
.up-padd{flex:0 1 auto;max-width:100%}

/* the choices */
.up-chs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,26rem),1fr));gap:var(--gap-grid);align-items:stretch}
.up-ch{display:flex;flex-direction:column;gap:var(--gap-item);min-width:0;padding:var(--pad-box);border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface)}
.up-ch.is-best{border-color:color-mix(in srgb,var(--up-ok) 55%,var(--line));background:color-mix(in srgb,var(--up-ok) 9%,var(--surface));box-shadow:0 0 0 2px color-mix(in srgb,var(--up-ok) 16%,transparent)}
.up-chh{display:flex;align-items:center;gap:var(--gap-min)}
.up-n{flex:1 1 auto;min-width:0;width:auto;font-weight:650}
.up-ph,.up-rm{flex:none;width:var(--h-btn);height:var(--h-btn);padding:0;justify-content:center;overflow:hidden}
.up-ph svg{width:1.5rem;height:1.5rem}
.up-ph img{display:block;width:100%;height:100%;object-fit:cover}
.up-cam{display:flex;flex-direction:column;gap:var(--gap-item)}
.up-cam .t-msg{margin:0}
.up-cv{display:block;width:100%;aspect-ratio:4/3;max-height:50vh;object-fit:cover;border-radius:var(--r-card);background:var(--surface-2)}
.up-ch{container-type:inline-size}
/* rule 154: on a narrow tool box the product name gets its own full line under the photo + remove buttons (it was squeezed to 30 px at 264 px) */
@container tool (width <= 22.5rem){.up-chh{flex-wrap:wrap}.up-chh>.up-n{order:3;flex:1 1 100%}.up-chh>.up-rm{margin-left:auto}}
.up-fl{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap-item);align-items:end}
.up-fp{grid-column:span 6}
.up-fs2{grid-column:span 6}
.up-fu{grid-column:span 12}
.up-mpw,.up-mpf{display:flex;flex-direction:column;gap:var(--gap-item)}
.up-fc .inp{max-width:12rem}
@container (max-width:14rem){.up-fl{grid-template-columns:minmax(0,1fr)}.up-fp,.up-fs2,.up-fu{grid-column:auto}}
.up-fl .field{min-width:0}
.up-cs{font-weight:500}
.up-live{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--gap-label) var(--gap-min);line-height:var(--lh-tight)}
.up-live:empty{display:none}
.up-live .t-msg{flex:1 1 100%}
.up-lp{font-size:calc(var(--fs-h3) + var(--sp-1));font-weight:760;font-variant-numeric:tabular-nums;color:var(--ink)}
.up-l2{color:var(--muted);font-size:var(--fs-sm)}
.up-lx{flex:1 1 100%;font-size:var(--fs-label);line-height:var(--lh-text);color:var(--muted)}
.up-tag{display:inline-flex;align-items:center;padding:var(--sp-1) var(--sp-2);border-radius:var(--r-pill);background:color-mix(in srgb,var(--up-ok) 14%,var(--surface));color:var(--up-ok);font-size:var(--fs-tag);font-weight:750;line-height:1.15}
.up-tag-eq,.up-tag-next{background:color-mix(in srgb,var(--up-info) 14%,var(--surface));color:var(--up-info)}
.up-tag-dear{background:color-mix(in srgb,var(--up-bad) 14%,var(--surface));color:var(--up-bad)}

/* the "Deal, coupon or paper size" fold inside a card */
.up-more{border-top:1px dashed var(--line);padding-top:var(--gap-item)}
.up-more>summary,.up-fold>summary{list-style:none;cursor:pointer}
.up-more>summary::-webkit-details-marker,.up-fold>summary::-webkit-details-marker{display:none}
.up-ms{display:flex;align-items:center;gap:var(--gap-min);min-height:var(--tap);border-radius:var(--radius-sm)}
.up-mt{font-size:var(--fs-sm);font-weight:650;color:var(--ink)}
.up-mn{flex:1 1 auto;min-width:0;font-size:var(--fs-label);color:var(--muted);overflow-wrap:anywhere}
.up-fch{flex:none;display:inline-flex;color:var(--muted);transition:transform .15s}
/* rule 151 (2026-10-26): the closed "Special offer?" fold at a 264 px screen left the "Now: …" line 36 px wide (a very long word ran 4 px out of its box); in a narrow tool box the line gets its own row under the title and the arrow */
@container tool (width <= 22.5rem){.up-ms{flex-wrap:wrap}.up-mn{order:3;flex:1 1 100%}.up-fch{margin-left:auto}}
.up-more[open]>summary .up-fch,.up-fold[open]>summary .up-fch{transform:rotate(180deg)}
.up-more>summary:focus-visible,.up-fold>summary:focus-visible,.up-steps>summary:focus-visible{outline:2px solid var(--ai);outline-offset:2px}
.up-mb{display:flex;flex-direction:column;gap:var(--gap-item);padding-top:var(--gap-min)}
.up-of{display:flex;flex-direction:column;gap:var(--gap-item)}
.up-of:empty{display:none}
.up-ir{display:grid;grid-template-columns:repeat(auto-fill,minmax(6rem,1fr));justify-content:start;align-items:end;gap:var(--gap-item)}
.up-il{display:flex;flex-direction:column;gap:var(--gap-label);min-width:0}
.up-il>span{font-size:var(--fs-label);font-weight:650;color:var(--muted)}
.up-il .inp.sm{width:100%;max-width:8rem}
.up-nw{white-space:nowrap}
.up-it{display:inline-flex;align-items:center;min-height:var(--h-btn-sm);font-size:var(--fs-sm);color:var(--muted)}
.up-chk{display:flex;align-items:center;gap:var(--gap-item);min-height:var(--tap);font-size:var(--fs-sm);line-height:var(--lh-tight);cursor:default}
.up-chk input{cursor:pointer;flex:none;width:1.15rem;height:1.15rem;margin:0;accent-color:var(--brand)}
.up-mpk{margin-top:var(--sp-1)}
.up-ppf{display:flex;flex-direction:column;gap:var(--gap-item)}
.up-gt{margin:0;font-size:var(--fs-label);font-weight:700;color:var(--ink)}
.up-oh{display:block}
.up-phr{display:flex}

/* settings fold */
.up-fold{padding:var(--sp-2) var(--pad-box)}
.up-fs{display:flex;align-items:center;justify-content:space-between;gap:var(--gap-item);min-height:var(--tap)}
.up-fmain{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}
.up-ft{font-size:var(--fs-body);font-weight:700;color:var(--ink)}
.up-fsum{font-size:var(--fs-label);color:var(--muted);line-height:var(--lh-text)}
.up-fold.is-changed .up-fsum{color:var(--brand-ink)}
.up-fb{display:flex;flex-direction:column;gap:var(--gap-item);padding:var(--gap-item) 0 var(--sp-2)}
.up-fb>.t-hint{margin:0}
.up-ofl,.up-nl{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:var(--gap-grid);align-items:end}
.up-ofl .field,.up-nl .field{min-width:0}
.up-need{display:flex;flex-direction:column;gap:var(--gap-item)}
.up-need:empty{display:none}
.up-ns{margin:0;font-size:var(--fs-sm);line-height:var(--lh-text)}
.up-ns-main{font-size:var(--fs-body);font-weight:650;color:var(--ink)}

/* the answer */
.up-res{display:flex;flex-direction:column;gap:var(--gap-grid)}
.up-ws{margin:0;font-size:var(--fs-body);line-height:var(--lh-text);color:var(--ink)}
.up-svp{display:inline-flex;align-items:center;vertical-align:middle;padding:var(--sp-1) var(--sp-2);border-radius:var(--r-pill);background:color-mix(in srgb,var(--up-ok) 14%,var(--surface));color:var(--up-ok);font-size:var(--fs-sm);font-weight:750;line-height:1;white-space:nowrap}
.up-rv{display:flex;flex-direction:column;gap:var(--gap-item);padding-top:var(--gap-item);border-top:1px dashed color-mix(in srgb,var(--up-ok) 40%,var(--line))}
.up-rvh{margin:0;font-size:var(--fs-label);font-weight:700;color:var(--muted)}
.up-rl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--gap-item)}
.up-rl>li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-1) var(--gap-item)}
.up-rn{flex:1 1 10rem;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-min);font-weight:700;color:var(--ink);overflow-wrap:anywhere}
.up-rn .up-tt{display:inline-block;width:1.75rem;height:1.75rem;border-radius:var(--sp-2);object-fit:cover}
.up-rc{flex:0 1 auto;font-weight:760;font-variant-numeric:tabular-nums;color:var(--up-bad)}
.up-rx{flex:1 1 100%;display:flex;flex-direction:column;gap:var(--sp-1);font-size:var(--fs-sm);line-height:var(--lh-text);color:var(--muted)}
.up-rx b{color:var(--up-ok)}
.up-tbl tr.is-best{background:color-mix(in srgb,var(--up-ok) 6%,var(--surface))}
.up-tbl tr.is-best td{background:transparent}
.up-tbl td .up-tag{margin-left:var(--gap-min)}
.up-steps>summary{cursor:pointer;font-size:var(--fs-sm);font-weight:650;color:var(--brand-ink);min-height:var(--tap);display:flex;align-items:center}
.up-stb{display:flex;flex-direction:column;gap:var(--gap-min);padding:var(--pad-card);border-radius:var(--r-card);background:var(--surface-2);font-size:var(--fs-sm);line-height:var(--lh-text)}
.up-sn{margin:0}
.up-sl{margin:0;padding-left:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-1)}

/* the winners list */
.up-buy{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--gap-grid)}
.up-buy>li{display:flex;align-items:flex-start;gap:var(--gap-item);padding:var(--gap-item);border:1px solid color-mix(in srgb,var(--up-ok) 45%,var(--line));border-radius:var(--sp-3);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--up-ok) 10%,transparent)}
.up-bno{flex:none;display:inline-flex;align-items:center;justify-content:center;width:var(--sp-7);height:var(--sp-7);border-radius:var(--sp-2);background:color-mix(in srgb,var(--brand) 14%,var(--surface));color:var(--brand-ink);font-size:var(--fs-sm);font-weight:800;font-variant-numeric:tabular-nums}
.up-bb{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--gap-item)}
.up-bh{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-min) var(--gap-item);padding:var(--gap-item);border-radius:var(--sp-2);background:color-mix(in srgb,var(--up-ok) 12%,var(--surface))}
.up-bh .up-svp{background:var(--surface)}
.up-bm{flex:1 1 10rem;min-width:0;display:flex;flex-direction:column;gap:var(--sp-1);overflow-wrap:anywhere}
.up-bm>b{color:var(--ink)}
.up-bm>span{font-size:var(--fs-h3);font-weight:800;line-height:var(--lh-tight);color:var(--up-ok)}
.up-bm>span .up-tag{vertical-align:middle;background:var(--up-ok);color:var(--surface)}
.up-bm>span .up-tag-eq{background:color-mix(in srgb,var(--up-info) 14%,var(--surface));color:var(--up-info)}
.up-bh>img{flex:none;border-radius:var(--sp-2);object-fit:cover}
.up-bp{flex:1 1 9rem;display:flex;flex-direction:column;align-items:flex-end;text-align:right;font-size:var(--fs-sm);color:var(--muted)}
.up-bp b{font-size:var(--fs-h3);font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}
.up-dl{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:var(--sp-1)}
.up-bp small{font-size:var(--fs-label)}
.up-det,.up-hw{display:flex;flex-direction:column;gap:var(--gap-grid)}
.up-det:empty,.up-hw:empty{display:none}
.up-bt{margin:0;padding-top:var(--gap-item);text-align:right;font-size:var(--fs-body);color:var(--ink)}
.up-bt+.up-bt{padding-top:0}
.up-bts{color:var(--up-ok)}
.up-bts b{color:var(--up-ok)}
.up-buy+.up-bt{margin-top:0}

/* small helpers */
.up-tip{--up-tipd:calc(var(--sp-4) + var(--sp-1) / 2);position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--up-tipd);height:var(--up-tipd);margin-left:var(--sp-1);border:1px solid var(--btn2-border);border-radius:50%;background:transparent;color:var(--muted);font-size:var(--fs-tag);font-weight:700;font-style:normal;line-height:1;cursor:help;vertical-align:middle;transition:color .15s,border-color .15s}
.up-tip::after{content:'';position:absolute;inset:calc(var(--sp-2) * -1)}
.up-tip:hover,.up-tip:focus-visible{color:var(--brand-ink);border-color:var(--brand-ink)}
.up-tip:focus-visible{outline:2px solid var(--ai);outline-offset:2px}
.up .btn.is-done{background:var(--up-ok);border-color:transparent;color:var(--on-brand)}
.up-help{align-items:center;justify-content:center}
.up-top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:center;gap:var(--gap-grid)}
.up-top .up-curf{flex:0 1 26rem;min-width:min(100%,11rem);text-align:left}
.up-foot{padding-top:var(--gap-block)}
#th-tool.up #up-hl .chip{display:block;max-width:100%;text-align:left}

/* ===== progress for every file the visitor gets (rule 182, 2026-10-26): OWN COPY of the Table to Image panel look (.ti-pg*), renamed unitprice-pg*, one file at a time (2026-10-26). Floats at the bottom like the toast. ===== */
.unitprice-pg{position:fixed;inset-inline:var(--gap-item);bottom:28px;margin:0 auto;max-inline-size:26rem;z-index:61;display:flex;flex-direction:column;gap:var(--gap-item);padding:var(--gap-item);border-radius:var(--r-card);border:1px solid color-mix(in srgb,var(--brand) 35%,var(--line));background:color-mix(in srgb,var(--brand) 6%,var(--surface));box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 8%,transparent),var(--shadow);animation:unitprice-pg-in .25s ease both}
.unitprice-pg[hidden]{display:none}
.unitprice-pgh{display:flex;align-items:center;gap:var(--gap-item);min-inline-size:0}
.unitprice-pgring{--p:0;position:relative;flex:none;display:grid;place-items:center;inline-size:3rem;block-size:3rem;border-radius:50%;background:conic-gradient(var(--brand) calc(var(--p)*1%),color-mix(in srgb,var(--brand) 16%,var(--surface)) 0)}
.unitprice-pgring::before{content:'';position:absolute;inset:5px;border-radius:50%;background:var(--surface)}
.unitprice-pgring>b{position:relative;font-size:12px;font-weight:800;color:var(--brand);font-variant-numeric:tabular-nums}
.unitprice-pgx{display:flex;flex-direction:column;flex:1 1 auto;min-inline-size:0}
.unitprice-pgt{font-size:var(--fs-body);color:var(--ink);overflow-wrap:anywhere}
.unitprice-pgs{font-size:var(--fs-label);color:var(--muted);overflow-wrap:anywhere}
.unitprice-pgbar{position:relative;display:block;block-size:8px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--brand) 14%,var(--surface));overflow:hidden}
.unitprice-pgbar>i{position:absolute;inset:0 auto 0 0;width:0;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--brand) 70%,#fff),var(--brand));transition:width .35s ease;overflow:hidden}
.unitprice-pgbar>i::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:translateX(-100%);animation:unitprice-sheen 1.4s ease-in-out infinite}
.unitprice-pgm{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--gap-label) var(--gap-item);font-size:var(--fs-label);color:var(--muted);font-variant-numeric:tabular-nums}
.unitprice-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}
@keyframes unitprice-pg-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes unitprice-sheen{to{transform:translateX(100%)}}
@media (prefers-reduced-motion:reduce){.unitprice-pg,.unitprice-pgbar>i::after{animation:none}.unitprice-pgbar>i{transition:none}}

/* print: the site keeps a whole tool box on one page (.tool break-inside:avoid); this box is longer than a page, so it left page 1 empty. Let it flow like on the screen, keep small parts whole */
@media print{#th-tool.up{break-inside:auto !important}.up-ch,.up-buy li,.up-rl>li{break-inside:avoid}}
