/* Explore surface: warm paper, botanical accent, editorial titles. No external fonts. */
:root{--paper:#f7f5f0;--surface:#fffefb;--ink:#29352f;--muted:#626c62;--line:#d8dcd2;--accent:#425b4b;--danger:#8b342b;font-family:"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.6}
*{box-sizing:border-box}body{margin:0}a{color:var(--accent);text-underline-offset:5px}a:hover{color:#182e21}button,a,input,textarea,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b47d36;outline-offset:4px}header{max-width:1440px;margin:auto;padding:28px 48px;display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid var(--line)}.brand{font:24px Georgia,serif;text-decoration:none;color:var(--ink)}.brand span{display:block;font:12px "Segoe UI",sans-serif;letter-spacing:.08em;margin-top:9px;color:var(--muted)}nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap}nav a{padding:10px 0;text-decoration:none}nav form{margin:0}.langswitch{display:flex;gap:14px;align-items:center;margin:0}.langswitch button.lang{background:none;border:none;padding:4px 0;min-height:0;font-size:13px;color:var(--muted);text-decoration:underline;text-underline-offset:4px;cursor:pointer}.langswitch button.lang:hover{color:var(--ink)}.langswitch button.lang[aria-current]{color:var(--ink);font-weight:650;text-decoration:none}main{max-width:1440px;margin:auto;padding:48px}footer{max-width:1344px;border-top:1px solid var(--line);margin:48px auto 0;padding:28px 0;color:var(--muted);font-size:13px}h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.15;letter-spacing:-.025em}h1{font-size:clamp(34px,4.4vw,62px);margin:8px 0 20px}h2{font-size:28px}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:650;color:var(--accent);margin:0 0 18px}.muted{color:var(--muted);font-size:14px}.heading{display:flex;justify-content:space-between;align-items:center;gap:30px}.heading p:not(.eyebrow){color:var(--muted)}button,.button{border:1px solid var(--accent);border-radius:4px;background:var(--accent);color:white;padding:12px 20px;min-height:44px;font:inherit;cursor:pointer;display:inline-block;text-decoration:none;line-height:1.3}button:hover,.button:hover{background:#2f4638;color:white}button:disabled{opacity:.6;cursor:wait}button.quiet{background:none;border-color:var(--line);color:var(--ink);padding:10px 14px}.danger{background:var(--danger);border-color:var(--danger);margin-top:16px}.toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:32px 0}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}.gallery article a{text-decoration:none}.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--line);border-radius:3px}.gallery article:nth-child(4n+1) img{aspect-ratio:4/3}.caption{padding:14px 2px}.caption h2{font-size:23px;margin:0 0 6px;overflow-wrap:anywhere}.caption span{font-size:13px;color:var(--muted)}.empty{grid-column:1/-1;padding:65px 0;border-bottom:1px solid var(--line);max-width:700px}.pagination{justify-content:center;margin-top:40px}.auth{max-width:540px;margin:20px auto 60px}.auth h1{font-size:clamp(36px,5vw,58px)}form p{margin:16px 0}label{display:block;font-size:14px;font-weight:600;margin:18px 0 8px}input,textarea,select{font:inherit;display:block;width:100%;max-width:100%;background:var(--surface);color:var(--ink);border:1px solid #aeb8ad;border-radius:3px;padding:12px;margin:8px 0 0}input[type=file]{font-size:14px;padding:16px}input[type=checkbox]{display:inline;width:auto}form .helptext{display:block;font-size:13px;color:var(--muted)}form ul{font-size:13px;padding-left:20px}.error,.errorlist{color:var(--danger)}.notice{padding:20px 24px;background:#e8ede4;border:1px solid var(--line);margin:24px 0;border-radius:4px}.notice input{width:100%}.list,.comments{list-style:none;padding:0}.list li,.comments li{border-bottom:1px solid var(--line);padding:18px 0}.list form{display:inline-block;margin-left:20px}.detail{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:48px;margin-top:30px}.detail h1{font-size:38px;overflow-wrap:anywhere}.viewer{background:#e6e9e2;align-self:start;display:flex;align-items:center;justify-content:center;min-height:360px}.viewer img,.viewer video{display:block;width:100%;max-height:80vh;object-fit:contain}.comments p{overflow-wrap:anywhere}.comments time{display:block;color:var(--muted);font-size:12px}.comments h2{font-size:24px}progress{width:100%;accent-color:var(--accent)}.slideshow{background:#1f2923;color:#f7f5f0;padding:20px}.slideshow:fullscreen{display:flex;flex-direction:column;justify-content:center}.slide-stage{height:65vh;display:flex;align-items:center;justify-content:center}.slide-stage img,.slide-stage video{width:100%;height:100%;object-fit:contain}.slide-controls{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:20px}.slide-controls label{display:flex;gap:12px;align-items:center;margin:0}.slide-controls select{width:auto;margin:0}.slideshow a{color:#eef3e8}.slideshow p{text-align:center}.slideshow #slide-status{font-size:13px;color:#d0d9ce}[hidden]{display:none!important}
@media(max-width:1000px){header,main{padding:28px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.detail{grid-template-columns:1fr;gap:28px}.viewer{min-height:200px}footer{margin:30px 28px 0}.heading{align-items:flex-start}.heading .button{white-space:nowrap}.brand{font-size:22px}nav{gap:14px}}
@media(max-width:600px){header{padding:22px 20px;align-items:flex-start;flex-direction:column;gap:18px}header nav{font-size:14px;gap:18px}main{padding:32px 20px}.heading{display:block}.heading .button{margin-top:14px}.toolbar{align-items:flex-start;flex-direction:column;gap:6px;margin:28px 0}.toolbar nav{gap:20px;font-size:14px}.gallery{gap:22px 12px}.caption h2{font-size:19px}.caption span{font-size:12px}.auth{margin:4px 0}.detail h1{font-size:32px}footer{margin:30px 20px 0}.slide-stage{height:48vh}.slideshow{padding:12px;margin:0 -8px}.slide-controls{gap:8px}.slide-controls button{padding:10px 13px}.slide-controls label{font-size:13px}.slide-controls select{padding:8px}.notice{padding:16px}.pagination{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
