:root{--bg:#0e0f12;--fg:#e7e7ea;--line:#2a2d36;--page-pad:clamp(16px,4vw,48px);--gap:clamp(8px,2.4vw,16px);--radius:12px;--col-width:clamp(180px,26vw,320px);--btn-size:clamp(44px,6vw,56px);--btn-font:clamp(22px,4vw,30px)}@media (prefers-color-scheme:light){:root{--bg:#0b0c10;--fg:#f2f2f5;--line:#343845}}*{box-sizing:border-box}body,html{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0e0f12;background:var(--bg);color:#e7e7ea;color:var(--fg);font-family:Georgia,Times New Roman,serif;margin:0}.page{margin:0 auto;max-width:min(1400px,100%);padding:clamp(16px,2.5vw,32px) clamp(16px,4vw,48px) clamp(16px,4vw,48px);padding:clamp(16px,2.5vw,32px) var(--page-pad) var(--page-pad)}.hero{margin-bottom:clamp(20px,6vw,48px);text-align:center}.title{color:#e7e7ea;color:var(--fg);font-size:clamp(2.2rem,7vw,7rem);font-weight:400;letter-spacing:-.02em;line-height:1.05}.gallery{column-gap:clamp(8px,2.4vw,16px);column-gap:var(--gap);columns:3;contain-intrinsic-size:300px 225px;content-visibility:auto;opacity:0;padding:0 clamp(16px,4vw,60px);transition:opacity .4s ease}.gallery.ready{opacity:1}.gallery.single{column-count:auto;display:flex;justify-content:center}.gallery.single .card{width:min(520px,100%)}.gallery-status{color:#9aa3b2;color:var(--muted,#9aa3b2);letter-spacing:.02em;margin:clamp(20px,5vw,36px) auto}.gallery-error,.gallery-status{font-size:.95rem;text-align:center}.gallery-error{background:#b025252e;border:1px solid #ff5f5f73;border-radius:12px;border-radius:var(--radius);color:#ffd7d7;line-height:1.4;margin:clamp(20px,5vw,36px) auto 0;max-width:min(520px,90%);padding:clamp(12px,3vw,20px)}.load-more{display:flex;justify-content:center;margin:clamp(20px,6vw,40px) 0}.load-more button{background:#15171c;border:1px solid #2a2d36;border:1px solid var(--line);border-radius:999px;color:#e7e7ea;color:var(--fg);cursor:pointer;font-family:inherit;font-size:.95rem;padding:.65rem 2.2rem;transition:transform .15s ease,background .2s ease,color .2s ease,border .2s ease}@media (hover:hover) and (pointer:fine){.load-more button:not(:disabled):hover{background:#1a1c22;transform:translateY(-1px)}}.load-more button:disabled{cursor:not-allowed;opacity:.6}@media (prefers-reduced-motion:reduce){.load-more button{transition:none}}@media (max-width:1024px){.gallery{column-count:2;padding:0 clamp(12px,3vw,40px)}}@media (max-width:600px){.gallery{column-count:1;padding:0 clamp(10px,4vw,30px)}}.card{background:#15171c;border:1px solid #2a2d36;border:1px solid var(--line);border-radius:12px;border-radius:var(--radius);break-inside:avoid;cursor:pointer;margin:0 0 clamp(8px,2.4vw,16px);margin:0 0 var(--gap);outline:none;overflow:hidden;page-break-inside:avoid;perspective:1200px;position:relative;transition:transform .2s ease,box-shadow .2s ease}.card:focus-visible{box-shadow:0 0 0 3px #5b8cff55}@media (hover:hover) and (pointer:fine){.card:hover{box-shadow:0 8px 24px #00000059;transform:translateY(-2px)}}.card img{display:block;height:auto;opacity:0;transition:opacity .35s ease;vertical-align:middle;width:100%}.card.loaded img{opacity:1}.card:not(.loaded){animation:cardShimmer 1.4s ease-in-out infinite;background:linear-gradient(100deg,#15171c,#15171c 40%,#1f2229 50%,#15171c 60%,#15171c);background-size:250% 100%}@keyframes cardShimmer{0%{background-position:100% 0}to{background-position:0 0}}.card-inner{position:relative;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,.2,.2,1)}.card.flipped .card-inner{transform:rotateY(180deg)}.card-back,.card-front{-webkit-backface-visibility:hidden;backface-visibility:hidden}.card-front{position:relative}.card-back{background:#15171c;color:#e7e7ea;color:var(--fg);display:flex;flex-direction:column;gap:10px;inset:0;overflow:auto;padding:clamp(12px,3vw,20px);position:absolute;text-align:left;transform:rotateY(180deg)}.card.flipped .card-front,.card:not(.flipped) .card-back{pointer-events:none}.card-title{font-size:clamp(15px,1.6vw,18px);font-weight:600;line-height:1.3;margin:0}.card-details{grid-gap:4px 12px;display:grid;font-size:.85rem;gap:4px 12px;grid-template-columns:auto 1fr;line-height:1.4;margin:0}.card-details dt{color:#9aa3b2}.card-details dd{margin:0}.card-desc{color:#c9cdd6}.card-desc,.card-empty{font-size:.85rem;line-height:1.45;margin:0}.card-empty{color:#9aa3b2;font-style:italic}.card-tags{display:flex;flex-wrap:wrap;gap:6px}.card-tags span{border:1px solid #2a2d36;border:1px solid var(--line);border-radius:999px;color:#c9cdd6;font-size:.72rem;padding:2px 8px}.card-hint{color:#6f7785;font-size:.72rem;margin-top:auto;padding-top:8px}.zoom{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0e0f12b8;border:1px solid #ffffff40;border-radius:50%;bottom:10px;color:#fff;cursor:zoom-in;display:grid;height:38px;opacity:0;padding:0;place-items:center;position:absolute;right:10px;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease,background .2s ease;width:38px}.zoom svg{height:18px;width:18px}.card:focus-within .zoom,.card:hover .zoom{opacity:1;transform:none}.zoom:hover{background:#0e0f12eb}.zoom:focus-visible{outline:2px solid #5b8cff;outline-offset:2px}@media (hover:none){.zoom{opacity:1;transform:none}}.card.flipped .zoom{opacity:0;pointer-events:none}.lightbox{align-items:center;animation:fadeIn .15s ease;background:#000000d6;display:grid;grid-template-columns:clamp(44px,6vw,56px) 1fr clamp(44px,6vw,56px);grid-template-columns:var(--btn-size) 1fr var(--btn-size);grid-template-rows:clamp(44px,6vw,56px) 1fr clamp(44px,6vw,56px);grid-template-rows:var(--btn-size) 1fr var(--btn-size);inset:0;justify-items:center;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);position:fixed;z-index:9999}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.frame{align-items:center;background:#0b0c10;border-radius:12px;border-radius:var(--radius);box-shadow:0 20px 60px #0009;display:flex;grid-column:2;grid-row:2;justify-content:center;margin:0;overflow:hidden;padding:0}.full{display:block;height:auto;image-orientation:initial;max-height:92vh;max-width:min(94vw,1400px);object-fit:contain;transition:transform .12s ease;width:auto}.close{border:1px solid #2a2d36;border:1px solid var(--line);border-radius:999px;box-shadow:0 4px 16px #00000059;cursor:pointer;font-size:clamp(16px,2.4vw,18px);padding:10px 14px;position:fixed;right:max(12px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top))}.close,.nav{background:#15171c;color:#e7e7ea;color:var(--fg)}.nav{border:none;border-radius:999px;box-shadow:0 6px 18px #00000059;cursor:pointer;display:grid;font-size:clamp(22px,4vw,30px);font-size:var(--btn-font);height:clamp(44px,6vw,56px);height:var(--btn-size);place-items:center;transition:transform .15s ease;width:clamp(44px,6vw,56px);width:var(--btn-size)}@media (hover:hover) and (pointer:fine){.nav:hover{transform:scale(1.06)}}.nav.left{grid-column:1;grid-row:2}.nav.right{grid-column:3;grid-row:2}@media (max-width:640px){.lightbox{grid-template-columns:clamp(44px,6vw,56px) 1fr clamp(44px,6vw,56px);grid-template-columns:var(--btn-size) 1fr var(--btn-size);grid-template-rows:clamp(44px,6vw,56px) 1fr clamp(44px,6vw,56px);grid-template-rows:var(--btn-size) 1fr var(--btn-size)}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.sb-toggle{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff0;border:none;border-radius:50%;cursor:pointer;display:flex;flex-direction:column;height:50px;justify-content:center;position:fixed;right:max(18px,env(safe-area-inset-right));top:max(18px,env(safe-area-inset-top));transition:background .25s ease;width:50px;z-index:10020}.sb-toggle:hover{background:#ffffff1a}.sb-toggle .sb-bar{background:#fff;border-radius:2px;display:block;height:2px;margin:3px 0;transition:transform .3s ease;width:22px}.search-toggle{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff0;border:none;border-radius:50%;color:#fff;cursor:pointer;display:grid;height:50px;opacity:.55;padding:0;place-items:center;position:fixed;right:calc(max(18px, env(safe-area-inset-right)) + 54px);top:max(18px,env(safe-area-inset-top));transition:background .25s ease,opacity .25s ease;width:50px;z-index:10005}.search-toggle svg{height:20px;width:20px}.search-toggle.open,.search-toggle:focus-visible,.search-toggle:hover{background:#ffffff1a;opacity:1}.search-toggle:focus-visible{outline:2px solid #5b8cff;outline-offset:2px}.search-toggle.active:after{background:#5b8cff;border-radius:50%;content:"";height:6px;position:absolute;right:12px;top:12px;width:6px}.search-toggle.active{opacity:1}.search-panel{animation:fadeIn .15s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0e0f12eb;border:1px solid #2a2d36;border:1px solid var(--line);border-radius:12px;border-radius:var(--radius);box-shadow:0 12px 32px #00000073;display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 100px);overflow:auto;padding:12px;position:fixed;right:max(18px,env(safe-area-inset-right));top:calc(max(18px, env(safe-area-inset-top)) + 58px);width:min(300px,calc(100vw - 36px));z-index:10005}.search-input{background:#ffffff0a;border:1px solid #2a2d36;border:1px solid var(--line);border-radius:8px;color:#e7e7ea;color:var(--fg);font:inherit;font-size:.9rem;outline:none;padding:9px 12px;transition:border-color .2s ease,background .2s ease;width:100%}.search-input::placeholder{color:#6f7785}.search-input:focus{background:#ffffff0f;border-color:#5b8cff88}.search-input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.search-group{display:flex;flex-direction:column;gap:6px}.search-group-label{color:#6f7785;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.search-chips{display:flex;flex-wrap:wrap;gap:6px}.search-chip{background:#0000;border:1px solid #2a2d36;border:1px solid var(--line);border-radius:999px;color:#c9cdd6;cursor:pointer;font:inherit;font-size:.78rem;padding:4px 10px;transition:background .15s ease,border-color .15s ease,color .15s ease}.search-chip:hover{background:#ffffff0f}.search-chip.selected{background:#5b8cff2e;border-color:#5b8cff88;color:#fff}.search-chip:focus-visible{outline:2px solid #5b8cff;outline-offset:1px}.search-footer{align-items:center;color:#6f7785;display:flex;font-size:.75rem;justify-content:space-between}.search-clear{background:none;border:none;color:#9aa3b2;cursor:pointer;font:inherit;font-size:.75rem;padding:0;text-decoration:underline;text-underline-offset:2px}.search-clear:hover{color:#fff}.gallery-status .search-clear{font-size:inherit;margin-left:4px}.sb-overlay{background:#0009;inset:0;opacity:0;pointer-events:none;position:fixed;transition:opacity .25s ease;z-index:10010}.sb-overlay.open{opacity:1;pointer-events:auto}.sidebar-right{background:#000;bottom:0;box-shadow:-4px 0 40px #0009;color:#fff;display:flex;flex-direction:column;padding:2.5rem 2rem;position:fixed;right:0;top:0;transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:min(420px,88vw);z-index:10030}.sidebar-right.open{transform:translateX(0)}.sb-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:3rem}.sb-logo{color:#fff;font-family:Georgia,serif;font-size:clamp(1.4rem,2.5vw,2rem);font-weight:400;letter-spacing:.03em}.sb-close{background:none;border:none;color:#fff;cursor:pointer;font-size:1.5rem;opacity:.8;transition:opacity .2s ease}.sb-close:hover{opacity:1}.sb-nav{display:flex;flex-direction:column;gap:1.4rem;margin-bottom:2.5rem}.sb-nav a{color:#fff;font-size:clamp(1rem,1.5vw,1.15rem);font-weight:400;letter-spacing:.02em;text-decoration:none;transition:color .2s ease,transform .2s ease}.sb-nav a:hover{color:#e7e7ea;transform:translateX(-4px)}.sb-divider{background:#ffffff26;height:1px;margin:2rem 0}.sb-cta{font-size:.95rem;line-height:1.6;opacity:.9}.sb-cta strong{color:#fff}.sb-donate{background:#fff;border-radius:999px;color:#000;display:inline-block;font-weight:600;margin-top:1.2rem;padding:.75rem 1.4rem;text-decoration:none;transition:transform .2s ease,background .2s ease}.sb-donate:hover{background:#e7e7ea;transform:scale(1.05)}.sb-foot{border-top:1px solid #ffffff14;font-size:.85rem;margin-top:auto;opacity:.6;padding-top:2rem;text-align:center}@media (max-width:600px){.sidebar-right{padding:2rem 1.5rem;width:100%}}.scroll-top{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#15171c;border:1px solid #2a2d36;border:1px solid var(--line);border-radius:999px;box-shadow:0 6px 18px #00000059;color:#e7e7ea;color:var(--fg);cursor:pointer;display:grid;font-size:clamp(22px,4vw,30px);font-size:var(--btn-font);height:clamp(44px,6vw,56px);height:var(--btn-size);inset-block-end:max(22px,env(safe-area-inset-bottom));inset-inline-end:max(22px,env(safe-area-inset-right));opacity:.92;outline:none;place-items:center;position:fixed;transition:transform .15s ease,opacity .2s ease,background .2s ease;width:clamp(44px,6vw,56px);width:var(--btn-size);z-index:10015}@media (hover:hover) and (pointer:fine){.scroll-top:hover{background:#1a1c22;opacity:1;transform:scale(1.06)}}.scroll-top:focus-visible{box-shadow:0 0 0 3px #5b8cff55,0 6px 18px #00000059}.lightbox~.scroll-top,.sb-overlay.open~.scroll-top{opacity:0;pointer-events:none}.about-page .subtitle{line-height:1.5;margin:.5rem auto 0;max-width:60ch;opacity:.85;text-align:center}.about-grid{grid-gap:clamp(16px,4vw,40px);align-items:start;display:grid;gap:clamp(16px,4vw,40px);grid-template-columns:1fr 1.1fr;margin-top:clamp(12px,4vw,24px)}@media (max-width:900px){.about-grid{grid-template-columns:1fr}}.about-portrait{background:#15171c;border:1px solid #2a2d36;border:1px solid var(--line);border-radius:12px;border-radius:var(--radius);box-shadow:0 8px 24px #00000059;margin:0;overflow:hidden}.about-portrait img{display:block;height:auto;vertical-align:middle;width:100%}.about-portrait figcaption{border-top:1px solid #2a2d36;border-top:1px solid var(--line);font-size:.95rem;opacity:.8;padding:10px 14px}.about-prose h2{font-weight:500;margin:0 0 .6rem}.about-prose p{line-height:1.7;margin:0 0 1rem;opacity:.95}.memories{margin-top:clamp(24px,6vw,48px)}.memories h2{margin:0 0 1rem}.memory-card{background:#15171c;border:1px solid #2a2d36;border:1px solid var(--line);border-radius:12px;border-radius:var(--radius);box-shadow:0 6px 18px #00000059;margin-bottom:clamp(8px,2.4vw,16px);margin-bottom:var(--gap);padding:clamp(14px,3vw,22px)}.memory-card h3{font-weight:500;margin:0 0 .5rem}.memory-card p{line-height:1.7;margin:0;opacity:.95}
/*# sourceMappingURL=main.87adca47.css.map*/