/* L’atelier : le bois de la cabine et la précision d’un carnet de chantier. */
.sauna-workshop { --sw-ink:#302720; --sw-paper:#faf6ee; --sw-line:#d8cbbd; --sw-copper:#99452f; --sw-wood:#74523b; color:var(--sw-ink); }
.sauna-workshop [hidden] { display:none !important; }
.sauna-workshop h1,.sauna-workshop h2,.sauna-workshop h3 { font-family:Georgia,'Times New Roman',serif; font-weight:400; letter-spacing:-.025em; line-height:1.15; }
.sauna-workshop h2 { font-size:clamp(1.65rem,2.4vw,2.3rem); margin:.35rem 0 1rem; }
.sauna-workshop h3 { font-size:1.35rem; }
.sauna-workshop button,.sauna-workshop input,.sauna-workshop select,.sauna-workshop textarea { font:inherit; }
.sauna-workshop button,.sw-import-label { min-height:44px; }
.sauna-workshop :is(button,input,select,textarea,summary,a):focus-visible { outline:3px solid #a64e33; outline-offset:4px; }
.sw-hero { position:relative; isolation:isolate; overflow:hidden; min-height:260px; color:#fff9f0; background:#302720; }
.sw-hero>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:70% 58%; z-index:-2; }
.sw-hero::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(37,29,24,.96),rgba(37,29,24,.81) 38%,rgba(37,29,24,.12) 78%); z-index:-1; }
.sw-hero-copy { padding-top:2rem; padding-bottom:2.4rem; }
.sw-hero h1 { font-size:clamp(2.4rem,4vw,4rem); margin:.35rem 0 .85rem; max-width:15ch; }
.sw-hero-copy>p:not(.eyebrow) { max-width:43ch; font-size:1rem; margin:0 0 .7rem; }
.sw-hero-copy>span { font-size:.78rem; color:#e8d3be; }
.sw-enter { display:block; width:fit-content; margin-top:1rem; font-size:.82rem; }
.sw-hero .eyebrow { color:#efd5bd; }
.sw-hero-caption { position:absolute; bottom:.55rem; right:1rem; font-size:.65rem; margin:0; background:#302720d9; padding:.25rem .5rem; }
.sw-intro { display:flex; justify-content:space-between; align-items:center; gap:2rem; padding-block:1.3rem; font-size:.85rem; }
.sw-intro p { max-width:86ch; margin:0; }
.sw-intro>a { flex-shrink:0; font-size:.8rem; }
.sw-project-bar { display:flex; justify-content:space-between; align-items:center; gap:1.5rem; padding:1.2rem 0; border-top:1px solid var(--sw-line); }
.sw-name { display:grid; grid-template-columns:auto minmax(80px,300px); align-items:center; column-gap:1rem; }
.sw-name>label { font-size:.78rem; font-weight:700; text-transform:uppercase; letter-spacing:.09em; }
.sw-name>input { background:transparent; border:0; border-bottom:1px solid #a9907a; padding:.3rem .4rem; color:var(--sw-ink); font-family:Georgia,serif; font-size:1.3rem; width:100%; min-width:0; border-radius:0; }
.sw-save-status { grid-column:2; font-size:.72rem; margin:.25rem 0 0; color:#68584b; }
.sw-file-actions { display:flex; align-items:center; flex-wrap:wrap; gap:.6rem; }
.sw-secondary,.sw-import-label { padding:.55rem .85rem; border:1px solid #b8a18a; border-radius:3px; background:#fcf8f2; color:#50372b; font-weight:600; font-size:.8rem; line-height:1.6; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; }
.sw-secondary:hover,.sw-import-label:hover { background:#e9dece; }
.sw-file-input { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.sw-import-label:has(+.sw-file-input:focus-visible) { outline:3px solid #a64e33; outline-offset:4px; }
.sw-feedback,.sw-review { background:#ebe0d0; border-left:3px solid var(--sw-copper); padding:1rem 1.2rem; font-size:.85rem; }
.sw-review { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.sw-review p { margin:.2rem 0 0; }
.sw-review button { max-width:250px; flex-shrink:0; }
.sw-tabs { display:flex; border-bottom:1px solid #bda38b; margin:.2rem 0 0; gap:2rem; position:sticky; top:0; z-index:5; background:#f4eee5; }
.sw-tabs button { border:0; border-bottom:3px solid transparent; background:transparent; color:#736152; padding:.85rem .3rem; font-size:.95rem; display:flex; align-items:center; gap:.65rem; }
.sw-tabs button>span { font-size:.68rem; color:#806955; }
.sw-tabs button[aria-selected=true] { border-color:var(--sw-copper); color:#302720; font-weight:700; }
.sw-tabs button:hover { color:var(--sw-copper); }
.sw-tabs small { font-size:.7rem; background:#e9dfd1; padding:.05rem .4rem; border-radius:2px; min-width:1.5rem; }
.sw-panel { padding:1.8rem 0 0; }
.sw-plan-layout { display:grid; grid-template-columns:300px minmax(0,1fr); gap:2rem; }
.sw-config { border-right:1px solid var(--sw-line); padding-right:1.8rem; }
.sw-kicker { text-transform:uppercase; font-size:.66rem; letter-spacing:.13em; font-weight:700; color:#76533c; margin:0 0 .4rem; }
.sw-config h2 { font-size:1.8rem; }
.sw-config fieldset { border:0; padding:0; margin:0 0 1.2rem; min-width:0; }
.sw-config legend { font-size:.8rem; font-weight:700; margin:0 0 .5rem; }
.sw-choices { display:grid; grid-template-columns:1fr 1fr; gap:.4rem; }
.sw-choices label { position:relative; display:block; cursor:pointer; }
.sw-choices input { position:absolute; opacity:0; width:1px; height:1px; }
.sw-choices span { display:flex; align-items:center; justify-content:center; min-height:44px; padding:.6rem .3rem; border:1px solid #bba68f; font-size:.78rem; background:#fcf9f3; border-radius:3px; }
.sw-choices input:checked+span { color:#fff8ee; background:#50372b; border-color:#50372b; }
.sw-choices input:focus-visible+span { outline:3px solid #a64e33; outline-offset:3px; }
.sw-dimensions { display:grid; grid-template-columns:1fr 1fr; gap:.65rem; }
.sw-dimensions label,.sw-adjustments label { font-size:.78rem; display:block; }
.sw-dimensions label>span,.sw-adjustments label>span { color:#716052; }
.sw-dimensions input,.sw-adjustments input { width:100%; min-width:0; margin-top:.25rem; border:1px solid #bda890; background:#fffdf9; color:#302720; border-radius:3px; padding:.5rem .55rem; min-height:44px; font-size:1rem; }
.sw-field-hint { font-size:.72rem; color:#6e5c4e; line-height:1.6; margin:-.3rem 0 1.1rem; }
.sw-adjustments { padding:.75rem 0; border-block:1px solid var(--sw-line); margin-bottom:1rem; }
.sw-adjustments summary { cursor:pointer; font-size:.8rem; font-weight:600; min-height:32px; }
.sw-adjustments label { margin-top:.7rem; }
.sw-adjustments p { font-size:.72rem; color:#6e5c4e; }
.sw-apply { width:100%; font-size:.85rem; }
.sw-form-error { color:#8d291e; background:#fff0e9; padding:.65rem; font-size:.8rem; }
.sw-drawing-area { min-width:0; }
.sw-mobile-adjust { display:none; }
.sw-drawing-heading { display:flex; justify-content:space-between; align-items:start; gap:1rem; }
.sw-drawing-heading h2 { font-size:1.8rem; }
.sw-plan-type { padding:.3rem .6rem; border:1px solid #cbb8a4; font-size:.7rem; white-space:nowrap; }
.sw-scene { min-height:280px; background:radial-gradient(ellipse at 50% 75%,#d5c5ae 0%,#ede4d5 43%,#f6f0e5 78%); border:1px solid #d6c7b4; }
.sw-scene svg { width:100%; height:auto; }
.sw-view-toolbar { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:.6rem; margin:.3rem 0 .55rem; }
.sw-view-switch { display:flex; gap:.35rem; }
.sw-view-switch button { min-height:42px; padding:.5rem .7rem; font-size:.76rem; border:1px solid #bba58c; border-radius:3px; background:#faf6ee; color:#50372b; }
.sw-view-switch button[aria-pressed=true] { background:#50372b; border-color:#50372b; color:#fff8ef; }
.sw-view-toolbar button:disabled { cursor:default; color:#86786a; text-decoration:none; }
.sw-layout-instructions { font-size:.78rem; margin:.4rem 0 .8rem; color:#604b3a; }
.sw-scene [data-layout-item] { cursor:grab; touch-action:none; }
.sw-scene [data-layout-item]:active,.sw-scene[data-dragging=true] { cursor:grabbing; }
.sw-scene [data-layout-rotate] { cursor:crosshair; touch-action:none; }
.sw-scene :is([data-layout-item],[data-layout-rotate]):focus-visible { outline:none; filter:drop-shadow(0 0 3px #8e3925); }
.sw-scene[data-dragging=true] { user-select:none; }
.sw-layout-editor { padding:.95rem 1rem; background:#fff9ef; border:1px solid #cebaa3; border-top:0; }
.sw-layout-item-row { display:flex; gap:1rem; justify-content:space-between; align-items:end; }
.sw-layout-item-row label { display:block; font-size:.74rem; flex:1; }
.sw-layout-item-row select { display:block; width:100%; min-height:44px; margin-top:.3rem; padding:.45rem .55rem; border:1px solid #bba48a; background:#fcf8f0; color:#50372b; border-radius:3px; font:inherit; font-size:.9rem; }
.sw-layout-item-row button { font-size:.78rem; }
.sw-layout-dimensions { display:grid; grid-template-columns:1fr 1fr auto; gap:.75rem; align-items:end; margin-top:.85rem; }
.sw-layout-dimensions label { font-size:.72rem; }
.sw-layout-dimensions input { display:block; width:100%; min-width:0; min-height:44px; padding:.45rem .55rem; margin-top:.3rem; border:1px solid #bba48a; border-radius:3px; background:#fffdfa; color:#302720; }
.sw-layout-dimensions input:disabled { background:#eee6d9; color:#7d6a58; }
.sw-layout-dimensions button { font-size:.75rem; }
.sw-layout-position { font-size:.74rem; color:#614b39; margin:.75rem 0 .4rem; }
.sw-layout-status { font-size:.76rem; font-weight:600; margin:.4rem 0; color:#674731; }
.sw-layout-status[data-error=true] { color:#8c3124; }
.sw-layout-help { font-size:.68rem; color:#755d48; margin:.4rem 0 0; }
.sw-scene [data-sw-zone] { cursor:pointer; outline:none; }
.sw-scene [data-sw-zone]:focus-visible { filter:drop-shadow(0 0 5px #a64e33); }
.sw-scene .sw-zone-highlight { stroke:#a64e33; stroke-width:2.5; stroke-dasharray:5 4; fill:none; opacity:0; pointer-events:none; }
.sw-scene [aria-pressed=true] .sw-zone-highlight,.sw-scene [data-sw-zone]:focus-visible .sw-zone-highlight { opacity:1; }
.sw-zone-buttons { display:flex; gap:.35rem; margin:.8rem 0; }
.sw-zone-buttons button { border:1px solid #c9b59e; border-radius:3px; padding:.5rem .65rem; background:#fcf8f1; color:#634b37; font-size:.75rem; flex:1; }
.sw-zone-buttons button[aria-pressed=true] { background:#50372b; color:#fff7ec; border-color:#50372b; }
.sw-zone-detail { padding:.8rem 1rem; border-left:2px solid #a64e33; background:#f9f4e9; min-height:106px; }
.sw-zone-detail h3 { font-size:1.1rem; margin:0 0 .4rem; }
.sw-zone-detail p { font-size:.8rem; margin:0; }
.sw-metrics { display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid var(--sw-line); margin:1rem 0 0; }
.sw-metrics>div { padding:.7rem .9rem; border-right:1px solid var(--sw-line); }
.sw-metrics>div:first-child { padding-left:0; }
.sw-metrics>div:last-child { border-right:0; }
.sw-metrics dt { font-size:.72rem; color:#705b4a; }
.sw-metrics dd { margin:0; font-family:Georgia,serif; font-size:1.65rem; line-height:1.4; }
.sw-metrics dd small { font: .75rem var(--sans); }
.sw-diagram-caption { font-size:.7rem; color:#705d4c; }
.sw-next-strip { display:flex; justify-content:space-between; align-items:center; gap:1.5rem; padding:1.2rem 1.5rem; background:#e8ddcc; margin-top:1.6rem; border:1px solid #d2bfa6; }
.sw-next-strip p { margin:0; font-size:.85rem; }
.sw-next-strip p span { display:block; color:#6b5645; font-size:.78rem; margin-top:.2rem; }
.sw-next-strip .button { flex-shrink:0; font-size:.82rem; }
.sw-section-heading { display:grid; grid-template-columns:1fr 1fr; gap:2rem; margin-bottom:1.5rem; }
.sw-section-heading p:not(.sw-kicker) { font-size:.88rem; margin:.2rem 0 0; max-width:55ch; }
.sw-shopping-summary { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid #cbb8a0; background:#fbf7ee; }
.sw-shopping-summary>div { padding:1rem 1.4rem; border-right:1px solid #d9c9b4; }
.sw-shopping-summary>div:last-child { border:0; background:#50372b; color:#fff7ed; }
.sw-shopping-summary span,.sw-shopping-summary small { display:block; font-size:.75rem; }
.sw-shopping-summary strong { font-family:Georgia,serif; font-size:2rem; font-weight:400; }
.sw-filter-row { display:flex; gap:2rem; justify-content:space-between; align-items:center; padding:1.2rem 0; }
.sw-filter-row label { font-size:.76rem; display:flex; align-items:center; gap:.7rem; flex-shrink:0; }
.sw-filter-row select,.sw-item-status select { min-height:44px; border:1px solid #bba58d; background:#fffaf2; color:#302720; padding:.45rem .65rem; border-radius:3px; font-size:.82rem; }
.sw-filter-row p { font-size:.75rem; max-width:65ch; margin:0; color:#6e5a49; }
.sw-item { display:grid; grid-template-columns:42px minmax(0,1fr) 210px; gap:1rem; padding:1.2rem 0; border-top:1px solid var(--sw-line); }
.sw-item-number { font:1.1rem Georgia,serif; color:#866b54; padding-top:.15rem; }
.sw-item h3 { font-size:1.3rem; margin:0 0 .3rem; }
.sw-item-description { font-size:.8rem; margin:.3rem 0; max-width:75ch; }
.sw-item-reference { font-size:.72rem; color:#76533c; margin:.25rem 0; }
.sw-item-quantity { font-size:.78rem; font-weight:600; margin:.5rem 0; }
.sw-item details { margin:.55rem 0 0; }
.sw-item summary { cursor:pointer; color:#6e4a33; font-size:.75rem; min-height:32px; }
.sw-item details p { font-size:.75rem; margin:.3rem 0; max-width:85ch; }
.sw-item-note { display:block; font-size:.75rem; margin-top:.6rem; }
.sw-item-note input { display:block; width:100%; max-width:500px; padding:.5rem; font-size:.85rem; border:1px solid #c5b29b; background:#fffaf3; min-height:44px; }
.sw-item-quantity-confirmed { display:flex; align-items:center; flex-wrap:wrap; gap:.35rem .6rem; font-size:.74rem; margin:.6rem 0; }
.sw-item-quantity-confirmed input { width:100px; min-height:44px; padding:.45rem .5rem; border:1px solid #c5b29b; background:#fffaf3; border-radius:3px; font-size:.9rem; }
.sw-item-actions { display:flex; flex-direction:column; align-items:stretch; gap:.5rem; }
.sw-item-status { font-size:.72rem; }
.sw-item-status select { display:block; width:100%; margin:.2rem 0 .35rem; }
.sw-item-cost { font-size:.72rem; display:flex; flex-wrap:wrap; gap:.35rem; align-items:center; }
.sw-item-cost input { width:100%; min-height:44px; background:#fffaf3; border:1px solid #bfa98f; border-radius:3px; padding:.45rem .55rem; font-size:.9rem; }
.sw-specialist { font-size:.73rem; padding:.6rem .7rem; border-left:2px solid #a58c73; background:#eee4d5; margin:.35rem 0 0; }
.sw-amazon { display:block; background:#99452f; color:#fff8ed; font-size:.77rem; font-weight:600; padding:.7rem; border-radius:3px; text-align:center; text-decoration:none; margin-top:.3rem; }
.sw-amazon:hover { color:white; background:#713625; }
.sw-amazon-check { font-size:.67rem; color:#665240; line-height:1.4; }
.sw-item[data-status=excluded] { opacity:.65; }
.sw-item[data-status=bought] .sw-item-number,.sw-item[data-status=owned] .sw-item-number { color:#99452f; font-weight:700; }
.sw-affiliate { font-size:.73rem; color:#6a5747; border-top:1px solid var(--sw-line); padding-top:1rem; }
.sw-empty { padding:2rem; background:#eee3d4; text-align:center; }
.sw-progress-block { background:#50372b; color:#fff7eb; padding:1.3rem 1.5rem; margin-bottom:1.5rem; }
.sw-progress-block>div { display:flex; justify-content:space-between; gap:1rem; font-size:.85rem; }
.sw-progress-block>div>span { font:2rem Georgia,serif; flex-shrink:0; white-space:nowrap; }
.sw-progress-block progress { appearance:none; display:block; width:100%; height:6px; margin:.7rem 0; border:0; background:#806955; }
.sw-progress-block progress::-webkit-progress-bar { background:#806955; }
.sw-progress-block progress::-webkit-progress-value { background:#e0a679; }
.sw-progress-block progress::-moz-progress-bar { background:#e0a679; }
.sw-progress-block p { font-size:.8rem; margin:.6rem 0 0; }
.sw-stage { display:grid; grid-template-columns:180px minmax(0,1fr); border-top:1px solid var(--sw-line); padding:1.6rem 0; gap:2rem; }
.sw-stage-heading>span { font:2.2rem Georgia,serif; color:#a07552; }
.sw-stage h3 { margin:.3rem 0 .6rem; }
.sw-stage-heading p { font-size:.75rem; color:#705b4a; }
.sw-task { display:flex; gap:.75rem; align-items:start; padding:.7rem 0; border-bottom:1px solid #e0d4c4; }
.sw-task:last-child { border:0; }
.sw-task input { accent-color:#99452f; width:22px; height:22px; min-width:22px; margin:.2rem 0 0; cursor:pointer; }
.sw-task>div { flex:1; }
.sw-task label { font-size:.9rem; font-weight:600; cursor:pointer; display:block; }
.sw-task p { font-size:.78rem; margin:.35rem 0 0; color:#685342; }
.sw-task[data-task-state=locked] { color:#806e5c; }
.sw-task[data-task-state=done] label { text-decoration:line-through; color:#765744; }
.sw-task-lock { display:inline-block; font-size:.68rem; background:#e8decf; padding:.1rem .4rem; margin-top:.3rem; }
.sw-notebook { background:#e8ddcc; display:grid; grid-template-columns:1fr 1.6fr; padding:1.5rem; gap:2rem; border:1px solid #cebaa1; }
.sw-notebook h3 { margin:.3rem 0 .8rem; }
.sw-notebook p { font-size:.8rem; }
.sw-notebook label { font-size:.8rem; font-weight:600; }
.sw-notebook textarea { display:block; width:100%; resize:vertical; min-height:140px; padding:.8rem; border:1px solid #baa086; background:#fffbf3; color:#302720; margin-top:.5rem; font-weight:400; }
.sw-storage-footer { display:flex; justify-content:space-between; align-items:center; padding:1.2rem 0; gap:2rem; }
.sw-storage-footer p { font-size:.73rem; max-width:95ch; }
.sw-text-button { border:0; background:transparent; text-decoration:underline; text-underline-offset:3px; color:#8b3d2b; font-size:.75rem; flex-shrink:0; }
.sw-method { display:grid; grid-template-columns:2fr 1fr; gap:4rem; padding-block:3rem; border-top:1px solid var(--sw-line); }
.sw-method p { font-size:.85rem; }
.sw-method details { border-top:1px solid var(--sw-line); padding-top:.8rem; font-size:.8rem; }
.sw-method summary { cursor:pointer; min-height:36px; font-weight:600; }
.sw-method li { margin-bottom:.65rem; font-size:.82rem; }
.sw-method aside { border-left:1px solid var(--sw-line); padding-left:2rem; }
.sw-method aside h3 { margin-top:0; }
.sw-method aside ul { padding-left:1.2rem; }
.sw-dialog { max-width:500px; width:calc(100% - 32px); padding:2rem; background:#fbf6ec; color:#302720; border:1px solid #b39a7c; border-radius:4px; box-shadow:0 20px 70px #20160e66; }
.sw-dialog::backdrop { background:#211810aa; }
.sw-dialog h2 { font:1.8rem Georgia,serif; margin:0 0 1rem; }
.sw-dialog p { font-size:.85rem; }
.sw-dialog form>div { display:flex; flex-wrap:wrap; gap:.7rem; margin-top:1.5rem; }
.sw-noscript { padding:1.5rem; border:1px solid #b58b61; }
@media (max-width:1050px) { .sw-plan-layout { grid-template-columns:260px minmax(0,1fr); gap:1.3rem; } .sw-config { padding-right:1.3rem; } .sw-drawing-heading { display:block; } .sw-plan-type { display:inline-block; margin-bottom:.8rem; } .sw-intro { display:block; } .sw-intro a { display:inline-block; margin-top:.4rem; } .sw-name { grid-template-columns:1fr; } .sw-save-status { grid-column:1; } }
@media (max-width:760px) {
  .sw-view-toolbar { align-items:start; } .sw-view-toolbar>.sw-text-button { font-size:.68rem; min-height:36px; padding-left:0; }
  .sw-layout-editor { padding:.8rem; } .sw-layout-item-row { gap:.5rem; } .sw-layout-item-row button { font-size:.7rem; padding:.5rem; }
  .sw-layout-dimensions { grid-template-columns:1fr 1fr; gap:.65rem; } .sw-layout-dimensions button { grid-column:1/-1; } .sw-layout-instructions { font-size:.75rem; }
  .sw-scene .sw-dimension-label { font-size:26px; }
  .sw-hero { min-height:235px; } .sw-hero-copy { padding-block:1.4rem 2.3rem; } .sw-hero h1 { font-size:2.5rem; } .sw-hero::after { background:linear-gradient(90deg,#251d18f2,#251d18b8 70%,#251d1877); } .sw-hero-caption { right:.5rem; font-size:.55rem; }
  .sw-project-bar { align-items:flex-start; flex-wrap:wrap; gap:.8rem; } .sw-name { width:100%; } .sw-name>input { font-size:1.3rem; max-width:100%; } .sw-file-actions { width:100%; } .sw-file-actions>*:not(input) { flex:1; }
  .sw-tabs { gap:0; justify-content:space-between; } .sw-tabs button { font-size:.78rem; gap:.3rem; padding:.8rem .2rem; } .sw-tabs button>span { display:none; } .sw-tabs small { font-size:.65rem; }
  .sw-plan-layout { grid-template-columns:1fr; gap:1.5rem; } .sw-config { border-right:0; padding-right:0; } .sw-config form { display:grid; grid-template-columns:1fr 1fr; gap:0 1rem; } .sw-config form>fieldset:nth-of-type(3),.sw-config form>.sw-field-hint,.sw-config form>.sw-adjustments,.sw-config form>.sw-form-error,.sw-config form>.sw-apply { grid-column:1/-1; } .sw-config h2 { margin-bottom:1rem; } .sw-dimensions { grid-template-columns:repeat(3,1fr); } .sw-choices { grid-template-columns:1fr; } .sw-choices span { padding:.5rem; }
  .sw-drawing-area { grid-row:1; } .sw-mobile-adjust { display:inline-block; font-size:.8rem; padding:.5rem 0; } .sw-drawing-heading { display:flex; } .sw-drawing-heading h2 { font-size:1.6rem; } .sw-plan-type { font-size:.63rem; white-space:normal; max-width:95px; } .sw-scene { min-height:0; } .sw-zone-buttons button { font-size:.7rem; padding:.4rem .3rem; } .sw-metrics>div { padding:.6rem .45rem; } .sw-metrics dt { font-size:.65rem; } .sw-metrics dd { font-size:1.5rem; }
  .sw-next-strip { padding:1rem; flex-direction:column; align-items:stretch; gap:.8rem; } .sw-section-heading { grid-template-columns:1fr; gap:.3rem; } .sw-section-heading h2 { margin-bottom:.5rem; } .sw-shopping-summary>div { padding:.7rem .6rem; } .sw-shopping-summary strong { font-size:1.6rem; } .sw-shopping-summary small,.sw-shopping-summary span { font-size:.65rem; }
  .sw-filter-row { display:block; } .sw-filter-row label { justify-content:space-between; margin-bottom:.7rem; } .sw-item { grid-template-columns:25px minmax(0,1fr); gap:.6rem; padding:1rem 0; } .sw-item-actions { grid-column:2; display:grid; grid-template-columns:1fr 1fr; gap:.5rem .8rem; } .sw-item h3 { font-size:1.2rem; } .sw-item-cost { align-content:start; } .sw-specialist,.sw-amazon,.sw-amazon-check { grid-column:1/-1; }
  .sw-stage { grid-template-columns:1fr; gap:0; } .sw-stage-heading { display:grid; grid-template-columns:40px 1fr; gap:0 .7rem; } .sw-stage-heading>span { grid-row:1/3; font-size:2rem; } .sw-stage-heading h3 { margin:.1rem 0 .4rem; } .sw-stage-heading p { margin:0 0 .6rem; } .sw-task { padding:.9rem 0; } .sw-task input { width:24px; height:24px; min-width:24px; }
  .sw-notebook { grid-template-columns:1fr; gap:.6rem; padding:1.1rem; } .sw-notebook h3 { margin-bottom:.5rem; } .sw-notebook p { margin:.4rem 0; } .sw-storage-footer { display:block; } .sw-storage-footer>button { padding-left:0; } .sw-method { grid-template-columns:1fr; gap:1.5rem; padding-block:2rem; } .sw-method aside { border-left:0; padding-left:0; border-top:1px solid var(--sw-line); padding-top:1.5rem; } .sw-review { flex-direction:column; align-items:start; }
}
@media (prefers-reduced-motion:no-preference) { .sw-zone-buttons button,.sw-tabs button,.sw-secondary { transition:background-color .16s,color .16s,border-color .16s; } }

.sw-safety-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
.sw-safety-fields button { grid-column:1/-1; }
[data-sw-heater-safety] > p { font-size:.78rem; line-height:1.65; }
