/*!
 * A (more) Modern CSS Reset (2023-09 Edition)
 * Copyright (c) Andy Bell - Set Studio
 * Licensed under MIT (https://github.com/hankchizljaw/modern-css-reset/blob/master/LICENSE)
 * Original article: https://piccalil.li/blog/a-more-modern-css-reset/
 */*,*::before,*::after{box-sizing:border-box}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin-block-end:0}ul[role=list],ol[role=list]{list-style:none}body{min-height:100vh;line-height:1.5}h1,h2,h3,h4,button,input,label{line-height:1.1}h1,h2,h3,h4{text-wrap:balance}a:not([class]){color:currentcolor;text-decoration-skip-ink:auto}img,picture{display:block;max-width:100%}input,button,textarea,select{font-family:inherit;font-size:inherit}textarea:not([rows]){min-height:10em}:target{scroll-margin-block:5ex}html{scrollbar-gutter:stable}body{font-family:"Zen Kaku Gothic New","Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;color:var(--main-text-color);background-color:var(--main-color)}a{color:inherit;text-decoration:none}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}ul[role=list],ol[role=list]{padding:0;margin:0}label:has(+input:not([type=radio],[type=checkbox]),select,textarea){display:block}[type=search]{-webkit-appearance:none;appearance:none}button{background:rgba(0,0,0,0);border:none}:root{--font-cinzel: "Cinzel", serif;--main-color: #faf7f0;--main-text-color: #1A1515;--main-border-color: #d4d7cd;--main-white: #fffefc;--sub-color: #c1ce7e}.font-cinzel{font-family:var(--font-cinzel)}.header{position:sticky;top:0;z-index:1060;height:60px;padding:.5em;background-color:var(--main-color);border-bottom:1px solid var(--main-border-color)}.header__left-content{display:flex}.world-select{text-align:center}.notification{text-align:right}.navbar-toggler-container{width:150px;text-align:right}@media(max-width: 1199.98px){.navbar-toggler-container{width:142px}}@media(max-width: 767.98px){.navbar-toggler-container{width:20px}}#offcanva-top-menu{top:60px;z-index:1040;display:block;width:100%;min-height:70vh;padding-top:2em;overflow-y:auto;background-color:var(--main-color);border-top:none;border-bottom:1px solid #ddd}.main-city-nav{display:flex;flex-direction:column;gap:16px;align-items:center;padding:20px;list-style:none}.main-city-nav__item{width:380px;max-width:100%;height:auto;overflow:hidden;background-color:#fff;border:1px solid var(--main-border-color);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.05);transition:transform .2s,box-shadow .2s}.main-city-nav__item:hover{border-color:var(--sub-color, #c1ce7e);box-shadow:0 6px 16px rgba(0,0,0,.1);transform:translateY(-2px)}.main-city-nav__link{display:flex;gap:16px;align-items:center;padding:16px;color:#333;text-decoration:none}.main-city-nav__link.active{background-color:#fafdf5;border-left:4px solid var(--sub-color, #c1ce7e)}.main-city-nav__image-wrapper{flex-shrink:0;width:52px;height:52px;overflow:hidden;background-color:#f8f9fa;border-radius:10px}.main-city-nav__img{width:100%;height:100%;object-fit:cover}.main-city-nav__placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.main-city-nav__info{display:flex;flex-direction:column;justify-content:center;min-width:0}.main-city-nav__name{margin-bottom:2px;font-size:1.05rem;font-weight:800;color:#222}.main-city-nav__description{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;font-size:.8rem;line-height:1.4;color:#777;-webkit-box-orient:vertical}.layouts-wrapper{display:flex;align-items:flex-start;justify-content:center;margin-inline:auto}.side-nav-container{position:sticky;top:65px;z-index:1070;display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-end;height:calc(100vh - 65px);padding-top:2em;overflow:hidden;overflow-y:auto;opacity:1;transition:width .4s ease,opacity .2s ease,padding .2s ease}@media(max-width: 1199.98px){.side-nav-container{flex-grow:.1}}.main-wrapper{display:flex;flex-grow:1;justify-content:flex-start}@media(max-width: 991.98px){.main-wrapper{flex-grow:0}}.main-container{display:flex}.main{flex-shrink:0;width:700px;max-width:700px;padding-top:3em;padding-right:2em;padding-left:2em;transition:padding .2s ease}@media(width <= 700px){.main{width:100svw;min-width:300px;padding-right:.5em;padding-left:.5em;border:none}}@media(max-width: 575.98px){.main{padding-top:1em}}.post-form-container{padding:1em;background-color:var(--main-white);border:1px solid var(--main-border-color);border-radius:16px}.main-form{width:auto;height:fit-content;min-height:200px;padding-bottom:2em;margin:0 1em;border-bottom:1px solid var(--main-border-color)}@media(max-width: 575.98px){.main-form{height:fit-content}}.sub-container{position:sticky;top:65px;z-index:1070;flex-shrink:0;height:100vh;padding-top:2em;overflow:hidden}.nav-list-group{display:flex;flex-direction:column;line-height:1.6}.nav-list-item{padding-left:1em}.navbar-toggler-button{background-color:rgba(0,0,0,0);border:none}.offcanvas__icon{color:var(--main-text-color)}.nav-block{width:250px;margin:0 auto}.nav-block__title{font-family:var(--font-cinzel)}.nav-block__content{background-color:var(--main-white)}.expression-modal{width:90%;max-width:700px;padding:0;margin-top:2em;border:none;border-radius:8px}.expression-modal::backdrop{background:rgba(0,0,0,.5)}.expression-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:10px;max-height:300px;padding:10px;overflow-y:auto}@media(max-width: 1199.98px){.expression-grid{flex-grow:.1}}.expression-item-wrapper{width:fit-content}.expression-item{width:fit-content;text-align:center;background:none;border:none;transition:transform .2s}.expression-item:hover{transform:scale(1.05)}.expression-item img{width:100%;max-width:150px;aspect-ratio:1/1;object-fit:cover;border-radius:4px}.preview-display{display:flex;justify-content:center}.text--joy{color:#f4d065}.text--angry{color:#f14c4c}.text--sad{color:#8ac4d2}.text--fun{color:#ffa176}.text-normal{color:#b1ada1}.custom-tabs .nav-link{font-size:.9rem;font-weight:500;color:#888;border-bottom:2px solid rgba(0,0,0,0);border-radius:0;transition:all .3s ease}.custom-tabs .nav-link:hover{color:#555}.custom-tabs .nav-link.active{color:var(--sub-color, #c1ce7e) !important;background:rgba(0,0,0,0) !important;border-bottom:2px solid var(--sub-color, #c1ce7e)}.selection-indicator{background:#fff;transition:all .3s ease}.selection-indicator:has(.text-theme){border-color:var(--sub-color, #c1ce7e) !important;box-shadow:0 4px 12px rgba(193,206,126,.2) !important}.text-theme{color:var(--sub-color, #c1ce7e)}.border-dashed{border-color:#dee2e6 !important;border-style:dashed !important}.mask-scroll{scrollbar-width:none}.mask-scroll::-webkit-scrollbar{display:none}.animate-pop-in{animation:pop-in .3s cubic-bezier(0.18, 0.89, 0.32, 1.28)}@keyframes pop-in{0%{opacity:0;transform:scale(0.9)}100%{opacity:1;transform:scale(1)}}.preview-display{display:flex;align-items:center;justify-content:center;min-height:250px;margin-top:1rem;overflow:hidden;background-color:#f8f9fa;border-radius:12px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;min-height:250px;background-color:#fff;border:2px dashed #dee2e6;border-radius:12px}#offcanvas-responsive{background-color:var(--main-color);--bs-offcanvas-width: 300px}#offcanvas-responsive-right{background-color:var(--main-color);--bs-offcanvas-width:300px}.offcanvas-header{background-color:var(--main-color)}.offcanvas-body{display:flex}.offcanvas-body__left{justify-content:flex-end}.offcanvas-body__right{flex-direction:column;justify-content:flex-start;min-width:250px}.offcanvas-backdrop{z-index:1030}.animate-slide-in{animation:feed-expand .5s ease-out forwards}.feed-item{min-height:120px;padding:1em;margin-top:2em;background-color:var(--main-white);border:1px solid color-mix(in srgb, var(--main-border-color), transparent 50%);border-radius:14px;box-shadow:0 2px 4px rgba(0,0,0,.02),0 4px 10px rgba(0,0,0,.05)}@media(max-width: 575.98px){.feed-item{margin-top:1em}}@keyframes feed-expand{0%{grid-template-rows:0fr;max-height:0;margin-top:0;opacity:0;transform:translateY(-20px)}100%{max-height:1000px;margin-top:2em;opacity:1;transform:translateY(0)}}.post__avatar{width:100px}.post__text{white-space:pre-wrap}.post-form{display:flex;flex-direction:column;gap:1em}@media(max-width: 575.98px){.post-form{align-items:center}}.post-form__button-container{display:flex;justify-content:flex-end}.post-form__textarea{width:100%;height:auto;min-height:120px;padding:0 .5em;overflow-y:hidden;font-size:1.1em;line-height:1.6;resize:none;background-color:var(--main-white);border:none;field-sizing:content}.post-form__textarea:focus{outline:none;background-color:#fff;border-bottom:1px solid color-mix(in srgb, var(--main-border-color), transparent 80%);box-shadow:0 4px 4px -2px color-mix(in srgb, var(--main-border-color), transparent 80%)}.post-form__textarea::placeholder{color:#ccc;letter-spacing:.1em}.is-invalid-custom{color:#dc3545 !important;background-color:#fff8f8;border-color:#dc3545 !important}.is-invalid-custom:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.25) !important}button:disabled{cursor:not-allowed;opacity:.6}.current-character{display:flex;flex-direction:column;gap:1em;align-items:center;justify-content:center}@media(max-width: 575.98px){.current-character{position:relative;flex-direction:row;align-items:flex-end;margin-bottom:1em}}.current-character__image{width:150px;height:150px}.current-character__button{width:150px}@media(max-width: 575.98px){.current-character__button{position:absolute;right:0;width:50px}}.login-modal{width:90%;max-width:400px;padding:0;border:none;border-radius:1rem;box-shadow:0 10px 25px rgba(0,0,0,.2)}.login-modal::backdrop{background-color:rgba(0,0,0,.5);backdrop-filter:blur(2px)}.favorite-overlay{position:absolute;right:15px;bottom:20px}.button{display:inline-flex;align-items:center;justify-content:center;padding:.8em 2em;font-weight:700;color:#fff;letter-spacing:.05em;text-shadow:0 1px 2px rgba(100,90,80,.3);background-color:#c1ce7e;background-size:300% auto;border:none;border-radius:8px;box-shadow:0 4px 10px rgba(158,142,133,.4);transition:all .4s cubic-bezier(0.25, 0.8, 0.25, 1)}.button:hover{opacity:.85}.button:active{box-shadow:0 2px 10px rgba(37,117,252,.3);transform:translateY(1px)}.flash-container{position:fixed;right:0;bottom:20px;left:0;z-index:10000;display:flex;flex-direction:column;gap:10px;align-items:center;width:90%;max-width:400px;margin-inline:auto;pointer-events:none}.custom-alert{display:flex;align-items:center;justify-content:center;padding:1rem 1.5rem;pointer-events:auto;cursor:pointer;background:#fff;border:1px solid var(--main-border-color, #ddd);border-radius:12px;box-shadow:0 10px 25px rgba(0,0,0,.1);animation:alert-slide-up .5s cubic-bezier(0.18, 0.89, 0.32, 1.28) forwards}.alert-notice{color:var(--main-text-color, #333);border-left:5px solid var(--sub-color, #c1ce7e)}.alert-alert{color:var(--main-text-color, #333);border-left:5px solid #d9534f}.fade-out{animation:alert-fade-out .5s ease forwards}@keyframes alert-slide-up{0%{opacity:0;transform:translateY(30px) scale(0.95)}100%{opacity:1;transform:translateY(0) scale(1)}}@keyframes alert-fade-out{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(20px)}}.notification-card{display:block;width:220px;padding:0;overflow:hidden;text-decoration:none;background:#fff;border:1px solid var(--sub-color, #c1ce7e);border-radius:12px;box-shadow:0 4px 15px rgba(193,206,126,.2);transition:all .3s ease}.notification-card:hover{background-color:#fafdf5;box-shadow:0 6px 20px rgba(193,206,126,.3);transform:translateY(-2px)}.notification-card__body{display:flex;gap:12px;align-items:center;padding:1rem 1.25rem}.notification-card__icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;color:var(--sub-color, #c1ce7e)}.notification-card__text{flex-grow:1;font-size:.9rem;font-weight:500;line-height:1.4;color:#555;text-align:left}.notification-card__arrow{padding-left:8px;font-size:.8rem;color:#ccc}.favorite__icon--on{color:var(--sub-color)}.filter-bar{display:flex;align-items:center;justify-content:space-between;padding:.5rem;margin-bottom:1rem}.header-logo{width:150px;margin-top:5px;font-family:var(--font-cinzel);font-size:2em}@media(max-width: 991.98px){.header-logo{width:110px;margin-top:7px;font-size:1.2em}}@media(max-width: 767.98px){.header-logo--appear{display:block}}@media(max-width: 767.98px){.header-logo--hide{display:none}}.side-nav__logo{display:none;width:110px;margin-top:7px;font-family:var(--font-cinzel);font-size:1.2em}@media(max-width: 991.98px){.side-nav__logo{display:block}}
