[hidden]{display:none!important}.edit-entry,#tools button,#panel button{font:600 13px/1.35 Arial,sans-serif;border:1px solid #655a47;background:#362f28;color:#f5f0eb;border-radius:7px;padding:9px 13px}.edit-entry{display:block;margin:0 4.5% 20px auto}.editing{padding-bottom:90px}.editing [data-copy]:hover,.editing .photo:hover,.editing .brand img:hover,.editing .hero:hover{outline:1px dashed #edce9c;outline-offset:3px;cursor:pointer}.editing #tools{position:fixed;bottom:14px;left:50%;transform:translateX(-50%);z-index:4;display:flex;align-items:center;gap:8px;background:#27211a;border:1px solid #7e6c50;box-shadow:0 4px 30px #0009;padding:10px 14px;border-radius:12px;max-width:96vw;width:max-content}#tools strong{font-size:13px;margin-right:6px}#panel{width:min(470px,94vw);max-height:86dvh;overflow:auto}#panel h2{font-size:25px;margin:16px 0 20px}.panel-head{display:flex;align-items:center;justify-content:space-between;color:#d3c1a3;font-size:12px}#panel #dismiss{font-size:20px;padding:2px 9px}#fields{display:grid;gap:12px}#fields textarea{min-height:78px;resize:vertical;width:100%;background:#171410;color:#fff;border:1px solid #615644;padding:12px;border-radius:7px;font:inherit}#panel .primary{background:#edcc96;color:#1f1a11;border-color:#edcc96}#panel .danger{color:#ffb3be}#panel img{width:100%;max-height:190px;object-fit:contain;background:#191511;border-radius:8px}.field-list{display:grid;gap:5px;max-height:46vh;overflow:auto}#panel .field-list button{text-align:left;display:grid;gap:3px}.field-list small{font-weight:400}.editor-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}#error{color:#ffb7b7}#error:empty{display:none}#toast{position:fixed;bottom:85px;left:50%;transform:translateX(-50%);z-index:5;background:#3f3628;border:1px solid #837154;padding:10px 18px;border-radius:7px;font-size:14px}#tools button:hover,#panel button:hover{filter:brightness(1.2)}button:disabled{opacity:.55;cursor:default}@media(max-width:700px){.editing #tools{flex-wrap:wrap;justify-content:center;width:96vw;bottom:5px;padding:6px;gap:4px}#tools strong{width:100%;text-align:center}#tools button{font-size:12px;padding:6px}.editing{padding-bottom:110px}}

