.so-archive{--so-green:#344b37;--so-gold:#ad9156;box-sizing:border-box;max-width:1100px;margin:3rem auto;padding:clamp(20px,4vw,52px);border:1px solid #ded7c5;border-radius:26px;background:linear-gradient(140deg,#fbfaf5,#f1f2e9);color:#29362b;font:400 18px/1.75 system-ui,sans-serif;text-align:left}.so-archive *{box-sizing:border-box}.so-archive h2,.so-archive h3{font-family:Cinzel,Georgia,serif;color:var(--so-green);line-height:1.3;letter-spacing:.025em}.so-archive h2{text-align:center;font-size:clamp(25px,3vw,38px);margin:0 0 14px}.so-archive>p{text-align:center}.so-archive h3{font-size:clamp(22px,2.5vw,30px);margin:0 0 6px}.so-archive h4{font:600 17px/1.4 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:var(--so-green);margin:24px 0 10px}.so-archive form{display:flex;align-items:end;flex-wrap:wrap;gap:16px;margin:28px 0}.so-archive label{flex:1 1 190px;font-size:14px;display:block}.so-archive input,.so-archive select{display:block;width:100%;min-height:48px!important;border:1px solid #bcbba9!important;border-radius:9px!important;background:#fffdf8!important;color:#29362b!important;padding:10px 14px!important;font:inherit}.so-archive button,.so-archive .so-button{display:inline-block;background:var(--so-green)!important;border:1px solid var(--so-green)!important;border-radius:9px!important;padding:12px 20px!important;color:white!important;text-decoration:none!important;font:500 16px/1.5 system-ui,sans-serif!important;min-height:48px}.so-entry{background:#fffefa;border:1px solid #e3dccb;border-radius:18px;padding:clamp(20px,3vw,36px);overflow-wrap:anywhere}.so-entry p{margin:0 0 14px}.so-date,.so-count{font-size:14px;color:#687064}.so-hint{font-size:15px;color:#596355}.so-nav{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.so-nav a{border:1px solid #a3ae9a;border-radius:8px;padding:10px 14px;color:var(--so-green);text-decoration:none}.so-archive a:focus-visible,.so-archive button:focus-visible,.so-archive input:focus-visible,.so-archive select:focus-visible{outline:3px solid var(--so-gold);outline-offset:3px}.so-count{text-align:center;margin-top:18px}@media(max-width:520px){.so-archive{margin:22px 0;border-radius:16px;font-size:16px}.so-archive form{display:block}.so-archive label{margin-bottom:12px}.so-archive button{width:100%}.so-nav a{font-size:14px;padding:9px}.so-entry{padding:18px}}
