:root{--bg: #f5f6f2;--fg: #1d2420;--muted: #56605a;--line: #d9ded7;--card: #ffffff;--soft: #eaefe9;--accent: #17694a;--accent-bg: #17694a;--on-accent: #ffffff;--accent-soft: #e1efe7;--warn: #9a3b12;--warn-soft: #fbece4;--best: #fff3c4;--tile-face: #fffaf0;--tile-edge: #c9c2ae;--tile-back: #17694a;--t-man: #b3261e;--t-pin: #1d4f91;--t-sou: #1e6b34;--t-zi: #1d2420;--t-chun: #b3261e;--t-hatsu: #1e6b34;--t-haku: #7a8a9a;--radius: 12px;--shadow: 0 1px 2px rgba(20, 40, 30, .06), 0 2px 8px rgba(20, 40, 30, .05)}@media(prefers-color-scheme:dark){:root{--bg: #121614;--fg: #e8eee9;--muted: #a9b5ad;--line: #2e3833;--card: #1a201d;--soft: #222a26;--accent: #6fcf9f;--accent-bg: #6fcf9f;--on-accent: #0f1a14;--accent-soft: #1d3329;--warn: #ffab85;--warn-soft: #3a241b;--best: #3d3618;--tile-face: #f3eedf;--tile-edge: #8f8a7b;--tile-back: #2f8a62;--shadow: none}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:system-ui,-apple-system,Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic UI,sans-serif;line-height:1.8;font-size:16px;-webkit-text-size-adjust:100%}a{color:var(--accent);text-underline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,label:focus-within{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}.wrap{max-width:800px;margin:0 auto;padding:0 16px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}header.site{background:linear-gradient(180deg,#125c42,#0b4431);border-bottom:3px solid #c9a24a}header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2px 16px;padding-top:10px;padding-bottom:6px}.logo{display:inline-flex;align-items:center;gap:14px;color:#fff;text-decoration:none;min-height:44px}.logo-mark{display:inline-flex;align-items:flex-end;flex:0 0 auto;padding:2px 4px 0 8px}.logo-mark .tile{--tw: 25px;position:relative;margin-left:-7px;border-color:#f1eee2;border-bottom-color:#c9a24a;box-shadow:0 2px 4px #0006}.logo-mark .tile:nth-child(1){transform:rotate(-12deg) translateY(2px);margin-left:0}.logo-mark .tile:nth-child(2){transform:translateY(-2px);z-index:1}.logo-mark .tile:nth-child(3){transform:rotate(12deg) translateY(2px);z-index:2}.logo-text{display:flex;flex-direction:column;line-height:1.25}.logo-name{font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,"Noto Serif JP",serif;font-size:1.45rem;font-weight:800;letter-spacing:.08em}.logo-tag{font-size:.74rem;color:#cfe6da;letter-spacing:.02em}nav.global ul{list-style:none;margin:0;padding:0;display:flex;gap:2px}nav.global a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;color:#eef6f1;text-decoration:none;font-size:.9rem;font-weight:600;border-bottom:3px solid transparent}nav.global a:hover{color:#fff;border-bottom-color:#ffffff73}nav.global a[aria-current]{color:#fff;border-bottom-color:#e6c469}header.site a:focus-visible{outline-color:#fff}@media(max-width:560px){nav.global{width:100%;margin:0 -12px}nav.global a{font-size:.85rem}}nav.crumbs{font-size:.82rem;color:var(--muted);padding-top:12px}nav.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center}nav.crumbs li{display:inline-flex;align-items:center}nav.crumbs li+li:before{content:"＞";margin:0 6px;color:var(--muted)}nav.crumbs a{color:var(--muted);display:inline-block;padding:6px 0}nav.crumbs a:hover{color:var(--accent)}nav.crumbs [aria-current]{color:var(--fg)}main{padding:16px 0 48px}h1{font-size:1.5rem;line-height:1.45;margin:8px 0 10px}h2{font-size:1.2rem;line-height:1.5;margin:40px 0 14px;padding-left:12px;border-left:5px solid var(--accent-bg)}h3{font-size:1.05rem;margin:28px 0 10px}main p{max-width:40em}.lead{margin-top:0}.note{background:var(--soft);border-radius:10px;padding:12px 14px;font-size:.88rem;color:var(--muted);max-width:none!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 16px;border-radius:99px;border:1.5px solid var(--accent);color:var(--accent);background:var(--card);font:inherit;font-weight:700;font-size:.9rem;text-decoration:none;white-space:nowrap;cursor:pointer}.btn:hover,.btn-primary{background:var(--accent-bg);color:var(--on-accent);border-color:var(--accent-bg)}.btn-sub{border-color:var(--line);color:var(--fg)}.btn:disabled{opacity:.45;cursor:default}.links{display:flex;flex-wrap:wrap;gap:8px}table{border-collapse:collapse;width:100%;font-size:.92rem;background:var(--card)}th,td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:middle}th{background:var(--soft);white-space:nowrap;font-size:.85rem}.table-scroll{overflow-x:auto}.tile{--tw: 34px;display:inline-flex;align-items:center;justify-content:center;width:var(--tw);height:calc(var(--tw) * 1.36);flex:0 0 auto;box-sizing:content-box;background:#fbfaf5 url(/tiles/front.svg) center / 100% 100% no-repeat;border:1px solid #c9c6ba;border-bottom:4px solid #1f7a5c;border-radius:5px;user-select:none;box-shadow:0 1px 2px #00000047}.tile img{display:block;width:86%;height:auto;pointer-events:none}.tile-sm{--tw: 26px;border-bottom-width:3px;border-radius:4px}.tile-xs{--tw: 22px;border-bottom-width:2px;border-radius:3px}.tiles{display:flex;flex-wrap:wrap;gap:3px;align-items:flex-end}.palette{display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.pal-row{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:4px}.pal-btn{position:relative;display:flex;align-items:center;justify-content:center;min-height:50px;padding:2px 0;margin:0;border:0;background:none;cursor:pointer;border-radius:6px;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.pal-btn .tile{--tw: min(36px, calc((100vw - 32px - 20px - 32px) / 9 - 2px))}.pal-btn:hover .tile{border-color:var(--accent)}.pal-btn:active .tile{transform:translateY(2px)}.pal-btn:disabled{cursor:default}.pal-btn:disabled .tile{opacity:.3}.pal-left{position:absolute;top:0;right:0;font-size:.62rem;line-height:1;color:var(--muted);font-weight:700}.pal-red-label{display:inline-flex;align-items:center;justify-content:center;width:100%;height:44px;border-radius:6px;border:1.5px dashed #d4483b;color:#b3261e;font-weight:800;font-size:.8rem;background:var(--card)}@media(prefers-color-scheme:dark){.pal-red-label{color:#ffab9e;border-color:#ffab9e}}.pal-red[aria-pressed=true] .pal-red-label{background:#d4483b;color:#fff;border-style:solid}.tool{display:flex;flex-direction:column;gap:14px}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}.panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px;font-weight:800}.panel-head .count{font-size:.85rem;color:var(--muted);font-weight:700}.slot{display:flex;flex-wrap:wrap;gap:3px;min-height:46px;align-items:flex-end}.slot button{padding:0;margin:0;border:0;background:none;cursor:pointer;border-radius:5px}.slot button:hover .tile{border-color:var(--warn)}.slot .placeholder{color:var(--muted);font-size:.88rem;align-self:center}.hint{font-size:.82rem;color:var(--muted);margin:6px 0 0}.error{background:var(--warn-soft);color:var(--warn);border-radius:10px;padding:10px 12px;font-weight:700;font-size:.92rem}.error:empty{display:none}.row-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.text-input{display:flex;gap:8px;margin-top:10px}.text-input input{flex:1 1 auto;min-width:0;min-height:44px;padding:0 12px;font:inherit;font-size:16px;border:1.5px solid var(--line);border-radius:10px;background:var(--card);color:var(--fg)}.slot-row{container-type:inline-size}.slot-row .slot{gap:2px;flex-wrap:nowrap}.slot-row .slot .tile{--tw: clamp(17px, calc((100cqw - 56px) / 14), 40px)}.fields{display:grid;gap:12px}.field-label{display:block;font-size:.85rem;font-weight:800;margin-bottom:4px}.seg{display:flex;flex-wrap:wrap;gap:6px}.seg label{position:relative;cursor:pointer}.seg input{position:absolute;opacity:0;width:1px;height:1px}.seg span{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 12px;border:1.5px solid var(--line);border-radius:10px;background:var(--card);font-weight:700;font-size:.9rem}.seg input:checked+span{border-color:var(--accent-bg);background:var(--accent-bg);color:var(--on-accent)}.seg input:focus-visible+span{outline:3px solid var(--accent);outline-offset:2px}.seg input:disabled+span{opacity:.4;cursor:default}.num{display:inline-flex;align-items:center;gap:6px}.num input{width:4.5em;min-height:44px;padding:0 8px;font:inherit;font-size:16px;text-align:center;border:1.5px solid var(--line);border-radius:10px;background:var(--card);color:var(--fg)}.ad-slot{display:none;margin:150px 0 0;min-height:280px}.cards{list-style:none;padding:0;margin:0;display:grid;gap:12px}@media(min-width:640px){.cards{grid-template-columns:1fr 1fr}}.card{position:relative;display:flex;flex-direction:column;gap:8px;height:100%;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.card:hover{border-color:var(--accent)}.card a.card-link{color:var(--fg);text-decoration:none;font-weight:800;font-size:1.1rem}.card a.card-link:after{content:"";position:absolute;inset:0;border-radius:var(--radius)}.card p{margin:0;font-size:.92rem;color:var(--muted)}.card .go{color:var(--accent);font-weight:700;font-size:.9rem}footer.site{background:var(--soft);border-top:1px solid var(--line);padding:24px 0 40px;font-size:.85rem;color:var(--muted)}footer.site .foot-name{font-weight:800;color:var(--fg);font-size:1rem}footer.site nav ul{list-style:none;margin:8px 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:0 4px}footer.site nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 10px 0 0;color:var(--fg)}footer.site p{margin:0 0 6px}
