:root{--bg:#f5f7fb;--panel:#fff;--ink:#202d42;--muted:#7a879b;--line:#e8edf4;--accent:#635bdf;--purple:#eeedff;--green:#249c79;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--bg);font-size:14px;line-height:1.5}*{box-sizing:border-box}body{margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,.button{background:var(--accent);color:white;border:0;border-radius:8px;padding:11px 17px;font:inherit;font-weight:600;cursor:pointer;display:inline-block}button:hover,.button:hover{background:#5149c9;text-decoration:none}button:disabled{opacity:.6;cursor:wait}.secondary{background:#f1f1fb;color:var(--accent)}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:white;border-right:1px solid var(--line);padding:31px 20px;display:flex;flex-direction:column;z-index:2}.brand{display:flex;align-items:center;gap:12px;padding:0 12px 29px;color:var(--ink);font-size:17px;font-weight:800;line-height:1.1;letter-spacing:1.5px}.brand:hover{text-decoration:none}.brand small{font-size:9px;letter-spacing:2px;color:var(--muted)}.brand-icon{display:inline-grid;place-items:center;background:var(--accent);color:#fff;font-size:33px;width:43px;height:43px;border-radius:12px}.workspace{font-size:10px;font-weight:700;letter-spacing:1.6px;color:#98a2b2;padding:21px 13px 11px}.workspace span{float:right}.nav-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:8px;color:#637088;margin:3px 0;font-size:13px}.nav-item:hover,.nav-item.active{background:var(--purple);color:var(--accent);text-decoration:none}.nav-item small{margin-left:auto;font-size:9px}.game-dot{height:23px;width:23px;background:#edf1f8;border-radius:6px;display:grid;place-items:center;font-size:10px;font-weight:bold}.sidebar nav{overflow:auto}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;display:flex;gap:10px;align-items:center;font-size:12px}.sidebar-bottom small{display:block;color:var(--muted);font-size:10px}.sidebar-bottom form{margin-left:auto}.avatar{background:#f0e9df;color:#947355;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:700}.icon-button{padding:5px;background:transparent;color:var(--muted)}.main{margin-left:250px}.topbar{height:71px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 40px;font-size:12px;gap:15px}.private-label{font-size:11px;color:#6c7a90}.private-label::first-letter{color:#3fbd97}.content{max-width:1550px;margin:auto;padding:35px 40px 20px}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;gap:15px}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:700;color:var(--muted)}h1{font-size:28px;letter-spacing:-.8px;margin:6px 0}h2{font-size:17px;letter-spacing:-.3px;margin:0 0 13px}h3{font-size:17px;margin:15px 0 8px}p{margin:8px 0 16px}.muted{color:var(--muted)}.date-label{font-size:11px;color:var(--muted);white-space:nowrap}.welcome-banner{background:#eeedff;border:1px solid #e3e1fa;border-radius:13px;display:flex;align-items:center;justify-content:space-between;padding:27px 32px;overflow:hidden}.welcome-banner .eyebrow{color:#8b84c6}.welcome-banner h2{font-size:25px;letter-spacing:-.6px;color:#484184;margin:10px 0 6px}.welcome-banner p{font-size:12px;color:#8a84af;margin:0}.banner-art{font-size:90px;color:#7971de;line-height:1;position:relative;transform:rotate(-12deg);margin-right:32px}.banner-art span{position:absolute;font-size:25px;right:-38px;top:-8px;color:#b5aceb}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:24px 0 32px}.stat{background:#fff;border:1px solid var(--line);border-radius:11px;padding:19px 21px}.stat>div{font-size:12px;color:#657288}.stat>div span{float:right;color:#8d85e5}.stat strong{font-size:30px;display:block;margin:10px 0 4px;font-weight:650;line-height:1.1}.stat small{font-size:10px;color:#9aa5b4}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 16px;gap:15px}.section-heading h2{margin:0}.section-heading>.muted{font-size:11px}.count{font-size:11px;padding:3px 7px;background:#edf0f7;border-radius:5px;color:var(--muted);margin-left:6px}.game-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:30px}.game-card{background:white;border:1px solid var(--line);border-radius:12px;padding:22px;color:var(--ink);transition:box-shadow .2s}.game-card:hover{text-decoration:none;box-shadow:0 6px 18px #26365b0b}.game-card-top{display:flex;align-items:center;justify-content:space-between}.game-avatar{height:44px;width:44px;border-radius:12px;background:#f0eaff;color:#8a63cb;font-size:22px;font-weight:700}.game-card:nth-child(even) .game-avatar{background:#e5f4f5;color:#469b9c}.game-card p{color:var(--muted);font-size:12px;min-height:36px;overflow-wrap:anywhere}.game-card-bottom{border-top:1px solid var(--line);padding-top:15px;display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.game-card-bottom strong{color:#4d5b70}.new-count{color:var(--accent);background:var(--purple);border-radius:5px;padding:3px 6px;margin-left:9px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.panel-heading{padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:14px}.panel-heading h2{margin:0}.panel-heading span{font-size:11px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:#8b97aa;background:#fafbfd;font-weight:600;text-align:left;padding:13px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:18px 20px;border-bottom:1px solid #f0f3f8}tr:last-child td{border-bottom:0}.feedback-title{color:#36445c;font-weight:600;display:block;min-width:165px;max-width:420px;overflow-wrap:anywhere;margin-bottom:4px}.feedback-title+small{font-size:10px;display:block}.badge{display:inline-block;padding:4px 9px;border-radius:5px;font-size:10px;font-weight:600;white-space:nowrap;background:#edf1f7;color:#78869a}.badge-new{background:#eeedff;color:#7770d7}.badge-reviewing{background:#fff4df;color:#c09542}.badge-planned{background:#e9efff;color:#6c8acb}.badge-resolved,.badge-enabled{background:#e9f7f0;color:#4b9e7d}.badge-bug{background:#fceced;color:#cf7c85}.badge-suggestion{background:#edf0fe;color:#8490cd}.priority{font-size:11px;white-space:nowrap;color:#99a4b5}.priority-high{color:#dba05d}.priority-critical{color:#d46f7e}.priority-normal{color:#7f90ad}.nowrap{white-space:nowrap}footer{display:flex;justify-content:space-between;margin-top:35px;color:#a2abba;font-size:10px}.notice,.error{padding:14px 18px;border-radius:8px;margin-bottom:20px;background:#e7f7ef;color:#318361}.error{background:#fff0f0;color:#ae4958}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;color:#67758a;margin-bottom:17px}input,select,textarea{width:100%;font:inherit;color:var(--ink);background:white;border:1px solid #dfe5ee;border-radius:7px;padding:11px 12px;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #aaa4ff;outline-offset:1px}textarea{resize:vertical}.filters{padding:22px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;border-bottom:1px solid var(--line);align-items:end}.filters label{margin:0}.filters label:first-of-type{grid-column:span 2}.filters>a{padding-bottom:10px}.pagination{display:flex;justify-content:space-between;align-items:center;padding:19px 22px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);gap:15px}.pagination>div{display:flex;gap:8px}.empty{padding:50px 24px;text-align:center;color:var(--muted)}.empty h2,.empty h3{color:#637088}.empty-icon{font-size:36px;color:#b7b3eb}.auth-main{min-height:100vh;background:radial-gradient(ellipse at 30% 20%,#eeedff,transparent 65%);display:grid;place-items:center}.auth-main .content{width:min(580px,100%)}.auth-main .page-heading{justify-content:center;text-align:center}.auth-main h1{font-size:29px}.auth-card{padding:34px;border:1px solid var(--line);background:white;border-radius:16px;box-shadow:0 12px 50px #3c38870a}.auth-card .brand-icon{margin-bottom:22px}.auth-card h2{font-size:20px}.auth-card p{font-size:12px}.auth-card button{width:100%}.auth-card button span{float:right}.auth-card>p:last-child{margin:20px 0 0;font-size:11px;text-align:center}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:22px;margin-top:18px}.detail-body{padding:25px;margin-bottom:22px}.detail-body h2{margin:12px 0 20px}.triage{align-self:start}.triage button{width:100%}.prose{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;color:#536178}.metadata{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);padding-top:20px;gap:19px}.metadata small{display:block;color:var(--muted);font-size:10px}.metadata span{font-size:12px;overflow-wrap:anywhere}.note{border-bottom:1px solid var(--line);padding:15px 0;margin-bottom:20px}.note small{display:block;font-size:10px}.note p{margin-bottom:8px}.manage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.check{flex-direction:row;align-items:center;gap:9px;font-weight:400}.check input{width:auto}.manage-grid button{width:100%}fieldset{border:1px solid var(--line);border-radius:7px;margin:0 0 17px;padding:13px}legend{font-size:11px;color:var(--muted)}.back-link{font-size:12px}:focus-visible{outline:2px solid #aaa4ff;outline-offset:3px}@media(min-width:1500px){.game-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:1100px){.sidebar{width:210px;padding:25px 14px}.main{margin-left:210px}.content{padding:28px 24px}.topbar{padding:0 24px}.stats{gap:10px}.stat{padding:16px 13px}.detail-grid{grid-template-columns:minmax(0,1fr) 230px}.filters{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.sidebar{position:static;width:100%;padding:15px 18px;display:block;border-bottom:1px solid var(--line)}.brand{padding:0 0 12px;font-size:13px}.brand-icon{width:32px;height:32px;font-size:25px}.sidebar>.workspace,.sidebar nav .workspace{display:none}.sidebar nav{display:flex;gap:5px;overflow-x:auto}.nav-item{white-space:nowrap;padding:8px;font-size:11px}.game-dot{height:19px;width:19px}.sidebar-bottom{padding-top:12px;margin-top:12px}.sidebar-bottom .avatar{width:25px;height:25px}.sidebar-bottom small{display:inline;margin-left:7px}.main{margin-left:0}.topbar{height:44px;padding:0 18px;font-size:10px}.private-label{font-size:9px}.content{padding:24px 18px 18px}.page-heading{margin-bottom:20px}.date-label{display:none}h1{font-size:25px}.eyebrow{font-size:8px}.welcome-banner{padding:23px}.welcome-banner h2{font-size:21px}.banner-art{font-size:60px;margin-right:15px}.stats{grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0 25px}.stat{padding:16px}.stat strong{font-size:28px}.game-grid,.manage-grid,.detail-grid{grid-template-columns:1fr;gap:15px}.game-card{padding:20px}.section-heading>.muted,.panel-heading>.muted{display:none}.panel-heading{padding:20px}.filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px}.filters label:first-of-type{grid-column:span 2}.pagination{align-items:start;flex-direction:column}.detail-body{padding:21px}.triage{grid-row:1}.auth-card{padding:26px}.auth-main h1{font-size:25px}.metadata{gap:15px}footer{margin-top:25px}}

/* Gamalith Studio wordmark and text monogram. */
.brand-icon{font-family:Segoe UI,Arial,sans-serif;font-size:26px;font-weight:800;letter-spacing:-1px;flex-shrink:0}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:24px}.auth-brand .brand-icon{margin-bottom:0}.auth-brand strong{display:block;font-size:15px;color:var(--ink)}.auth-brand small{display:block;font-size:10px;color:var(--muted);letter-spacing:1.4px;text-transform:uppercase}.brand>span:last-child{min-width:0}.brand small{letter-spacing:1.2px}.auth-main footer{gap:16px}@media(max-width:760px){.brand-icon{font-size:21px}footer{gap:12px;flex-wrap:wrap}}

