:root{--bg:#f1e7d2;--ink:#111;--muted:#5f574d;--btn:#ffd93b;--btn-ink:#111;--yellow:#ffd93b;--cream:#fcf9f3;--card-bg:#fcf9f3;--card-ink:#111;--card-edge:#111}*{box-sizing:border-box}html,body{touch-action:manipulation;-webkit-tap-highlight-color:transparent;margin:0}body{background:var(--bg);color:var(--ink);font-family:Zen Maru Gothic,Hiragino Maru Gothic ProN,BIZ UDPGothic,Yu Gothic UI,system-ui,sans-serif}.logo{display:block}.app{min-height:100svh;padding:max(10px,env(safe-area-inset-top)) 16px max(12px,env(safe-area-inset-bottom));flex-direction:column;align-items:center;display:flex}.app header{justify-content:center;align-items:center;width:100%;max-width:420px;padding:6px 6px 8px;display:flex}.app header h1{margin:0}.app header h1 .logo{width:auto;height:38px}.app main{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;width:100%;max-width:480px;display:flex}.card .logo.big{width:70%;max-width:300px;height:auto}.card.idle{padding:22px 24px 18px}.card .frame{border:2px dashed var(--ink);opacity:.3;pointer-events:none;z-index:0;border-radius:20px;position:absolute;inset:10px}.card .cover{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.card .kicker{letter-spacing:.22em;color:var(--muted);font-size:11px;font-weight:700}.card .tag{letter-spacing:.06em;margin:2px 0 0;font-size:13.5px;font-weight:700}.card .strip{align-items:center;gap:6px;margin-top:6px;display:flex}.card .strip i{background:var(--c);border:2px solid var(--ink);border-radius:50%;width:13px;height:13px;display:block}.card .strip .count{border:2px solid var(--ink);border-radius:999px;margin-left:6px;padding:2px 9px;font-size:11px;font-weight:700;line-height:1.3}.actions{flex-direction:column;justify-content:center;align-items:center;gap:14px;width:100%;display:flex}.actions button{appearance:none;border:3px solid var(--ink);font:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:var(--btn);color:var(--btn-ink);cursor:pointer;letter-spacing:.12em;--sh:6px;box-shadow:var(--sh) var(--sh) 0 var(--ink);border-radius:999px;padding:13px 46px;font-size:18px;font-weight:700;transition:transform 80ms,box-shadow 80ms}.actions button:active{box-shadow:2px 2px 0 var(--ink);transform:translate(4px,4px)}.actions .row{grid-template-columns:repeat(3,1fr);gap:12px;width:100%;max-width:343px;display:grid}.actions .invisible{visibility:hidden}.actions button.ghost{--sh:4px;background:var(--cream);color:var(--ink);letter-spacing:.04em;padding:9px 6px;font-size:13.5px;font-weight:700}.actions button.ghost:active{box-shadow:1px 1px 0 var(--ink)}.actions button.keep{display:grid}.actions button.keep .lab{white-space:nowrap;grid-area:1/1}.actions button.keep:not(.kept) .lab:last-child,.actions button.keep.kept .lab:first-child{visibility:hidden}.actions button.kept{background:color-mix(in srgb, var(--card-edge) 22%, var(--cream));color:var(--ink)}.hint{color:var(--muted);text-align:center;white-space:pre-line;min-height:1.5em;margin:0;font-size:13.5px;font-weight:700;line-height:1.6}.err{color:#b3473d;text-align:center;font-size:13px}.links{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:baseline;row-gap:4px;margin:14px 0 0;padding:0;font-size:12.5px;font-weight:700;line-height:1.6;display:flex}.links a{color:inherit;white-space:nowrap;align-items:baseline;text-decoration:none;display:inline-flex}.links a .t{text-underline-offset:3px;text-decoration:underline}.links a:not(:last-child):after{content:"・";margin:0 7px}.links .cnt{text-align:left;min-width:2.6em;display:inline-block}@media (prefers-reduced-motion:no-preference){.card.pop{animation:.3s cubic-bezier(.2,.9,.3,1.2) pop}.actions button.tap{animation:.22s ease-out tap}@keyframes tap{0%{box-shadow:2px 2px 0 var(--ink);transform:translate(4px,4px)}60%{box-shadow:calc(var(--sh) + 1px) calc(var(--sh) + 1px) 0 var(--ink);transform:translate(-1px,-1px)}to{box-shadow:var(--sh) var(--sh) 0 var(--ink);transform:none}}@keyframes pop{0%{box-shadow:2px 2px 0 var(--card-edge);transform:translate(6px,6px)}to{box-shadow:8px 8px 0 var(--card-edge);transform:none}}}.page{padding:24px 18px 64px;font-weight:500;line-height:1.9}.page header{justify-content:space-between;align-items:center;max-width:560px;margin:0 auto 28px;display:flex}.page header a{color:var(--ink)}.page header .logo{height:34px;display:block}.page header nav a{color:var(--muted);text-underline-offset:3px;font-size:13px;font-weight:700;text-decoration:underline}.page h1{margin:0 0 6px;font-size:clamp(24px,6vw,32px);font-weight:700;line-height:1.4}.page .lead{color:var(--muted);margin:0 0 28px;font-size:14px;font-weight:700}.page .cta{background:var(--yellow);color:var(--ink);border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);border-radius:999px;margin-top:18px;padding:12px 34px;font-size:16px;font-weight:700;text-decoration:none;display:inline-block}.page .cta:active{box-shadow:2px 2px 0 var(--ink);transform:translate(3px,3px)}.page footer{max-width:560px;color:var(--muted);margin:48px auto 0;font-size:12px;font-weight:700;line-height:1.8}.page footer span{margin:0 6px}.page footer a{color:inherit;text-underline-offset:3px;text-decoration:underline}.all footer{max-width:760px}.notfound{text-align:center;padding-top:80px;font-weight:700}.story article{max-width:560px;margin:0 auto}.story h2{border-left:6px solid var(--yellow);margin:40px 0 10px;padding-left:12px;font-size:19px;font-weight:700}.story p{margin:0 0 14px;font-size:15.5px}.story ol,.story ul{margin:0 0 14px;padding-left:1.3em}.story li{margin:4px 0;font-size:15.5px}.story .note{color:var(--muted);font-size:13px;font-weight:700}.page .example{max-width:420px;margin:18px auto 22px}.page .example .card .text{font-size:clamp(19px,5vw,24px)}.page table{border-collapse:collapse;width:100%;margin:8px 0 18px;font-size:14px;line-height:1.6}.page th,.page td{border:2px solid var(--ink);text-align:left;vertical-align:top;background:var(--cream);padding:8px 10px}.page th{background:var(--yellow);white-space:nowrap}.page td:first-child{width:34%;font-weight:700}.page .tablewrap{overflow-x:auto}.partners article{max-width:560px;margin:0 auto}.partners h2{border-left:6px solid var(--yellow);margin:40px 0 10px;padding-left:12px;font-size:19px;font-weight:700}.partners p,.partners li{margin:0 0 14px;font-size:15.5px}.partners ul{margin:0 0 14px;padding-left:1.3em}.partners li{margin:4px 0}.partners .note{color:var(--muted);font-size:13px;font-weight:700}.all{padding:24px 16px 64px;line-height:1.7}.all header,.all main{max-width:760px}.all main{margin:0 auto}.all h1{margin:0 0 4px;font-size:clamp(22px,6vw,28px)}.all .lead{margin:0 0 22px;font-size:13.5px}.all .grid{grid-template-columns:1fr 1fr;gap:14px;padding-right:4px;display:grid}.all a.c{zoom:.5;color:var(--ink);-webkit-user-select:none;user-select:none;text-decoration:none;display:block}.all a.c .card{transition:transform 80ms,box-shadow 80ms}.all a.c:active .card{box-shadow:3px 3px 0 var(--card-edge);transform:translate(5px,5px)}.all .card .text{font-size:22.5px}.all .cta{margin-top:34px}.kept .item{flex-direction:column;align-items:center;gap:4px;display:flex}.kept .remove{appearance:none;font:inherit;color:var(--muted);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:4px 10px;font-size:12px;font-weight:700;text-decoration:underline}.kept .empty{margin:0 0 14px;font-size:15px}
