/* Shared parchment and editorial elements; worlds retain their own palette. */
/* Same viewport-sized canvas on Home and Administration, independent of page length. */
body[data-auberge-surface]{background-attachment:fixed!important;background-size:100vw 100vh,100vw 100vh,180px 180px!important}
body:not(.halloween-page){background-color:#1e231e;background-image:radial-gradient(ellipse at 8% 0%,#53604a45,transparent 48%),radial-gradient(ellipse at 95% 65%,#a0804730,transparent 58%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.55' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23b4a27c' opacity='.14' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
.app-shell{min-height:100vh;background:transparent}.app-shell::before{display:none}
.app-header{gap:18px;background:#1b201beF;border-bottom-color:#c8aa6f26}.brand-button{min-width:0}.brand-button strong{font-size:24px;letter-spacing:.015em}.brand-seal{box-shadow:0 2px 8px #0003}
.news-link{flex:none;text-decoration:none;font-size:12px;color:#e1c78c;padding:9px 12px;border:1px solid #d9b87235;border-radius:30px;background:#bd904310}.news-link span{margin-left:6px}
.version-badge{display:inline-flex;width:fit-content;align-items:center;border:1px solid #c8aa6f55;border-radius:6px;background:#c8aa6f12;color:#dec388;padding:5px 9px;font:600 12px/1.25 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.06em;overflow-wrap:anywhere}
.news-list{display:grid;gap:22px;max-width:980px}.news-card{padding:clamp(22px,4vw,40px);border:1px solid #c8aa6f35;border-radius:20px;background:linear-gradient(120deg,#30372b,#20271f);box-shadow:0 15px 45px #0002}.news-card header{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.news-card h2{margin:0;font:600 clamp(27px,3vw,40px)/1.12 Georgia,serif;overflow-wrap:anywhere}.news-card ul{margin:24px 0 0;padding-left:22px;color:#d1d5c8;line-height:1.8}.news-card li{padding-left:5px;overflow-wrap:anywhere}.news-card li::marker{color:#bd9b61}
.announcement-workspace{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:24px;align-items:start}.announcement-workspace aside{display:grid;gap:20px}.announcement-actions{display:flex;flex-wrap:wrap;gap:10px}.announcement-actions button{padding:12px 16px;border-radius:10px;cursor:pointer}.announcement-history{display:grid;gap:12px;margin-top:22px}.announcement-history a{display:grid;justify-items:start;gap:8px;padding:14px 0;border-top:1px solid #fff1;text-decoration:none}.announcement-history small,.muted{color:var(--muted);line-height:1.6}.stack-form .helptext{display:block;color:var(--muted);font-size:12px;margin-top:6px}
.world-card{border-color:#d6bc7d24;box-shadow:0 14px 32px #0003;transition:transform .2s,border-color .2s,box-shadow .2s}.world-card:hover{transform:translateY(-4px);border-color:#d6bc7d66;box-shadow:0 20px 44px #0004}.world-card:focus-visible{outline:3px solid #e5c785;outline-offset:5px}.world-content h3{letter-spacing:-.025em}.world-content ul{gap:7px}.world-content li{border:1px solid #ffffff0b}.world-scene{isolation:isolate}.world-footer{color:#d5c6a9}
.medieval-die{width:45px;height:45px;border:2px solid #715335;border-radius:7px;background:linear-gradient(130deg,#f0dfb8,#cfb782 70%,#b49660);box-shadow:4px 5px 0 #795a36,6px 12px 15px #20130c88,inset 1px 1px 0 #fff8;transform:rotate(-13deg)}.medieval-die i{width:6px;height:6px;background:#65492e}.medieval-die i:nth-child(1){left:7px;top:7px}.medieval-die i:nth-child(2){right:7px;top:7px}.medieval-die i:nth-child(3){left:calc(50% - 3px);top:calc(50% - 3px)}.medieval-die i:nth-child(4){left:7px;bottom:7px}.medieval-die i:nth-child(5){right:7px;bottom:7px}
.chess-scene,.scorepad-scene{padding:0!important;display:block!important}.scene-art{display:block;width:100%;height:100%;object-fit:cover}.world-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
@media(max-width:1050px){.portal-date{display:none}.app-header{gap:12px}.brand-button strong{font-size:21px}.server-profile-name{display:none}}
@media(max-width:700px){.announcement-workspace{grid-template-columns:1fr}.news-link{font-size:11px;padding:8px}.app-header{flex-wrap:wrap}.brand-button{margin-right:auto}.news-card header{gap:12px}.server-header .account-zone{gap:8px}.server-logout{font-size:11px}.world-scene{height:230px}}
@media(prefers-reduced-motion:reduce){.world-card{transition:none}.world-card:hover{transform:none}}

/* Accueil : registre compact à gauche, univers et applications dans l’espace principal. */
#home-view.active{display:grid;grid-template-columns:minmax(210px,260px) minmax(0,1fr);align-items:start;gap:22px}
#home-view.active>.home-score-strip{grid-column:1;position:sticky;top:104px;grid-template-columns:1fr;margin:25px 0 0}
.home-score-strip a{min-height:132px;align-content:center}.home-score-strip+.world-grid{grid-column:2}
.profile-menu{max-width:min(260px,calc(100vw - 24px));overflow:hidden}.profile-menu>div{min-width:0}.profile-menu strong,.profile-menu small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server-profile-name{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.page-back,.server-stage .back{display:inline-flex;align-items:center;gap:9px;width:max-content;margin:0 0 22px;padding:9px 14px;border:1px solid #c8aa6f42;border-radius:999px;background:#242a22;color:#e1c78c;text-decoration:none;font-size:13px;font-weight:750;box-shadow:0 8px 20px #0002;transition:background .18s,border-color .18s,transform .18s}
.page-back span{font-size:18px;line-height:1}.page-back:hover,.page-back:focus-visible,.server-stage .back:hover,.server-stage .back:focus-visible{background:#333528;border-color:#dabc7a;transform:translateX(-2px);outline:0}
@media(max-width:1050px){#home-view.active{grid-template-columns:1fr}#home-view.active>.home-score-strip{position:static;grid-column:1;grid-template-columns:repeat(3,1fr)}.home-score-strip+.world-grid{grid-column:1}}
@media(max-width:700px){#home-view.active>.home-score-strip{grid-template-columns:1fr}.home-score-strip a{min-height:0}.page-back,.server-stage .back{margin-bottom:18px}}
