/* Native Theme Studio colors; a calm planning panel, not another site header. */
.spi-outing { --outing-ink:var(--luperiq-text,#173f49); --outing-paper:var(--luperiq-surface,#fffdf7); --outing-accent:color-mix(in srgb,var(--luperiq-primary,#096c72) 75%,var(--outing-ink)); --outing-line:color-mix(in srgb,var(--outing-ink) 22%,transparent); color:var(--outing-ink); margin:3rem 0; scroll-margin-top:6rem; }
.spi-outing * { box-sizing:border-box; }
.spi-outing [hidden] { display:none!important; }
.spi-outing :is(h2,h3,p,small,a) { overflow-wrap:anywhere; }
.spi-outing h2 { font:700 clamp(1.8rem,4vw,2.8rem)/1.15 Georgia,serif; margin:.5rem 0 1rem; }
.spi-outing h3 { font:700 1.3rem/1.3 Georgia,serif; margin:0 0 .8rem; }
.spi-outing p { line-height:1.7; }
.spi-outing :is(a,a:visited) { color:var(--outing-accent); text-underline-offset:.25em; }
.spi-outing-heading { max-width:48rem; border-top:1px solid var(--outing-line); padding-top:2rem; }
.spi-outing-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--outing-line); border:1px solid var(--outing-line); border-radius:1rem; overflow:hidden; margin:1.6rem 0; }
.spi-outing-facts article { padding:clamp(1rem,3vw,1.6rem); background:var(--outing-paper); }
.spi-outing-facts article > :last-child { margin-bottom:0; }
.spi-outing form { padding:clamp(1rem,3vw,2rem); border-radius:1rem; background:color-mix(in srgb,var(--outing-accent) 6%,var(--outing-paper)); border:1px solid var(--outing-line); }
.spi-outing-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-bottom:1.4rem; }
.spi-outing label { display:grid; gap:.5rem; font-weight:700; }
.spi-outing :is(input:not([type=radio]),select,button) { min-width:0; max-width:100%; min-height:46px; border:1px solid var(--outing-line); border-radius:.6rem; padding:.7rem; color:var(--outing-ink); background:var(--outing-paper); font:inherit; }
.spi-outing :is(a,button,input,select):focus-visible { outline:3px solid #b56e14; outline-offset:4px; }
.spi-outing-weather { border-left:3px solid var(--outing-accent); padding:.5rem 1.2rem; margin:1rem 0 2rem; }
.spi-outing-weather [data-outing-weather] { white-space:pre-line; }
.spi-outing-places { border:0; padding:0; margin:1.5rem 0; min-width:0; }
.spi-outing-places legend { font:700 1.4rem Georgia,serif; margin-bottom:1rem; }
.spi-outing label.spi-outing-place { display:flex; align-items:flex-start; gap:1rem; padding:1.2rem; border:1px solid var(--outing-line); border-radius:.8rem; background:var(--outing-paper); cursor:pointer; }
.spi-outing-place:has(input:checked) { border-color:var(--outing-accent); box-shadow:inset 0 0 0 1px var(--outing-accent); }
.spi-outing-place input { width:1.3rem; height:1.3rem; flex-shrink:0; accent-color:var(--outing-accent); }
.spi-outing-place :is(strong,small,a) { display:block; margin-bottom:.7rem; }
.spi-outing-place small { line-height:1.6; font-size:.92rem; font-weight:400; }
.spi-outing :is(a,button).spi-outing-button { display:inline-flex; min-height:48px; align-items:center; margin:1rem 1rem .5rem 0; padding:.85rem 1.2rem; background:var(--outing-accent); color:var(--outing-paper); border:0; border-radius:.65rem; font-weight:750; text-decoration:none; cursor:pointer; }
.spi-topic-page .spi-article :is(h2,h3,h4) { font-family:Georgia,serif; line-height:1.25; margin:1.8rem 0 .7rem; }
.spi-topic-page .spi-article h4 { font-size:clamp(1.3rem,2vw,1.65rem); }
.spi-outing-save-note { max-width:45rem; font-size:.88rem; }
.spi-outing [data-finder-result] { padding:2rem 0; border-bottom:1px solid var(--outing-line); margin-bottom:2rem; }
.spi-conditions-toggle { background:var(--luperiq-surface,#fffdf7); border-bottom:1px solid color-mix(in srgb,var(--luperiq-text,#173f49) 15%,transparent); }
.spi-conditions-toggle > summary { color:var(--luperiq-text,#173f49); padding:.8rem max(1rem,calc((100% - 1320px)/2)); cursor:pointer; font-weight:700; min-height:44px; }
.spi-conditions-toggle > summary:focus-visible { outline:3px solid #b56e14; outline-offset:-3px; }
@media(max-width:720px) { .spi-outing-facts,.spi-outing-fields { grid-template-columns:1fr; } .spi-outing { scroll-margin-top:2rem; } }
@media(prefers-reduced-motion:reduce) { .spi-outing * { scroll-behavior:auto; } }
