:root{--panel:#3e474e;--panel-dark:#252c32;--panel-edge:#4d5961;--title-tab:#3b5578;--text:#fff;--text-dim:#b9c3cb;--credit:#5073a0;--souvenir:gold;--hover:#a5c200;--nav-height:2.75rem;--gap:clamp(.75rem, 2.5vmin, 1.75rem);--ui-font:Verdana, Geneva, "DejaVu Sans", sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-size:clamp(13px,.6vmin + .25vw + 4px,26px)}*,:before,:after{box-sizing:border-box}body{min-height:100dvh;color:var(--text);-webkit-font-smoothing:antialiased;background:#1b1f22;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}a{color:inherit}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--hover);outline-offset:2px}.noscript{text-align:center;padding:2rem}.background{z-index:-1;background:#1b1f22;position:fixed;inset:0}.background video,.background img{object-fit:cover;width:100%;height:100%}.navbar{z-index:10;height:var(--nav-height);background:linear-gradient(90deg,#343141,#838383,#343141);justify-content:center;align-items:center;display:flex;position:sticky;top:0;box-shadow:0 2px 6px #00000080}.navbar__list{gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.navbar__link{color:#fff;padding:.25rem .1rem;font-weight:700;text-decoration:none;display:block;position:relative}.navbar__link:after{content:"";background:#000;height:2px;transition:background .15s;position:absolute;bottom:0;left:0;right:0}.navbar__link:hover:after{background:#fff}.navbar__link.active:after{background:var(--hover)}.shell{align-items:start;gap:var(--gap);width:min(100% - 2 * var(--gap), 112rem);height:calc(100dvh - var(--nav-height));grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(15rem,26rem) minmax(0,1fr);margin:0 auto;padding-block:clamp(1rem,6vh,4.5rem);display:grid}.profile{background:var(--panel);font-family:var(--ui-font);box-shadow:0 2px 4px #000}.profile__top{align-items:flex-start;gap:.75rem;padding:.65rem;display:flex}.profile__avatar{object-fit:cover;width:5.75rem;height:5.75rem}.profile__name{margin:.4rem 0 0;font-size:1.15rem}.profile__rank{background:var(--panel-dark);padding:.4rem .5rem .3rem;box-shadow:0 2px 4px #000}.profile__rank-image{width:65%;height:auto}.profile__credit{color:var(--credit);margin:1rem 0 0;font-size:.65rem}.profile__credit a{color:#fff;text-decoration:none}.profile__credit a:hover{color:var(--hover)}.panel{background:var(--panel);flex-direction:column;height:100%;display:flex;box-shadow:0 2px 4px #000}.panel__header{background:var(--panel-dark);flex:none;justify-content:center;padding:.2rem;display:flex}.panel__title{background:var(--title-tab);margin:0;padding:0 .15rem;font-size:1rem;font-weight:700;line-height:1.6}.panel__body{overscroll-behavior:contain;scrollbar-color:#6b7780 var(--panel-dark);flex:1;min-height:0;overflow-y:auto}.article{padding:1rem 1.25rem 1.5rem}.article__title{text-align:center;margin:.75rem 0 1.5rem;font-size:clamp(2rem,3vw + 1rem,3.2rem);line-height:1.1}.article__text{max-width:75rem}.article__text--center{text-align:center;margin-inline:auto}.article__text p{margin:0 0 1.5em}.article__text a{color:#9cc3ff}.grid{grid-template-columns:repeat(auto-fill,minmax(min(11rem,100%),1fr));align-content:start;gap:.6rem;padding:.6rem;display:grid}.tile{background:linear-gradient(to right, var(--grade-from,#bbb), var(--grade-to,#535353));color:#fff;font:inherit;text-align:left;cursor:pointer;border:1px solid #000;flex-direction:column;text-decoration:none;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex;box-shadow:0 2px 4px #0000004d}.tile:hover,.tile:focus-visible{border-color:#fff;transform:translateY(-2px);box-shadow:0 4px 10px #0000008c}.tile__image{aspect-ratio:16/9;background:#c9cbcd;display:block}.tile__image img{object-fit:cover;width:100%;height:100%}.tile__caption{min-height:calc(3.9em + .7rem);font-family:var(--ui-font);text-shadow:1px 1px #000;flex-direction:column;padding:.35rem .4rem;font-size:.82rem;line-height:1.3;display:flex}.tile__title{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tile__subtitle{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.viewer{width:min(100vw - 2rem,120rem);max-width:none;max-height:calc(100dvh - 2rem);color:var(--text);background:0 0;border:none;padding:0;overflow:auto}.viewer:focus{outline:none}.viewer::backdrop{background:#000000b3}.viewer__layout{grid-template-columns:minmax(0,1fr) minmax(16rem,22rem);align-items:start;gap:.75rem;display:grid}.viewer__image{object-fit:contain;background:#c9cbcd;width:100%;height:auto;max-height:calc(100dvh - 2rem)}.viewer__info{font-family:var(--ui-font);background:#2b2b2b;border:1px solid #fff;flex-direction:column;gap:.75rem;padding:1rem;font-size:.9rem;display:flex}.viewer__info--souvenir{border-color:var(--souvenir)}.viewer__title{margin:0;font-size:1.3rem;font-weight:400;line-height:1.3}.viewer__info--souvenir .viewer__title{color:var(--souvenir)}.viewer__grade{border-left:.3rem solid var(--grade-from);color:var(--text-dim);margin:-.4rem 0 0;padding-left:.5rem;font-size:.8rem}.viewer__description{margin:0;line-height:1.55}.viewer__inspect,.viewer__close{color:#fff;font:inherit;cursor:pointer;background:0 0;border:none;align-self:center;padding:.2rem .5rem;text-decoration:underline}.viewer__inspect:hover,.viewer__close:hover,.viewer__step:hover{color:var(--hover)}.viewer__steps{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.viewer__step{white-space:nowrap;text-decoration:none}.viewer__step--off{opacity:.35}.viewer__count{color:var(--text-dim);font-size:.75rem}@media (width<=56rem),(aspect-ratio<=4/5){.shell{height:auto;padding-block:var(--gap);grid-template-rows:auto;grid-template-columns:minmax(0,1fr)}.profile{align-items:stretch;display:flex}.profile__top{flex:1;align-items:center}.profile__avatar{width:3.5rem;height:3.5rem}.profile__name{margin:0}.profile__rank{width:45%;box-shadow:none;flex-direction:column;justify-content:center;display:flex}.profile__rank-image{width:100%;max-width:12rem}.profile__credit{margin-top:.3rem}.panel{height:auto}.panel__body{overflow:visible}.grid{grid-template-columns:repeat(auto-fill,minmax(min(9.5rem,100%),1fr))}.viewer__layout{grid-template-columns:minmax(0,1fr)}.viewer__image{max-height:60dvh}}@media (prefers-reduced-motion:reduce){.tile{transition:none}.tile:hover,.tile:focus-visible{transform:none}}
