@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Serif+SC:wght@500;600;700&display=swap";.hero-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.hero-egg{flex:none;display:block;margin:-18px 0;padding:4px;line-height:0}.hero-egg img{display:block;width:84px;height:116px;image-rendering:pixelated}.hero-egg:hover img,.hero-egg:focus-visible img{animation:hero-egg-shake .4s steps(1,end) infinite}@keyframes hero-egg-shake{0%{transform:translate(0)}25%{transform:translate(-2px)}50%{transform:translate(0)}75%{transform:translate(2px)}}@media(max-width:520px){.hero-title{position:relative}.hero-egg{position:absolute;right:0;bottom:100%;margin:0 0 -12px;padding:0}.hero-egg img{width:42px;height:58px}}@media(prefers-reduced-motion:reduce){.hero-egg img{animation:none!important}}:root{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#23332d;background:#f4f2ec;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;font-weight:400;--ink: #23332d;--muted: #7c847d;--line: #e7e4db;--paper: #fffefa;--forest: #1e3d32;--forest-deep: #173329;--gold: #bb9861}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background:radial-gradient(ellipse at 9% 16%,rgba(221,214,195,.25),transparent 29rem),#f4f2ec}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid rgba(187,152,97,.48);outline-offset:3px}.app-shell{width:min(1120px,calc(100% - 64px));min-height:100vh;margin:0 auto;display:flex;flex-direction:column}.topbar{height:92px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(35,51,45,.09)}.brand{color:var(--ink);display:inline-flex;align-items:center;gap:12px;text-decoration:none}.brand-mark{width:31px;height:31px;display:flex;align-items:end;gap:3px;padding:4px;border:1px solid rgba(35,51,45,.2);border-radius:9px;transform:rotate(-3deg)}.brand-mark i{display:block;width:6px;border-radius:5px 5px 2px 2px}.brand-mark i:nth-child(1){height:13px;background:#64806d}.brand-mark i:nth-child(2){height:19px;background:#c39c62}.brand-mark i:nth-child(3){height:10px;background:#9b6657}.brand-name{font-weight:700;letter-spacing:.035em;font-size:15px}.brand-name span{color:#93958d;font-size:9px;letter-spacing:.18em;margin-left:9px;font-weight:600}.connection-status{display:inline-flex;align-items:center;gap:8px;color:#92948e;font-size:12px}.connection-dot{width:7px;height:7px;border-radius:50%;background:#c9a66f}.connection-status.online .connection-dot{background:#5a8c6b;box-shadow:0 0 0 3px #5a8c6b1f}.eyebrow{display:inline-flex;align-items:center;gap:11px;color:#777e74;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.eyebrow-line{width:26px;height:1px;background:var(--gold)}.field-label{margin-bottom:8px;color:#626c63;font-size:11px;font-weight:700;letter-spacing:.04em}.field-label-spaced{margin-top:20px}.text-input{width:100%;height:46px;border:1px solid #e5e3da;border-radius:8px;padding:0 14px;background:#fff;color:var(--ink);font-size:13px;transition:border-color .15s ease,box-shadow .15s ease}.text-input::placeholder{color:#b3b4ac}.text-input:focus{border-color:#9eab9f;box-shadow:0 0 0 3px #4e735b14;outline:none}.primary-button{width:100%;min-height:47px;display:flex;align-items:center;justify-content:center;gap:11px;margin-top:23px;border:0;border-radius:8px;background:var(--forest);color:#fffefa;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:.04em;transition:background .15s ease,transform .15s ease,box-shadow .15s ease}.primary-button:hover:not(:disabled){background:var(--forest-deep);box-shadow:0 7px 16px #1c3a2d26;transform:translateY(-1px)}.primary-button:disabled{cursor:not-allowed;opacity:.48}.primary-button>span:last-child{font-size:16px;font-weight:400}.feedback{margin:12px 0 0;font-size:11px;line-height:1.5}.feedback-error{color:#a55046}.feedback-success{color:#477451}.spinner{width:13px;height:13px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .65s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.page-footer{padding:14px 0 22px;border-top:1px solid rgba(35,51,45,.08);color:#aaa99f;text-align:center;font-size:10px;letter-spacing:.06em}.guestbook{border-top:1px solid rgba(35,51,45,.09);padding:35px 5px 38px}.guestbook-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.guestbook-heading h2{margin:9px 0 5px;color:#26392f;font-family:"Noto Serif SC",Georgia,serif;font-size:27px;font-weight:600;letter-spacing:-.045em}.guestbook-heading p{margin:0;color:#8a8e85;font-size:11px;line-height:1.7}.guestbook-count{flex:0 0 auto;border:1px solid #e7e3d9;border-radius:20px;padding:7px 10px;color:#99958a;background:#fffefa8c;font-size:9px}.guestbook-layout{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:14px;align-items:start}.guestbook-form,.guestbook-list{border:1px solid rgba(56,64,54,.09);border-radius:12px;background:#fffefad6}.guestbook-form{padding:18px}.guestbook-form .field-label span{color:#a3a39a;font-size:9px;font-weight:400}.guestbook-textarea{min-height:104px;height:auto;resize:vertical;padding:12px 14px;line-height:1.65}.guestbook-form-meta{display:flex;justify-content:space-between;gap:12px;margin-top:6px;color:#a0a197;font-size:9px}.guestbook-submit{margin-top:13px;min-height:41px;font-size:10px}.guestbook-list{max-height:365px;overflow:auto;padding:0 16px;scrollbar-color:#d3d0c4 transparent;scrollbar-width:thin}.guestbook-entry{display:flex;gap:11px;border-bottom:1px solid #efede6;padding:14px 0}.guestbook-entry:last-child{border-bottom:0}.guestbook-entry-avatar{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:9px;background:#e8eee6;color:#536e58;font-size:10px;font-weight:700}.guestbook-entry:nth-child(3n+2) .guestbook-entry-avatar{background:#f0e9df;color:#987550}.guestbook-entry:nth-child(3n) .guestbook-entry-avatar{background:#e6ebf0;color:#60788d}.guestbook-entry-content{min-width:0;flex:1}.guestbook-entry-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.guestbook-entry-meta strong{color:#4c5b50;font-size:10px;font-weight:700}.guestbook-entry-meta time{flex:0 0 auto;margin-left:auto;color:#a2a39a;font-size:8px}.guestbook-delete{flex:0 0 auto;border:1px solid #e8cfc8;border-radius:6px;padding:2px 7px;color:#a5574a;background:#fbf3f0;font:inherit;font-size:8px;cursor:pointer}.guestbook-delete:hover:not(:disabled){background:#f6e3dd}.guestbook-delete:disabled{opacity:.55;cursor:default}.guestbook-admin{margin-bottom:14px;border:1px dashed #dcc9a6;border-radius:12px;padding:10px 12px;background:#fbf6ecb3}.guestbook-admin-row{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#8a6f45;font-size:10px}.guestbook-admin-row .text-input{flex:1;max-width:260px;height:34px}.guestbook-admin-button{flex:0 0 auto;border:1px solid #d9c49d;border-radius:8px;padding:7px 11px;color:#7c6136;background:#fffdf8;font:inherit;font-size:10px;cursor:pointer}.guestbook-admin-button:disabled{opacity:.55;cursor:default}.guestbook-entry-content p{margin:6px 0 0;color:#70786f;font-size:10px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}.guestbook-empty{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#a3a398;text-align:center}.guestbook-empty>span{color:#b79b68;font-size:21px}.guestbook-empty strong{margin-top:8px;color:#747d73;font-size:10px;font-weight:600}.guestbook-empty p{margin:5px 0 0;font-size:9px}@media(max-width:850px){.app-shell{width:min(680px,calc(100% - 40px))}.guestbook-layout{grid-template-columns:1fr}}@media(max-width:520px){.app-shell{width:calc(100% - 32px)}.topbar{height:72px}.brand-name span{display:none}.connection-status{font-size:10px}.page-footer{padding-bottom:17px}.guestbook{padding:27px 0 29px}.guestbook-heading{align-items:start}.guestbook-heading h2{font-size:23px}.guestbook-heading p{max-width:260px;font-size:10px}.guestbook-form{padding:15px}.guestbook-list{max-height:330px;padding:0 13px}}.hero{padding:54px 0 34px}.hero h1{margin:14px 0 12px;color:var(--forest);font-family:"Noto Serif SC",Georgia,serif;font-size:clamp(48px,7vw,84px);font-weight:700;letter-spacing:-.03em;line-height:1}.hero p{max-width:460px;margin:0;color:#7b8178;font-size:14px;line-height:1.8}.game-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;padding-bottom:40px}.game-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(56,64,54,.1);border-radius:18px;color:inherit;background:#fffefa;box-shadow:0 16px 40px #2a30260f;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease}.game-card:hover{transform:translateY(-4px);box-shadow:0 22px 50px #2a30261f}.game-card-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:20px 22px 22px}.game-card-tagline{color:#a08a66;font-size:11px;font-weight:700;letter-spacing:.1em}.game-card h2{margin:6px 0 8px;color:#26392f;font-family:"Noto Serif SC",Georgia,serif;font-size:26px;font-weight:700}.game-card p{margin:0 0 18px;color:#747b72;font-size:13px;line-height:1.75}.game-card-enter{margin-top:auto;border-radius:9px;padding:9px 16px;color:#fff;background:var(--forest);font-size:12px;font-weight:700}.game-art{display:block;aspect-ratio:2 / 1;overflow:hidden;border-bottom:6px solid #6f4f37;background:#1d3e31}.game-cover img{display:block;width:100%;height:100%;object-fit:cover}.game-card:hover .game-cover img{filter:brightness(1.08)}.account{border-top:1px solid rgba(35,51,45,.09);padding:35px 5px 30px}.account-heading{margin-bottom:18px}.account-heading h2{margin:9px 0 5px;color:#26392f;font-family:"Noto Serif SC",Georgia,serif;font-size:27px;font-weight:600;letter-spacing:-.045em}.account-heading p{margin:0;color:#8a8e85;font-size:11px;line-height:1.7}.account-notice{margin:0 0 10px;padding:12px 16px;border:1px solid #e8cfc8;border-radius:10px;background:#fbf3f0;color:#a5574a;font-size:12px}.account-panel{max-width:460px;border:1px solid rgba(56,64,54,.09);border-radius:12px;background:#fffefad6;padding:20px}.account-tabs{display:flex;gap:6px;margin-bottom:16px}.account-tab{flex:1;border:1px solid #e5e3da;border-radius:8px;padding:9px 0;background:#fff;color:#8a8e85;font:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease}.account-tab.active{border-color:var(--forest);background:var(--forest);color:#fffefa}.account-form .field-label{display:block}.account-form .field-label-spaced,.account-submit{margin-top:16px}.account-hint{margin:12px 0 0;color:#a0a197;font-size:10px;line-height:1.6}.account-status-line{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.account-username{color:#26392f;font-size:16px;font-weight:700}.account-badge{border-radius:20px;padding:5px 11px;font-size:10px;font-weight:600}.account-badge.subscribed{border:1px solid #cddcce;background:#eef5ee;color:#477451}.account-badge.expired{border:1px solid #e8cfc8;background:#fbf3f0;color:#a5574a}.account-status-note{margin:12px 0 0;color:#747b72;font-size:11px;line-height:1.7}.account-status-note-warn{color:#a5574a}.account-purchase{margin-top:18px;border-top:1px solid #efede6;padding-top:16px}.account-purchase .field-label{display:block}.account-plans{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.account-plan{display:flex;flex-direction:column;align-items:center;gap:2px;border:1px solid #e5e3da;border-radius:8px;padding:9px 0;background:#fff;color:#5c655c;font:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease}.account-plan.active{border-color:var(--forest);background:#eef3ef;color:var(--forest)}.account-plan-months{font-size:12px;font-weight:700}.account-plan-price{font-size:11px}.account-pay{margin-top:12px}.account-continue{max-width:460px;margin:0 0 10px;text-decoration:none}.account-redeem{margin-top:18px;border-top:1px solid #efede6;padding-top:16px}.account-redeem .field-label{display:block}.account-redeem-row{display:flex;gap:8px}.account-redeem-row .text-input{flex:1}.account-redeem-button{flex:0 0 auto;border:1px solid var(--forest);border-radius:8px;padding:0 16px;background:var(--forest);color:#fffefa;font:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s ease}.account-redeem-button:hover:not(:disabled){background:var(--forest-deep)}.account-redeem-button:disabled{opacity:.5;cursor:default}.account-logout{margin-top:14px;border:0;background:transparent;padding:0;color:#a08a66;font:inherit;font-size:11px;cursor:pointer;text-decoration:underline}.account-cancel{display:block;margin-top:6px;border:0;background:transparent;padding:0;color:#a08a66;font:inherit;font-size:11px;cursor:pointer;text-decoration:underline}.account-admin{margin-top:20px;border:1px dashed #dcc9a6;border-radius:12px;padding:14px 16px;background:#fbf6ecb3}.account-admin-row{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#8a6f45;font-size:11px}.account-admin-row+.account-admin-row{margin-top:12px}.account-admin-row .text-input{flex:1;height:34px;max-width:260px}.account-admin-top{margin-bottom:12px}.account-admin-code{justify-content:flex-start;flex-wrap:wrap}.account-admin-code .text-input{flex:0 0 64px;max-width:64px;text-align:center}.account-admin-code label{font-weight:700}.account-admin-button{flex:0 0 auto;border:1px solid #d9c49d;border-radius:8px;padding:7px 11px;color:#7c6136;background:#fffdf8;font:inherit;font-size:10px;cursor:pointer}.account-admin-button:disabled{opacity:.55;cursor:default}.account-admin-codes{margin-top:12px;border:1px solid #e3dcc9;border-radius:10px;padding:10px 12px;background:#fffdf8}.account-admin-codes-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;color:#8a6f45;font-size:10px}.account-admin-codes ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}.account-admin-codes li{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;letter-spacing:.08em;color:#26392f;border:1px dashed #d9c49d;border-radius:6px;padding:4px 8px;background:#fff}.account-admin-table-wrap{margin-top:12px;overflow-x:auto}.account-admin-table{width:100%;border-collapse:collapse;font-size:11px;color:#5c655c}.account-admin-table th,.account-admin-table td{text-align:left;padding:8px 10px;border-bottom:1px solid #eee9db;white-space:nowrap}.account-admin-table th{color:#8a6f45;font-size:10px;font-weight:700}.account-admin-actions{display:flex;gap:6px}.account-admin-empty{margin:10px 0 0;color:#a0a197;font-size:11px}@media(max-width:520px){.account{padding:27px 0 24px}.account-heading h2{font-size:23px}.account-panel{padding:16px}.account-plans{grid-template-columns:repeat(2,1fr)}.account-redeem-row{flex-direction:column}.account-redeem-button{width:100%;min-height:40px}}@font-face{font-family:Fusion Pixel;src:url(/assets/fusion-pixel-12px-zh_hans-BJk1nXha.woff2) format("woff2");font-display:swap}:root{color-scheme:dark;background:#0e0c13}body{background:repeating-conic-gradient(#13101a 0 25%,#0e0c13 0 50%) 0 0 / 4px 4px}.app-shell{--px: 2px;--bg: #0e0c13;--panel: #1c1826;--panel-2: #262033;--edge: #050408;--rim: #4a3f63;--shade: #0b0a10;--text: #f1ece0;--muted: #9a93ad;--gold: #f0c050;--gold-2: #b3821c;--ok: #62c97a;--bad: #f25c5c;color:var(--text);font-family:Fusion Pixel,-apple-system,PingFang SC,sans-serif;font-size:12px;line-height:1.5;-webkit-font-smoothing:none;font-smooth:never}.app-shell :is(button,input,textarea){font-family:inherit;font-size:12px;letter-spacing:0}.app-shell *{scrollbar-color:var(--rim) var(--bg);scrollbar-width:thin}.app-shell :focus-visible{outline:var(--px) solid var(--gold);outline-offset:calc(var(--px) * 2)}.app-shell :is(.game-card,.game-card-enter,.guestbook-form,.guestbook-list,.guestbook-count,.text-input,.primary-button,.quiet-button,.guestbook-delete,.guestbook-entry-avatar,.guestbook-admin,.guestbook-admin-button,.account-panel,.account-tab,.account-redeem-button,.account-admin,.account-admin-button,.account-badge,.account-admin-codes,.account-notice,.account-plan){border:0;border-radius:0;box-shadow:0 calc(var(--px) * -1) 0 0 var(--edge),0 var(--px) 0 0 var(--edge),calc(var(--px) * -1) 0 0 0 var(--edge),var(--px) 0 0 0 var(--edge),inset var(--px) var(--px) 0 0 var(--rim),inset calc(var(--px) * -1) calc(var(--px) * -1) 0 0 var(--shade)}.app-shell :is(.quiet-button,.guestbook-admin-button,.account-admin-button){--rim: #6b5c8f;--shade: #141119;padding:6px 12px;color:var(--text);background:#332b44;cursor:pointer;font-size:12px}.app-shell :is(.primary-button,.game-card-enter,.account-redeem-button){--rim: #fff2b8;--shade: #7a5410;color:#2a1c06;background:var(--gold);font-weight:400}.app-shell .guestbook-delete{--rim: #f25c5c;--shade: #3d0a12;padding:0 6px;color:#ffd8d0;background:#6e1020;font-size:12px}.app-shell :is(.quiet-button,.guestbook-admin-button,.account-admin-button,.guestbook-delete):hover:not(:disabled){filter:brightness(1.15)}.app-shell .guestbook-delete:hover:not(:disabled){background:#6e1020}.app-shell .primary-button:hover:not(:disabled){background:var(--gold);filter:brightness(1.1);transform:none;box-shadow:0 calc(var(--px) * -1) 0 0 var(--edge),0 var(--px) 0 0 var(--edge),calc(var(--px) * -1) 0 0 0 var(--edge),var(--px) 0 0 0 var(--edge),inset var(--px) var(--px) 0 0 var(--rim),inset calc(var(--px) * -1) calc(var(--px) * -1) 0 0 var(--shade)}.app-shell :is(.primary-button,.quiet-button,.guestbook-admin-button,.guestbook-delete):active:not(:disabled){transform:translateY(var(--px));--rim: var(--shade)}.app-shell :is(.primary-button,.quiet-button,.guestbook-admin-button,.guestbook-delete):disabled{cursor:default;opacity:1;filter:grayscale(.6) brightness(.7)}.app-shell .topbar{border-bottom:var(--px) solid #332b44}.app-shell .topbar-right{display:flex;align-items:center;gap:14px}.app-shell .brand{color:var(--text);gap:8px}.app-shell .brand-mark{width:24px;height:24px;border:0;border-radius:0;transform:none;padding:0;gap:2px}.app-shell .brand-mark i{width:6px;border-radius:0}.app-shell .brand-mark i:nth-child(1){background:#3f79b8}.app-shell .brand-mark i:nth-child(2){background:var(--gold)}.app-shell .brand-mark i:nth-child(3){background:#d42c3c}.app-shell .brand-name{font-size:12px;font-weight:400;letter-spacing:0}.app-shell .brand-name span{margin-left:8px;color:var(--muted);font-size:12px;font-weight:400;letter-spacing:.1em}.app-shell .connection-status{gap:6px;color:var(--muted);font-size:12px}.app-shell .connection-dot{width:6px;height:6px;border-radius:0;background:var(--gold-2)}.app-shell .connection-status.online .connection-dot{background:var(--ok);box-shadow:none}.app-shell .eyebrow{gap:10px;color:var(--muted);font-size:12px;font-weight:400;letter-spacing:.1em}.app-shell .eyebrow-line{width:24px;height:var(--px);background:var(--gold)}.app-shell .hero h1{margin:18px 0 14px;color:var(--gold);font-family:inherit;font-size:72px;font-weight:400;letter-spacing:0;line-height:1.1;text-shadow:calc(var(--px) * 2) calc(var(--px) * 2) 0 var(--edge)}.app-shell .hero p{color:var(--muted);font-size:12px;line-height:2}.app-shell .game-card{color:var(--text);background:var(--panel);transition:none}.app-shell .game-card:hover{--rim: var(--gold);transform:translateY(calc(var(--px) * -2));box-shadow:0 calc(var(--px) * -1) 0 0 var(--edge),0 var(--px) 0 0 var(--edge),calc(var(--px) * -1) 0 0 0 var(--edge),var(--px) 0 0 0 var(--edge),inset var(--px) var(--px) 0 0 var(--rim),inset calc(var(--px) * -1) calc(var(--px) * -1) 0 0 var(--shade)}.app-shell .game-card-body{padding:18px 20px 20px}.app-shell .game-card-tagline{color:var(--gold);font-size:12px;font-weight:400;letter-spacing:.05em}.app-shell .game-card h2{margin:6px 0 8px;color:var(--text);font-family:inherit;font-size:24px;font-weight:400}.app-shell .game-card p{margin-bottom:18px;color:var(--muted);font-size:12px;line-height:1.75}.app-shell .game-card-enter{padding:6px 16px;font-size:12px}.app-shell .game-card:hover .game-card-enter{filter:brightness(1.1)}.app-shell .game-art{margin:var(--px);border-bottom:calc(var(--px) * 3) solid #6f4f37;background:repeating-conic-gradient(#1d3e31 0 25%,#1a3a2d 0 50%) 0 0 / 4px 4px}.app-shell .guestbook{border-top:var(--px) solid #332b44}.app-shell .guestbook-heading h2{color:var(--text);font-family:inherit;font-size:24px;font-weight:400;letter-spacing:0}.app-shell .guestbook-heading p{color:var(--muted);font-size:12px}.app-shell .guestbook-count{--rim: #332b44;padding:4px 10px;color:var(--muted);background:var(--bg);font-size:12px}.app-shell :is(.guestbook-form,.guestbook-list){background:var(--panel)}.app-shell .guestbook-form{--rim: var(--gold-2)}.app-shell .field-label{color:var(--text);font-size:12px;font-weight:400;letter-spacing:0}.app-shell .guestbook-form .field-label span{color:var(--muted);font-size:12px}.app-shell .guestbook-form .field-label{display:block}.app-shell .guestbook-form .field-label-spaced{margin-top:16px}.app-shell .text-input{--rim: var(--shade);--shade: #332b44;height:40px;padding:0 12px;color:var(--text);background:var(--bg);font-size:12px}.app-shell .guestbook-textarea{height:auto;padding:10px 12px}.app-shell .text-input::placeholder{color:#5f5876}.app-shell .text-input:focus{outline:var(--px) solid var(--gold);outline-offset:0;box-shadow:0 calc(var(--px) * -1) 0 0 var(--edge),0 var(--px) 0 0 var(--edge),calc(var(--px) * -1) 0 0 0 var(--edge),var(--px) 0 0 0 var(--edge),inset var(--px) var(--px) 0 0 var(--rim),inset calc(var(--px) * -1) calc(var(--px) * -1) 0 0 var(--shade)}.app-shell .guestbook-form-meta{color:var(--muted);font-size:12px}.app-shell .primary-button{font-size:12px;letter-spacing:.05em}.app-shell .primary-button>span:last-child{font-size:12px}.app-shell .guestbook-submit{font-size:12px}.app-shell .spinner{border-radius:0;border-color:#2a1c0659;border-top-color:#2a1c06;animation-timing-function:steps(8)}.app-shell .feedback{font-size:12px}.app-shell .feedback-error{color:var(--bad)}.app-shell .feedback-success{color:var(--ok)}.app-shell .guestbook-list{--rim: var(--shade);--shade: #332b44;background:var(--bg)}.app-shell .guestbook-entry{border-bottom:var(--px) solid var(--panel-2)}.app-shell .guestbook-entry .guestbook-entry-avatar{--rim: #6fb0ff;width:32px;height:32px;flex-basis:32px;color:#fff;background:#1f4f99;font-size:12px;font-weight:400}.app-shell .guestbook-entry:nth-child(3n+2) .guestbook-entry-avatar{--rim: #ff7a86;color:#fff;background:#a3182c}.app-shell .guestbook-entry:nth-child(3n) .guestbook-entry-avatar{--rim: #7fe3a0;color:#fff;background:#1d6e3d}.app-shell .guestbook-entry-meta strong{color:var(--gold);font-size:12px;font-weight:400}.app-shell .guestbook-entry-meta time{color:var(--muted);font-size:12px}.app-shell .guestbook-entry-content p{color:var(--text);font-size:12px}.app-shell .guestbook-empty{color:var(--muted)}.app-shell .guestbook-empty>span{color:var(--gold);font-size:24px}.app-shell .guestbook-empty strong{color:var(--text);font-size:12px;font-weight:400}.app-shell .guestbook-empty p{font-size:12px}.app-shell .guestbook-admin{--rim: var(--gold-2);background:#241d16}.app-shell .guestbook-admin-row{color:var(--gold);font-size:12px}.app-shell .guestbook-admin-row .text-input{height:32px}.app-shell .page-footer{border-top:var(--px) solid #332b44;color:var(--muted);font-size:12px;letter-spacing:.05em}@media(prefers-reduced-motion:reduce){.app-shell .game-card:hover{transform:none}}@media(max-width:520px){.app-shell .hero h1{font-size:48px}.app-shell .topbar-right{gap:8px}.app-shell .quiet-button{padding:4px 8px}}.app-shell .account{border-top:var(--px) solid #332b44}.app-shell .account-heading h2{color:var(--text);font-family:inherit;font-size:24px;font-weight:400;letter-spacing:0}.app-shell .account-heading p{color:var(--muted);font-size:12px}.app-shell .account-notice{--rim: #f25c5c;--shade: #3d0a12;color:#ffd8d0;background:#6e1020;font-size:12px}.app-shell .account-panel{--rim: var(--gold-2);color:var(--text);background:var(--panel)}.app-shell .account-tab{color:var(--muted);background:var(--panel-2);font-size:12px;font-weight:400}.app-shell .account-tab.active{--rim: #fff2b8;--shade: #7a5410;color:#2a1c06;background:var(--gold)}.app-shell .account-form .field-label{color:var(--text);font-size:12px;font-weight:400;letter-spacing:0}.app-shell .account-form .field-label-spaced{margin-top:16px}.app-shell .account-hint{color:var(--muted);font-size:12px}.app-shell .account-username{color:var(--text);font-size:12px;font-weight:400}.app-shell .account-badge.subscribed{--rim: var(--ok);--shade: #0a2c17;color:#b6f0c4;background:#1d6e3d;font-size:12px;font-weight:400}.app-shell .account-badge.expired{--rim: var(--bad);--shade: #3d0a12;color:#ffd8d0;background:#6e1020;font-size:12px;font-weight:400}.app-shell .account-status-note{color:var(--muted);font-size:12px}.app-shell .account-status-note-warn{color:var(--bad)}.app-shell .account-purchase{border-top:var(--px) solid var(--panel-2)}.app-shell .account-purchase .field-label{color:var(--text);font-size:12px;font-weight:400;letter-spacing:0}.app-shell .account-plan{color:var(--muted);background:var(--panel-2);font-size:12px}.app-shell .account-plan.active{--rim: #fff2b8;--shade: #7a5410;color:#2a1c06;background:var(--gold)}.app-shell .account-plan-months{font-weight:400}.app-shell .account-plan-price{font-size:12px}.app-shell .account-redeem{border-top:var(--px) solid var(--panel-2)}.app-shell .account-redeem .field-label{color:var(--text);font-size:12px;font-weight:400;letter-spacing:0}.app-shell .account-redeem-button{padding:0 14px;font-size:12px}.app-shell .account-redeem-button:disabled{filter:grayscale(.6) brightness(.7)}.app-shell :is(.account-logout,.account-cancel){color:var(--gold-2);font-size:12px}.app-shell .account-admin{--rim: var(--gold-2);background:#241d16}.app-shell .account-admin-row{color:var(--gold);font-size:12px}.app-shell .account-admin-row .text-input{height:32px}.app-shell .account-admin-code .text-input{text-align:center}.app-shell .account-admin-codes{background:var(--bg)}.app-shell .account-admin-codes-head{color:var(--gold);font-size:12px}.app-shell .account-admin-codes li{color:var(--text);background:var(--bg);font-size:12px;letter-spacing:.1em}.app-shell .account-admin-table{color:var(--text);font-size:12px}.app-shell .account-admin-table th{color:var(--gold);font-size:12px;font-weight:400}.app-shell .account-admin-table th,.app-shell .account-admin-table td{border-bottom:var(--px) solid var(--panel-2)}.app-shell .account-admin-empty{color:var(--muted);font-size:12px}:root[data-theme=day]{background:#fff}:root[data-theme=day] body{background:repeating-conic-gradient(#f9f8fb 0 25%,#fff 0 50%) 0 0 / 4px 4px}:root[data-theme=day] .app-shell{--px: 2px;--bg: #ffffff;--panel: #f6f4f9;--panel-2: #eae6f0;--edge: #2b2536;--rim: #ffffff;--shade: #d5d0de;--text: #26212f;--muted: #6c6580;--gold: #f0c050;--gold-2: #b3821c;--ok: #62c97a;--bad: #f25c5c;color:var(--text)}:root[data-theme=day] .app-shell *{scrollbar-color:var(--rim) var(--bg)}:root[data-theme=day] .app-shell :focus-visible{outline:var(--px) solid var(--gold);outline-offset:calc(var(--px) * 2)}:root[data-theme=day] .app-shell :is(.game-card,.game-card-enter,.guestbook-form,.guestbook-list,.guestbook-count,.text-input,.primary-button,.quiet-button,.guestbook-delete,.guestbook-entry-avatar,.guestbook-admin,.guestbook-admin-button,.account-panel,.account-tab,.account-redeem-button,.account-admin,.account-admin-button,.account-badge,.account-admin-codes,.account-notice,.account-plan){border:0;box-shadow:0 calc(var(--px) * -1) 0 0 var(--edge),0 var(--px) 0 0 var(--edge),calc(var(--px) * -1) 0 0 0 var(--edge),var(--px) 0 0 0 var(--edge),inset var(--px) var(--px) 0 0 var(--rim),inset calc(var(--px) * -1) calc(var(--px) * -1) 0 0 var(--shade)}:root[data-theme=day] .app-shell :is(.quiet-button,.guestbook-admin-button,.account-admin-button){--rim: #ffffff;--shade: #b8b1c6;color:var(--text);background:#e2ddea}:root[data-theme=day] .app-shell :is(.primary-button,.game-card-enter,.account-redeem-button){--rim: #fff2b8;--shade: #7a5410;color:#2a1c06;background:var(--gold)}:root[data-theme=day] .app-shell .guestbook-delete{--rim: #f25c5c;--shade: #3d0a12;color:#ffd8d0;background:#6e1020}:root[data-theme=day] .app-shell :is(.quiet-button,.guestbook-admin-button,.account-admin-button,.guestbook-delete):hover:not(:disabled){filter:brightness(1.15)}:root[data-theme=day] .app-shell .guestbook-delete:hover:not(:disabled){background:#6e1020}:root[data-theme=day] .app-shell .primary-button:hover:not(:disabled){background:var(--gold);filter:brightness(1.1);box-shadow:0 calc(var(--px) * -1) 0 0 var(--edge),0 var(--px) 0 0 var(--edge),calc(var(--px) * -1) 0 0 0 var(--edge),var(--px) 0 0 0 var(--edge),inset var(--px) var(--px) 0 0 var(--rim),inset calc(var(--px) * -1) calc(var(--px) * -1) 0 0 var(--shade)}:root[data-theme=day] .app-shell :is(.primary-button,.quiet-button,.guestbook-admin-button,.guestbook-delete):active:not(:disabled){--rim: var(--shade)}:root[data-theme=day] .app-shell :is(.primary-button,.quiet-button,.guestbook-admin-button,.guestbook-delete):disabled{filter:grayscale(.85) brightness(1.15)}:root[data-theme=day] .app-shell .topbar{border-bottom:var(--px) solid #e2ddea}:root[data-theme=day] .app-shell .brand{color:var(--text)}:root[data-theme=day] .app-shell .brand-mark{border:0}:root[data-theme=day] .app-shell .brand-mark i:nth-child(1){background:#3f79b8}:root[data-theme=day] .app-shell .brand-mark i:nth-child(2){background:var(--gold)}:root[data-theme=day] .app-shell .brand-mark i:nth-child(3){background:#d42c3c}:root[data-theme=day] .app-shell .brand-name span{color:var(--muted)}:root[data-theme=day] .app-shell .connection-status{color:var(--muted)}:root[data-theme=day] .app-shell .connection-dot{background:var(--gold-2)}:root[data-theme=day] .app-shell .connection-status.online .connection-dot{background:var(--ok);box-shadow:none}:root[data-theme=day] .app-shell .eyebrow{color:var(--muted)}:root[data-theme=day] .app-shell .eyebrow-line{background:var(--gold)}:root[data-theme=day] .app-shell .hero h1{color:#94650a;text-shadow:calc(var(--px) * 2) calc(var(--px) * 2) 0 #f0d890}:root[data-theme=day] .app-shell .hero p{color:var(--muted)}:root[data-theme=day] .app-shell .game-card{color:var(--text);background:var(--panel)}:root[data-theme=day] .app-shell .game-card:hover{--rim: var(--gold);box-shadow:0 calc(var(--px) * -1) 0 0 var(--edge),0 var(--px) 0 0 var(--edge),calc(var(--px) * -1) 0 0 0 var(--edge),var(--px) 0 0 0 var(--edge),inset var(--px) var(--px) 0 0 var(--rim),inset calc(var(--px) * -1) calc(var(--px) * -1) 0 0 var(--shade)}:root[data-theme=day] .app-shell .game-card-tagline{color:#94650a}:root[data-theme=day] .app-shell .game-card h2{color:var(--text)}:root[data-theme=day] .app-shell .game-card p{color:var(--muted)}:root[data-theme=day] .app-shell .game-card:hover .game-card-enter{filter:brightness(1.1)}:root[data-theme=day] .app-shell .game-art{border-bottom:calc(var(--px) * 3) solid #6f4f37;background:repeating-conic-gradient(#1d3e31 0 25%,#1a3a2d 0 50%) 0 0 / 4px 4px}:root[data-theme=day] .app-shell .guestbook{border-top:var(--px) solid #e2ddea}:root[data-theme=day] .app-shell .guestbook-heading h2{color:var(--text)}:root[data-theme=day] .app-shell .guestbook-heading p{color:var(--muted)}:root[data-theme=day] .app-shell .guestbook-count{--rim: #e2ddea;color:var(--muted);background:var(--bg)}:root[data-theme=day] .app-shell :is(.guestbook-form,.guestbook-list){background:var(--panel)}:root[data-theme=day] .app-shell .guestbook-form{--rim: var(--gold-2)}:root[data-theme=day] .app-shell .field-label{color:var(--text)}:root[data-theme=day] .app-shell .guestbook-form .field-label span{color:var(--muted)}:root[data-theme=day] .app-shell .text-input{--rim: var(--shade);--shade: #e2ddea;color:var(--text);background:var(--bg)}:root[data-theme=day] .app-shell .text-input::placeholder{color:#a59fb5}:root[data-theme=day] .app-shell .text-input:focus{outline:var(--px) solid var(--gold);outline-offset:0;box-shadow:0 calc(var(--px) * -1) 0 0 var(--edge),0 var(--px) 0 0 var(--edge),calc(var(--px) * -1) 0 0 0 var(--edge),var(--px) 0 0 0 var(--edge),inset var(--px) var(--px) 0 0 var(--rim),inset calc(var(--px) * -1) calc(var(--px) * -1) 0 0 var(--shade)}:root[data-theme=day] .app-shell .guestbook-form-meta{color:var(--muted)}:root[data-theme=day] .app-shell .spinner{border-color:#2a1c0659;border-top-color:#2a1c06}:root[data-theme=day] .app-shell .feedback-error{color:#d1303f}:root[data-theme=day] .app-shell .feedback-success{color:#1f8a45}:root[data-theme=day] .app-shell .guestbook-list{--rim: var(--shade);--shade: #e2ddea;background:var(--bg)}:root[data-theme=day] .app-shell .guestbook-entry{border-bottom:var(--px) solid var(--panel-2)}:root[data-theme=day] .app-shell .guestbook-entry .guestbook-entry-avatar{--rim: #6fb0ff;color:#fff;background:#1f4f99}:root[data-theme=day] .app-shell .guestbook-entry:nth-child(3n+2) .guestbook-entry-avatar{--rim: #ff7a86;color:#fff;background:#a3182c}:root[data-theme=day] .app-shell .guestbook-entry:nth-child(3n) .guestbook-entry-avatar{--rim: #7fe3a0;color:#fff;background:#1d6e3d}:root[data-theme=day] .app-shell .guestbook-entry-meta strong{color:#94650a}:root[data-theme=day] .app-shell .guestbook-entry-meta time{color:var(--muted)}:root[data-theme=day] .app-shell .guestbook-entry-content p{color:var(--text)}:root[data-theme=day] .app-shell .guestbook-empty{color:var(--muted)}:root[data-theme=day] .app-shell .guestbook-empty>span{color:#94650a}:root[data-theme=day] .app-shell .guestbook-empty strong{color:var(--text)}:root[data-theme=day] .app-shell .guestbook-admin{--rim: var(--gold-2);background:#fbf4e4}:root[data-theme=day] .app-shell .guestbook-admin-row{color:#94650a}:root[data-theme=day] .app-shell .page-footer{border-top:var(--px) solid #e2ddea;color:var(--muted)}:root[data-theme=day] .app-shell .account{border-top:var(--px) solid #e2ddea}:root[data-theme=day] .app-shell .account-heading h2{color:var(--text)}:root[data-theme=day] .app-shell .account-heading p{color:var(--muted)}:root[data-theme=day] .app-shell .account-notice{--rim: #f25c5c;--shade: #3d0a12;color:#ffd8d0;background:#6e1020}:root[data-theme=day] .app-shell .account-panel{--rim: var(--gold-2);color:var(--text);background:var(--panel)}:root[data-theme=day] .app-shell .account-tab{color:var(--muted);background:var(--panel-2)}:root[data-theme=day] .app-shell .account-tab.active{--rim: #fff2b8;--shade: #7a5410;color:#2a1c06;background:var(--gold)}:root[data-theme=day] .app-shell .account-form .field-label{color:var(--text)}:root[data-theme=day] .app-shell .account-hint{color:var(--muted)}:root[data-theme=day] .app-shell .account-username{color:var(--text)}:root[data-theme=day] .app-shell .account-badge.subscribed{--rim: var(--ok);--shade: #0a2c17;color:#b6f0c4;background:#1d6e3d}:root[data-theme=day] .app-shell .account-badge.expired{--rim: var(--bad);--shade: #3d0a12;color:#ffd8d0;background:#6e1020}:root[data-theme=day] .app-shell .account-status-note{color:var(--muted)}:root[data-theme=day] .app-shell .account-status-note-warn{color:#d1303f}:root[data-theme=day] .app-shell .account-purchase{border-top:var(--px) solid var(--panel-2)}:root[data-theme=day] .app-shell .account-purchase .field-label{color:var(--text)}:root[data-theme=day] .app-shell .account-plan{color:var(--muted);background:var(--panel-2)}:root[data-theme=day] .app-shell .account-plan.active{--rim: #fff2b8;--shade: #7a5410;color:#2a1c06;background:var(--gold)}:root[data-theme=day] .app-shell .account-redeem{border-top:var(--px) solid var(--panel-2)}:root[data-theme=day] .app-shell .account-redeem .field-label{color:var(--text)}:root[data-theme=day] .app-shell .account-redeem-button:disabled{filter:grayscale(.85) brightness(1.15)}:root[data-theme=day] .app-shell :is(.account-logout,.account-cancel){color:#94650a}:root[data-theme=day] .app-shell .account-admin{--rim: var(--gold-2);background:#fbf4e4}:root[data-theme=day] .app-shell .account-admin-row{color:#94650a}:root[data-theme=day] .app-shell .account-admin-codes{background:var(--bg)}:root[data-theme=day] .app-shell .account-admin-codes-head{color:#94650a}:root[data-theme=day] .app-shell .account-admin-codes li{color:var(--text);background:var(--bg)}:root[data-theme=day] .app-shell .account-admin-table{color:var(--text)}:root[data-theme=day] .app-shell .account-admin-table th{color:#94650a}:root[data-theme=day] .app-shell .account-admin-table th,:root[data-theme=day] .app-shell .account-admin-table td{border-bottom:var(--px) solid var(--panel-2)}:root[data-theme=day] .app-shell .account-admin-empty{color:var(--muted)}:root[data-theme=day]{color-scheme:light}:root[data-theme=day] .app-shell *{scrollbar-color:#b8b1c6 var(--bg)}
