/* Tool layout */
.sw-tool{margin:1.5rem 0 2.5rem;min-height:400px}
.sw-tool noscript p,.sw-tool__loading{background:var(--ivory);border:1px dashed var(--rule-2);padding:1rem;font-family:var(--ui)}
.swt-grid{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:28px;align-items:start}
@media (max-width:1060px){.swt-grid{grid-template-columns:minmax(0,1fr)}}
.swt-form{background:var(--ivory);border:1px solid var(--rule);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);font-family:var(--ui);font-size:.9rem;position:sticky;top:16px;max-height:calc(100vh - 32px);overflow:auto}
@media (max-width:1060px){.swt-form{position:static;max-height:none}}
.swt-field{margin:0 0 12px}
.swt-field label,.swt-label{display:block;font-weight:600;font-size:.8rem;color:var(--ink-2);margin-bottom:4px;letter-spacing:.01em}
.swt-field input,.swt-field textarea,.swt-select{width:100%;font:inherit;font-family:var(--serif);font-size:.97rem;padding:.55rem .65rem;border:1px solid var(--rule-2);border-radius:4px;background:var(--paper);color:var(--ink)}
.swt-field textarea{resize:vertical;line-height:1.45}
.swt-field input:focus,.swt-field textarea:focus,.swt-select:focus{border-color:var(--oxblood);outline:2px solid rgba(109,26,31,.25);outline-offset:0}
.swt-field--pick .swt-select{font-family:var(--ui);font-weight:600;background:#fff}
.swt-select--sm{width:auto;padding:.35rem .5rem;font-family:var(--ui);font-size:.85rem}
.swt-fs{border:0;border-top:1px solid var(--rule);padding:12px 0 0;margin:12px 0 0}
.swt-fs legend{font-family:var(--display);font-size:1.2rem;font-weight:700;color:var(--oxblood-2);padding:0 6px 0 0}
.swt-hint{display:block;color:var(--muted);font-size:.78rem;margin:.2rem 0 .5rem}
.swt-check{display:grid;grid-template-columns:20px 1fr;gap:8px;align-items:start;padding:6px 0;border-bottom:1px dotted var(--rule)}
.swt-check input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--oxblood)}
.swt-check label{font-size:.85rem;line-height:1.4;color:var(--ink)}
.swt-styles{display:flex;flex-wrap:wrap;gap:6px}
.swt-style{font:inherit;font-size:.82rem;padding:.45rem .7rem;border:1px solid var(--rule-2);border-radius:999px;background:var(--paper);cursor:pointer;color:var(--ink-2);min-height:36px}
.swt-style.is-on{background:var(--oxblood);color:#fff;border-color:var(--oxblood)}
.swt-util{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.swt-saved{font-size:.76rem;color:var(--muted);margin:.6rem 0 0}
.swt-out{min-width:0}
.swt-bar{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;background:var(--oxblood-2);padding:10px 12px;border-radius:var(--radius) var(--radius) 0 0;font-family:var(--ui)}
.swt-bar__dl{display:flex;flex-wrap:wrap;gap:8px}
.swt-bar__dl .btn{min-height:40px;padding:.55rem .9rem}
.swt-bar .btn--ghost{color:#f6e9cc;border-color:rgba(216,178,90,.6)}
.swt-bar .btn--ghost:hover{background:rgba(216,178,90,.15);color:#fff}
.swt-bar .btn:not(.btn--gold):not(.btn--ghost){background:var(--oxblood-3);border-color:var(--gold)}
.swt-bar__paper{display:flex;gap:6px;align-items:center;color:#f1e2c2;font-size:.82rem}
.swt-msg{font-family:var(--ui);font-size:.8rem;color:var(--ink-2);margin:0;background:var(--parchment-2);padding:0 12px}
.swt-msg:empty{display:none}
.swt-msg:not(:empty){padding:8px 12px}
.swt-preview{background:#d9ccb0;background-image:radial-gradient(rgba(0,0,0,.05) 1px,transparent 1px);background-size:6px 6px;padding:26px;border:1px solid var(--rule-2);border-top:0;border-radius:0 0 var(--radius) var(--radius);overflow:auto}
@media (max-width:600px){.swt-preview{padding:8px}}
.swt-preview .dd{margin:0 auto}
