:root{--color-bg: #f0e0d6;--color-bg-elevated: #f8efe8;--color-text: #800000;--color-text-muted: #9c5c50;--color-border: #d8c3b2;--color-accent: #1c71d8;--color-accent-hover: #155cb3;--color-danger: #b32828}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg: #282a2e;--color-bg-elevated: #31343a;--color-text: #c5c8c6;--color-text-muted: #8b8f93;--color-border: #3c4046;--color-accent: #1c71d8;--color-accent-hover: #3d8ae5;--color-danger: #e06c75}}:root[data-theme=dark]{--color-bg: #282a2e;--color-bg-elevated: #31343a;--color-text: #c5c8c6;--color-text-muted: #8b8f93;--color-border: #3c4046;--color-accent: #1c71d8;--color-accent-hover: #3d8ae5;--color-danger: #e06c75}:root[data-theme=light]{--color-bg: #f0e0d6;--color-bg-elevated: #f8efe8;--color-text: #800000;--color-text-muted: #9c5c50;--color-border: #d8c3b2;--color-accent: #1c71d8;--color-accent-hover: #155cb3;--color-danger: #b32828}:root{color-scheme:light dark;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-height:100vh;background-color:var(--color-bg);color:var(--color-text)}a{color:var(--color-accent);text-decoration:inherit}a:hover{color:var(--color-accent-hover)}button{border-radius:8px;border:1px solid var(--color-border);padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--color-bg-elevated);color:var(--color-text);cursor:pointer;transition:border-color .15s,background-color .15s}button:hover{border-color:var(--color-accent)}button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.site-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border)}.site-header__logo{font-weight:700;font-size:1.25rem;color:var(--color-text)}.site-header__actions{display:flex;align-items:center;gap:1rem}.site-header__nav-link{color:var(--color-text-muted);font-size:.95rem}.site-header__nav-link:hover{color:var(--color-text)}.site-header__cta{display:inline-block;padding:.5em 1em;border-radius:8px;background-color:var(--color-accent);color:#fff}.site-header__cta:hover{background-color:var(--color-accent-hover);color:#fff}.profile-menu{position:relative}.profile-menu__trigger{padding:0;border:none;background:none;border-radius:999px;cursor:pointer}.profile-menu__avatar{width:36px;height:36px;border-radius:999px;display:block;object-fit:cover}.profile-menu__avatar--placeholder{background-color:var(--color-bg-elevated);border:1px solid var(--color-border)}.profile-menu__dropdown{position:absolute;right:0;top:calc(100% + .5rem);min-width:200px;background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:8px;padding:.5rem;display:flex;flex-direction:column;gap:.25rem;z-index:10}.profile-menu__section{padding:.5rem}.profile-menu__label{display:block;font-size:.75rem;color:var(--color-text-muted);margin-bottom:.4rem}.profile-menu__theme-options{display:flex;gap:.25rem}.profile-menu__theme-option{flex:1;padding:.3em .5em;font-size:.8rem;text-transform:capitalize}.profile-menu__theme-option--active{border-color:var(--color-accent);color:var(--color-accent)}.profile-menu__region-select{width:100%;padding:.3em .5em;font-size:.8rem}.profile-menu__item{display:block;padding:.5rem;border-radius:6px;color:var(--color-text)}.profile-menu__item:hover{background-color:var(--color-bg);color:var(--color-text)}.games-page{padding:1.5rem}.games-page__toolbar{display:flex;gap:1rem;margin-bottom:1.5rem}.games-page__search{flex:1;padding:.6em 1em;border-radius:8px;border:1px solid var(--color-border);background-color:var(--color-bg-elevated);color:var(--color-text);font-size:1em}.games-page__view-toggle{display:flex;gap:.25rem}.games-page__add{display:inline-flex;align-items:center;padding:.5em 1em;border-radius:8px;background-color:var(--color-accent);color:#fff;white-space:nowrap}.games-page__add:hover{background-color:var(--color-accent-hover);color:#fff}.games-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}.game-card{color:var(--color-text);border:1px solid var(--color-border);border-radius:10px;overflow:hidden;display:block}.game-card:hover{border-color:var(--color-accent);color:var(--color-text)}.game-card__art{position:relative;aspect-ratio:3 / 4;background-color:var(--color-bg-elevated)}.game-card__art-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.game-card__corner{position:absolute;font-size:.7rem;padding:.2em .4em;border-radius:4px;background-color:#0009;color:#fff}.game-card__corner--tl{top:.4em;left:.4em}.game-card__corner--tr{top:.4em;right:.4em}.game-card__corner--bl{bottom:.4em;left:.4em}.game-card__corner--br{bottom:.4em;right:.4em}.game-card__name{padding:.6em;font-size:.9rem}.games-list{width:100%;border-collapse:collapse}.games-list td{padding:.6em;border-bottom:1px solid var(--color-border)}.games-list__label{color:var(--color-text-muted)}.combobox{position:relative}.combobox input{width:100%;padding:.5em .7em;border-radius:8px;border:1px solid var(--color-border);background-color:var(--color-bg-elevated);color:var(--color-text);font-size:1em}.combobox__list{position:absolute;top:calc(100% + .25rem);left:0;right:0;max-height:220px;overflow-y:auto;background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:8px;padding:.25rem;margin:0;list-style:none;z-index:10}.combobox__list button{display:block;width:100%;text-align:left;padding:.4em .6em;border:none;background:none;border-radius:6px;color:var(--color-text)}.combobox__list button:hover{background-color:var(--color-bg);border-color:transparent}.new-game{padding:1.5rem;max-width:420px}.new-game form{display:flex;flex-direction:column;gap:1rem}.new-game label{display:flex;flex-direction:column;gap:.3rem;font-size:.9rem;color:var(--color-text-muted)}.new-game__hint{margin:.3rem 0 0;font-size:.8rem;color:var(--color-accent)}.new-game__text-input{width:100%;padding:.5em .7em;border-radius:8px;border:1px solid var(--color-border);background-color:var(--color-bg-elevated);color:var(--color-text);font-size:1em}.new-game__error{color:var(--color-danger)}.game-detail{padding:1.5rem}.game-detail__header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.game-detail__icon{width:48px;height:48px;border-radius:8px;object-fit:cover;background-color:var(--color-bg-elevated)}.game-detail__edit-name{background:none;border:none;font-size:1rem;color:var(--color-text-muted);padding:.2em}.game-detail__edit-name:hover{color:var(--color-accent)}.game-detail__name-form{display:flex;align-items:center;gap:.5em}.game-detail__name-form input{padding:.4em .6em;border-radius:6px;border:1px solid var(--color-border);background-color:var(--color-bg-elevated);color:var(--color-text);font-size:1.2rem}.game-detail__upload{margin:1rem 0}.game-detail__error{color:var(--color-danger)}.game-detail__saves{width:100%;border-collapse:collapse}.game-detail__saves th{text-align:left;color:var(--color-text-muted);font-weight:500;font-size:.85rem;padding:.5em;border-bottom:1px solid var(--color-border)}.game-detail__saves td{padding:.5em;border-bottom:1px solid var(--color-border)}.game-detail__star{background:none;border:none;font-size:1.1rem;padding:.2em;color:var(--color-text-muted)}.game-detail__star--active{color:var(--color-accent)}.game-detail__danger-zone{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--color-border)}.game-detail__delete{background:none;border:1px solid var(--color-danger);color:var(--color-danger);padding:.4em .8em;border-radius:6px;font-size:.9rem}.game-detail__delete:hover:not(:disabled){background-color:var(--color-danger);color:var(--color-bg)}.game-detail__delete:disabled{opacity:.6}.settings-page{display:flex;min-height:calc(100vh - 65px)}.settings-page__sidebar{width:220px;border-right:1px solid var(--color-border);padding:1rem;display:flex;flex-direction:column;gap:.25rem}.settings-page__nav-item{text-align:left;background:none;border:none;padding:.6em .8em;border-radius:6px;color:var(--color-text)}.settings-page__nav-item:hover{background-color:var(--color-bg-elevated)}.settings-page__nav-item--active{background-color:var(--color-bg-elevated);color:var(--color-accent)}.settings-page__content{flex:1;padding:1.5rem}.settings-sessions{list-style:none;padding:0;margin:0}.settings-sessions__item{display:flex;align-items:center;justify-content:space-between;padding:.75em 0;border-bottom:1px solid var(--color-border)}.settings-sessions__current,.settings-sessions__meta,.settings-link-device__hint{color:var(--color-text-muted);font-size:.85rem}.dev-admin{padding:1.5rem;max-width:700px}.dev-admin__warning{color:var(--color-danger);font-weight:500}.dev-admin__actions{display:flex;gap:.75rem;margin:1rem 0}.dev-admin__status{font-family:monospace;font-size:.85rem;background-color:var(--color-bg-elevated);padding:.5em;border-radius:6px;word-break:break-all}.dev-admin form{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem}.dev-admin input,.dev-admin select{padding:.4em .6em;border-radius:6px;border:1px solid var(--color-border);background-color:var(--color-bg-elevated);color:var(--color-text)}.dev-admin ul{padding-left:1.2rem}.docs{min-height:100vh;background-color:var(--color-bg);color:var(--color-text)}.docs__topbar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border);font-size:.9rem}.docs__brand{font-weight:700;font-size:1.1rem;color:var(--color-text)}.docs__brand span{font-weight:400;color:var(--color-text-muted)}.docs__body{max-width:46rem;margin:0 auto;padding:2.5rem 1.5rem 5rem;line-height:1.65}.docs__body h1{font-size:1.9rem;margin:0 0 .75rem}.docs__lead{font-size:1.05rem;color:var(--color-text);margin:0 0 1.5rem}.docs__toc{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;padding:1rem 0;margin-bottom:1rem;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);font-size:.9rem}.docs__toc a{color:var(--color-text-muted)}.docs__toc a:hover{color:var(--color-accent)}.docs__body section{margin-top:2.75rem;scroll-margin-top:1rem}.docs__body h2{font-size:1.3rem;margin:0 0 .75rem}.docs__body h3{font-size:1rem;margin:1.5rem 0 .4rem}.docs__body ul,.docs__body ol{padding-left:1.35rem}.docs__body li{margin:.4rem 0}.docs__body code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88em;background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:4px;padding:.08em .32em}.docs__code{background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:8px;padding:.9rem 1rem;overflow-x:auto;margin:.75rem 0}.docs__code code{background:none;border:none;padding:0;font-size:.82rem;line-height:1.5;white-space:pre}.account-deleted{max-width:32rem;margin:0 auto;padding:4rem 1.5rem}.account-deleted h1{font-size:1.5rem;margin:0 0 1rem}.account-deleted p{line-height:1.6;color:var(--color-text)}.account-deleted__error{color:var(--color-danger)}.account-deleted__actions{display:flex;align-items:center;gap:1rem;margin-top:2rem}.account-deleted__reinstate{background-color:var(--color-accent);color:var(--color-on-accent);border-color:transparent}.account-deleted__reinstate:hover:not(:disabled){background-color:var(--color-accent-hover);border-color:transparent}.account-deleted__reinstate:disabled{opacity:.6;cursor:default}.account-deleted__logout{color:var(--color-text-muted)}.account-deleted__logout:hover{color:var(--color-text)}.download{max-width:44rem;margin:0 auto;padding:3rem 1.5rem 4rem}.download h1{font-size:1.75rem;margin:0 0 1rem}.download__lead{font-size:1.05rem;line-height:1.6;color:var(--color-text);margin:0 0 2rem}.download__cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}.download__cta{display:inline-block;padding:.7em 1.4em;border-radius:8px;background-color:var(--color-accent);color:var(--color-on-accent);font-weight:500;white-space:nowrap}.download__cta:hover{background-color:var(--color-accent-hover);color:var(--color-on-accent)}.download__cta-note{font-size:.9rem;color:var(--color-text-muted)}.download__platforms{list-style:none;padding:0;margin:1.25rem 0 0;display:flex;flex-wrap:wrap;gap:1.25rem;font-size:.95rem}.download__section{margin-top:2.5rem}.download__section h2{font-size:1.15rem;margin:0 0 .75rem}.download__section p{line-height:1.6;color:var(--color-text)}.download__section ol{line-height:1.6;padding-left:1.25rem}.download__section li{margin:.4rem 0}
