.partition-guide{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(230px,.75fr);gap:clamp(18px,4vw,38px);align-items:center;margin:0 0 22px;padding:clamp(20px,4vw,34px);border:2px solid #b6cb92;border-radius:24px;background:linear-gradient(135deg,#fffdf2,#eef7dc);box-shadow:0 12px 30px #50693d18}.partition-guide h2{margin:5px 0 10px;color:#315439;font-size:clamp(1.25rem,3vw,1.75rem)}.partition-guide p{margin:8px 0}.partition-guide ol{display:flex;flex-wrap:wrap;gap:8px 18px;margin:14px 0 8px;padding:0;list-style:none}.partition-guide li{color:#3f593d;font-weight:700}.partition-guide li b{display:inline-grid;place-items:center;width:1.7em;height:1.7em;margin-right:4px;border-radius:50%;color:#fff;background:#d68042}.partition-guide-kicker{color:#728b45;font-size:.84rem;font-weight:900;letter-spacing:.08em}.partition-guide-note{color:#6c583a;font-size:.92rem;font-weight:700}.partition-example{margin:0;text-align:center}.partition-example-grid{display:grid;grid-template-columns:repeat(3,1fr);width:min(100%,280px);margin:auto;overflow:hidden;border:5px solid #55734d;border-radius:10px;background:#cfe5b6;box-shadow:0 8px #3f5d3830}.partition-example-cell{position:relative;display:grid;place-items:center;aspect-ratio:1.2;border:1px dashed #739067;color:#36523b;font-size:1.35rem;font-weight:900}.partition-example-cell:after{content:"🍃";position:absolute;right:4px;bottom:1px;opacity:.2;font-size:.8rem}.partition-example-corner{color:#fff;background:#d68042}.partition-example-number{font-size:2rem}.partition-example figcaption{margin-top:12px;color:#315439;font-weight:900}.partition-board{--partition-size: 5;position:relative;display:grid;grid-template-columns:repeat(var(--partition-size),minmax(42px,70px));align-content:center;justify-content:center;gap:0;width:min(100%,470px);min-height:0;margin-inline:auto;padding:clamp(22px,5vw,36px);overflow:hidden;border:7px solid #587449;border-radius:34px;background:radial-gradient(circle at 12% 18%,#b8d992 0 7px,transparent 8px),radial-gradient(circle at 84% 78%,#abc983 0 9px,transparent 10px),linear-gradient(145deg,#dff0bf,#cfe5ae);box-shadow:inset 0 0 0 8px #f7f3cf99,0 12px 28px #39562c24}.partition-board:before,.partition-board:after{position:absolute;z-index:0;pointer-events:none;font-size:clamp(1.2rem,5vw,2rem);filter:saturate(.8)}.partition-board:before{content:"🌲";top:1px;left:7px}.partition-board:after{content:"🌿";right:8px;bottom:2px}.partition-cell{position:relative;z-index:1;aspect-ratio:1;min-width:0;min-height:0;padding:0;overflow:hidden;border:1px dashed #78966b;border-radius:0;color:#294a35;background:radial-gradient(circle at 22% 27%,#ffffff54 0 3px,transparent 4px),linear-gradient(145deg,#d7ebbd,#c6e0a8);font-size:clamp(1rem,4vw,1.5rem);font-weight:900;box-shadow:none}.partition-cell:hover{z-index:2;background:#edf6cc}.partition-cell:after{content:"·";position:absolute;right:8%;bottom:2%;color:#63845a;opacity:.35}.partition-selected{z-index:3;outline:5px solid #e18a43;outline-offset:-6px;background:#fff0bd}.partition-filled{background:hsl(calc(86 + var(--region-tone) * 8) 42% calc(78% - var(--region-tone) * 1%))}.partition-filled.edge-top{border-top:5px solid #4e704a}.partition-filled.edge-bottom{border-bottom:5px solid #4e704a}.partition-filled.edge-left{border-left:5px solid #4e704a}.partition-filled.edge-right{border-right:5px solid #4e704a}.partition-clue{position:relative;z-index:2;text-shadow:0 1px #fff9}.partition-home .partition-clue{position:absolute;top:4px;left:7px;font-size:.72em}.partition-animal{position:relative;z-index:1;display:block;font-size:clamp(1.35rem,5vw,2.1rem);filter:drop-shadow(0 2px 1px #31552e40);transform:translateY(3%)}.partition-hint{animation:partition-pulse .7s ease-in-out 2}@keyframes partition-pulse{50%{outline:5px solid #d97d45;outline-offset:-6px;transform:scale(.92)}}@media(max-width:650px){.partition-guide{grid-template-columns:1fr}.partition-example-grid{width:min(78%,260px)}}@media(max-width:430px){.partition-board{grid-template-columns:repeat(var(--partition-size),minmax(0,1fr));width:100%;padding:18px;border-width:5px;border-radius:22px}.partition-cell{font-size:1rem}.partition-animal{font-size:1.45rem}}
