:root{--ink:#342b22;--muted:#73695b;--paper:#faf6ec;--green:#344f3e;--gold:#bd924b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Georgia,serif}button,input{font:inherit}button,a{touch-action:manipulation}a{color:inherit}button{cursor:pointer}header{max-width:1220px;margin:auto;padding:25px 35px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ded3bf}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-size:30px;font-weight:bold}.brand-mark{display:grid;place-items:center;background:var(--green);color:#efdca7;border:2px solid var(--gold);border-radius:15px;width:49px;height:53px}.brand small{display:block;font:11px/1.4 system-ui;letter-spacing:.8px;font-weight:400}nav{display:flex;gap:25px;align-items:center;font:14px system-ui}nav a{text-decoration:none}.quiet{border:0;background:none;color:var(--ink)}main{max-width:1150px;margin:auto;padding:0 28px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;padding:70px 0 85px}.eyebrow{font:11px/1.5 system-ui;letter-spacing:2px;font-weight:700;color:#827044}h1{font-size:clamp(35px,4vw,55px);line-height:1.15;font-weight:500;margin:20px 0}h2{font-size:31px;line-height:1.25;font-weight:500}.hero p:not(.eyebrow){max-width:460px;color:var(--muted)}figure{margin:0;transform:rotate(1deg)}figure img{width:100%;display:block;border:8px solid #ebdfc5;outline:1px solid #beaa82;border-radius:6px;box-shadow:0 12px 28px #503e2218}figcaption{text-align:center;color:var(--muted);font-size:14px;font-style:italic;margin-top:16px}.primary,.secondary{display:inline-block;text-decoration:none;border-radius:5px;border:1px solid var(--green);padding:13px 20px;font:15px/1.4 system-ui;cursor:pointer}.primary{color:#fff9ed;background:var(--green)}.primary:hover{background:#233d2d}.secondary{background:transparent;color:var(--green)}.section-heading{text-align:center;max-width:750px;margin:0 auto 35px}.game-card{display:grid;grid-template-columns:1fr 1fr;background:#fffdf7;border:1px solid #ddd0b5;border-radius:12px;overflow:hidden;box-shadow:0 10px 25px #4c37120a}.game-art{position:relative;background:#b7b598}.game-art img{width:100%;height:100%;object-fit:cover;display:block}.game-art span{position:absolute;left:22px;bottom:22px;padding:5px 13px;background:#f4e9d0;border-radius:3px;font:12px system-ui}.game-description{padding:32px 35px}.game-description h2{font-size:36px;margin:13px 0}.game-description p{color:var(--muted)}.features{list-style:none;padding:0;font:14px/2 system-ui}.features li:before{content:'✧';margin-right:10px;color:#8c7445}.more-games{text-align:center;color:var(--muted);font-size:14px;margin:25px 0}.access{padding:65px 0}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:870px;margin:auto}.access-grid article{background:#f2ecdf;border:1px solid #dbcfb7;padding:30px;border-radius:10px}.access-grid .resident{background:#fffdf7;border:2px solid #b4975d}.tag{font:11px system-ui;text-transform:uppercase;letter-spacing:1px;color:#827044}h3{font-size:30px;margin:10px 0}.price{font-size:33px;margin:8px 0 18px}.price span{display:block;font:13px system-ui;color:var(--muted)}.access-grid ul{padding-left:19px;font:14px/2 system-ui}.detail{font-size:14px;color:var(--muted);min-height:75px}.how{padding:30px 0 60px;border-top:1px solid #ddd0b5}.how h2{text-align:center}.how>div{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.how p{font-size:15px;color:var(--muted)}.how b{display:block;font-size:27px;color:var(--gold)}.how strong{display:block;font-size:19px;color:var(--ink);margin:8px 0}footer{border-top:1px solid #ddd0b5;padding:24px 35px;display:flex;justify-content:space-between;font:12px system-ui;color:var(--muted)}dialog{border:1px solid #a78b55;border-radius:12px;background:#fff9eb;color:var(--ink);padding:35px;width:min(520px,94vw);max-height:92dvh;overflow:auto}dialog::backdrop{background:#1e251dcc;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:12px;top:6px;font-size:28px;border:0;background:none}label{display:block;font:14px/1.5 system-ui;margin:14px 0}input:not([type=checkbox]){width:100%;padding:10px;border:1px solid #bca882;border-radius:4px;background:#fffdf6}form .primary{width:100%;margin-top:10px}.status{font:14px/1.5 system-ui;color:#694927}.text-button{background:none;border:0;text-decoration:underline;padding:8px;color:#5f684b}button:disabled{opacity:.6;cursor:wait}:focus-visible{outline:3px solid #b98932;outline-offset:3px}[hidden]{display:none!important}
@media(max-width:720px){header{padding:16px 20px}.brand{font-size:25px}nav{gap:14px}nav a:first-child{display:none}main{padding:0 20px}.hero{grid-template-columns:1fr;gap:30px;padding:35px 0 55px}.hero figure{max-width:500px}.game-card{grid-template-columns:1fr}.game-art{max-height:260px}.game-description{padding:25px}.access-grid{grid-template-columns:1fr}.detail{min-height:0}.how>div{grid-template-columns:1fr;gap:5px}.how p{margin:12px 0}footer{gap:15px;flex-wrap:wrap}}
#usersTable{border-collapse:collapse;width:100%;font:14px/1.5 system-ui;margin:20px 0}#usersTable td,#usersTable th{text-align:left;padding:12px;border-bottom:1px solid #d5c8ae}#usersTable button{padding:7px;margin:3px;background:#efe0bd;border:1px solid #a98c56;border-radius:4px}#adminCreate{max-width:550px}