.catalog{border:1px solid #453d31;background:#1d1813;border-radius:12px;padding:16px}.catalogbar{display:flex;justify-content:space-between;gap:14px;align-items:center;border-bottom:1px solid #3d362d;padding-bottom:12px}.catalogbar input{max-width:260px}.catalogbar .filters{flex-wrap:wrap}#gameList{overflow:auto;max-height:306px;scrollbar-color:#706451 #1d1813}.game-row{display:flex;gap:14px;align-items:center;min-height:57px;padding:9px 3px;border-bottom:1px solid #352e27}.game-row>div{flex:1}.game-row small{display:block;margin-top:3px}.game-row strong{font-size:14px}.state,.pick,.minor,#newGame{border:1px solid #5b5244;padding:6px 9px;border-radius:5px;background:#2f2821;color:#e7dccb;font-size:12px}.state.installed{color:#9fe6b7}.state.disc{color:#f5e3c6}.state.download{color:#d5c3a1}.pick{background:transparent}.empty{color:#c7bfb1;font-size:14px;padding:15px}.custom-section>p{white-space:pre-wrap;line-height:1.6}.custom-section figure{margin:12px 0}.custom-section img{max-width:100%;max-height:460px;border-radius:9px}.custom-section figcaption{color:#bfb7ab;padding:6px 0}.custom-section .cta,.custom-section>.minor{margin:10px 0}.editing .custom-section>p,.editing .custom-section h2,.editing .game-row strong{cursor:pointer}.guest{display:grid;grid-template-columns:1fr 1fr;gap:10px}#booking{max-height:90dvh;overflow:auto}#booking form{gap:9px}#tools{flex-wrap:wrap;justify-content:center}.booking-rows article{border-bottom:1px solid #5c5448;padding:10px 0}.booking-rows p{overflow-wrap:anywhere;font-size:14px;margin:6px 0}@media(max-width:720px){.catalogbar{align-items:stretch;flex-direction:column}.catalogbar input{max-width:none}.game-row{gap:5px}.game-row .state{max-width:105px;text-align:center}.catalog{padding:10px}.guest{grid-template-columns:1fr}.editing{padding-bottom:145px}}
.catalog-source{display:block;margin-top:10px}.game-row a:hover,.catalog-source a:hover{text-decoration:underline}#hiddenGames{background:#2f2821;padding:6px;border:1px solid #5b5244;border-radius:5px}

.platforms{display:flex;gap:6px;flex-wrap:wrap}.platforms button{border:1px solid #5f5647;border-radius:8px;background:#201c17;color:#c5beb2;padding:9px 15px;font-size:clamp(15px,2vw,23px);font-weight:700}.platforms button[aria-pressed=true]{background:#453a28;color:#f7e8cf;border-color:#c5a269}.onsite strong{flex:1;font-size:13px;color:#ece1d0}.game-picker{border:1px solid #5b5244;border-radius:7px;margin:0;min-width:0;padding:9px}.game-picker legend{font-size:13px;color:#d7cfc1}#pickOptions{max-height:145px;overflow:auto;scrollbar-color:#706451 #1d1813}#pickOptions label{display:flex;align-items:center;gap:8px;padding:5px 0;cursor:pointer}#pickOptions input{width:15px;height:15px;flex:none;accent-color:#eccb96}#picked{display:flex;gap:4px;flex-wrap:wrap}.chip{background:#3a342a;border:1px solid #857254;color:#f8ebd7;border-radius:5px;padding:4px 7px;font-size:12px;margin-bottom:6px}

#catalogFilters,#catalogPages{display:flex;gap:7px;flex-wrap:wrap;align-items:center}#catalogFilters:not(:empty){padding:10px 0;border-bottom:1px solid #3d362d}#catalogFilters label{font-size:11px}#catalogFilters select{font-size:12px;padding:6px}#catalogPages{justify-content:flex-end;margin:7px 0}#gameList.ps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:408px;padding:9px 4px}.onsite-choice{grid-column:1/-1;text-align:left;background:#28211a;border:1px solid #494032;border-radius:7px;padding:9px 12px}.ps-card{display:grid;grid-template-columns:minmax(60px,28%) minmax(0,1fr);gap:10px;border:1px solid #3e362a;border-radius:9px;padding:9px;background:#201c17}.ps-art{align-self:start;aspect-ratio:1;background:linear-gradient(135deg,#463c2c,#272018);border-radius:6px;overflow:hidden}.ps-art img{width:100%;height:100%;object-fit:cover}.ps-info{display:grid;align-content:start;gap:5px}.ps-info strong{font-size:14px}.ps-info small{font-size:11px}.ps-info button{justify-self:start}.ps-grid .empty{grid-column:1/-1}#fields input[type=checkbox]{width:20px;height:20px;accent-color:#edcd9a}#fields label:has(input[type=checkbox]){display:flex;justify-content:space-between;align-items:center}@media(max-width:920px){#gameList.ps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){#gameList.ps-grid{grid-template-columns:1fr}.ps-art{max-height:95px}#catalogFilters label{max-width:47%}}

#gameTabs{flex-wrap:wrap;max-width:100%}#gameTabs button,.ps-info,.install-pill,#tools button,#fields button,.platforms button{white-space:normal;overflow-wrap:anywhere;min-width:0}.catalogbar,.ps-card,.ps-info,.catalog,.custom-section{min-width:0}#catalogFilters label{max-width:100%;min-width:0}#catalogFilters select,#fields select{max-width:100%}#tools{max-height:32vh;overflow:auto}.install-pill{font-weight:650}#fields button{max-width:100%}#fields input[type=color]{height:40px;padding:3px}

.manager-view :is(.hero,#stations,#club,.custom-section,#tools,#refreshCatalog,.onsite-choice,header nav,header .online,#enter-editor){display:none!important}
.manager-view #top>section:not(#shift):not(#games){display:none}
.manager-view #shift{padding-block:2rem}
.manager-view #shift h1{font-size:clamp(2rem,5vw,3.5rem);margin-bottom:.65rem}
.manager-view #shift h2{margin-top:1.5rem}
.shift-tools{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:1rem 0}
.shift-tools :is(button,input){font:inherit;padding:.6rem .9rem;border:1px solid #796b54;border-radius:.6rem;background:#2a231b;color:#fff}
.manager-view #shift a{color:#f4dfbe}
.manager-view .booking-rows{overflow-wrap:anywhere}
.booking-actions{display:flex;gap:8px;margin-top:8px}.booking-edit{display:grid;gap:8px;margin-top:10px}.booking-edit label{display:grid;gap:4px}.booking-error{color:#ff8080;margin:0}.booking-rows :is(.booking-actions,.booking-edit) :is(button,input,select){font:inherit;padding:.5rem .8rem;border:1px solid #796b54;border-radius:.6rem;background:#2a231b;color:#fff}.booking-edit button{justify-self:start}
.prep-info{display:grid;gap:6px;margin:4px 0}.prep-info p{margin:0}.prep-info button{justify-self:start}

/* Game grid 3×3: all nine covers visible without inner scrolling; centered pager. */
#gameList.ps-grid{max-height:none;overflow:visible}
#catalogPages{justify-content:center;gap:12px;margin:14px 0 4px}
#catalogPages .pager-btn{width:42px;height:42px;padding:0;border-radius:50%;display:grid;place-items:center;border:1px solid #706046;background:linear-gradient(180deg,#312c24,#261f17);color:#f9eedd;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}
#catalogPages .pager-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
#catalogPages .pager-btn:hover:not(:disabled){border-color:#eccb96;box-shadow:0 0 0 3px #eccb9633;transform:translateY(-1px)}
#catalogPages .pager-btn:focus-visible{outline:2px solid #eccb96;outline-offset:2px}
#catalogPages .pager-btn:disabled{opacity:.35;cursor:default}
#catalogPages small{min-width:78px;text-align:center;padding:8px 14px;border-radius:999px;background:#2b261d;border:1px solid #453d31;color:#faf0e1;font-weight:600;font-variant-numeric:tabular-nums}

/* Stable catalog: equal card height, three rows always reserved, pager row fixed under the grid. */
#gameList.ps-grid{--card-h:172px;grid-template-rows:auto repeat(3,var(--card-h));align-content:start}
#gameList.ps-grid .onsite-choice{grid-column:1/-1}
#gameList.ps-grid .ps-card{height:var(--card-h);overflow:hidden;box-sizing:border-box;align-content:start}
#gameList.ps-grid .ps-info{min-width:0;overflow:hidden}
#gameList.ps-grid .ps-info strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#gameList.ps-grid .ps-info small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.catalog-foot{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:14px}
.catalog-foot .catalog-source{display:block;margin:0;justify-self:start}
.catalog-foot #catalogPages{margin:0}
@media(max-width:920px){#gameList.ps-grid{grid-template-rows:auto repeat(5,var(--card-h))}}
@media(max-width:560px){#gameList.ps-grid{grid-template-rows:auto repeat(9,var(--card-h))}
 .catalog-foot{gap:6px}.catalog-foot .catalog-source{font-size:11px}
 #catalogPages{gap:8px}#catalogPages .pager-btn{width:36px;height:36px}#catalogPages small{min-width:64px;padding:6px 10px}}
