.public-site{min-height:100dvh;display:flex;flex-direction:column}.public-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;padding:20px max(5vw,calc((100vw - 1220px)/2));border-bottom:1px solid var(--theme-border, #283a2f)}.public-brand{display:inline-flex;align-items:center;gap:12px;font-size:18px;font-weight:600;letter-spacing:-.5px;white-space:nowrap}.public-brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--theme-accent, #cee79c);color:var(--theme-on-accent, #15231a);font-size:22px;font-weight:700}.public-brand-suffix{margin-left:8px;color:var(--theme-muted, #90a191);font-size:13px;font-weight:400;letter-spacing:0}.public-nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;font-size:13px}.public-nav>a:not(.public-button){color:var(--theme-muted, #b3c2aa)}.public-nav>a:not(.public-button):hover{color:var(--theme-text, #e9eee7)}.public-main{flex:1;width:90%;max-width:1220px;min-width:0;margin:0 auto;padding:40px 0 64px;overflow-wrap:anywhere}.public-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;width:90%;max-width:1220px;margin:0 auto;padding:24px 0;border-top:1px solid var(--theme-border, #283a2f);color:var(--theme-muted, #82967d);font-size:13px}.public-footer nav{display:flex;flex-wrap:wrap;gap:8px 20px}.public-footer a:hover{color:var(--theme-text, #e9eee7)}.public-eyebrow{margin:0 0 14px;color:var(--theme-muted, #a2b49d);font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase}.public-lead{max-width:720px;color:var(--theme-muted, #b8c5b0);font-size:17px;line-height:1.65}.public-hero{margin:12px 0 36px}.public-hero h1{max-width:820px;margin-bottom:18px}.public-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.public-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border:1px solid var(--theme-accent, #cee79c);border-radius:10px;background:var(--theme-accent, #cee79c);color:var(--theme-on-accent, #15231a);font-weight:600}.public-nav .public-button{min-height:36px;padding:0 14px}.public-button-quiet{background:transparent;color:var(--theme-accent, #cee79c)}.public-button:focus-visible,.public-site a:focus-visible{outline:3px solid var(--theme-accent, #cee79c);outline-offset:3px}.public-note{max-width:720px;margin:-4px 0 16px;color:var(--theme-muted, #a2b49d);font-size:14px;line-height:1.6}.public-solo-icon{font-size:34px}.public-list{margin:0;padding:0;list-style:none}.public-steps{margin-top:36px;padding:28px;border:1px solid var(--theme-border, #2c3e2e);border-radius:12px}.public-steps h2{margin-bottom:12px;font-size:21px}.public-steps ol{margin:0;padding-left:22px;color:var(--theme-muted, #b8c5b0);line-height:1.8}.public-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:0;list-style:none;color:var(--theme-muted, #a2b49d);font-size:13px}.public-breadcrumbs li+li:before{content:"/";margin-right:8px}.public-breadcrumbs a{color:var(--theme-accent, #cee79c)}.public-game{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:36px;align-items:start;margin-bottom:40px}.public-game-art{padding:16px;border:1px solid var(--theme-border, #3c5238);border-radius:16px;background:var(--theme-surface, #14291c)}.public-game-art svg{display:block;width:100%;height:auto}.public-facts{display:grid;gap:14px;margin:24px 0 0}.public-facts>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px;padding-top:14px;border-top:1px solid var(--theme-border, #2c3e2e)}.public-facts dt{color:var(--theme-muted, #a2b49d);font-size:13px}.public-facts dd{margin:0;line-height:1.6}.public-facts ul{margin:0;padding-left:18px}@media(max-width:760px){.public-game{grid-template-columns:1fr;gap:20px}.public-game-art{max-width:420px}.public-facts>div{grid-template-columns:1fr;gap:4px}}html:not([data-portal-theme]) .public-site{--art-paper: #f6f1df;--art-ink: #17271d;--art-accent: #b8432f;--art-wash: #1f3b29;--art-board: #6f8a5a}html:not([data-portal-theme]) .public-site .theme-game-art{display:block;width:calc(100% + 24px);max-width:none;height:auto;aspect-ratio:320 / 190;margin:-6px -12px 8px}html:not([data-portal-theme]) .public-site .public-game-art .theme-game-art{width:100%;margin:0}html:not([data-portal-theme]) .public-site .theme-game-art .art-disc{fill:var(--art-wash)}html:not([data-portal-theme]) .public-site .theme-game-art .art-paper{fill:var(--art-paper);stroke:var(--art-ink);stroke-width:1.5}html:not([data-portal-theme]) .public-site .theme-game-art :is(.art-dark,.art-ink){fill:var(--art-ink)}html:not([data-portal-theme]) .public-site .theme-game-art .art-red{fill:var(--art-accent)}html:not([data-portal-theme]) .public-site .theme-game-art .art-board{fill:var(--art-board);stroke:var(--art-ink);stroke-width:1.5}html:not([data-portal-theme]) .public-site .theme-game-art .art-detail{fill:none;stroke:var(--art-ink);stroke-width:1}html:not([data-portal-theme]) .public-site .theme-game-art .art-flourish{fill:none;stroke:var(--theme-accent, #cee79c);stroke-width:2}.legal-page{max-width:920px;margin:0 auto;padding:40px 24px 120px;line-height:1.75;overflow-wrap:anywhere}.legal-page h1{margin-top:28px}.legal-page-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.legal-page-header .language-selector{flex-shrink:0}.legal-page h2{margin-top:32px;font-size:24px}.legal-page li{margin-bottom:12px}.legal-page a,.registration-notice a,.cookie-notice a{color:var(--theme-accent, #cee79c);text-decoration:underline}.legal-links{display:flex;flex-wrap:wrap;gap:16px;padding:12px 0}.registration-notice{font-size:13px;line-height:1.7;margin-top:16px}.legal-table{overflow-x:auto}.legal-table td{vertical-align:top;min-width:150px}.cookie-notice{position:fixed;z-index:1000;inset:auto 16px 60px auto;width:min(560px,calc(100% - 32px));max-height:70dvh;overflow-y:auto;padding:24px;background:var(--theme-surface, #14251d);border:1px solid var(--theme-border, #81966e);border-radius:12px;box-shadow:0 8px 40px #0009}.cookie-notice h2{font-size:22px;letter-spacing:0}.cookie-notice p{font-size:14px}.cookie-reopen{position:static;display:block;margin:12px 16px 12px auto;padding:8px 12px;color:var(--theme-text, #e9eee7);background:var(--theme-surface, #14251d);border:1px solid var(--theme-border, #81966e);border-radius:8px}@media print{.cookie-notice,.cookie-reopen,.legal-page button,.legal-links{display:none}.legal-page{color:#000;background:#fff;padding:0;max-width:none}.legal-page a{color:#000}}.about-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}:root{font-family:Inter,Segoe UI,system-ui,sans-serif;color:var(--theme-text, #e9eee7);background:var(--theme-bg, #0b1513);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color-scheme:var(--theme-scheme, dark)}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit;text-decoration:none}dialog:modal{overscroll-behavior:contain}dialog::backdrop{overflow:hidden;overscroll-behavior:contain}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}[role=region][tabindex="0"]:focus-visible{outline:2px solid var(--theme-accent, #cee79c);outline-offset:2px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-weight:600}h1{font-size:clamp(32px,4vw,52px);letter-spacing:-2px;line-height:1.12}h2{font-size:32px;letter-spacing:-1px}h3{font-size:17px}p{line-height:1.7}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--theme-accent, #c5df92);outline-offset:4px}input,select{width:100%;background:var(--theme-surface, #101e1a);color:var(--theme-text, #edf3e9);border:1px solid var(--theme-border, #34463d);border-radius:8px;padding:13px 15px}input,select,textarea,label{min-width:0;max-width:100%}textarea{font:inherit}img,svg{max-width:100%}input::placeholder{color:var(--theme-muted, #61766a)}input[type=checkbox]{width:18px;height:18px;accent-color:var(--theme-accent, #cee79c)}label{display:flex;flex-direction:column;gap:9px;font-size:13px;color:var(--theme-muted, #c4cfc2)}label:has(>input[type=checkbox]){flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;text-align:left}label>input[type=checkbox]{flex:0 0 18px;margin:0}label small{color:var(--theme-muted, #8ea096);line-height:1.6}summary{cursor:pointer;padding:16px 0}table{width:100%;border-collapse:collapse}th{color:var(--theme-muted, #8ea096);font-size:12px;font-weight:500}th,td{padding:13px 10px;border-bottom:1px solid var(--theme-border, #293c31);text-align:left}::selection{background:var(--theme-accent, #cee79c);color:var(--theme-on-accent, #142117)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.favorite-tile-link{display:block;color:inherit;text-decoration:none}.favorite-star{position:absolute;top:18px;right:20px;z-index:1;background:transparent;border:0;color:var(--theme-muted, #b7c7a8);cursor:pointer;padding:6px;border-radius:6px}.favorite-star:hover,.favorite-star:focus-visible{color:var(--theme-accent, #e4f7a0);background:var(--theme-raised, #34553a)}.favorite-selected{color:var(--theme-accent, #d4f589)}.profile-settings{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--theme-border, #34513b)}.account-deletion{margin-top:40px;padding-top:24px;border-top:1px solid var(--theme-danger, #86534d);max-width:760px}:is(.account-data,.external-connections) .chat-settings label{display:grid;align-items:start}:is(.account-data,.external-connections) .chat-settings input{width:100%;height:auto;max-width:480px}.account-deletion a{text-decoration:underline}.account-deletion .chat-settings label{display:grid;align-items:start}.account-deletion .chat-settings label:has(input[type=checkbox]){display:flex;flex-direction:row;align-items:center}.account-deletion .chat-settings input:not([type=checkbox]){width:100%;height:auto;max-width:480px}.account-deletion input[type=checkbox]{flex-shrink:0}.account-deletion button[type=submit]{border:1px solid var(--theme-danger, #d6857b);background:var(--theme-danger-bg, #542c29);color:var(--theme-text, #fff0ed)}.profile-settings form{display:grid;gap:16px;max-width:480px}.profile-settings label{display:grid;gap:6px}.profile-settings input,.profile-settings textarea{background:var(--theme-surface, #102119);color:var(--theme-text, #edf3e9);border:1px solid var(--theme-border, #456149);padding:10px;border-radius:6px;font:inherit}.profile-settings small{color:var(--theme-muted, #acbf9d)}.profile-avatar{width:32px;height:32px;object-fit:cover;border-radius:50%;flex-shrink:0}.profile-photo-preview{max-width:128px;max-height:128px;border-radius:10px;margin-right:12px;vertical-align:middle}.access-status{max-width:720px;margin:12vh auto;padding:24px;overflow-wrap:anywhere}.access-status button{margin:8px}.maintenance-banner{color:var(--theme-danger, #ff7777)!important;font-weight:700}.maintenance-controls{padding:16px;margin:16px 0;border:1px solid var(--theme-danger, #ad655f);border-radius:8px}.groups-page{display:grid;gap:18px;min-width:0;max-width:960px;margin-inline:auto}.groups-page>nav{display:flex;flex-wrap:wrap;gap:8px}.group-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.group-title-row h1{margin:0}.groups-page .group-leave-button{margin:0 0 0 auto;border-color:#9e4848;color:#ffe7e7;background:#742b2b}.groups-page .group-leave-button:hover{background:#8c3434}.group-visibility-badge{padding:2px 8px;border:1px solid var(--theme-border, #456149);border-radius:999px;color:var(--theme-muted, #abbcaf);font-size:.78rem;line-height:1.4}.groups-page>.group-page-nav{align-items:center;justify-content:space-between}.group-page-tabs,.group-page-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.groups-page .group-page-nav button{margin:0}.group-request-dot{display:inline-block;width:7px;height:7px;margin-left:7px;border-radius:50%;background:#f2d34f;vertical-align:middle}.groups-page .group-notification-option{display:flex;align-items:center;gap:8px;width:fit-content;font-size:.9rem}.groups-page .group-notification-option input{width:auto;margin:0}.group-invitation-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:8px 0;border-top:1px solid var(--theme-border, #456149)}.group-invitation-notice{display:grid;gap:6px}.group-invitation-notice>div{display:flex;gap:6px}@media(max-width:550px){.group-page-actions{width:100%}}.groups-page article,.groups-page>section{padding:18px;border:1px solid var(--theme-border, #34513b);border-radius:10px;background:var(--theme-surface, #102119);overflow-wrap:anywhere}.groups-page article{position:relative;margin-block:10px}.group-card-link{color:inherit;text-decoration:none}.group-card-link:after{content:"";position:absolute;inset:0;border-radius:inherit}.group-card-link:hover h2,.group-card-link:focus-visible h2{text-decoration:underline}.group-card-link:focus-visible:after{outline:2px solid var(--theme-accent, #d4f589);outline-offset:2px}.groups-page article>button{position:relative;z-index:1}.groups-page form{display:grid;gap:12px}.groups-page label{display:grid;gap:6px}.groups-page input,.groups-page textarea,.groups-page select{width:100%;min-width:0;padding:10px;border:1px solid var(--theme-border, #456149);border-radius:6px;color:var(--theme-text, #edf3e9);background:var(--theme-bg, #0b1712);font:inherit}.groups-page textarea{min-height:100px;resize:vertical}.groups-page button{margin:3px 6px 3px 0;padding:8px 12px;border:1px solid var(--theme-border, #456149);border-radius:6px;color:var(--theme-text, #edf3e9);background:var(--theme-raised, #274b32);cursor:pointer}.groups-page button[aria-current=page]{border-color:var(--theme-accent, #d4f589)}.my-groups-panel{padding:12px;display:grid;align-content:start;gap:10px;min-width:0}.my-groups-panel a{overflow-wrap:anywhere}.group-administration h3{margin:22px 0 8px}.group-admin-list{border-top:1px solid var(--theme-border, #456149)}.group-admin-row{display:flex;align-items:center;gap:12px;min-width:0;padding:10px 0;border-bottom:1px solid var(--theme-border, #456149)}.group-user-identity{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.group-user-identity>div{display:grid;gap:2px;min-width:0}.group-user-identity strong,.group-user-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-user-identity small{color:var(--theme-muted, #8a9b91);font-size:.78rem}.group-admin-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}.groups-page .group-role-select{width:auto;min-width:112px;max-width:140px;padding:7px 8px;font-size:.84rem}.groups-page .group-admin-actions button{margin:0;padding:7px 9px;font-size:.82rem}.group-role-badge{color:var(--theme-muted, #8a9b91);font-size:.82rem}@media(max-width:550px){.group-admin-row,.group-user-identity{gap:6px}.groups-page .group-role-select{min-width:92px;max-width:105px}}