/* Supplied Gamalith Studio logo, displayed without altering the source image. */
.brand-logo{display:block;width:56px;height:56px;object-fit:contain;background:transparent;border-radius:8px}.brand{font-size:15px;gap:10px}.brand small{font-size:8px;letter-spacing:1px}.auth-brand .brand-logo{width:76px;height:76px}@media(max-width:760px){.brand-logo{width:44px;height:44px}.auth-brand .brand-logo{width:64px;height:64px}}

/* Theme controls, studio assets and explicit sign-out action. */
:root{color-scheme:light}
.studio-logo{display:block;flex-shrink:0}
.logo-night,.theme-icon-day{display:none}
.topbar-actions{display:flex;align-items:center;gap:20px}
.auth-toolbar{display:flex;justify-content:flex-end;margin-bottom:20px}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;padding:8px 12px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font-size:12px;border-radius:8px}
.theme-toggle:hover{background:var(--purple);color:var(--accent)}
.theme-toggle svg,.logout-button svg{flex-shrink:0}
.sidebar-bottom{display:block}
.sidebar-account{display:flex;align-items:center;gap:10px;min-width:0}
.account-copy{min-width:0}
.account-copy strong{display:block;overflow-wrap:anywhere}
.sidebar-account small{display:block;margin-left:0}
.sidebar-bottom form.logout-form{margin:15px 0 0}
.logout-button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;padding:10px 14px;background:#fff1f2;border:1px solid #f2d2d8;color:#a5354d;border-radius:8px;font-size:12px;font-weight:650}
.logout-button:hover{background:#ffe3e8;color:#8c233b}
[data-theme="night"]{color-scheme:dark;--bg:#10141c;--panel:#181f2b;--ink:#edf2fc;--muted:#a2aec2;--line:#2b3648;--accent:#b5aaff;--purple:#302c4c;--green:#5ac9a2;background:var(--bg);color:var(--ink)}
[data-theme="night"] body{background:var(--bg);color:var(--ink)}
[data-theme="night"] .sidebar,[data-theme="night"] .topbar,[data-theme="night"] .stat,[data-theme="night"] .game-card,[data-theme="night"] .panel,[data-theme="night"] .auth-card{background:var(--panel);color:var(--ink);border-color:var(--line)}
[data-theme="night"] .auth-main{background:radial-gradient(ellipse at 30% 20%,#29233f,transparent 65%),var(--bg)}
[data-theme="night"] .brand,[data-theme="night"] .feedback-title,[data-theme="night"] .game-card-bottom strong{color:var(--ink)}
[data-theme="night"] .logo-day,[data-theme="night"] .theme-icon-night{display:none}
[data-theme="night"] .logo-night{display:block;background:transparent}
[data-theme="night"] .theme-icon-day{display:block}
[data-theme="night"] button,[data-theme="night"] .button{background:#7562d5;color:#fff}
[data-theme="night"] button:hover,[data-theme="night"] .button:hover{background:#8874e7}
[data-theme="night"] .theme-toggle{background:var(--panel);color:var(--ink);border-color:var(--line)}
[data-theme="night"] .theme-toggle:hover,[data-theme="night"] .secondary{background:var(--purple);color:var(--accent)}
[data-theme="night"] .logout-button{background:#372530;color:#ffc1cf;border-color:#61404b}
[data-theme="night"] .logout-button:hover{background:#4b2e3b}
[data-theme="night"] .nav-item{color:#b5c0d2}
[data-theme="night"] .nav-item:hover,[data-theme="night"] .nav-item.active{background:var(--purple);color:var(--accent)}
[data-theme="night"] .workspace,[data-theme="night"] .stat>div,[data-theme="night"] .stat small,[data-theme="night"] .private-label,[data-theme="night"] label,[data-theme="night"] footer{color:var(--muted)}
[data-theme="night"] .game-dot,[data-theme="night"] .count{background:#293246;color:#c7d1e4}
[data-theme="night"] .avatar{background:#40372f;color:#e5c8a6}
[data-theme="night"] .game-avatar{background:#3a2c50;color:#dac4ff}
[data-theme="night"] .game-card:nth-child(even) .game-avatar{background:#1d3b40;color:#91d9da}
[data-theme="night"] .welcome-banner{background:#25213f;border-color:#3c355d}
[data-theme="night"] .welcome-banner h2{color:#e1d9ff}
[data-theme="night"] .welcome-banner p,[data-theme="night"] .welcome-banner .eyebrow{color:#bdb2e1}
[data-theme="night"] .banner-art{color:#a594ee}
[data-theme="night"] th{background:#151c27;color:#bbc8da;border-color:var(--line)}
[data-theme="night"] td{border-color:var(--line)}
[data-theme="night"] input,[data-theme="night"] select,[data-theme="night"] textarea{background:#111925;color:var(--ink);border-color:#3b4960}
[data-theme="night"] input::placeholder,[data-theme="night"] textarea::placeholder{color:#8d9bb1}
[data-theme="night"] .prose{color:#c6d0e1}
[data-theme="night"] .badge{background:#2b3547;color:#d1dbea}
[data-theme="night"] .badge-new{background:#343052;color:#c8bfff}
[data-theme="night"] .badge-reviewing{background:#45361d;color:#ffd58e}
[data-theme="night"] .badge-planned,[data-theme="night"] .badge-suggestion{background:#293552;color:#b2c7ff}
[data-theme="night"] .badge-bug{background:#442935;color:#f5a9b7}
[data-theme="night"] .badge-resolved,[data-theme="night"] .badge-enabled{background:#1b3c34;color:#8ee1bb}
[data-theme="night"] .priority{color:#acbad0}
[data-theme="night"] .priority-high{color:#f3bd6c}
[data-theme="night"] .priority-critical{color:#ff9dab}
[data-theme="night"] .notice{background:#1b3c34;color:#a0e5c9}
[data-theme="night"] .error{background:#442935;color:#ffc1cf}
[data-theme="night"] .empty h2,[data-theme="night"] .empty h3{color:#c6d0e1}
@media(max-width:760px){
  .topbar-actions{gap:8px}.topbar-actions .private-label{display:none}
  .theme-toggle{font-size:11px;padding:6px 9px}.topbar{height:50px}
  .sidebar-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}
  .sidebar-bottom form.logout-form{margin:0;flex-shrink:0}.logout-button{width:auto;padding:8px 12px}
  .sidebar-account small{display:block;margin-left:0}.auth-toolbar{margin-bottom:15px}
}

/* A single logo element is used even while styles/scripts are loading. */
[data-theme="night"] .brand-logo{background:transparent}
.theme-symbol{font-size:18px;line-height:1;display:inline-block;min-width:18px;text-align:center}

/* Explicit management actions and server-confirmed deletion. */
.management-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.management-heading h2{margin:0}.management-identifier{font-size:12px;overflow-wrap:anywhere;margin:12px 0 18px}.edit-panel summary{cursor:pointer;display:list-item;list-style-position:inside;border:1px solid var(--line);border-radius:8px;padding:10px 13px;color:var(--accent);font-weight:600;font-size:12px;background:var(--purple)}.edit-panel[open] summary{margin-bottom:20px}.management-delete{margin-top:14px}.management-delete a{display:block;text-align:center}.management-actions{display:flex;gap:12px;flex-wrap:wrap}.management-actions>*{flex:1;text-align:center;white-space:nowrap}.field-help{font-size:11px;color:var(--muted);margin:12px 0}.danger-button,.button.danger-button{background:#fff1f2;color:#a5354d;border:1px solid #f2d2d8}.danger-button:hover,.button.danger-button:hover{background:#ffe3e8;color:#8c233b}.deletion-panel{max-width:700px}.deletion-panel h2{font-size:23px;overflow-wrap:anywhere}.deletion-panel p{line-height:1.8}.deletion-panel form{margin-top:25px}[data-theme="night"] .danger-button,[data-theme="night"] .button.danger-button{background:#372530;color:#ffc1cf;border-color:#61404b}[data-theme="night"] .danger-button:hover,[data-theme="night"] .button.danger-button:hover{background:#4b2e3b}
/* Game thumbnails use fixed geometry so loading never shifts the cards. */
.game-thumbnail{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:10px;margin-bottom:18px;background:var(--bg)}
.thumbnail-editor{margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--bg)}
.thumbnail-preview{display:block;width:100%;max-width:360px;aspect-ratio:1/1;object-fit:cover;border-radius:8px;margin-bottom:14px;background:var(--panel)}
.thumbnail-preview[hidden]{display:none}
.thumbnail-editor input[type=file]{max-width:100%;padding:10px;font-size:12px}
.thumbnail-editor input::file-selector-button{border:0;border-radius:5px;padding:7px 10px;margin-right:10px;background:var(--accent);color:white;cursor:pointer}

.game-dot,.game-avatar{overflow:hidden;flex-shrink:0;display:grid;place-items:center}.game-icon-image{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:1/1}
.game-grid{grid-template-columns:repeat(auto-fill,minmax(220px,260px));gap:16px;align-items:start}
.game-card{padding:14px}.game-card h3{font-size:15px;margin:12px 0 6px}.game-card p{min-height:32px;margin-bottom:12px}.game-card-bottom{padding-top:12px}
.game-thumbnail{margin-bottom:12px}.game-thumbnail,.thumbnail-preview,.game-icon-image{object-fit:contain}
.game-card .game-avatar{width:32px;height:32px;border-radius:8px;font-size:17px}
@media(max-width:520px){.game-grid{grid-template-columns:minmax(0,260px)}}
