/* PDF Mulching — shared site styles */
:root {
  --accent: 242 106 31; --accent-dark: 214 90 22; --accent-light: 255 133 51; --accent-ink: 255 255 255;
  --forest-950: 11 20 16; --forest-900: 17 35 27; --forest-800: 22 48 36;
  --forest-700: 29 64 48; --forest-600: 38 82 64; --forest-500: 53 106 82;
  --font-display: 'Oswald', 'Arial Narrow', sans-serif;
}
html { scroll-behavior: smooth; scroll-padding-top: 5rem; }
body { font-family: "Inter", system-ui, sans-serif; -webkit-font-smoothing: antialiased; background: #f4f1ea; color: #16191b; }
/* Ink color on accent-filled surfaces (keeps text legible when accent is light, e.g. yellow) */
body .bg-brand-orange { color: rgb(var(--accent-ink)); }
.label-caps { letter-spacing: 0.04em; text-transform: uppercase; font-weight: 600; }
.dot-grid { background-image: radial-gradient(circle at 20% 20%, rgba(255,255,255,0.9) 1px, transparent 1px); background-size: 24px 24px; }
::selection { background: #f26a1f; color: #fff; }

/* image fallback */
.img-fallback { background: linear-gradient(135deg, #163024, #0b1410); position: relative; }
.img-fallback::after {
  content: attr(data-label); position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,0.4); font-family: "Oswald", sans-serif; text-transform: uppercase; letter-spacing: 0.2em;
  font-size: 0.8rem; text-align: center; padding: 2rem;
}

/* scroll reveal */
[data-reveal] { opacity: 0; transform: translateY(24px); transition: opacity .7s cubic-bezier(.2,.7,.2,1), transform .7s cubic-bezier(.2,.7,.2,1); }
[data-reveal].in { opacity: 1; transform: none; }

/* toast */
#toast { transition: opacity .3s, transform .3s; }

/* form fields */
.field { width: 100%; background: #f4f1ea; border: 1px solid rgba(17,35,27,0.12); border-radius: 0.25rem; padding: 0.625rem 0.875rem; font-size: 1rem; color: #16191b; outline: none; transition: border-color .15s, box-shadow .15s; }
textarea.field { padding-top: 0.75rem; resize: vertical; }
.field:focus { border-color: #f26a1f; box-shadow: 0 0 0 3px rgba(242,106,31,0.2); }
.field.invalid { border-color: #d65a16; box-shadow: 0 0 0 3px rgba(214,90,22,0.18); }
.field::placeholder { color: #98a1a8; }

/* tweaks panel */
.twk-panel{position:fixed;right:16px;bottom:16px;z-index:2147483646;width:280px;max-height:calc(100vh - 32px);
  display:flex;flex-direction:column;background:rgba(250,249,247,.82);color:#29261b;
  -webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);
  border:.5px solid rgba(255,255,255,.6);border-radius:14px;
  box-shadow:0 1px 0 rgba(255,255,255,.5) inset,0 12px 40px rgba(0,0,0,.22);
  font:11.5px/1.4 ui-sans-serif,system-ui,-apple-system,sans-serif;overflow:hidden}
.twk-hd{display:flex;align-items:center;justify-content:space-between;padding:10px 8px 10px 14px;cursor:move;user-select:none}
.twk-hd b{font-size:12px;font-weight:600;letter-spacing:.01em}
.twk-x{appearance:none;border:0;background:transparent;color:rgba(41,38,27,.55);width:22px;height:22px;border-radius:6px;cursor:pointer;font-size:13px;line-height:1}
.twk-x:hover{background:rgba(0,0,0,.06);color:#29261b}
.twk-body{padding:2px 14px 14px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;min-height:0}
.twk-sect{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgba(41,38,27,.45)}
.twk-row{display:flex;flex-direction:column;gap:6px}
.twk-lbl{display:flex;justify-content:space-between;align-items:baseline;color:rgba(41,38,27,.78);font-weight:500}
.twk-hint{color:rgba(41,38,27,.42);font-weight:400}
.twk-seg{position:relative;display:flex;padding:2px;border-radius:8px;background:rgba(0,0,0,.06);user-select:none}
.twk-seg-thumb{position:absolute;top:2px;bottom:2px;border-radius:6px;background:rgba(255,255,255,.92);box-shadow:0 1px 2px rgba(0,0,0,.14);transition:left .16s cubic-bezier(.3,.7,.4,1),width .16s}
.twk-seg button{appearance:none;position:relative;z-index:1;flex:1;border:0;background:transparent;color:inherit;font:inherit;font-weight:500;min-height:24px;border-radius:6px;cursor:pointer;padding:4px 4px;line-height:1.2}
.twk-seg button[aria-checked="true"]{font-weight:600}
.twk-chips{display:flex;gap:6px}
.twk-chip{position:relative;appearance:none;flex:1;min-width:0;height:42px;padding:0;border:0;border-radius:7px;overflow:hidden;cursor:pointer;
  box-shadow:0 0 0 .5px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.06);transition:transform .12s cubic-bezier(.3,.7,.4,1),box-shadow .12s}
.twk-chip:hover{transform:translateY(-1px);box-shadow:0 0 0 .5px rgba(0,0,0,.18),0 4px 10px rgba(0,0,0,.12)}
.twk-chip[data-on="1"]{box-shadow:0 0 0 1.5px rgba(0,0,0,.85),0 2px 6px rgba(0,0,0,.15)}
.twk-chip svg{position:absolute;top:6px;left:6px;width:13px;height:13px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.3))}
.twk-chip small{position:absolute;left:0;right:0;bottom:3px;text-align:center;font-size:8.5px;font-weight:600;letter-spacing:.02em;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5);text-transform:uppercase}
