:root{color-scheme:light;--bg:#f6f7f5;--surface:#fff;--ink:#293331;--muted:#707a77;--teal:#507d71;--orange:#aa8b50;--line:#dfe6e0;--soft:#edf3ee;--gold:#e6ddbd;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button,a,input,select{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #5e8b7f}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);padding:10px 18px;min-height:42px;font-size:14px;font-weight:500;transition:background .15s,border-color .15s}button:hover,.button:hover{background:#eef3ef;border-color:#a4b8ad}.primary{background:#446b5f;color:#fff;border-color:#446b5f}.primary:hover{background:#345d50;border-color:#345d50}.secondary{background:transparent}.compact{padding:8px 16px;min-height:38px}.text-button{background:transparent;border:0;padding:6px 8px}.text-button:hover{background:#ebf0eb}.site-header{max-width:1280px;margin:auto;padding:22px 40px;display:flex;gap:48px;align-items:center;border-bottom:1px solid var(--line)}.brand{font-size:19px;font-weight:650;letter-spacing:-.6px;white-space:nowrap}.brand-mark{color:#9c884f;font-size:25px;vertical-align:middle;margin-right:8px}.brand b{font-weight:650}nav{display:flex;align-items:center;gap:28px;font-size:14px;color:var(--muted)}nav a.current,nav a:hover{color:var(--ink)}.account-nav{margin-left:auto;display:flex;gap:8px;align-items:center}.account-avatar{width:30px;height:30px;border-radius:50%;background:#dde8df;display:grid;place-items:center;color:#476b5d;font-size:14px}.account-name{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.version{display:none}.hub{max-width:1280px;margin:auto;padding:36px 40px 0}.welcome{display:grid;grid-template-columns:1.1fr 1fr;min-height:335px;border:1px solid #e1e6dc;border-radius:18px;overflow:hidden;background:#edf1e8}.welcome-copy{padding:44px 42px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative}.subtle-label{font-size:12px;letter-spacing:1.8px;color:#79836b;font-weight:600}.welcome h1{font-size:clamp(34px,4.8vw,58px);font-weight:550;letter-spacing:-2.8px;line-height:1.14;margin:16px 0 12px}.welcome p{color:#657061;font-size:17px;max-width:330px;line-height:1.7;margin:0 0 22px}.guest-note{font-size:12px;color:#737d6c;margin-top:14px}.portrait-wrap{position:relative;min-height:335px;overflow:hidden;background:#e9e5d3}.portrait-wrap img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block}.portrait-wrap:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#edf1e8 0,transparent 24%,transparent 75%,#e6e7db15)}.portrait-caption{position:absolute;z-index:2;bottom:14px;right:18px;font-size:12px;background:#fafaf0d9;color:#6b6955;border:1px solid #ffffff88;padding:5px 12px;border-radius:20px}.section-label{display:flex;justify-content:space-between;align-items:center;margin:33px 0 18px}.section-label h2{margin:0;font-size:19px;font-weight:600;letter-spacing:-.3px}.section-label>span{font-size:13px;color:var(--muted)}.game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.game-card{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;transition:box-shadow .2s,transform .2s}.active-game:hover{transform:translateY(-3px);box-shadow:0 9px 30px #293a3010;border-color:#aabfb0}.game-art{height:190px;position:relative;background:#e2ece5;overflow:hidden}.game-art img{width:100%;height:100%;object-fit:cover;object-position:35% 36%;display:block;filter:saturate(.55);transform:scale(1.22)}.game-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#f1ece014,transparent 75%)}.art-badge{position:absolute;z-index:1;left:16px;bottom:16px;background:#fffffff0;color:#466455;padding:5px 11px;font-size:12px;border-radius:7px;box-shadow:0 2px 8px #142b2e12}.game-description{padding:21px 23px}.card-category{font-size:12px;letter-spacing:1.6px;color:#788975;font-weight:600}.game-description h2{font-size:21px;font-weight:600;letter-spacing:-.6px;margin:8px 0}.game-description>p{font-size:14px;color:var(--muted);margin:10px 0 21px}.play-label{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e8ede7;padding-top:15px;font-size:14px;color:#476b5d}.play-label span{font-size:12px;background:#edf3ee;border-radius:6px;padding:4px 12px}.future{display:flex;flex-direction:column;justify-content:flex-end;min-height:375px;padding:26px;background:#f1f3ef;border-style:dashed;border-color:#d8e0d5}.future-symbol{font-size:58px;font-weight:300;letter-spacing:-3px;color:#ccd7c9;line-height:1;flex:1;padding-top:16px}.future h2{font-size:18px;letter-spacing:-.5px;font-weight:500;margin:0 0 10px}.future p{font-size:14px;color:#7c8778;margin:0 0 28px}.soon{color:#7d8977;font-size:12px}.page-footer{display:flex;justify-content:space-between;gap:20px;padding:29px 0;color:#8a9189;font-size:12px}.actions{display:flex;gap:12px;flex-wrap:wrap}.workshop-page{max-width:1220px;margin:auto;padding:30px 40px}.breadcrumb{color:var(--muted);font-size:13px;margin-bottom:28px}.breadcrumb a{color:var(--teal)}.workshop-top{display:grid;grid-template-columns:1.05fr 1fr;gap:45px;align-items:center}.eyebrow{font-size:12px;letter-spacing:1.5px;font-weight:600;color:var(--teal);margin:0 0 12px}h1{font-size:clamp(32px,4vw,47px);font-weight:550;line-height:1.17;letter-spacing:-1.9px;margin:0 0 18px}h1 em{font-style:normal;color:var(--teal)}.intro{color:var(--muted);max-width:480px;font-size:16px;line-height:1.8;margin:0 0 25px}.reference-frame{border:1px solid #dce5db;border-radius:16px;overflow:hidden;background:#fff}.reference-frame img{display:block;width:100%;height:290px;object-fit:cover;object-position:35% 25%;filter:saturate(.7)}.reference-frame span{display:block;padding:12px 18px;font-size:12px;color:#79846f}.info-grid{margin-top:35px;display:grid;grid-template-columns:repeat(3,1fr);gap:25px;border-top:1px solid var(--line);padding-top:26px}.info-grid h2{font-size:17px;font-weight:550;margin:8px 0}.info-grid p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}.step-number{font-size:13px;color:#9b895a}.rules-detail{border:1px solid var(--line);border-radius:10px;background:#fff;padding:16px 20px;margin-top:20px}.rules-detail summary{font-size:14px;font-weight:500;cursor:pointer}.rules-detail p,.rules-detail li{color:var(--muted);font-size:14px;line-height:1.8}.rules-detail strong{color:var(--ink)}.rules-detail ul{padding-left:20px}.dev-note{font-size:13px;color:var(--muted);line-height:1.7;margin:18px 0}.dev-note a{color:var(--teal)}.reference-gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.reference-gallery figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.reference-gallery img{width:100%;display:block;aspect-ratio:1.6;object-fit:cover}.reference-gallery figcaption{padding:14px 18px;font-size:13px;color:var(--muted)}dialog{background:#fff;color:var(--ink);border:1px solid #d6dfd6;border-radius:16px;padding:28px;width:calc(100% - 36px);max-width:470px;box-shadow:0 24px 90px #20382c25}dialog::backdrop{background:#253b3266;backdrop-filter:blur(4px)}.dialog-close{float:right;min-height:32px;padding:4px 10px;border:0;font-size:20px;background:transparent}.account-dialog h2{font-size:26px;font-weight:550;letter-spacing:-1px;margin:5px 0 10px}.account-dialog p{font-size:14px;color:var(--muted)}.auth-tabs{display:flex;gap:7px;background:#f0f3ef;padding:4px;border-radius:10px;margin:20px 0}.auth-tabs button{width:50%;border:0;background:transparent}.auth-tabs button.active{background:#fff;box-shadow:0 1px 5px #1c382216}.account-form label{display:block;font-size:14px;margin:14px 0;color:#536258}.account-form input{display:block;width:100%;margin-top:7px;padding:11px 12px;font-size:16px;border:1px solid #d5dfd5;border-radius:8px;background:#fbfcfa;color:var(--ink)}.account-form .primary{width:100%;margin-top:8px}.account-error{color:#9e443a!important;min-height:23px;font-size:13px}.account-subtle{font-size:12px!important;margin-top:15px}.profile-stats{display:flex;gap:25px;background:#f1f5ef;border-radius:10px;padding:16px;margin:20px 0}.profile-stats strong{display:block;font-size:24px;color:#406354}.profile-stats small{font-size:12px;color:var(--muted)}.profile-actions{display:flex;gap:10px;flex-wrap:wrap}.sync-status{font-size:12px;color:#6d897b;margin:0 10px}.leaderboard-page{max-width:1060px;margin:40px auto;padding:0 40px}.leaderboard-page h1{font-size:38px;margin-bottom:10px}.leaderboard-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:30px 0 18px}.leaderboard-tabs{display:flex;gap:8px}.leaderboard-tabs button.active{background:#e4eee4;border-color:#b7c9b7;color:#416652}.leaderboard-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);font-size:14px}.leaderboard-table th,.leaderboard-table td{text-align:left;padding:17px 22px;border-bottom:1px solid #e4eae3}.leaderboard-table th{font-weight:500;font-size:12px;color:var(--muted);background:#f0f4ef}.leaderboard-table td:first-child{width:70px;color:var(--muted)}.leaderboard-table td:last-child{font-weight:650;text-align:right}.leaderboard-empty{text-align:center!important;font-weight:400!important;color:var(--muted);padding:40px!important}.ranking-note{font-size:13px;line-height:1.8;color:var(--muted);margin-top:20px}@media(max-width:900px){.site-header{padding:18px 25px;gap:30px}.hub{padding:25px}.welcome-copy{padding:32px}.game-grid{gap:16px;grid-template-columns:1.5fr 1fr}.game-grid .future:last-child{display:none}.workshop-page{padding:25px}.workshop-top{gap:25px}.leaderboard-page{padding:0 25px}.account-name{max-width:110px}}@media(max-width:620px){.site-header{padding:14px 18px;gap:12px;flex-wrap:wrap}.brand{font-size:17px}.site-header nav{order:3;width:100%;font-size:14px;gap:22px;margin-top:5px}.account-nav{gap:4px}.account-nav button{font-size:13px;padding:7px 10px}.hub{padding:20px 18px}.welcome{grid-template-columns:1fr;min-height:0}.welcome-copy{padding:28px;order:2}.welcome h1{font-size:38px;letter-spacing:-1.7px}.welcome p{font-size:16px}.portrait-wrap{height:225px;min-height:0}.portrait-wrap img{object-position:center 32%}.portrait-wrap:before{background:linear-gradient(0deg,#edf1e8,transparent 30%)}.portrait-caption{display:none}.game-grid{grid-template-columns:1fr}.future{min-height:180px}.future-symbol{display:none}.future p{margin-bottom:20px}.game-art{height:210px}.page-footer{flex-direction:column;gap:7px}.workshop-top{grid-template-columns:1fr;gap:20px}.workshop-page{padding:22px 18px}.info-grid{grid-template-columns:1fr;gap:20px}.info-grid article+article{border-top:1px solid var(--line);padding-top:18px}.reference-frame img{height:250px}.reference-gallery{grid-template-columns:1fr}.leaderboard-page{padding:0 18px;margin-top:30px}.leaderboard-head{flex-direction:column;align-items:flex-start}.leaderboard-table th,.leaderboard-table td{padding:14px 10px}.account-name{max-width:90px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.leaderboard-controls{display:flex;gap:18px;flex-wrap:wrap;margin:24px 0}.leaderboard-controls label{display:flex;gap:8px;align-items:center;font-size:14px}.leaderboard-controls select{background:white;border:1px solid var(--line);border-radius:8px;padding:8px 12px;color:var(--ink)}.account-switch .quiet{padding:0;color:var(--teal)}.account-dialog-head h2{font-size:25px;letter-spacing:-.6px;margin:0}.account-dialog-head button{font-size:23px;min-width:38px}.account-message{color:#a44e3f;min-height:24px;font-size:14px}.account-dialog input{width:100%}.leaderboard-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.empty-state{padding:28px;text-align:center;color:var(--muted)}.text-link{color:var(--teal)}.profile-stats strong{font-size:28px}.muted{color:var(--muted)}.reference-gallery img{width:100%;border-radius:9px}.reference-gallery figure{margin:0}.reference-gallery figcaption{font-size:12px;color:var(--muted)}

.account-dialog{width:calc(100% - 36px);max-width:440px;padding:28px;border:1px solid var(--line);border-radius:18px;background:white;color:var(--ink);box-shadow:0 20px 80px #233c3222}.account-dialog::backdrop{background:#263d3655;backdrop-filter:blur(3px)}.account-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.account-dialog-head button{border:0;background:transparent;padding:0}.profile-stats span{font-size:13px}.account-form label{margin:18px 0}.account-form input{padding:11px;border:1px solid var(--line);border-radius:8px}a.primary{display:inline-flex;align-items:center;justify-content:center}

button.quiet{border:0;background:transparent;color:var(--muted)}button.soft-button{background:#e9f0e8;border-color:#dce7dc;color:#496e59}.account-switch button.quiet{padding:0;min-height:0;font-size:14px;color:var(--teal)}.leaderboard-table{width:100%;border-collapse:collapse;text-align:left}.leaderboard-table th{font-weight:500;color:var(--muted);font-size:14px;background:#f8faf6}.leaderboard-table td,.leaderboard-table th{padding:16px 20px;border-bottom:1px solid var(--line)}.leaderboard-table th:last-child,.leaderboard-table td:last-child{text-align:right}
