@font-face{font-family:"Minecraft Rus";src:url("assets/fonts/minecraft-rus.ttf") format("truetype");font-display:swap}
:root{
  --ink:#263026;
  --muted:#6e786b;
  --night:#f5f0df;
  --night-2:#fffaf0;
  --line:rgba(54,72,51,.17);
  --moss:#77964c;
  --moss-light:#5f7f37;
  --paper:#f5e9c5;
  --paper-ink:#2d3427;
  --pixel:"Minecraft Rus","Press Start 2P",monospace;
}

body{background:#f5f0df;color:var(--ink)}
.noise{opacity:.025;mix-blend-mode:multiply}
.topbar{height:104px;padding:0;background:rgba(250,247,235,.8);backdrop-filter:blur(14px);border-color:var(--line)}
.topbar-inner{width:100%;height:100%;max-width:1440px;margin:0 auto;padding:0 clamp(24px,4vw,64px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px}
.brand,.sound-button{color:var(--ink)}
.party-sign{display:flex;justify-self:start;flex-direction:column;align-items:center;justify-content:center;width:160px;aspect-ratio:2/1;padding:8px 12px;color:#111;text-decoration:none;text-align:center;font:13px/.98 var(--pixel);letter-spacing:-.02em;background-color:#a88743;background-image:linear-gradient(to bottom,transparent 31%,rgba(83,59,24,.32) 32% 36%,transparent 37% 64%,rgba(83,59,24,.3) 65% 69%,transparent 70%),url("assets/minecraft/party-sign-texture.png");background-position:center,center 45%;background-size:100% 100%,cover;image-rendering:pixelated;border:0;border-radius:0;box-shadow:inset 0 2px rgba(236,195,99,.22),inset 0 -3px rgba(69,49,20,.28),0 4px 0 #5f4722;clip-path:polygon(2px 0,calc(100% - 2px) 0,calc(100% - 2px) 2px,100% 2px,100% calc(100% - 2px),calc(100% - 2px) calc(100% - 2px),calc(100% - 2px) 100%,2px 100%,2px calc(100% - 2px),0 calc(100% - 2px),0 2px,2px 2px)}
.party-sign span{display:block;min-height:13px;text-shadow:none;white-space:nowrap}
.party-sign:hover{filter:brightness(1.06);transform:translateY(-1px)}
@media(max-width:900px){.topbar-inner{grid-template-columns:1fr 1fr}.sound-button{justify-self:end}}
@media(max-width:600px){.topbar{height:88px;padding:0}.topbar-inner{padding:0 16px;gap:14px}.party-sign{width:140px;font-size:11px;padding:6px 9px;box-shadow:inset 0 2px rgba(236,195,99,.22),inset 0 -3px rgba(69,49,20,.28),0 3px 0 #5f4722}.party-sign span{min-height:11px}}
nav a{color:#687165}.sound-button{justify-self:end;min-height:40px;background:#fffaf0;border-color:#aebaa7;box-shadow:3px 3px 0 #d2cbb6;font-size:10px}
.hero{background:linear-gradient(135deg,#fbf7e9 0%,#f2ecd7 62%,#e6ebd4 100%);border-color:var(--line)}
.hero-grid{opacity:.35;background-image:linear-gradient(rgba(74,92,67,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(74,92,67,.1) 1px,transparent 1px)}
.hero h1{color:#2d372c;text-shadow:5px 5px 0 rgba(115,139,76,.14)}
.hero h1 em{color:#688c39}.lead{color:#70796d}
.pixel-button{box-shadow:0 5px 0 #313a2d}.pixel-button.primary{background:#87a654;color:#172011}.pixel-button.primary span{border-color:rgba(255,255,255,.42)}
.text-button{color:#334031;border-color:#aeb9a9}.scroll-cue{color:#7c8678}

.hero-art{background:linear-gradient(#cfe4e4 0 61%,#b8cc8a 61% 68%,#83684c 68%);border-color:rgba(64,81,58,.18);overflow:hidden}
.hero-art:after{content:"";position:absolute;left:0;right:0;bottom:0;height:32%;background-image:url("assets/minecraft/grass_block_top.png");background-size:80px 80px;image-rendering:pixelated;filter:hue-rotate(8deg) saturate(.8);box-shadow:0 -8px 0 rgba(82,114,49,.35)}
.sky-pixels{position:absolute;inset:0 0 32%;background:linear-gradient(90deg,transparent 49.7%,rgba(255,255,255,.23) 50%,transparent 50.3%),linear-gradient(transparent 49.7%,rgba(255,255,255,.18) 50%,transparent 50.3%);background-size:96px 96px;opacity:.5}
.mc-sun{position:absolute;right:15%;top:16%;width:98px;height:98px;background:#fff0a0;box-shadow:0 0 0 10px rgba(255,242,160,.22),0 0 45px rgba(255,222,111,.55)}
.mc-cloud{position:absolute;height:34px;background:rgba(255,255,255,.8);filter:drop-shadow(6px 6px 0 rgba(83,120,117,.1))}.mc-cloud:before,.mc-cloud:after{content:"";position:absolute;background:inherit}.mc-cloud:before{width:58px;height:27px;left:28px;top:-18px}.mc-cloud:after{width:42px;height:20px;right:-28px;bottom:0}.cloud-one{width:130px;left:9%;top:20%}.cloud-two{width:95px;right:18%;top:39%;opacity:.7;transform:scale(.75)}
.block-field{position:absolute;left:8%;right:8%;bottom:21%;height:190px;z-index:2}.block{position:absolute;width:112px;height:112px;background-size:112px 112px;image-rendering:pixelated;box-shadow:9px 12px 0 rgba(50,60,41,.14)}.block.grass{left:5%;bottom:0;background-image:url("assets/minecraft/grass_block_top.png")}.block.moss{left:27%;bottom:38px;background-image:url("assets/minecraft/moss_block.png")}.block.birch{right:27%;bottom:5px;background-image:url("assets/minecraft/birch_planks.png")}.block.crafting{right:5%;bottom:64px;background-image:url("assets/minecraft/crafting_table_top.png")}
.hero-item{position:absolute;z-index:4;image-rendering:pixelated;filter:drop-shadow(9px 12px 0 rgba(39,49,31,.16))}.cake-item{width:112px;height:112px;object-fit:contain;left:28%;bottom:34%}.lantern-item{width:80px;height:80px;object-fit:contain;right:22%;bottom:42%;animation:float-item 3s ease-in-out infinite}@keyframes float-item{50%{transform:translateY(-8px)}}
.hero-art>p{color:#566252;background:rgba(255,251,235,.75);padding:10px 12px;z-index:5}.hero-art>p b{color:#31402d}
.moon,.terrain,.torch,.floating-cube{display:none}

.details{background:#fffaf0;color:#263026;border-top:10px solid transparent;border-image:url("assets/minecraft/birch_planks.png") 16 round}
.details .section-kicker{color:#65823f}.details h2{color:#293329}.details-intro p{color:#6b7468}.detail-grid{border-color:#ccd2c4}.detail-grid article{border-color:#ccd2c4;background:rgba(245,240,223,.58)}
.pixel-icon{background-color:transparent;background-size:contain;background-repeat:no-repeat;image-rendering:pixelated;box-shadow:none;clip-path:none!important;width:42px;height:42px}.pixel-icon.calendar{background-image:url("assets/minecraft/cake.png")}.pixel-icon.clock{background-image:url("assets/minecraft/lantern.png")}.pixel-icon.pin{background-image:url("assets/minecraft/compass.png"),url("assets/minecraft/emerald.png")}

.wishlist{background:#eef0df;position:relative}.wishlist:before{content:"";position:absolute;inset:0;background-image:url("assets/minecraft/birch_planks.png");background-size:128px 128px;image-rendering:pixelated;opacity:.035;pointer-events:none}.wishlist>*{position:relative}.wishlist h2,.archive h2{color:#293329}.wishlist-head p{color:#697466}.filters button{border-color:#bfc8b8;color:#657060;background:rgba(255,255,255,.46)}.filters button.active,.filters button:hover{background:#405037;color:#fffdf4}.gift-grid{background:#bdc9b4;border-color:#bdc9b4;box-shadow:12px 12px 0 rgba(65,84,57,.08)}.gift-card{background:#fffaf0;color:#283228}.gift-card:nth-child(even){background:#f7f2df}.gift-card:hover{background:#fff;box-shadow:inset 0 0 0 3px #91a968}.gift-card p{color:#70786d}.gift-card small,.gift-card .arrow{color:#64883e}.gift-icon{background:rgba(213,222,191,.42);border:1px solid rgba(103,129,75,.12)}.gift-shape{width:76px;height:76px;background-color:transparent!important;background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important;image-rendering:pixelated;box-shadow:none!important;transform:none!important;clip-path:none!important;border-radius:0!important}.gift-shape.disc{background-image:url("assets/minecraft/music_disc_13.png")!important}.gift-shape.spark{background-image:url("assets/minecraft/experience_bottle.png")!important}.gift-shape.speaker{background-image:url("assets/minecraft/amethyst_shard.png")!important}.gift-shape.book{background-image:url("assets/minecraft/enchanted_book.png")!important}.gift-shape.cube{background-image:url("assets/minecraft/diamond.png")!important}.gift-shape.heart{background-image:url("assets/minecraft/emerald.png")!important}.wishlist-note span{border-color:#b6c0af}

.archive{background:#f8f4e7}.archive-layout>div p{color:#6c756a}.world-card{border-color:#c9d0c1;color:#293329;background:#fffaf0}.world-card.current:hover{background:#fff;border-color:#7e9a52}.world-thumb{background:#cae1df}.world-thumb:after{background-image:url("assets/minecraft/grass_block_top.png");background-size:58px 58px;image-rendering:pixelated;clip-path:polygon(0 25%,28% 25%,28% 0,58% 0,58% 35%,78% 35%,78% 12%,100% 12%,100% 100%,0 100%)}.world-thumb i{background-image:url("assets/minecraft/birch_planks.png");background-size:23px 23px;box-shadow:9px -16px #77964c,-9px -10px #77964c}.world-card em{color:#747d70}
footer{background:#e9e6d6;border-color:#c5ccbe;color:#697268}
.invite-dialog::backdrop,.gift-dialog::backdrop{background:rgba(56,67,52,.62);backdrop-filter:blur(9px)}.book-shell{background-image:url("assets/minecraft/birch_planks.png");background-size:96px 96px;image-rendering:pixelated}.gift-modal{background:#fffaf0;color:#263026}.large-gift-icon{background:#e4e8cf}.gift-modal>p{color:#697266}

@media(max-width:900px){.block{width:82px;height:82px;background-size:82px 82px}.cake-item{width:86px;height:86px}.lantern-item{width:62px;height:62px}.hero-art{height:430px}}
@media(max-width:600px){.mc-sun{width:66px;height:66px}.block-field{left:2%;right:2%}.block{width:68px;height:68px;background-size:68px 68px}.cake-item{left:27%;bottom:31%;width:72px;height:72px}.lantern-item{right:18%;bottom:44%;width:54px;height:54px}.gift-card{min-height:300px}}

/* Open-book invitation, inspired by the in-game written book */
.invite-dialog{width:min(1180px,96vw);overflow:visible}
.invite-dialog::backdrop{background:rgba(13,25,17,.82);backdrop-filter:blur(5px) brightness(.55)}
.book-shell{width:100%;padding:24px 28px 30px;background:#6d2f1f;background-image:linear-gradient(90deg,rgba(255,255,255,.08),transparent 8% 92%,rgba(0,0,0,.16)),linear-gradient(#7f3a25 0 11%,#5d281d 12% 88%,#3c1a13 89%);border:6px solid #26120d;box-shadow:0 12px 0 #160b08,0 32px 80px rgba(0,0,0,.65);clip-path:polygon(2% 0,48% 0,49% 2%,51% 2%,52% 0,98% 0,100% 3%,100% 97%,98% 100%,52% 100%,51% 98%,49% 98%,48% 100%,2% 100%,0 97%,0 3%)}
.open-book{display:grid;grid-template-columns:1fr 22px 1fr;min-height:650px;position:relative}
.book-page{min-height:650px;padding:58px 64px 46px;position:relative;color:#4f402f;background-color:#fff9e5;background-image:radial-gradient(circle at 18% 12%,rgba(255,255,255,.8),transparent 27%),radial-gradient(circle at 88% 82%,rgba(171,137,82,.1),transparent 30%),linear-gradient(90deg,rgba(143,106,63,.06) 1px,transparent 1px),linear-gradient(rgba(143,106,63,.035) 1px,transparent 1px);background-size:auto,auto,18px 18px,18px 18px;box-shadow:inset 0 0 28px rgba(112,75,39,.17)}
.book-page-left{border-radius:4px 18px 14px 4px;box-shadow:inset -20px 0 28px rgba(84,57,34,.13),inset 0 0 28px rgba(112,75,39,.15)}
.book-page-right{border-radius:18px 4px 4px 14px;box-shadow:inset 20px 0 28px rgba(84,57,34,.13),inset 0 0 28px rgba(112,75,39,.15)}
.book-spine{background:linear-gradient(90deg,#d1b984,#fff6d8 42%,#c2a86f 50%,#fff6d8 58%,#c7ad78);filter:drop-shadow(0 0 7px rgba(74,48,26,.32));z-index:2}
.page-corner{position:absolute;width:36px;height:36px;top:8px;opacity:.45;background:linear-gradient(135deg,#b0915d 0 12%,transparent 13% 23%,#d2b87e 24% 34%,transparent 35% 45%,#a98553 46% 56%,transparent 57%);image-rendering:pixelated}.corner-top-left{left:9px}.corner-top-right{right:9px;transform:scaleX(-1)}
.book-overline{text-align:center;font:8px var(--pixel);letter-spacing:.06em;color:#8c7659;margin:0}.book-title-wrap{margin:92px auto 32px;text-align:center}.book-item-icon{width:50px;height:50px;object-fit:contain;image-rendering:pixelated;margin-bottom:18px}.book-page h2{font:clamp(18px,2vw,29px)/1.45 var(--pixel);letter-spacing:-.045em;margin:0;color:#584633;text-shadow:2px 2px #e5d5ad}.book-author{font:italic 19px Georgia,serif;margin:9px 0;color:#776047}.book-author strong{font:11px var(--pixel);font-style:normal}.book-copy{font:16px/1.65 Georgia,serif;color:#5d4a35}.book-copy-left{max-width:380px;margin:0 auto}.book-copy-left p:first-child:first-letter{font:48px/.8 Georgia,serif;float:left;margin:8px 8px 0 0;color:#76573b}.book-page-right h3{text-align:center;font:19px var(--pixel);font-weight:400;color:#69543c;margin:12px 0 48px}.book-toc{font:13px var(--pixel);color:#735b41;margin:0 auto 42px}.book-toc p{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:10px;margin:0 0 17px}.book-toc i{border-bottom:3px dotted #8f7657;transform:translateY(-4px)}.book-toc b{font-weight:400;text-align:right;max-width:150px;line-height:1.35}.book-copy-right{font-size:15px;border-top:1px solid rgba(111,81,49,.22);padding-top:22px}.book-sign{margin:21px 0 13px;text-align:right}.book-sign span{font:6px var(--pixel);color:#91795c}.book-sign strong{font:16px/1.8 var(--pixel);color:#614c35}.book-page .pixel-button{display:block;margin:12px auto 0;background:#637b41;color:#fff9e5;box-shadow:0 5px 0 #3f4e2d}.book-page .pixel-button span{padding:13px 17px}.page-number{position:absolute;bottom:13px;left:50%;transform:translateX(-50%);font:9px var(--pixel);color:#c0ad84}.close-dialog{right:4px;top:-48px;width:38px;height:38px;background:#fff7dd;color:#4d3827;border:4px solid #361a11;font:20px var(--pixel);display:grid;place-items:center;box-shadow:4px 4px 0 #1c0d09}

@media(max-width:700px){.invite-dialog{width:min(640px,95vw)}.book-shell{padding:18px}.open-book{grid-template-columns:1fr;min-height:0}.book-spine,.book-page-left .page-number{display:none}.book-page{min-height:0;padding:42px 42px 35px}.book-page-left{border-radius:4px 4px 0 0;box-shadow:inset 0 -18px 25px rgba(84,57,34,.1)}.book-page-right{border-radius:0 0 4px 4px;box-shadow:inset 0 18px 25px rgba(84,57,34,.1)}.book-title-wrap{margin:36px auto 22px}.book-copy-left{max-width:none}.book-page-right h3{margin:8px 0 28px}.book-toc{margin-bottom:28px}}
@media(max-width:600px){.invite-dialog{width:96vw}.book-shell{padding:10px 12px 15px;border-width:4px}.book-page{padding:34px 24px 32px}.book-title-wrap{margin:25px auto 18px}.book-item-icon{width:38px;height:38px;margin-bottom:10px}.book-page h2{font-size:16px}.book-page-right h3{font-size:14px}.book-toc{font-size:9px}.book-copy{font-size:14px}.close-dialog{top:-43px;right:0}}

/* Mojang Bedrock UI texture layer — real book frame, page edges and spine */
.book-shell{
  padding:0;
  background:none;
  border:28px solid transparent;
  border-image-source:url("assets/minecraft/ui/book_back.png");
  border-image-slice:13 fill;
  border-image-width:28px;
  border-image-repeat:stretch;
  clip-path:none;
  image-rendering:pixelated;
  box-shadow:0 13px 0 rgba(24,11,7,.8),0 34px 90px rgba(0,0,0,.68);
}
.open-book{gap:0;background:#f5e9c8}
.book-page{background:#fff7df;image-rendering:pixelated;border-radius:0;box-shadow:none;overflow:hidden}
.book-page-left,.book-page-right{background-image:none}
.book-page:before{content:"";position:absolute;inset:0;border:18px solid transparent;pointer-events:none;z-index:0;image-rendering:pixelated}
.book-page-left:before{border-image-source:url("assets/minecraft/ui/book_pageedge_left.png");border-image-slice:40 0 40 40 fill;border-image-width:18px 0 18px 18px;border-image-repeat:repeat}
.book-page-right:before{border-image-source:url("assets/minecraft/ui/book_pageedge_right.png");border-image-slice:40 40 40 0 fill;border-image-width:18px 18px 18px 0;border-image-repeat:repeat}
.book-page:after{display:none}
.book-page>*{position:relative;z-index:1}
.book-spine{width:22px;background:url("assets/minecraft/ui/book_spine.png") center/100% 100% no-repeat;image-rendering:pixelated;filter:none;box-shadow:none}
.page-corner{display:none}
.close-dialog{right:-19px;top:-19px;width:30px;height:30px;padding:0;border:0;background:url("assets/minecraft/ui/close_button_default.png") center/100% 100% no-repeat;color:transparent;box-shadow:none;image-rendering:pixelated}
.close-dialog:hover{background-image:url("assets/minecraft/ui/close_button_hover.png")}
.book-page .pixel-button{background-color:transparent;background-image:url("assets/minecraft/ui/button_borderless_light.png");background-size:100% 100%;image-rendering:pixelated;border:4px solid #5b6d3e;box-shadow:0 5px 0 #39472a;color:#fff9e5}
.book-page .pixel-button:hover{background-image:url("assets/minecraft/ui/button_borderless_lighthover.png")}

@media(max-width:700px){.book-shell{padding:0;border-width:20px;border-image-width:20px}.book-page-left{background-image:url("assets/minecraft/ui/book_pageedge_left.png")}.book-page-right{background-image:url("assets/minecraft/ui/book_pageedge_right.png")}.close-dialog{right:-16px;top:-16px;width:27px;height:27px}}
@media(max-width:600px){.book-shell{padding:0;border-width:14px;border-image-width:14px}.close-dialog{right:-12px;top:-12px;width:24px;height:24px}}

/* Animated wishlist book */
.gift-dialog{width:min(1040px,98vw);height:min(700px,96vh);overflow:visible}
.gift-dialog::backdrop{background:rgba(13,25,17,.82);backdrop-filter:blur(5px) brightness(.55)}
.gift-book-stage{width:100%;height:100%;display:grid;place-items:center;perspective:1800px;position:relative;opacity:0;transform:scale(.94);transition:opacity .2s ease,transform .24s ease}
.gift-dialog.is-open .gift-book-stage{opacity:1;transform:scale(1)}
.gift-book{width:min(920px,92vw);height:550px;position:relative;transform-style:preserve-3d;isolation:isolate}
.gift-book-pages{position:absolute;inset:0;display:grid;grid-template-columns:1fr 18px 1fr;opacity:1;transform:none;clip-path:inset(0 50% 0 50%);transition:clip-path .34s cubic-bezier(.4,0,.2,1);filter:drop-shadow(0 22px 25px rgba(0,0,0,.35));will-change:clip-path}
.gift-dialog.is-open .gift-book-pages{opacity:1;transform:none;clip-path:inset(0);transition:clip-path .46s cubic-bezier(.2,.78,.2,1) .32s}
.gift-page-left{opacity:1;transition:none}
.gift-dialog.is-open .gift-page-left{opacity:1;transition:none}
.gift-page{position:relative;padding:54px 58px 42px;background:#fff7df;overflow:hidden;color:#564632;image-rendering:pixelated;border:26px solid transparent;border-image-source:url("assets/minecraft/ui/book_back.png");border-image-slice:13 fill;border-image-width:26px}
.gift-page-left{border-right-width:8px}.gift-page-right{border-left-width:8px}.gift-page:before{content:"";position:absolute;inset:8px;border:14px solid transparent;pointer-events:none}.gift-page-left:before{border-image:url("assets/minecraft/ui/book_pageedge_left.png") 40 0 40 40 fill / 14px 0 14px 14px repeat}.gift-page-right:before{border-image:url("assets/minecraft/ui/book_pageedge_right.png") 40 40 40 0 fill / 14px 14px 14px 0 repeat}.gift-page>*{position:relative;z-index:1}.gift-book-spine{background:url("assets/minecraft/ui/book_spine.png") center/100% 100% no-repeat;image-rendering:pixelated;z-index:2}.gift-page small{font:8px var(--pixel);color:#7b8f52;text-transform:uppercase}.gift-page-left{text-align:center}.gift-page-left .large-gift-icon{height:210px;margin:20px 0;background:transparent;border:0}.gift-page-left .gift-shape{width:150px;height:150px;filter:drop-shadow(9px 12px 0 rgba(72,55,35,.14))}.gift-page h3{font:22px/1.45 var(--pixel);color:#54422f;margin:0}.gift-page-label{font:7px var(--pixel);color:#8b775c;margin:2px 0 35px}.gift-page h4{font:19px var(--pixel);color:#5c4934;margin:0 0 28px}.gift-page-right>p:not(.gift-page-label):not(.modal-hint){font:17px/1.7 Georgia,serif;color:#5c4a36}.gift-price{border-top:1px solid rgba(91,69,43,.2);border-bottom:1px solid rgba(91,69,43,.2);padding:16px 0;margin:27px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.gift-price span{font:7px var(--pixel);color:#8b775c}.gift-price strong{font:12px var(--pixel);color:#5b6f3f}.gift-page-right .pixel-button{display:inline-block;background:#718b4d;color:#fff8df}.gift-page-right .modal-hint{font-size:10px;color:#93836d;margin-top:17px}.gift-page .page-number{z-index:2}
.gift-book-cover{position:absolute;left:25%;top:0;width:50%;height:100%;transform-origin:left center;transform-style:preserve-3d;transition:left .48s cubic-bezier(.4,0,.2,1),transform .58s cubic-bezier(.4,0,.2,1),opacity .1s ease;z-index:6;opacity:1;filter:drop-shadow(12px 18px 18px rgba(0,0,0,.42));will-change:left,transform,opacity}.gift-dialog.is-open .gift-book-cover{left:50%;transform:rotateY(-178deg);opacity:0;transition:left .68s cubic-bezier(.4,0,.2,1),transform 1.05s cubic-bezier(.35,.02,.18,1),opacity .14s ease .9s}.gift-cover-front,.gift-cover-back{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border:28px solid transparent;border-image:url("assets/minecraft/ui/book_back.png") 13 fill / 28px stretch;image-rendering:pixelated}.gift-cover-front{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#6f3b28;color:#f7e8bd}.gift-cover-front:before{content:"";position:absolute;inset:34px;border:3px solid rgba(232,203,140,.4);box-shadow:inset 0 0 0 5px rgba(40,20,13,.16)}.gift-cover-front>*{position:relative}.gift-cover-icon .gift-shape{width:112px;height:112px;filter:drop-shadow(7px 9px 0 rgba(0,0,0,.2))}.gift-cover-front strong{font:16px/1.5 var(--pixel);max-width:270px;margin:23px 0;color:#f6e6b8}.gift-cover-front small{font:6px var(--pixel);color:#d7bc84}.gift-cover-back{transform:rotateY(180deg);background:#ead9ae}.close-gift{position:absolute;right:18px;top:22px;width:34px;height:34px;border:0;background:url("assets/minecraft/ui/close_button_default.png") center/100% 100% no-repeat;image-rendering:pixelated;z-index:20;cursor:pointer}.close-gift:hover{background-image:url("assets/minecraft/ui/close_button_hover.png")}

@media(max-width:760px){.gift-dialog{height:min(760px,97vh)}.gift-book{width:92vw;height:680px}.gift-book-pages{grid-template-columns:1fr;grid-template-rows:1fr 8px 1.08fr}.gift-book-spine{background-size:100% 100%}.gift-page{padding:30px 34px 28px;border-width:18px}.gift-page-left{border-right-width:18px;border-bottom-width:5px}.gift-page-right{border-left-width:18px;border-top-width:5px}.gift-page-left .large-gift-icon{height:95px;margin:9px 0}.gift-page-left .gift-shape{width:78px;height:78px}.gift-page h3{font-size:15px}.gift-page-label{margin-bottom:15px}.gift-page h4{font-size:14px;margin-bottom:12px}.gift-page-right>p:not(.gift-page-label):not(.modal-hint){font-size:14px;line-height:1.5}.gift-price{margin:13px 0;padding:10px 0}.gift-book-cover{left:12%;width:76%;height:60%;top:20%;transform-origin:left center}.gift-dialog.is-open .gift-book-cover{left:50%;top:20%;transform:rotateY(-178deg) scale(.76)}.close-gift{right:6px;top:6px}}
.gift-cover-front{transform:translateZ(1px)}
.gift-cover-front *{backface-visibility:hidden}
.gift-cover-front>*{transition:opacity .06s linear}
.gift-dialog.is-open .gift-cover-front>*{opacity:0;transition-delay:.55s}
.gift-cover-back{transform:rotateY(180deg) translateZ(1px)}
.gift-cover-front,.gift-cover-back{border-image-source:url("assets/minecraft/ui/book_cover.png");background:#6b3c25}
.gift-book-pages{z-index:2}
.gift-dialog.is-open .gift-book-cover{animation:gift-cover-behind .01s linear .72s forwards}
@keyframes gift-cover-behind{to{z-index:1}}
.gift-page{background-clip:padding-box}

/* First-visit invitation and declined-response death screen */
body.intro-pending{overflow:hidden}
.entry-curtain{position:fixed;inset:0;z-index:1000;background:#000;opacity:1;visibility:visible;transition:opacity 1.1s ease,visibility 0s linear 1.1s}
.entry-curtain.is-gone{display:none;opacity:0;visibility:hidden;pointer-events:none}
.invite-dialog{position:fixed;inset:0;z-index:2200;display:grid;place-items:center;width:100%;height:100%;max-height:none;padding:18px;overflow:auto;background:#000;opacity:0;transition:opacity .65s ease}
.invite-dialog[hidden]{display:none}
.invite-dialog.is-visible{opacity:1}
.invite-dialog.is-visible .invite-sheet-shell{transform:translateY(0) scale(1)}
.invite-sheet-shell{width:min(540px,94vw);filter:drop-shadow(0 22px 50px rgba(0,0,0,.75));image-rendering:pixelated;transform:translateY(18px) scale(.965);transition:transform .8s cubic-bezier(.2,.75,.2,1)}
.invite-paper{min-height:min(720px,88vh);display:flex;flex-direction:column;padding:42px 48px 35px;color:#4f412e;background:#fff8e5;background-clip:padding-box;border:26px solid transparent;border-image:url("assets/minecraft/ui/book_back.png") 13 fill / 26px stretch;image-rendering:pixelated;font-family:var(--pixel);position:relative}
.invite-paper:before{content:"";position:absolute;inset:12px;border:14px solid transparent;border-image:url("assets/minecraft/ui/book_pageedge_left.png") 40 0 40 40 fill / 14px 0 14px 14px repeat;pointer-events:none}.invite-paper>*{position:relative;z-index:1}.invite-page-count{text-align:center;font-size:12px;margin:0 0 30px;color:#6c5941}.invite-paper h2{text-align:center;font:24px/1.45 var(--pixel);color:#493a29;margin:0 0 28px}.invite-copy{font:13px/1.7 var(--pixel);color:#594935}.invite-copy p{margin:0 0 18px}.invite-details{border-top:2px dotted #9a8568;border-bottom:2px dotted #9a8568;padding:15px 0 7px;margin-top:auto}.invite-details p{display:flex;justify-content:space-between;gap:18px;font:11px/1.4 var(--pixel);margin:0 0 10px}.invite-details span{color:#8b7557}.invite-details b{font-weight:400;text-align:right}.invite-sign{text-align:right;font:10px var(--pixel);margin:20px 0}.invite-sign strong{color:#6e864b}.invite-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mc-choice{min-height:48px;border:3px solid #1a1a1a;background:linear-gradient(#858585,#686868);box-shadow:inset 2px 2px #aaa,inset -2px -2px #454545,0 4px 0 #151515;color:#fff;text-shadow:2px 2px #333;font:11px var(--pixel);cursor:pointer;padding:9px 12px}.mc-choice:hover{background:linear-gradient(#96a86b,#72894d);box-shadow:inset 2px 2px #bdcc91,inset -2px -2px #4d6135,0 4px 0 #263119}.mc-choice:active{transform:translateY(3px);box-shadow:inset 2px 2px #4d6135,0 1px 0 #263119}
.death-screen{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;background:url("assets/minecraft/death-background.png") center/cover no-repeat;opacity:0;transition:opacity .22s ease;font-family:var(--pixel);color:#fff;overflow:hidden}.death-screen[hidden]{display:none}.death-screen.is-visible{opacity:1}.death-screen.is-impact{animation:death-hit .42s steps(3,end)}@keyframes death-hit{0%{transform:translate(0)}25%{transform:translate(-10px,6px)}50%{transform:translate(8px,-4px)}75%{transform:translate(-5px,2px)}100%{transform:translate(0)}}.death-shade{position:absolute;inset:0;background:rgba(92,0,0,.8);mix-blend-mode:multiply;backdrop-filter:blur(3px)}.death-content{position:relative;z-index:2;width:min(760px,86vw);text-align:center;transform:translateY(-3vh)}.death-content h2{font:clamp(44px,7vw,88px)/1 var(--pixel);margin:0 0 28px;text-shadow:6px 6px #3a3a3a;color:#f4f4f4}.death-content p{font:clamp(15px,2.1vw,25px)/1.5 var(--pixel);text-shadow:3px 3px #323232;margin:0 0 60px}.death-content p strong{color:#fff;font-weight:400}.death-content button{width:min(560px,80vw);min-height:66px;border:4px solid #111;background:linear-gradient(#575757,#3d3d3d);box-shadow:inset 3px 3px #737373,inset -3px -3px #292929;color:#aaa;text-shadow:2px 2px #222;font:clamp(15px,2vw,23px) var(--pixel);cursor:not-allowed;opacity:.78}.death-screen>small{position:absolute;z-index:2;left:50%;bottom:24px;transform:translateX(-50%);width:90%;text-align:center;font:9px/1.6 var(--pixel);color:rgba(255,255,255,.74);text-shadow:2px 2px #270000}
@media(max-width:600px){.invite-paper{padding:30px 25px 25px;border-width:18px;border-image-width:18px;min-height:90vh}.invite-page-count{font-size:9px;margin-bottom:22px}.invite-paper h2{font-size:18px}.invite-copy{font-size:10px}.invite-actions{grid-template-columns:1fr}.mc-choice{font-size:9px}.death-content h2{font-size:38px}.death-content p{font-size:13px;margin-bottom:38px}.death-content button{min-height:54px;font-size:13px}.death-screen>small{font-size:7px}}

/* The longer invitation needs a wider, viewport-bound page on desktop. */
@media(min-width:681px){
  .invite-dialog{padding:18px 32px;overflow:hidden}
  .invite-sheet-shell{width:min(760px,calc(100vw - 64px));max-height:calc(100svh - 36px)}
  .invite-paper{width:100%;min-height:0;max-height:calc(100svh - 36px);padding:40px 62px 34px 70px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8d6848 transparent}
  .invite-page-count{margin-bottom:22px}
  .invite-paper h2{margin-bottom:22px;font-size:25px}
  .invite-copy{font-size:13px;line-height:1.62}
  .invite-copy p{margin-bottom:14px}
  .invite-details{margin-top:8px}
  .invite-sign{margin:15px 0}
}

/* Keep the custom deep-dark screenshot visible beneath the Minecraft death tint. */
.death-screen{background-image:url("assets/minecraft/death-background.png?v=2")}
.death-shade{background:rgba(92,0,0,.58);backdrop-filter:blur(1.5px)}
/* Wishlist book animation v2: cover and spread have separate, non-overlapping phases. */
.gift-dialog .gift-book-stage{opacity:1;transform:none;transition:none}
.gift-dialog .gift-book{isolation:isolate}
.gift-dialog .gift-book-cover{
  display:block;visibility:visible;opacity:1;z-index:5;
  left:25%;top:0;width:50%;height:100%;
  transform:none;transform-origin:center;animation:none;transition:none;filter:drop-shadow(12px 18px 18px rgba(0,0,0,.42));
}
.gift-dialog .gift-book-pages{
  visibility:hidden;opacity:0;z-index:2;clip-path:none;
  transform:scaleX(.5);transform-origin:center;animation:none;transition:none;filter:drop-shadow(0 22px 25px rgba(0,0,0,.35));
}
.gift-dialog.is-opening .gift-book-cover{animation:wishlist-cover-away .36s cubic-bezier(.55,0,.75,.25) both}
.gift-dialog.is-opening .gift-book-pages{visibility:hidden;opacity:0;transform:scaleX(.5)}
.gift-dialog.is-opened .gift-book-cover{display:none;visibility:hidden;opacity:0}
.gift-dialog.is-opened .gift-book-pages{visibility:visible;animation:wishlist-spread-open .46s cubic-bezier(.18,.76,.22,1) both}
.gift-dialog.is-closing .gift-book-cover{display:none!important}
.gift-dialog.is-closing .gift-book-pages{visibility:visible;animation:wishlist-spread-close .16s ease both}
.gift-dialog.is-closing .gift-book-stage{opacity:0;transform:scale(.98);transition:opacity .16s ease,transform .16s ease}
.gift-dialog.is-closing::backdrop{background:transparent;backdrop-filter:none;transition:background .16s ease}
@keyframes wishlist-cover-away{
  0%{opacity:1;transform:scale(1)}
  65%{opacity:1;transform:scale(.94)}
  100%{opacity:0;transform:scale(.86);visibility:hidden}
}
@keyframes wishlist-spread-open{
  0%{opacity:0;transform:scaleX(.5) scaleY(.96)}
  25%{opacity:1}
  100%{opacity:1;transform:scaleX(1) scaleY(1)}
}
@keyframes wishlist-spread-close{
  from{opacity:1;transform:scaleX(1) scaleY(1)}
  to{opacity:0;transform:scaleX(.94) scaleY(.98)}
}
@media(max-width:760px){
  .gift-dialog .gift-book-cover{left:12%;top:20%;width:76%;height:60%;transform-origin:center}
  @keyframes wishlist-spread-open{0%{opacity:0;transform:scaleY(.5)}25%{opacity:1}100%{opacity:1;transform:scaleY(1)}}
}
@media(prefers-reduced-motion:reduce){
  .gift-dialog.is-opening .gift-book-cover{display:none;animation:none}
  .gift-dialog.is-opened .gift-book-pages{visibility:visible;opacity:1;transform:none;animation:none}
}

/* Minecraft Java-style player identity and reservations */
.profile-dialog{position:fixed;inset:0;z-index:140;display:grid;place-items:center;padding:24px;background:linear-gradient(rgba(8,11,10,.74),rgba(8,11,10,.82)),url("assets/minecraft/stone_bricks.png") center/96px 96px;opacity:0;transition:opacity .16s linear}
.profile-dialog[hidden]{display:none}.profile-dialog.is-visible{opacity:1}
.mc-menu-panel{width:min(520px,100%);color:#fff;text-align:center;font-family:"Minecraft Rus","Press Start 2P",monospace;text-shadow:2px 2px #3f3f3f}
.mc-menu-panel h2{margin:0 0 14px;color:#fff;font:inherit;font-size:clamp(20px,4vw,28px);line-height:1.25}
.mc-menu-help{max-width:470px;margin:0 auto 24px;color:#d6d6d6;font:13px/1.55 "Minecraft Rus",monospace}
.mc-field-label{display:block;margin:0 0 7px;color:#fff;text-align:left;font-size:14px}
.mc-text-field{box-sizing:border-box;width:100%;height:44px;margin:0 0 18px;padding:7px 11px;border:2px solid #a0a0a0;border-color:#a0a0a0 #3f3f3f #3f3f3f #a0a0a0;border-radius:0;outline:2px solid #000;background:#050505;color:#fff;caret-color:#fff;font:17px "Minecraft Rus",monospace;text-shadow:2px 2px #3f3f3f}
.mc-text-field:focus{border-color:#fff;outline-color:#9aa0a5}.mc-text-field::placeholder{color:#777;opacity:1}
.mc-checkbox-row{display:grid;grid-template-columns:26px 1fr;gap:12px;align-items:start;margin:2px 0 20px;cursor:pointer;text-align:left}
.mc-checkbox-row input{position:absolute;opacity:0;pointer-events:none}
.mc-checkbox{position:relative;display:block;width:22px;height:22px;border:2px solid #000;outline:2px solid #a0a0a0;background:#151515}
.mc-checkbox-row input:checked+.mc-checkbox::after{content:"✓";position:absolute;left:2px;top:-7px;color:#fff;font-size:27px;text-shadow:2px 2px #3f3f3f}
.mc-checkbox-row input:focus-visible+.mc-checkbox{outline-color:#fff}.mc-checkbox-row strong{display:block;color:#fff;font-size:14px;font-weight:400}.mc-checkbox-row small{display:block;margin-top:5px;color:#aaa;font:11px/1.35 "Minecraft Rus",monospace}.companion-field[hidden]{display:none}
.mc-preferences{display:grid;gap:10px;margin:4px 0 16px;padding:13px 0 0;border:0;border-top:2px solid rgba(255,255,255,.22)}.mc-preferences legend{padding:0 8px;color:#bcbcbc;font:10px "Minecraft Rus",monospace}.mc-setting-toggle{display:block;cursor:pointer}.mc-setting-toggle input{position:absolute;opacity:0;pointer-events:none}.mc-setting-toggle>span{display:block;box-sizing:border-box;width:100%;min-height:40px;padding:10px 14px;border:2px solid #000;box-shadow:inset 2px 2px #c6c6c6,inset -2px -2px #555;background:repeating-linear-gradient(0deg,#7b7b7b 0 2px,#747474 2px 4px);color:#fff;font:13px "Minecraft Rus",monospace;text-align:center;text-shadow:2px 2px #3f3f3f}.mc-setting-toggle b{font-weight:400}.mc-setting-toggle em{color:#a9a9a9;font-style:normal}.mc-setting-toggle input:checked+span em{color:#ffff55}.mc-setting-toggle input:focus-visible+span,.mc-setting-toggle:hover>span{outline:2px solid #fff;outline-offset:-4px;background:linear-gradient(rgba(115,135,255,.3),rgba(58,72,150,.34)),#777;color:#ffffa0}.allergy-field[hidden]{display:none}.mc-textarea{height:64px;min-height:64px;resize:vertical;margin-bottom:0;line-height:1.35}
.mc-ui-button{position:relative;box-sizing:border-box;min-width:190px;min-height:40px;padding:8px 18px;border:2px solid #000;border-radius:0;box-shadow:inset 2px 2px #c6c6c6,inset -2px -2px #555;background:linear-gradient(rgba(255,255,255,.04),rgba(0,0,0,.09)),repeating-linear-gradient(0deg,#7b7b7b 0 2px,#747474 2px 4px);color:#fff;cursor:pointer;font:15px "Minecraft Rus",monospace;text-align:center;text-shadow:2px 2px #3f3f3f}
.mc-ui-button:hover:not(:disabled),.mc-ui-button:focus-visible{outline:2px solid #fff;outline-offset:-4px;background:linear-gradient(rgba(115,135,255,.36),rgba(58,72,150,.38)),#777;color:#ffffa0}.mc-ui-button:active:not(:disabled){box-shadow:inset 2px 2px #555,inset -2px -2px #bdbdbd}.mc-ui-button:disabled{color:#a0a0a0;cursor:default;text-shadow:2px 2px #202020;filter:brightness(.72)}
.mc-menu-panel>.mc-ui-button{display:block;width:100%;margin:9px 0 0}.mc-ui-primary{margin-top:18px!important}.mc-form-error{min-height:18px;margin:4px 0 0;color:#ff5555;font:12px/1.4 "Minecraft Rus",monospace}.mc-privacy{display:block;margin-top:18px;color:#aaa;font:10px/1.45 "Minecraft Rus",monospace}
.player-bar{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;margin:22px 0 28px;padding:13px 14px;border:3px solid #1b1b1b;box-shadow:inset 2px 2px #a7a7a7,inset -2px -2px #454545;background:#707070;color:#fff;font-family:"Minecraft Rus",monospace;text-shadow:2px 2px #333}.player-bar[hidden]{display:none}
.player-head{width:42px;height:42px;image-rendering:pixelated;background:linear-gradient(#c78c63 0 42%,#4d3227 42% 58%,#4a6a8b 58%);box-shadow:inset 0 0 0 5px #2b1b17,0 0 0 2px #111}.player-bar p{margin:0}.player-bar small,.player-bar strong,.player-bar em{display:block;font-style:normal}.player-bar small{color:#d0d0d0;font-size:10px}.player-bar strong{margin-top:3px;font-size:16px;font-weight:400}.player-bar em{margin-top:4px;color:#ffff55;font-size:11px}.player-bar .mc-ui-button{min-width:170px}
.gift-card{position:relative}.gift-state{position:absolute;top:18px;right:18px;padding:4px 6px;border:2px solid #252525;background:#767676;color:#fff;font:9px "Minecraft Rus",monospace;text-shadow:1px 1px #333}.gift-card.reservation-mine .gift-state{background:#58743a;color:#ffffa0}.gift-card.reservation-taken{filter:saturate(.55)}.gift-card.reservation-taken .gift-state{background:#565656;color:#bdbdbd}
.reservation-panel{margin-top:16px;padding-top:13px;border-top:1px solid rgba(88,65,42,.24)}.reservation-panel p{margin:0 0 9px!important;color:#4e3b29;font:13px/1.3 "Minecraft Rus",monospace!important}.reservation-panel .mc-ui-button{width:100%;min-height:36px;padding:6px 10px;font-size:12px}.reservation-panel small{display:block;margin-top:8px;color:#8a7a67;font:9px/1.35 "Minecraft Rus",monospace}
@media(max-width:640px){.profile-dialog{padding:18px}.mc-menu-help{font-size:11px}.player-bar{grid-template-columns:40px 1fr}.player-head{width:34px;height:34px}.player-bar .mc-ui-button{grid-column:1/-1;width:100%}.gift-state{top:12px;right:12px}}
.gift-dialog:not([open]){display:none!important}

/* Full-screen invitation scene */
:root{--pixel:"Minecraft Rus",monospace;--body:"Minecraft Rus",monospace}
html,body,button,input,textarea,select{font-family:"Minecraft Rus",monospace}
.book-copy,.book-copy p:first-child:first-letter,.book-author,.gift-page-right>p:not(.gift-page-label):not(.modal-hint){font-family:"Minecraft Rus",monospace!important}
.hero{height:100svh;min-height:720px;display:block;background:#8cc7df;border-bottom:8px solid #34281b;isolation:isolate}
.hero-grid{z-index:2;opacity:.12;background-size:64px 64px;pointer-events:none}
.hero-art{position:absolute;inset:0;border:0;background:#8dc9e3;overflow:hidden;transition:background-color .3s linear}
.hero-art:before{content:"";position:absolute;inset:0;z-index:3;background:linear-gradient(90deg,rgba(251,247,233,.96) 0%,rgba(251,247,233,.9) 32%,rgba(251,247,233,.28) 50%,transparent 67%);pointer-events:none}
.hero-art:after{display:none}
.hero-copy{position:absolute;left:clamp(28px,6vw,110px);top:50%;z-index:8;width:min(610px,47vw);padding:38px 42px 35px;transform:translateY(-48%);border:4px solid #382c1e;box-shadow:inset 3px 3px #fff7d9,inset -3px -3px #b6a987,8px 8px 0 rgba(40,31,22,.28);background:rgba(255,248,224,.9);color:#2f392d}
.hero-copy:before{content:"";position:absolute;inset:7px;border:2px solid rgba(106,89,56,.28);pointer-events:none}
.hero h1{font-size:clamp(40px,5.3vw,78px);letter-spacing:-.055em;margin:24px 0 22px;text-shadow:4px 4px #d6c99e}
.hero h1 em{margin-left:38%;font-size:.34em;color:#617d3c;transform:translateY(-4px)}
.hero .eyebrow{color:#657f42}.hero .lead{color:#596353;font-size:clamp(13px,1.25vw,17px);line-height:1.65}
.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.hero-actions .mc-ui-button{width:100%;min-width:0;text-decoration:none;display:grid;place-items:center}.hero-actions .text-button{grid-column:1/-1;justify-self:center;color:#34402f;font-size:12px}.hero-main-button{color:#ffffa0}.hero-wishlist-button{color:#fff!important}
.scroll-cue{z-index:9;left:auto;right:28px;bottom:22px;padding:7px 9px;background:rgba(0,0,0,.46);color:#fff;text-shadow:2px 2px #222}
.hero-ground{position:absolute;z-index:4;left:0;right:0;bottom:0;height:23%;background-color:#628a36;background-image:url("assets/minecraft/grass_block_top.png");background-size:64px 64px;image-rendering:pixelated;box-shadow:0 -8px 0 #4f782d}
.mc-sun,.mc-moon{position:absolute;z-index:1;width:clamp(72px,7vw,112px);height:clamp(72px,7vw,112px);image-rendering:pixelated}
.mc-sun{right:17%;top:12%;background:#fff3a1;box-shadow:0 0 0 12px rgba(255,243,161,.18),0 0 55px rgba(255,219,91,.62)}
.mc-moon{right:13%;top:9%;opacity:0;background:linear-gradient(90deg,#e8e8d2 0 74%,#c4c5b8 74%);clip-path:polygon(0 0,75% 0,75% 15%,100% 15%,100% 85%,75% 85%,75% 100%,0 100%);filter:drop-shadow(0 0 22px rgba(224,236,232,.55))}
.star-field{position:absolute;inset:0;z-index:1;opacity:0;background-image:radial-gradient(square,#fff 0 2px,transparent 3px);background-image:radial-gradient(circle at 10% 17%,#fff 0 2px,transparent 3px),radial-gradient(circle at 31% 9%,#fff 0 1px,transparent 2px),radial-gradient(circle at 57% 20%,#fff 0 2px,transparent 3px),radial-gradient(circle at 79% 8%,#fff 0 1px,transparent 2px),radial-gradient(circle at 91% 28%,#fff 0 2px,transparent 3px),radial-gradient(circle at 48% 6%,#9fe9ff 0 1px,transparent 2px);background-size:340px 240px;transition:opacity .8s}
.mc-cloud{z-index:2;animation:cloud-drift 18s linear infinite}.cloud-two{animation-duration:24s;animation-direction:reverse}@keyframes cloud-drift{50%{transform:translateX(48px)}}
.mc-house{position:absolute;z-index:6;right:2.5vw;bottom:12vh;width:min(58vw,760px);height:min(57vw,570px);filter:drop-shadow(14px 16px 0 rgba(48,42,29,.22));image-rendering:pixelated;transform-origin:bottom center;animation:house-settle 1s steps(5,end) both}@keyframes house-settle{from{transform:translateY(22px)}to{transform:translateY(0)}}
.house-wall{position:absolute;left:31%;bottom:8%;width:62%;height:54%;background-color:#d7bd78;background-image:url("assets/minecraft/birch_planks.png");background-size:48px 48px;border:8px solid #4f351f;box-shadow:inset 0 0 0 5px rgba(255,232,166,.18)}
.house-roof{position:absolute;left:25%;top:4%;width:73%;height:31%;background-color:#777;background-image:url("assets/minecraft/stone_bricks.png");background-size:48px 48px;border:8px solid #3c342d;clip-path:polygon(12% 0,88% 0,88% 12%,100% 12%,100% 100%,0 100%,0 12%,12% 12%)}
.house-chimney{position:absolute;z-index:-1;right:16%;top:0;width:10%;height:26%;background:url("assets/minecraft/stone_bricks.png") center/48px 48px;border:6px solid #3c342d}
.house-window{position:absolute;top:25%;width:22%;height:31%;border:7px solid #4d321e;background:#8dc9df;box-shadow:inset 0 0 0 4px rgba(231,248,250,.32);transition:background 1s,box-shadow 1s}.window-left{left:9%}.window-right{right:9%}.house-window:before,.house-window:after{content:"";position:absolute;background:#4d321e}.house-window:before{left:calc(50% - 3px);top:0;bottom:0;width:6px}.house-window:after{left:0;right:0;top:calc(50% - 3px);height:6px}
.house-door{position:absolute;left:42%;bottom:0;width:18%;height:58%;border:7px solid #422d1c;background:#6d4727;background-image:linear-gradient(90deg,rgba(255,255,255,.05) 50%,transparent 50%),url("assets/minecraft/crafting_table_top.png");background-size:100% 100%,48px 48px}.house-door i{position:absolute;right:8px;top:52%;width:7px;height:7px;background:#e9bd4b;box-shadow:0 0 7px #ffd95b}
.terrace-roof{position:absolute;left:0;top:35%;width:42%;height:10%;background:url("assets/minecraft/birch_planks.png") center/48px 48px;border:6px solid #4d321e;transform:skewX(-8deg)}
.terrace-post{position:absolute;top:42%;bottom:12%;width:5%;background:url("assets/minecraft/crafting_table_top.png") center/48px 48px;border:5px solid #4d321e}.post-left{left:3%}.post-right{left:36%}
.terrace-floor{position:absolute;left:0;bottom:7%;width:48%;height:13%;background:url("assets/minecraft/birch_planks.png") center/48px 48px;border:6px solid #4d321e;transform:skewX(-8deg)}
.terrace-rail{position:absolute;bottom:18%;height:16%;border:5px solid #4d321e;border-top-width:8px;border-bottom-width:7px;background:repeating-linear-gradient(90deg,transparent 0 16px,#4d321e 16px 22px)}.rail-left{left:2%;width:17%}.rail-right{left:27%;width:14%}
.terrace-cake{position:absolute;z-index:3;left:19%;bottom:21%;width:12%;image-rendering:pixelated;filter:drop-shadow(5px 6px rgba(0,0,0,.2))}.terrace-lantern{position:absolute;z-index:4;width:8%;image-rendering:pixelated;transition:filter 1s;animation:lantern-sway 2.6s ease-in-out infinite;transform-origin:top center}.lantern-left{left:7%;top:42%}.lantern-right{left:32%;top:42%;animation-delay:-1.2s}@keyframes lantern-sway{50%{transform:rotate(3deg)}}
.time-lapse-status{position:absolute;z-index:8;right:3vw;top:100px;min-width:230px;padding:10px 12px;border:3px solid #171717;box-shadow:inset 2px 2px #aaa,inset -2px -2px #3e3e3e;background:#676767;color:#fff;text-align:center;text-shadow:2px 2px #333;font-size:11px}.time-lapse-status span{display:none}.time-lapse-status span:first-child{display:block}.hero-art>p{z-index:8;right:3vw;bottom:4vh;color:#fff;background:rgba(0,0,0,.55);text-shadow:2px 2px #222}.hero-art>p b{color:#ffffa0}
.hero.time-lapse .hero-art{animation:sky-cycle 4.1s linear forwards}.hero.time-lapse .mc-sun{animation:sun-set 4.1s ease-in forwards}.hero.time-lapse .mc-moon{animation:moon-rise 4.1s ease-out forwards}.hero.time-lapse .star-field{animation:stars-in 4.1s linear forwards}.hero.time-lapse .mc-cloud{animation:cloud-sunset 4.1s linear forwards}.hero.time-lapse .house-window{animation:windows-on 4.1s linear forwards}.hero.time-lapse .terrace-lantern{animation:lantern-night 4.1s linear forwards}.hero.time-lapse .time-lapse-status span:first-child{animation:status-one 4.1s steps(1,end) forwards}.hero.time-lapse .time-lapse-status span:nth-child(2){display:block;animation:status-two 4.1s steps(1,end) both}.hero.time-lapse .time-lapse-status span:nth-child(3){display:block;animation:status-three 4.1s steps(1,end) both}
@keyframes sky-cycle{0%,18%{background:#8dc9e3}45%{background:#ef9a61}68%{background:#784f79}100%{background:#101b39}}
@keyframes sun-set{0%,12%{transform:translate(0,0);opacity:1}65%{transform:translate(-15vw,52vh);opacity:.85}100%{transform:translate(-18vw,70vh);opacity:0}}
@keyframes moon-rise{0%,58%{transform:translateY(28vh);opacity:0}100%{transform:translateY(0);opacity:1}}
@keyframes stars-in{0%,62%{opacity:0}100%{opacity:1}}
@keyframes cloud-sunset{0%{filter:none}55%{filter:sepia(.45) brightness(.82)}100%{filter:brightness(.35) saturate(.6)}}
@keyframes windows-on{0%,66%{background:#8dc9df;box-shadow:inset 0 0 0 4px rgba(231,248,250,.32)}100%{background:#ffd968;box-shadow:inset 0 0 0 4px #fff1a5,0 0 32px #ffc74c}}
@keyframes lantern-night{0%,60%{filter:none}100%{filter:drop-shadow(0 0 16px #ffc14f) brightness(1.45)}}
@keyframes status-one{0%,32%{display:block}33%,100%{display:none}}@keyframes status-two{0%,32%{opacity:0}33%,69%{opacity:1}70%,100%{opacity:0}}@keyframes status-three{0%,69%{opacity:0}70%,100%{opacity:1}}
.hero.is-night .hero-art{background:#101b39}.hero.is-night .mc-sun{opacity:0}.hero.is-night .mc-moon,.hero.is-night .star-field{opacity:1}.hero.is-night .house-window{background:#ffd968;box-shadow:inset 0 0 0 4px #fff1a5,0 0 32px #ffc74c}.hero.is-night .terrace-lantern{filter:drop-shadow(0 0 16px #ffc14f) brightness(1.45)}.hero.is-night .time-lapse-status span{display:none}.hero.is-night .time-lapse-status span:nth-child(3){display:block}
.detail-grid{grid-template-columns:repeat(4,1fr)}.pixel-icon.bed{width:38px;height:28px;clip-path:none;background:linear-gradient(#d8d2b8 0 38%,#9a5148 38% 78%,#604430 78%);box-shadow:8px 0 #604430,inset -7px -7px rgba(0,0,0,.1)}
@media(max-width:980px){.hero{min-height:880px;height:100svh}.hero-copy{left:5vw;top:44%;width:min(540px,58vw);padding:30px}.mc-house{right:-8vw;bottom:9vh;width:68vw}.hero-art:before{background:linear-gradient(90deg,rgba(251,247,233,.94) 0%,rgba(251,247,233,.78) 42%,transparent 70%)}.detail-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.hero{min-height:840px}.hero-art:before{background:linear-gradient(rgba(251,247,233,.96) 0%,rgba(251,247,233,.9) 52%,rgba(251,247,233,.08) 70%)}.hero-copy{left:5vw;right:5vw;top:105px;width:auto;transform:none;padding:24px 22px}.hero h1{font-size:clamp(34px,12vw,56px);margin:16px 0}.hero .lead{font-size:12px}.hero-actions{margin-top:18px}.hero-actions .mc-ui-button{font-size:11px;padding:6px 8px}.mc-house{right:-12vw;bottom:5vh;width:112vw;height:82vw}.time-lapse-status{top:auto;bottom:27vh;right:12px;min-width:190px;font-size:9px}.scroll-cue{display:none}.detail-grid{grid-template-columns:1fr}.detail-grid article{border-right:0}.hero-art>p{display:none}}
@media(prefers-reduced-motion:reduce){.mc-cloud,.mc-house,.terrace-lantern{animation:none!important}.hero.time-lapse .hero-art{animation-duration:.01s}.hero.time-lapse .mc-sun,.hero.time-lapse .mc-moon,.hero.time-lapse .star-field,.hero.time-lapse .house-window,.hero.time-lapse .terrace-lantern{animation-duration:.01s}}

/* Generated terrace scene: aligned day/night frames with a cinematic time-lapse. */
.hero-art{background:#17233f;--scene-x:0px;--scene-y:0px}
.hero-art:before{z-index:4;background:linear-gradient(90deg,rgba(251,247,233,.97) 0%,rgba(251,247,233,.9) 27%,rgba(251,247,233,.35) 45%,rgba(251,247,233,.04) 59%,transparent 70%)}
.hero-scene{position:absolute;inset:-12px;z-index:0;overflow:hidden;transform:translate(var(--scene-x),var(--scene-y)) scale(1.025);transition:transform 1.1s cubic-bezier(.2,.7,.2,1);will-change:transform}
.hero-scene-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;user-select:none;pointer-events:none;will-change:opacity,filter}
.hero-scene-day{z-index:1;opacity:1}
.hero-scene-night{z-index:2;opacity:0}
.hero-night-vignette{position:absolute;inset:0;z-index:3;opacity:0;background:linear-gradient(180deg,rgba(4,12,35,.12),rgba(5,10,22,.4)),radial-gradient(circle at 75% 52%,transparent 0 23%,rgba(2,7,18,.28) 78%);pointer-events:none}
.hero-light-glow{position:absolute;inset:0;z-index:4;opacity:.08;background:radial-gradient(circle at 78% 34%,rgba(255,183,65,.5),transparent 16%),radial-gradient(circle at 75% 62%,rgba(255,147,38,.34),transparent 27%);mix-blend-mode:screen;pointer-events:none;animation:hero-fire-breathe 3.4s ease-in-out infinite}
.hero-night-stars{position:absolute;inset:0;z-index:5;opacity:0;pointer-events:none}
.hero-night-stars i{position:absolute;width:3px;height:3px;background:#fff8c9;box-shadow:0 0 8px 2px rgba(194,224,255,.5);animation:hero-star-twinkle 2.4s steps(2,end) infinite}
.hero-night-stars i:nth-child(1){left:5%;top:12%;animation-delay:-.4s}.hero-night-stars i:nth-child(2){left:16%;top:23%;animation-delay:-1.2s}.hero-night-stars i:nth-child(3){left:28%;top:8%;animation-delay:-.8s}.hero-night-stars i:nth-child(4){left:41%;top:19%;animation-delay:-1.7s}.hero-night-stars i:nth-child(5){left:51%;top:10%;animation-delay:-.2s}.hero-night-stars i:nth-child(6){left:61%;top:22%;animation-delay:-1.4s}
.hero.time-lapse .hero-art{animation:none}
.hero.time-lapse .hero-scene-day{animation:hero-day-out 6.4s cubic-bezier(.45,0,.25,1) forwards}
.hero.time-lapse .hero-scene-night{animation:hero-night-in 6.4s cubic-bezier(.45,0,.25,1) forwards}
.hero.time-lapse .hero-night-vignette{animation:hero-vignette-in 6.4s ease forwards}
.hero.time-lapse .hero-light-glow{animation:hero-glow-cycle 6.4s ease forwards,hero-fire-breathe 2.2s ease-in-out 4.8s infinite}
.hero.time-lapse .hero-night-stars{animation:hero-stars-in 6.4s ease forwards}
.hero.time-lapse .time-lapse-status span:first-child{animation:status-one 6.4s steps(1,end) forwards}
.hero.time-lapse .time-lapse-status span:nth-child(2){display:block;animation:status-two 6.4s steps(1,end) both}
.hero.time-lapse .time-lapse-status span:nth-child(3){display:block;animation:status-three 6.4s steps(1,end) both}
.hero.is-night .hero-scene-day{opacity:0}
.hero.is-night .hero-scene-night{opacity:1}
.hero.is-night .hero-night-vignette{opacity:1}
.hero.is-night .hero-night-stars{opacity:.9}
.hero.is-night .hero-light-glow{opacity:.32}
@keyframes hero-day-out{0%,14%{opacity:1;filter:brightness(1) saturate(1)}47%{opacity:.88;filter:brightness(.88) saturate(1.12) sepia(.12)}75%{opacity:.28;filter:brightness(.62) saturate(.8)}100%{opacity:0;filter:brightness(.48) saturate(.65)}}
@keyframes hero-night-in{0%,24%{opacity:0}55%{opacity:.25}82%{opacity:.78}100%{opacity:1}}
@keyframes hero-vignette-in{0%,35%{opacity:0}70%{opacity:.42}100%{opacity:1}}
@keyframes hero-stars-in{0%,66%{opacity:0}86%{opacity:.55}100%{opacity:.9}}
@keyframes hero-glow-cycle{0%,35%{opacity:.06}62%{opacity:.18}100%{opacity:.32}}
@keyframes hero-fire-breathe{0%,100%{filter:brightness(.92)}50%{filter:brightness(1.2)}}
@keyframes hero-star-twinkle{0%,100%{opacity:.25;transform:scale(.7)}50%{opacity:1;transform:scale(1.25)}}
@media(max-width:980px){.hero-scene-frame{object-position:58% center}.hero-art:before{background:linear-gradient(90deg,rgba(251,247,233,.96) 0%,rgba(251,247,233,.81) 40%,rgba(251,247,233,.08) 68%,transparent 78%)}}
@media(max-width:680px){.hero-scene{inset:-8px}.hero-scene-frame{object-position:70% center}.hero-art:before{background:linear-gradient(180deg,rgba(251,247,233,.98) 0%,rgba(251,247,233,.92) 49%,rgba(251,247,233,.13) 68%,transparent 82%)}.hero-night-stars i:nth-child(n+4){display:none}}
@media(prefers-reduced-motion:reduce){.hero-scene{transform:scale(1.025);transition:none}.hero-light-glow,.hero-night-stars i{animation:none!important}.hero.time-lapse .hero-scene-day,.hero.time-lapse .hero-scene-night,.hero.time-lapse .hero-night-vignette,.hero.time-lapse .hero-night-stars{animation-duration:.01s!important}}

/* The invitation card swaps in place instead of waiting for the sunset. */
.hero-copy{height:560px;padding:0;overflow:hidden;perspective:1400px;transform-style:preserve-3d}
.hero-sheet{position:absolute;inset:0;padding:38px 42px 35px;display:flex;flex-direction:column;justify-content:center;transform-origin:50% 50%;backface-visibility:hidden;transition:opacity .28s ease,transform .56s cubic-bezier(.2,.75,.18,1);will-change:transform,opacity}
.hero-sheet-intro{opacity:1;transform:translateX(0) rotateY(0);pointer-events:auto}
.hero-sheet-details{opacity:0;transform:translateX(44px) rotateY(-8deg);pointer-events:none}
.hero.details-open .hero-sheet-intro{opacity:0;transform:translateX(-44px) rotateY(8deg);pointer-events:none}
.hero.details-open .hero-sheet-details{opacity:1;transform:translateX(0) rotateY(0);pointer-events:auto}
.hero-sheet-details h2{margin:18px 0 22px;color:#2d372c;font:clamp(27px,3.1vw,43px)/1.08 var(--pixel);letter-spacing:-.045em;text-shadow:3px 3px #d6c99e}
.hero-event-list{display:grid;grid-template-columns:1fr 1fr;border-top:2px solid rgba(83,70,44,.3);border-bottom:2px solid rgba(83,70,44,.3)}
.hero-event-list p{min-height:78px;margin:0;padding:15px 14px 12px 0;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid rgba(83,70,44,.22)}
.hero-event-list p:nth-child(odd){border-right:1px solid rgba(83,70,44,.22)}
.hero-event-list p:nth-last-child(-n+2){border-bottom:0}
.hero-event-list p:nth-child(even){padding-left:18px}
.hero-event-list small,.hero-place small{display:block;margin-bottom:8px;color:#77835e;font-size:9px;line-height:1}
.hero-event-list strong,.hero-place strong{display:block;color:#34402f;font-size:clamp(12px,1.2vw,16px);font-weight:400;line-height:1.25}
.hero-place{margin:17px 0 0}.hero-details-note{margin:12px 0 0;color:#6e7569;font-size:10px;line-height:1.45}
.hero-details-actions{display:grid;grid-template-columns:.8fr 1.2fr;gap:12px;margin-top:18px}.hero-details-actions .mc-ui-button{width:100%;min-width:0;text-decoration:none;display:grid;place-items:center}
@media(max-width:680px){.hero-copy{height:535px}.hero-sheet{padding:24px 22px}.hero-sheet-details{justify-content:flex-start;padding-top:25px}.hero-sheet-details h2{font-size:27px;margin:13px 0 16px}.hero-event-list p{min-height:67px;padding-top:11px;padding-bottom:9px}.hero-event-list small,.hero-place small{font-size:8px}.hero-event-list strong,.hero-place strong{font-size:11px}.hero-details-note{font-size:9px}.hero-details-actions{margin-top:14px}.hero-details-actions .mc-ui-button{font-size:10px}}
@media(prefers-reduced-motion:reduce){.hero-sheet{transition-duration:.01s}}

/* The paper card is opaque enough on its own; keep the generated scene unwashed. */
.hero-art:before{display:none}

/* Canonical single-page Minecraft book proportions and genuine UI textures. */
.hero-copy{left:clamp(34px,6vw,104px);width:min(450px,42vw);height:600px;padding:12px;border:3px solid #29170d;background:#6b3f24 url("assets/minecraft/ui/book_cover.png") 0 0/56px 56px;box-shadow:inset 3px 3px rgba(180,112,65,.5),inset -4px -4px rgba(45,20,9,.58),9px 10px 0 rgba(27,18,12,.3);image-rendering:pixelated}
.hero-copy:before{content:"";position:absolute;inset:18px;z-index:6;border:0;background:url("assets/minecraft/ui/book_pagecrease_left.png") left bottom/50% 18px no-repeat,url("assets/minecraft/ui/book_pagecrease_right.png") right bottom/50% 18px no-repeat;pointer-events:none}
.hero-sheet{inset:12px;padding:55px 40px 34px 48px;overflow:hidden;justify-content:center;background-color:#fffbed;background-image:url("assets/minecraft/ui/book_pageedge_left.png"),url("assets/minecraft/ui/book_pageedge_right.png"),radial-gradient(circle at 28% 24%,rgba(255,255,255,.84),transparent 32%),linear-gradient(105deg,#fffdf2,#f8efd5);background-position:left top,right top,center,center;background-repeat:no-repeat;background-size:32px 100%,32px 100%,auto,auto;color:#201b14;box-shadow:inset 0 0 30px rgba(129,91,40,.08)}
.hero-sheet:before{content:"{\A{\A{\A{\A{\A{\A{\A{\A{\A{";position:absolute;left:13px;top:48px;z-index:4;white-space:pre;color:#bd2b1f;font:17px/25px "Minecraft Rus",monospace;text-shadow:1px 1px rgba(124,29,20,.15);pointer-events:none}
.hero-sheet>*{position:relative;z-index:5}
.hero-page-count{position:absolute;top:18px;left:42px;right:32px;margin:0;text-align:center;color:#17130f;font:12px "Minecraft Rus",monospace}
.hero-sheet-intro h1{margin:20px 0 22px;font-size:clamp(37px,4vw,54px);line-height:1.08;letter-spacing:-.055em;text-shadow:3px 3px #ded1aa}
.hero-sheet-intro h1 em{margin-left:30%;font-size:.34em;transform:translateY(-2px)}
.hero-sheet-intro .eyebrow{font-size:7px}.hero-sheet-intro .lead{font-size:13px;line-height:1.6}
.hero-sheet-intro .hero-actions{gap:9px;margin-top:24px}.hero-sheet-intro .hero-actions .mc-ui-button{font-size:12px;padding:7px 9px}.hero-sheet-intro .hero-actions .text-button{font-size:10px}
.hero-sheet-details{padding-top:52px}.hero-sheet-details h2{font-size:34px;margin:15px 0 17px}.hero-sheet-details .eyebrow{font-size:7px}.hero-event-list p{min-height:70px;padding-top:12px;padding-bottom:10px}.hero-details-actions .mc-ui-button{font-size:11px;padding-left:8px;padding-right:8px}
@media(max-width:980px){.hero-copy{left:4vw;right:auto;width:min(430px,54vw);height:580px}.hero-sheet{padding-left:44px;padding-right:35px}.hero-sheet-intro h1{font-size:clamp(35px,5vw,49px)}}
@media(max-width:680px){.hero-copy{left:16px;right:auto;top:94px;width:calc(100% - 32px);height:560px;padding:10px}.hero-copy:before{inset:15px;background-size:50% 15px}.hero-sheet{inset:10px;padding:48px 27px 27px 37px}.hero-sheet:before{left:10px;top:43px;font-size:14px;line-height:23px}.hero-page-count{top:15px;left:35px;right:26px;font-size:10px}.hero-sheet-intro{justify-content:center}.hero-sheet-intro h1{margin:14px 0 17px;font-size:clamp(32px,10.7vw,47px)}.hero-sheet-intro .lead{font-size:11px}.hero-sheet-intro .hero-actions{margin-top:18px}.hero-sheet-details{padding-top:45px}.hero-sheet-details h2{font-size:25px;margin:10px 0 13px}.hero-event-list p{min-height:62px}.hero-details-actions{grid-template-columns:1fr 1.3fr}}

/* Minecraft HUD header: wooden server sign, hotbar navigation and book slot. */
.topbar{height:82px;padding:0;border:0;border-bottom:4px solid #080808;background:linear-gradient(rgba(255,255,255,.035),rgba(0,0,0,.12)),repeating-linear-gradient(0deg,#3d3d3d 0 3px,#383838 3px 6px);box-shadow:inset 0 3px #707070,inset 0 -3px #1d1d1d,0 5px 0 rgba(0,0,0,.25);backdrop-filter:none;z-index:20}
.topbar:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:4px;background:rgba(255,255,255,.12);pointer-events:none}
.topbar-inner{width:100%;height:100%;max-width:1500px;margin:0 auto;padding:0 clamp(18px,3.2vw,52px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.party-sign{width:222px;height:58px;aspect-ratio:auto;padding:7px 18px 6px;justify-content:center;color:#17120b;font:12px/1.05 "Minecraft Rus",monospace;letter-spacing:0;background-color:#9d793b;background-image:linear-gradient(to bottom,transparent 29%,rgba(74,48,18,.28) 30% 35%,transparent 36% 64%,rgba(74,48,18,.25) 65% 70%,transparent 71%),url("assets/minecraft/party-sign-texture.png");background-size:100% 100%,cover;background-position:center;box-shadow:inset 3px 3px rgba(232,190,91,.34),inset -3px -3px rgba(72,47,16,.42),0 4px 0 #2a1d0d,0 0 0 3px #17110a;clip-path:polygon(3px 0,calc(100% - 3px) 0,calc(100% - 3px) 2px,100% 2px,100% calc(100% - 2px),calc(100% - 3px) calc(100% - 2px),calc(100% - 3px) 100%,3px 100%,3px calc(100% - 2px),0 calc(100% - 2px),0 2px,3px 2px)}
.party-sign span{min-height:12px;white-space:nowrap;text-shadow:1px 1px rgba(255,224,143,.24)}
.party-sign:hover,.party-sign:focus-visible{filter:brightness(1.13);transform:translateY(-1px);outline:2px solid #fff;outline-offset:4px}
.topbar nav{display:flex;gap:3px;padding:4px;border:3px solid #111;background:#1f1f1f;box-shadow:inset 2px 2px #050505,inset -2px -2px #737373,0 3px 0 rgba(0,0,0,.45)}
.topbar nav a{min-width:102px;height:40px;padding:0 13px;display:grid;place-items:center;border:2px solid #141414;background:linear-gradient(rgba(255,255,255,.055),rgba(0,0,0,.08)),repeating-linear-gradient(0deg,#747474 0 2px,#6e6e6e 2px 4px);box-shadow:inset 2px 2px #a9a9a9,inset -2px -2px #444;color:#fff;font:10px "Minecraft Rus",monospace;letter-spacing:0;text-shadow:2px 2px #333;text-transform:uppercase}
.topbar nav a:hover,.topbar nav a:focus-visible{outline:2px solid #fff;outline-offset:-4px;background:linear-gradient(rgba(99,118,226,.36),rgba(58,69,142,.4)),#777;color:#ffffa0}
.sound-button{justify-self:end;min-width:104px;min-height:50px;padding:5px 10px;display:flex;align-items:center;justify-content:center;gap:8px;border:3px solid #111;background:#1f1f1f;box-shadow:inset 2px 2px #777,inset -2px -2px #080808,0 3px 0 rgba(0,0,0,.45);color:#fff;font:9px "Minecraft Rus",monospace;text-shadow:2px 2px #222}
.sound-button img{width:34px;height:34px;object-fit:contain;image-rendering:pixelated}.sound-button span{display:block}
.sound-button:hover,.sound-button:focus-visible{outline:2px solid #fff;outline-offset:-5px;background:#303030;color:#ffffa0}.sound-button:active{transform:translateY(2px);box-shadow:inset 2px 2px #080808,inset -2px -2px #777}
@media(max-width:900px){.topbar-inner{grid-template-columns:1fr auto;gap:18px}.topbar nav{display:none}.sound-button{justify-self:end}}
@media(max-width:600px){.topbar{height:74px}.topbar-inner{padding:0 12px;gap:12px}.party-sign{width:180px;height:50px;padding:6px 10px;font-size:10px}.sound-button{min-width:54px;width:54px;min-height:48px;padding:4px}.sound-button img{width:32px;height:32px}.sound-button span{display:none}}

/* Minimal overlay: only the server sign and a soft shadow over the scene. */
.topbar{height:120px;border:0;background:linear-gradient(180deg,rgba(4,7,8,.58) 0%,rgba(4,7,8,.28) 48%,transparent 100%);box-shadow:none;pointer-events:none}
.topbar:after{display:none}
.topbar-inner{display:flex;align-items:flex-start;justify-content:flex-start;max-width:none;padding:16px clamp(18px,3.2vw,52px)}
.party-sign{width:205px;height:54px;pointer-events:auto}
@media(max-width:600px){.topbar{height:102px}.topbar-inner{padding:12px}.party-sign{width:170px;height:48px}}

/* In-page invitation reader. The first-visit choice screen remains separate. */
.invitation-reader{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:22px;border:0;background:transparent;overflow:auto;opacity:0;transition:opacity .18s linear;color:#241b12}
.invitation-reader[open]{display:grid;place-items:center}.invitation-reader.is-visible{opacity:1}
.invitation-reader::backdrop{background:rgba(8,11,12,.72);backdrop-filter:blur(6px)}
.reader-book{position:relative;width:min(470px,94vw);padding:13px;background:#693d24 url("assets/minecraft/ui/book_cover.png") 0 0/56px 56px;box-shadow:inset 3px 3px rgba(178,106,61,.5),inset -4px -4px rgba(41,18,8,.62),0 24px 64px rgba(0,0,0,.66);image-rendering:pixelated;transform:translateY(18px) scale(.97);transition:transform .34s cubic-bezier(.2,.75,.2,1)}
.invitation-reader.is-visible .reader-book{transform:translateY(0) scale(1)}
.reader-page{position:relative;min-height:min(650px,86vh);padding:58px 45px 32px 52px;display:flex;flex-direction:column;background-color:#fffbed;background-image:url("assets/minecraft/ui/book_pageedge_left.png"),url("assets/minecraft/ui/book_pageedge_right.png"),radial-gradient(circle at 30% 18%,rgba(255,255,255,.88),transparent 34%),linear-gradient(105deg,#fffdf2,#f8efd5);background-position:left top,right top,center,center;background-repeat:no-repeat;background-size:32px 100%,32px 100%,auto,auto;overflow:hidden}
.reader-page:before{content:"{\A{\A{\A{\A{\A{\A{\A{\A{\A{\A{";position:absolute;left:13px;top:50px;white-space:pre;color:#bd2b1f;font:17px/25px "Minecraft Rus",monospace;text-shadow:1px 1px rgba(124,29,20,.15)}
.reader-page:after{content:"";position:absolute;left:0;right:0;bottom:0;height:18px;background:url("assets/minecraft/ui/book_pagecrease_left.png") left bottom/50% 18px no-repeat,url("assets/minecraft/ui/book_pagecrease_right.png") right bottom/50% 18px no-repeat;pointer-events:none}
.reader-page>*{position:relative;z-index:2}.reader-page-count{position:absolute;top:20px;left:42px;right:32px;margin:0;text-align:center;font-size:11px;color:#221b14}
.reader-page h2{margin:15px 0 24px;text-align:center;color:#382a1d;font:22px/1.35 "Minecraft Rus",monospace}
.reader-copy{color:#4d3a29;font:12px/1.62 "Minecraft Rus",monospace}.reader-copy p{margin:0 0 16px}
.reader-details{margin-top:auto;padding:14px 0 5px;border-top:2px dotted #9a8568;border-bottom:2px dotted #9a8568}.reader-details p{display:flex;justify-content:space-between;gap:16px;margin:0 0 9px;font-size:10px;line-height:1.35}.reader-details span{color:#806b50}.reader-details b{max-width:65%;font-weight:400;text-align:right}
.reader-sign{margin:16px 0 14px;text-align:right;font-size:9px}.reader-sign strong{color:#607b3d}.reader-done{width:100%;min-height:42px}
.reader-close{position:absolute;z-index:5;right:-18px;top:-18px;width:36px;height:36px;padding:0;border:0;background:transparent url("assets/minecraft/ui/close_button_default.png") center/100% 100% no-repeat;image-rendering:pixelated;cursor:pointer}.reader-close:hover,.reader-close:focus-visible{background-image:url("assets/minecraft/ui/close_button_hover.png");outline:2px solid #fff;outline-offset:3px}
@media(max-width:560px){.invitation-reader{padding:10px}.reader-book{width:min(430px,96vw);padding:10px}.reader-page{min-height:min(630px,92vh);padding:50px 28px 25px 39px}.reader-page:before{left:9px;top:44px;font-size:14px;line-height:23px}.reader-page-count{top:16px;left:34px;right:25px;font-size:9px}.reader-page h2{font-size:17px;margin:12px 0 18px}.reader-copy{font-size:10px}.reader-details p{font-size:9px}.reader-close{right:2px;top:2px;width:32px;height:32px}}
@media(prefers-reduced-motion:reduce){.invitation-reader,.reader-book{transition-duration:.01s}}

/* Complete C-shaped thread binding from the original single-page book UI. */
.hero-sheet:before,.reader-page:before{content:"C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C";left:11px;top:38px;color:#cf3423;white-space:pre;font:13px/24px "Minecraft Rus",monospace;letter-spacing:-4px;text-shadow:1px 0 #8f2118;transform:scaleX(.7);transform-origin:left top;pointer-events:none}
.invite-paper:after{content:"C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C\A C";position:absolute;z-index:2;left:16px;top:45px;color:#cf3423;white-space:pre;font:13px/24px "Minecraft Rus",monospace;letter-spacing:-4px;text-shadow:1px 0 #8f2118;transform:scaleX(.7);transform-origin:left top;pointer-events:none}

/* Original-style bottom-left page return arrow. */
.hero-details-actions{grid-template-columns:1fr;margin-left:44px}
.book-back-arrow{position:absolute!important;z-index:8!important;left:33px;bottom:31px;width:38px;height:28px;padding:0;border:0;background:transparent;color:#dfd1a4;cursor:pointer;filter:drop-shadow(1px 1px #9e8c61)}
.book-back-arrow span{position:absolute;left:4px;top:3px;width:4px;height:4px;background:currentColor;box-shadow:4px 4px currentColor,8px 0 currentColor,12px 0 currentColor,16px 0 currentColor,20px 0 currentColor,8px 8px currentColor,12px 8px currentColor,16px 8px currentColor,20px 8px currentColor,24px 8px currentColor,4px 12px currentColor,8px 12px currentColor,24px 12px currentColor,8px 16px currentColor,12px 16px currentColor,16px 16px currentColor,20px 16px currentColor,24px 16px currentColor}
.book-back-arrow:hover,.book-back-arrow:focus-visible{color:#e65a34;outline:2px solid #6f5633;outline-offset:3px}.book-back-arrow:active{transform:translateY(2px)}
@media(max-width:680px){.hero-sheet:before,.reader-page:before{left:8px;top:34px;font-size:11px;line-height:22px}.invite-paper:after{left:10px;top:38px;font-size:10px;line-height:21px}.hero-details-actions{margin-left:38px}.book-back-arrow{left:25px;bottom:25px;transform:scale(.88)}.book-back-arrow:active{transform:translateY(2px) scale(.88)}}

/* One clear action per book page. */
.hero-sheet-intro .hero-actions{grid-template-columns:1fr;justify-items:center}
.hero-sheet-intro .hero-main-button{width:min(245px,100%)}
.hero-place-button{width:100%;display:grid;place-items:center;color:#fff!important;text-decoration:none}

/* The back arrow is absolutely positioned, so it must not shift the main action. */
.hero-details-actions{display:flex;justify-content:center;margin-left:0}
.hero-place-button{width:min(245px,100%)}
@media(max-width:680px){.hero-details-actions{margin-left:0}}

/* Two-page event book content. */
.hero-sheet-intro .hero-party-title{margin:0;text-align:center;font-size:clamp(33px,3.4vw,47px);line-height:1.08;letter-spacing:-.045em}
.hero-sheet-intro .hero-party-title span{display:block}
.hero-sheet-intro .hero-party-title em{display:block;margin:24px 0 0;font-size:.34em;line-height:1.3;letter-spacing:0;color:#6d8549;font-style:normal;text-shadow:2px 2px #ded1aa}
.hero-sheet-intro .hero-actions{margin-top:42px}
.hero-sheet-details{justify-content:flex-start;overflow:hidden}
.hero-details-scroll{min-height:0;flex:1;overflow:hidden;padding-right:0;overscroll-behavior:none;scrollbar-width:none}
.hero-sheet-details .hero-details-scroll h2{margin:4px 0 10px;font-size:25px;line-height:1.08}
.hero-details-copy{color:#4f4638;font:9px/1.48 var(--pixel)}
.hero-details-copy p{margin:0 0 12px}
.hero-details-copy strong{color:#35412f;font-weight:400}
.event-info-grid{display:grid;grid-template-columns:1fr;gap:6px}
.event-info-card{min-width:0;display:grid;grid-template-columns:48px 1fr;gap:11px;align-items:center;min-height:0;padding:7px 12px;border:2px solid rgba(118,101,73,.28);background:rgba(250,244,218,.52);box-shadow:inset 2px 2px rgba(255,255,255,.5)}
.event-info-card img{width:44px;height:44px;object-fit:contain;align-self:center;image-rendering:pixelated;filter:drop-shadow(3px 4px rgba(77,59,34,.2))}
.event-info-card h3{margin:0 0 4px;color:#6d8549;font:9.5px/1.15 var(--pixel);text-transform:uppercase}
.event-info-card p{margin:0!important;font-size:9px;line-height:1.34}
.hero-sheet-details .hero-details-actions{flex:0 0 auto;margin-top:10px;padding:0 32px}
@media(max-width:680px){
  .hero-sheet-intro .hero-party-title{font-size:clamp(28px,9vw,38px)}
  .hero-sheet-intro .hero-party-title em{margin-top:20px;font-size:.38em}
  .hero-sheet-intro .hero-actions{margin-top:34px}
  .hero-sheet-details .hero-details-scroll h2{margin:1px 0 7px;font-size:18px}
  .hero-details-copy{font-size:7px;line-height:1.42}
  .hero-details-copy p{margin-bottom:9px}
  .event-info-grid{gap:5px}
  .event-info-card{grid-template-columns:40px 1fr;gap:9px;padding:6px 9px}
  .event-info-card img{width:36px;height:36px}
  .event-info-card h3{font-size:8.5px;margin-bottom:4px}
  .event-info-card p{font-size:8px;line-height:1.32}
  .hero-sheet-details .hero-details-actions{margin-top:5px;padding:0 22px}
}

/* Full-screen Minecraft coordinates screen. */
.map-section{position:relative;min-height:100svh;padding:0;display:block;overflow:hidden;background:#101711;isolation:isolate}
.minecraft-map{--map-x:0px;--map-y:0px;position:absolute;inset:0;overflow:hidden;background:#193d3a}
.minecraft-map>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;filter:saturate(.92) contrast(1.04) brightness(.78);transform:translate(var(--map-x),var(--map-y)) scale(1.06);transition:transform .28s cubic-bezier(.2,.7,.2,1);will-change:transform}
.map-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,10,8,.9) 0%,rgba(6,10,8,.72) 29%,rgba(6,10,8,.22) 55%,rgba(6,10,8,.05) 76%),linear-gradient(180deg,rgba(3,7,5,.32),transparent 22% 74%,rgba(3,7,5,.46));box-shadow:inset 0 0 100px rgba(0,0,0,.36);pointer-events:none}
.coordinates-panel{position:absolute;z-index:3;left:clamp(22px,5vw,88px);top:50%;width:min(465px,42vw);padding:29px 30px 27px;transform:translateY(-50%);border:4px solid #111;background:linear-gradient(rgba(255,255,255,.035),rgba(0,0,0,.1)),repeating-linear-gradient(0deg,#404040 0 3px,#3a3a3a 3px 6px);box-shadow:inset 3px 3px #777,inset -3px -3px #1a1a1a,9px 10px 0 rgba(0,0,0,.42);color:#fff;text-shadow:2px 2px #202020}
.coordinates-kicker{margin:0 0 20px;color:#d7d7d7;font:9px/1.2 "Minecraft Rus",monospace;letter-spacing:.05em}.coordinates-kicker span{margin-right:10px;color:#a9dc63}
.coordinates-panel h2{margin:0 0 24px;color:#fff;font:clamp(37px,4.3vw,63px)/.95 "Minecraft Rus",monospace;letter-spacing:-.05em;text-shadow:4px 4px #202020}
.server-address{margin-bottom:17px;border:2px solid #171717;background:#292929;box-shadow:inset 2px 2px #111,inset -2px -2px #696969}
.server-address p{margin:0;padding:11px 13px;display:grid;grid-template-columns:88px 1fr;align-items:center;gap:10px;border-bottom:2px solid #181818}.server-address p:last-child{border-bottom:0}.server-address small{color:#a4a4a4;font-size:8px}.server-address strong{color:#f3f3f3;font-size:10px;font-weight:400;line-height:1.35}
.minecraft-coordinates{display:grid;grid-template-columns:28px 1fr 28px 48px 28px 1fr;align-items:center;border:2px solid #0b0b0b;background:#171717;box-shadow:inset 2px 2px #050505,inset -2px -2px #666;overflow:hidden}
.minecraft-coordinates span{height:38px;display:grid;place-items:center;background:#596b37;color:#e3ff9a;font-size:12px;text-shadow:2px 2px #263218}.minecraft-coordinates b{padding:0 9px;color:#fff;font-size:10px;font-weight:400;white-space:nowrap;text-align:center}
.coordinates-command{margin:13px 0 0;padding:11px 12px;border:2px solid #080808;background:rgba(8,8,8,.82);box-shadow:inset 2px 2px #000,inset -2px -2px #555;color:#e7e7e7;font:9px/1.3 "Minecraft Rus",monospace;text-shadow:1px 1px #111;user-select:all}
.coordinates-hint{margin:12px 0 17px;color:#c6c6c6;font:8px/1.5 "Minecraft Rus",monospace;text-shadow:1px 1px #111}.coordinates-hint b{color:#ffffa0;font-weight:400}
.route-button{width:100%;min-height:43px;display:grid;place-items:center;color:#fff!important;text-decoration:none;font-size:11px}.route-button:hover,.route-button:focus-visible{color:#ffffa0!important}
.map-target{position:absolute;z-index:4;left:44.8%;top:42%;width:1px;height:1px;transform:translate(var(--map-x),var(--map-y));transition:transform .28s cubic-bezier(.2,.7,.2,1),filter .18s ease;will-change:transform;cursor:pointer;filter:drop-shadow(0 4px 5px rgba(0,0,0,.65))}
.map-target i{position:absolute;left:50%;bottom:0;width:28px;height:36px;transform:translateX(-50%);background:#cf3828;clip-path:polygon(0 0,100% 0,100% 72%,50% 100%,0 72%);box-shadow:inset 4px 4px #f36b4e,inset -4px -4px #76180f}
.map-target i:before{content:"";position:absolute;left:7px;top:7px;width:14px;height:14px;background:#fff;box-shadow:inset 4px 0 #f3f3f3,inset -4px 0 #c6c6c6}
.map-target i:after{content:"";position:absolute;left:8px;top:8px;width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 0 rgba(255,244,135,.75);animation:map-pulse 1.8s steps(4,end) infinite}
.map-target span{position:absolute;left:50%;bottom:43px;padding:7px 9px;transform:translateX(-50%);border:2px solid #0a0a0a;background:rgba(20,20,20,.9);box-shadow:inset 2px 2px #666,inset -2px -2px #050505;color:#fff;font:8px/1 "Minecraft Rus",monospace;text-shadow:1px 1px #111;white-space:nowrap}
.map-target:before{content:"";position:absolute;left:-2px;bottom:35px;width:4px;height:44vh;background:linear-gradient(transparent,rgba(255,246,129,.82));box-shadow:0 0 9px 3px rgba(255,242,130,.35);transform-origin:bottom;opacity:.72}
.map-target:hover,.map-target:focus-visible{filter:drop-shadow(0 5px 8px rgba(0,0,0,.8)) brightness(1.2);outline:none}.map-target:focus-visible span{outline:2px solid #fff;outline-offset:3px}
@keyframes map-pulse{0%{box-shadow:0 0 0 0 rgba(255,244,135,.75)}100%{box-shadow:0 0 0 22px rgba(255,244,135,0)}}
@media(max-width:850px){.minecraft-map>img{object-position:44.8% center}.map-shade{background:linear-gradient(180deg,rgba(5,9,7,.12) 0 38%,rgba(5,9,7,.8) 68%,rgba(5,9,7,.94) 100%)}.coordinates-panel{left:14px;right:14px;top:auto;bottom:18px;width:auto;padding:20px 20px 18px;transform:none}.coordinates-panel h2{margin-bottom:15px;font-size:35px}.server-address{display:grid;grid-template-columns:1fr 1fr;margin-bottom:11px}.server-address p{grid-template-columns:1fr;gap:5px;border-bottom:0}.server-address p:first-child{border-right:2px solid #181818}.coordinates-hint{display:none}.route-button{margin-top:13px}.map-target span{font-size:7px}}
@media(max-width:520px){.map-section{min-height:900px}.minecraft-map{bottom:0}.minecraft-map>img{height:58%;object-position:44.8% 42%;filter:saturate(.92) contrast(1.04) brightness(.84)}.map-shade{background:linear-gradient(180deg,transparent 0 30%,rgba(5,9,7,.84) 55%,rgba(5,9,7,.97) 100%)}.coordinates-panel{bottom:14px;padding:17px 16px 15px}.coordinates-kicker{margin-bottom:11px}.coordinates-panel h2{font-size:30px;margin-bottom:12px}.server-address strong{font-size:9px}.minecraft-coordinates{grid-template-columns:25px 1fr 25px 36px 25px 1fr}.minecraft-coordinates b{padding:0 4px;font-size:8px}.coordinates-command{font-size:8px}.map-target{top:24.4%}.map-target:before{height:22vh}}
@media(prefers-reduced-motion:reduce){.map-target i:after{animation:none}.minecraft-map>img,.map-target{transition:none;transform:none}}

/* Minecraft hotbar: invitation plus gifts reserved by the current player. */
.inventory-hud{position:fixed;z-index:45;left:50%;bottom:clamp(12px,2.5vh,28px);display:block!important;width:min(900px,94vw)!important;gap:0!important;transform:translate(-50%,calc(100% + 70px));opacity:0;visibility:hidden;transition:transform .34s cubic-bezier(.18,.75,.22,1),opacity .22s ease,visibility 0s linear .34s;pointer-events:none;filter:drop-shadow(0 9px 8px rgba(0,0,0,.55))}
.inventory-hud.is-visible{transform:translate(-50%,0);opacity:1;visibility:visible;transition-delay:0s;pointer-events:auto}
.inventory-hotbar{width:100%;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));padding:6px;background:#0f1111;border:4px solid #080909;box-shadow:inset 3px 3px #666c6b,inset -3px -3px #020303}
.inventory-slot{position:relative;min-width:0;aspect-ratio:1;display:grid;place-items:center;border:4px solid #6d7372;border-top-color:#a7adac;border-left-color:#a7adac;background:linear-gradient(135deg,rgba(255,255,255,.04),transparent 42%),#313a31;box-shadow:inset 4px 4px #1a211b,inset -4px -4px #485149;color:#fff;cursor:pointer;image-rendering:pixelated}
.inventory-slot+.inventory-slot{margin-left:-1px}.inventory-slot.is-empty{cursor:default}.inventory-slot.is-selected:after{content:"";position:absolute;z-index:3;inset:-9px;border:5px solid #e8eeee;border-top-color:#fff;border-left-color:#fff;box-shadow:inset 0 0 0 3px #838b89,0 0 0 3px #202323;pointer-events:none}
.inventory-slot img{width:76%;height:76%;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(4px 5px rgba(0,0,0,.52))}.inventory-slot .inventory-letter{width:76%;height:76%;clip-path:polygon(42% 8%,62% 8%,62% 17%,74% 17%,74% 27%,86% 27%,86% 39%,98% 39%,98% 58%,87% 58%,87% 69%,75% 69%,75% 80%,63% 80%,63% 91%,38% 91%,38% 82%,26% 82%,26% 72%,14% 72%,14% 62%,2% 62%,2% 45%,14% 45%,14% 34%,26% 34%,26% 23%,38% 23%,38% 12%,42% 12%)}.hud-gift-icon{width:72%;height:72%;display:grid;place-items:center;filter:drop-shadow(4px 5px rgba(0,0,0,.52))}.hud-gift-icon .gift-shape{display:block!important;width:100%!important;height:100%!important;margin:0!important}
.inventory-slot .inventory-drink{width:67%;height:82%;object-fit:contain}.inventory-toast{position:fixed;z-index:46;left:50%;bottom:145px;max-width:min(620px,88vw);margin:0;padding:11px 15px;transform:translate(-50%,8px);border:3px solid #170522;background:rgba(16,4,25,.96);box-shadow:inset 0 0 0 2px #3d1458,0 5px 12px rgba(0,0,0,.5);color:#fff;font:10px/1.4 "Minecraft Rus",monospace;text-align:center;text-shadow:2px 2px #111;opacity:0;visibility:hidden;transition:opacity .16s ease,transform .2s ease,visibility 0s linear .2s;pointer-events:none}.inventory-toast.is-visible{opacity:1;visibility:visible;transform:translate(-50%,0);transition-delay:0s}
.slot-tooltip{position:absolute;left:50%;bottom:calc(100% + 15px);max-width:220px;padding:9px 12px;transform:translate(-50%,5px);border:2px solid #170522;background:rgba(16,4,25,.94);box-shadow:inset 0 0 0 2px #3d1458;color:#fff;font:9px/1.25 "Minecraft Rus",monospace;text-shadow:1px 1px #111;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .12s ease,transform .12s ease;pointer-events:none}
@media(hover:hover){.inventory-slot:hover .slot-tooltip,.inventory-slot:focus-visible .slot-tooltip{opacity:1;visibility:visible;transform:translate(-50%,0)}}.inventory-slot:focus-visible{z-index:3;outline:2px solid #ffffa0;outline-offset:-5px}.inventory-slot:active{filter:brightness(.82)}
@media(max-width:620px){.inventory-hud{width:96vw!important;bottom:calc(24px + env(safe-area-inset-bottom))}.inventory-hotbar{padding:3px;border-width:3px}.inventory-slot{border-width:2px;box-shadow:inset 2px 2px #1a211b,inset -2px -2px #485149}.inventory-slot.is-selected:after{inset:-5px;border-width:3px;box-shadow:inset 0 0 0 2px #838b89,0 0 0 2px #202323}.slot-tooltip{display:none}.inventory-toast{bottom:calc(91px + env(safe-area-inset-bottom));padding:9px 11px;font-size:7.5px}}
@media(prefers-reduced-motion:reduce){.inventory-hud{transition-duration:.01s}}

/* Mobile composition: purpose-built layouts instead of scaled desktop screens. */
@media(max-width:680px){
  .profile-dialog{overflow-y:auto;place-items:start center}.mc-menu-panel{max-height:none;padding:12px 0 22px}.mc-menu-help{margin-bottom:16px}.mc-field-label{font-size:11px}.mc-text-field{height:40px;margin-bottom:14px;font-size:14px}.mc-checkbox-row{margin-bottom:15px}.mc-setting-toggle>span{font-size:10px}.mc-preferences{margin-bottom:12px}
  html{scroll-padding-top:0}
  body{min-width:0}

  /* First visit: compact single-page invitation that always fits the viewport. */
  .invite-dialog{padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom));overflow:hidden;align-items:center}
  .invite-sheet-shell{width:min(91vw,390px);max-height:calc(100svh - 16px);filter:drop-shadow(0 12px 28px rgba(0,0,0,.72))}
  .invite-paper{width:100%;height:min(660px,calc(100svh - 18px));min-height:0;max-height:none;padding:31px 25px 20px 31px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;border-width:14px;border-image-width:14px}
  .invite-paper::-webkit-scrollbar{display:none}
  .invite-paper:before{inset:7px;border-width:9px;border-image-width:9px 0 9px 9px}
  .invite-paper:after{left:7px!important;top:30px!important;font-size:8px!important;line-height:19px!important}
  .invite-page-count{font-size:8px;margin:0 0 13px}
  .invite-paper h2{font-size:15px;line-height:1.35;margin:0 0 15px}
  .invite-copy{font-size:8px;line-height:1.52}
  .invite-copy p{margin:0 0 10px}
  .invite-details{margin-top:auto;padding:10px 0 4px}
  .invite-details p{gap:10px;margin:0 0 7px;font-size:7.5px;line-height:1.35}
  .invite-details b{max-width:65%}
  .invite-sign{font-size:7px;margin:11px 0}
  .invite-actions{grid-template-columns:1fr 1fr;gap:7px}
  .mc-choice{min-height:43px;padding:7px 5px;font-size:7.5px;line-height:1.25;border-width:2px;box-shadow:inset 2px 2px #aaa,inset -2px -2px #454545,0 3px 0 #151515}

  /* Hero book: reveal the animated house around it and keep both pages in bounds. */
  .hero{height:100svh;min-height:690px;border-bottom:0}
  .hero-scene{inset:-5px}.hero-scene-frame{object-position:67% center}
  .topbar{height:88px}.topbar-inner{padding:10px 12px}.party-sign{width:164px;height:46px;font-size:9px}
  .hero-copy{left:50%;right:auto;top:52%;width:min(88vw,370px);height:min(535px,68svh);padding:8px;transform:translate(-50%,-45%);box-shadow:inset 2px 2px rgba(180,112,65,.5),inset -3px -3px rgba(45,20,9,.58),6px 7px 0 rgba(27,18,12,.3)}
  .hero-copy:before{inset:13px;background-size:50% 12px}
  .hero-sheet{inset:8px;padding:39px 24px 23px 31px}
  .hero-sheet:before{left:6px!important;top:29px!important;font-size:8px!important;line-height:19px!important}
  .hero-page-count{top:12px;left:29px;right:22px;font-size:8px}
  .hero-sheet-intro h1{margin:10px 0 13px;font-size:clamp(28px,9.5vw,39px);line-height:1.05}
  .hero-sheet-intro h1 em{font-size:.35em}
  .hero-sheet-intro .eyebrow{font-size:6px}.hero-sheet-intro .lead{font-size:9px;line-height:1.5}
  .hero-sheet-intro .hero-actions{margin-top:14px;gap:7px}.hero-sheet-intro .hero-actions .mc-ui-button{font-size:9px;min-height:38px}.hero-sheet-intro .hero-actions .text-button{font-size:8px}
  .hero-sheet-details{padding-top:37px;justify-content:flex-start}
  .hero-sheet-details .eyebrow{font-size:6px}.hero-sheet-details h2{font-size:21px;margin:7px 0 10px;text-shadow:2px 2px #d6c99e}
  .hero-event-list p{min-height:48px;padding:8px 6px 6px 0}.hero-event-list p:nth-child(even){padding-left:9px}
  .hero-event-list small,.hero-place small{font-size:6px;margin-bottom:5px}.hero-event-list strong,.hero-place strong{font-size:9px;line-height:1.22}
  .hero-place{margin-top:10px}.hero-details-note{margin-top:7px;font-size:7px;line-height:1.35}
  .hero-details-actions{margin-top:9px}.hero-details-actions .mc-ui-button{min-height:36px;font-size:8px}
  .book-back-arrow{left:18px;bottom:18px;transform:scale(.7)}.book-back-arrow:active{transform:translateY(2px) scale(.7)}

  /* Coordinates: full-bleed map, no pale separator and a raised compact panel. */
  .map-section{min-height:100svh;height:100svh;scroll-margin-top:0;border-top:0}
  .minecraft-map{inset:0}.minecraft-map>img{width:100%;height:100%;object-position:44.8% 42%;filter:saturate(.94) contrast(1.04) brightness(.76);transform:translate(var(--map-x),var(--map-y)) scale(1.08)}
  .map-shade{background:linear-gradient(180deg,transparent 0 35%,rgba(5,9,7,.18) 47%,rgba(5,9,7,.88) 72%,rgba(5,9,7,.97) 100%)}
  .map-target{top:33%;left:44.8%}.map-target:before{height:21vh}
  .coordinates-panel{left:12px;right:12px;bottom:calc(30px + env(safe-area-inset-bottom));width:auto;padding:16px 15px 14px;transform:none;box-shadow:inset 2px 2px #777,inset -2px -2px #1a1a1a,6px 7px 0 rgba(0,0,0,.42)}
  .coordinates-kicker{margin-bottom:9px;font-size:7px}.coordinates-panel h2{font-size:28px;margin-bottom:11px}
  .server-address{grid-template-columns:1fr 1fr;margin-bottom:9px}.server-address p{padding:8px;gap:4px}.server-address small{font-size:6px}.server-address strong{font-size:7.5px;line-height:1.3}
  .minecraft-coordinates{grid-template-columns:21px 1fr 21px 30px 21px 1fr}.minecraft-coordinates span{height:30px;font-size:8px}.minecraft-coordinates b{padding:0 3px;font-size:7px}
  .coordinates-command{margin-top:8px;padding:8px;font-size:7px}.coordinates-hint{display:none}.route-button{min-height:37px;margin-top:9px;font-size:8px}

  /* Wishlist: two inventory cards per row with compact readable content. */
  .wishlist.section{padding:64px 11px 118px}
  .wishlist .section-kicker{margin-bottom:24px}.wishlist-head{gap:18px;margin-bottom:24px}.wishlist h2{font-size:34px}.wishlist-head p{font-size:9px;line-height:1.5}
  .filters{gap:5px}.filters button{padding:7px 8px;font-size:7px}
  .player-bar{grid-template-columns:32px minmax(0,1fr) auto;gap:8px;margin:14px 0 18px;padding:9px;border-width:2px}.player-head{width:30px;height:30px}.player-bar small{font-size:6px}.player-bar strong{font-size:9px}.player-bar em{font-size:7px}.player-bar .mc-ui-button{grid-column:auto;width:auto;min-width:0;min-height:34px;padding:5px 7px;font-size:7px}
  .gift-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;box-shadow:6px 7px 0 rgba(65,84,57,.08)}
  .gift-card{min-width:0;min-height:255px;padding:13px 11px 34px}.gift-card:hover{transform:none}.gift-state{top:8px;right:8px;padding:3px 4px;border-width:1px;font-size:6px}.gift-card small{display:block;max-width:48%;font-size:5.5px;line-height:1.3}
  .gift-icon{height:82px;margin:14px 0 8px}.gift-shape{width:58px;height:58px}.gift-card h3{margin:11px 0 7px;font-size:12px;line-height:1.25;overflow-wrap:anywhere}.gift-card p{margin:0;font-size:8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.gift-card strong{left:11px;bottom:12px;font-size:8px}.gift-card .arrow{right:10px;bottom:9px;font-size:15px}
  .wishlist-note{margin-top:20px;font-size:8px;line-height:1.4}

  /* Gift book: keep a real horizontal spread and use a stable hinge animation. */
  .gift-dialog{width:100vw;height:100svh;max-width:none;max-height:none;margin:0;overflow:hidden}
  .gift-book-stage{width:100%;height:100%;padding:0 8px;perspective:1200px}
  .gift-book{width:min(96vw,620px);height:min(72svh,540px);transform-style:preserve-3d}
  .gift-book-pages{grid-template-columns:minmax(0,1fr) 8px minmax(0,1fr);grid-template-rows:1fr}
  .gift-book-spine{background-size:100% 100%}
  .gift-page{min-width:0;padding:25px 16px 22px;border-width:13px}.gift-page:before{inset:4px;border-width:8px}
  .gift-page-left{border-right-width:4px}.gift-page-right{border-left-width:4px;border-top-width:13px}
  .gift-page-left .large-gift-icon{height:125px;margin:17px 0 12px}.gift-page-left .gift-shape{width:88px;height:88px}.gift-page small{font-size:5.5px}.gift-page h3{font-size:11px;line-height:1.35}.gift-page-label{font-size:5px;margin:0 0 13px}.gift-page h4{font-size:12px;margin:0 0 12px}.gift-page-right>p:not(.gift-page-label):not(.modal-hint){font-size:8px!important;line-height:1.45!important;margin:0 0 10px}.gift-price{gap:7px;margin:10px 0;padding:8px 0}.gift-price span{font-size:5px}.gift-price strong{font-size:7px;text-align:right}.gift-page-right .pixel-button{margin:7px 0 0;font-size:6px}.gift-page-right .pixel-button span{padding:8px 5px}.gift-page-right .modal-hint{margin-top:8px;font-size:6px}.reservation-panel{margin-top:8px;padding-top:7px}.reservation-panel p{margin-bottom:6px!important;font-size:8px!important}.reservation-panel .mc-ui-button{min-height:32px;font-size:7px;padding:5px}.reservation-panel small{margin-top:5px;font-size:5.5px;line-height:1.25}.gift-page .page-number{bottom:6px;font-size:6px}
  .gift-dialog .gift-book-cover{left:25%;top:0;width:50%;height:100%;transform-origin:left center}
  .gift-cover-front,.gift-cover-back{border-width:14px;border-image-width:14px}.gift-cover-front:before{inset:18px;border-width:2px}.gift-cover-icon .gift-shape{width:72px;height:72px}.gift-cover-front strong{max-width:140px;margin:14px 0;font-size:9px}.gift-cover-front small{font-size:4.5px}
  .gift-dialog.is-opening .gift-book-cover{animation:mobile-book-hinge .38s cubic-bezier(.45,.02,.22,1) both}
  .gift-dialog.is-opened .gift-book-pages{animation:mobile-spread-settle .34s cubic-bezier(.18,.76,.22,1) both}
  .close-gift{right:8px;top:max(8px,env(safe-area-inset-top));width:30px;height:30px}
  @keyframes mobile-book-hinge{0%{opacity:1;transform:rotateY(0) scale(1)}72%{opacity:1;transform:rotateY(-72deg) scale(.98)}100%{opacity:0;transform:rotateY(-92deg) scale(.96);visibility:hidden}}
  @keyframes mobile-spread-settle{0%{opacity:0;transform:scale(.94)}100%{opacity:1;transform:scale(1)}}
}

/* The hidden book leaves its textured spine at the left edge. */
.scene-view-controls{inset:0;right:auto;bottom:auto;display:block;transform:none;pointer-events:none}
.hero.scene-focus .scene-view-controls{transform:none;pointer-events:none}
.scene-clock{position:absolute;right:clamp(18px,3vw,46px);bottom:clamp(20px,4vh,42px);pointer-events:auto}
.scene-book-return{position:absolute;left:-31px;top:50%;width:61px;height:228px;padding:0;transform:translateY(-50%);border:4px solid #29170d;border-left:0;background:#6b3f24 url("assets/minecraft/ui/book_cover.png") center/48px 48px;box-shadow:inset 3px 3px rgba(180,112,65,.5),inset -4px -4px rgba(45,20,9,.58),6px 8px 0 rgba(0,0,0,.3);image-rendering:pixelated;cursor:pointer;pointer-events:auto;transition:left .25s ease,filter .18s ease}
.scene-book-return:before{content:"";position:absolute;inset:13px 8px 13px 13px;border:2px solid rgba(232,203,140,.38);box-shadow:inset 0 0 0 3px rgba(40,20,13,.15)}
.scene-book-return span{position:absolute;right:7px;top:50%;width:4px;height:4px;background:#e6cb83;box-shadow:0 -8px #e6cb83,0 8px #e6cb83,4px -4px #e6cb83,4px 4px #e6cb83;transform:translateY(-50%);filter:drop-shadow(1px 1px #5b3b20)}
.scene-book-return:hover,.scene-book-return:focus-visible{left:-9px;filter:brightness(1.12);outline:2px solid #fff;outline-offset:-6px}.scene-book-return:active{left:-4px}
@media(max-width:680px){
  .scene-view-controls{left:0;right:0;bottom:0}
  .scene-clock{right:12px;bottom:calc(15px + env(safe-area-inset-bottom))}
  .scene-book-return{left:-26px;width:54px;height:172px;border-width:3px;box-shadow:inset 2px 2px rgba(180,112,65,.5),inset -3px -3px rgba(45,20,9,.58),4px 6px 0 rgba(0,0,0,.3)}
  .scene-book-return:before{inset:10px 7px 10px 11px}.scene-book-return:hover,.scene-book-return:focus-visible{left:-7px}.scene-book-return:active{left:-3px}
}

/* Scene inspection mode on the "Where and when" page. */
.hero-copy{transition:opacity .42s ease,transform .62s cubic-bezier(.22,.72,.18,1)}
.hero.scene-focus .hero-copy{opacity:0;transform:translate(-140%,-48%);pointer-events:none}
.scene-focus-trigger{position:absolute;z-index:7;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in;pointer-events:none;-webkit-tap-highlight-color:transparent}
.hero.details-open:not(.scene-focus) .scene-focus-trigger{pointer-events:auto}
.hero.scene-focus .scene-focus-trigger{pointer-events:none}
.scene-view-controls{position:absolute;z-index:12;right:clamp(18px,3vw,46px);bottom:clamp(20px,4vh,42px);display:flex;align-items:flex-end;gap:12px;opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .3s ease,transform .4s ease,visibility 0s linear .4s;pointer-events:none}
.hero.scene-focus .scene-view-controls{opacity:1;visibility:visible;transform:none;transition-delay:.28s;pointer-events:auto}
.scene-clock{position:relative;width:78px;height:78px;padding:7px;border:3px solid #111;background:rgba(23,23,23,.88);box-shadow:inset 2px 2px #747474,inset -2px -2px #080808,0 5px 0 rgba(0,0,0,.48);cursor:pointer}
.scene-clock img{width:100%;height:100%;display:block;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(3px 4px rgba(0,0,0,.45))}
.scene-clock span{position:absolute;left:50%;bottom:calc(100% + 9px);padding:7px 9px;transform:translateX(-50%);border:2px solid #170522;background:rgba(16,4,25,.94);box-shadow:inset 0 0 0 2px #3d1458;color:#fff;font:7px/1.2 "Minecraft Rus",monospace;white-space:nowrap;opacity:0;transition:opacity .15s ease}
.scene-clock:hover span,.scene-clock:focus-visible span{opacity:1}.scene-clock:hover,.scene-clock:focus-visible{outline:2px solid #fff;outline-offset:3px;filter:brightness(1.13)}.scene-clock:active{transform:translateY(3px)}
.scene-book-return{min-width:170px;min-height:48px;font-size:9px}
@media(max-width:680px){
  .hero.scene-focus .hero-copy{transform:translate(-145vw,-45%)}
  .scene-view-controls{left:12px;right:12px;bottom:calc(15px + env(safe-area-inset-bottom));justify-content:flex-end;align-items:center;gap:9px}
  .scene-clock{width:62px;height:62px;padding:5px}.scene-clock span{display:none}
  .scene-book-return{min-width:145px;min-height:43px;font-size:8px}
}
@media(prefers-reduced-motion:reduce){.hero-copy,.scene-view-controls{transition-duration:.01s}}

@media(max-width:380px){
  .hero-copy{width:90vw;height:min(510px,68svh)}
  .hero-sheet-details h2{font-size:19px}.hero-event-list strong,.hero-place strong{font-size:8px}
  .gift-card{min-height:245px;padding-left:9px;padding-right:9px}.gift-card h3{font-size:11px}.gift-card p{font-size:7px}
  .gift-book{width:98vw;height:min(70svh,510px)}.gift-page{padding-left:12px;padding-right:12px}.gift-page-left .large-gift-icon{height:105px}.gift-page-right>p:not(.gift-page-label):not(.modal-hint){font-size:7px!important}
}

@media(max-width:680px) and (max-height:700px){
  .invite-paper{height:calc(100svh - 12px);padding-top:26px}.invite-copy{font-size:7.5px}.invite-copy p{margin-bottom:8px}.invite-paper h2{font-size:14px;margin-bottom:11px}.invite-actions{gap:5px}.mc-choice{min-height:37px}
  .hero{min-height:640px}.hero-copy{height:min(500px,72svh);top:51%}.hero-sheet-details h2{font-size:18px}.hero-event-list p{min-height:42px}.hero-details-note{display:none}
  .coordinates-panel{bottom:16px}.gift-book{height:82svh}
}

/* Mobile bug fixes: content-sized invite, instant overlays and a one-page notepad book. */
.gift-mobile-summary{display:none}
.profile-dialog{background-color:#111512;opacity:1;transition:none}
.profile-dialog .mc-menu-panel{opacity:0;transform:translateY(8px);transition:opacity .16s linear,transform .2s ease}
.profile-dialog.is-visible .mc-menu-panel{opacity:1;transform:none}
body.death-transition:after{content:"";position:fixed;inset:0;z-index:2999;background:#210807;pointer-events:none}
.death-screen{background-color:#210807;opacity:1;transition:none}
.death-content,.death-screen>small{opacity:0;transition:opacity .22s ease}
.death-screen.is-visible .death-content,.death-screen.is-visible>small{opacity:1}

@media(max-width:680px){
  .invite-sheet-shell{height:auto}
  .invite-paper{height:auto;min-height:0;max-height:calc(100svh - 18px)}
  .invite-details{margin-top:12px}

  .hero-art{height:auto!important;min-height:0!important;inset:0!important}
  .hero-scene{height:auto!important;bottom:0!important}

  .gift-dialog{display:grid;place-items:center}
  .gift-book{width:min(88vw,420px);height:min(78svh,610px)}
  .gift-book-pages{grid-template-columns:1fr;grid-template-rows:1fr}
  .gift-page-left,.gift-book-spine{display:none}
  .gift-page-right{grid-column:1;grid-row:1;border-width:15px;padding:33px 27px 27px;overflow-y:auto;scrollbar-width:none}
  .gift-page-right::-webkit-scrollbar{display:none}
  .gift-page-right:before{border-image:url("assets/minecraft/ui/book_pageedge_left.png") 40 40 40 40 fill / 9px repeat}
  .gift-mobile-summary{display:grid;grid-template-columns:72px minmax(0,1fr);gap:13px;align-items:center;margin:0 0 17px;padding:0 0 14px;border-bottom:1px solid rgba(91,69,43,.2)}
  .gift-mobile-icon{width:72px;height:72px;display:grid;place-items:center;background:rgba(213,222,191,.36)}
  .gift-mobile-icon .gift-shape{display:block!important;width:58px!important;height:58px!important}
  .gift-mobile-summary p{margin:0!important}.gift-mobile-summary small{display:block;margin-bottom:7px;font-size:6px}.gift-mobile-summary strong{display:block;color:#54422f;font:12px/1.35 var(--pixel);overflow-wrap:anywhere}
  .gift-page-label{margin-bottom:9px}.gift-page h4{font-size:14px;margin-bottom:11px}
  .gift-page-right>p:not(.gift-page-label):not(.modal-hint){font-size:10px!important;line-height:1.5!important;margin-bottom:12px}.gift-price{margin:12px 0;padding:10px 0}.gift-price span{font-size:6px}.gift-price strong{font-size:9px}.gift-page-right .pixel-button{font-size:7px}.gift-page-right .modal-hint{font-size:7px}.reservation-panel p{font-size:9px!important}.reservation-panel .mc-ui-button{font-size:8px}.reservation-panel small{font-size:6.5px}.gift-page-right .page-number{display:none}

  .gift-dialog .gift-book-cover{left:0;top:0;width:100%;height:100%;transform-origin:50% 0;transform-style:preserve-3d}
  .gift-cover-front,.gift-cover-back{border-width:18px;border-image-width:18px}.gift-cover-front:before{inset:23px}.gift-cover-icon .gift-shape{width:92px;height:92px}.gift-cover-front strong{max-width:220px;font-size:12px}.gift-cover-front small{font-size:5.5px}
  .gift-dialog.is-opening .gift-book-cover{animation:mobile-notepad-turn 1.1s cubic-bezier(.42,.04,.18,1) both}
  .gift-dialog.is-opening .gift-book-pages{visibility:hidden;opacity:0;transform:scale(.96)}
  .gift-dialog.is-opened .gift-book-pages{visibility:visible;animation:mobile-notepad-page .42s ease both}
  @keyframes mobile-notepad-turn{
    0%{opacity:1;transform:perspective(1200px) rotateX(0deg)}
    34%{opacity:1;transform:perspective(1200px) rotateX(-105deg) translateY(-3%)}
    72%{opacity:1;transform:perspective(1200px) rotateX(-270deg) translateY(-2%)}
    92%{opacity:1;transform:perspective(1200px) rotateX(-350deg)}
    100%{opacity:0;visibility:hidden;transform:perspective(1200px) rotateX(-360deg)}
  }
  @keyframes mobile-notepad-page{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
}

@media(max-width:380px){
  .gift-book{width:91vw;height:min(80svh,590px)}
  .gift-page-right{padding:28px 22px 24px}.gift-mobile-summary{grid-template-columns:62px 1fr}.gift-mobile-icon{width:62px;height:62px}.gift-mobile-icon .gift-shape{width:50px!important;height:50px!important}
}

/* Mobile book correction: the page is always under the cover; the cover hinges left. */
@media(max-width:680px){
  .gift-dialog .gift-book-pages,
  .gift-dialog.is-opening .gift-book-pages,
  .gift-dialog.is-opened .gift-book-pages{visibility:visible;opacity:1;transform:none;animation:none}
  .gift-dialog .gift-book-cover{transform-origin:0 50%}
  .gift-dialog.is-opening .gift-book-cover{animation:mobile-book-turn-left 1.1s cubic-bezier(.42,.04,.18,1) both}
  @keyframes mobile-book-turn-left{
    0%{opacity:1;transform:perspective(1200px) rotateY(0deg)}
    38%{opacity:1;transform:perspective(1200px) rotateY(-72deg)}
    72%{opacity:1;transform:perspective(1200px) rotateY(-142deg)}
    96%{opacity:1;transform:perspective(1200px) rotateY(-178deg)}
    100%{opacity:0;visibility:hidden;transform:perspective(1200px) rotateY(-180deg)}
  }
}

/* Final positioning for the book-spine return control. */
.scene-view-controls{inset:0;right:0;bottom:0;display:block;transform:none;pointer-events:none}
.hero.scene-focus .scene-view-controls{transform:none;pointer-events:none}
.scene-clock{position:absolute;right:clamp(18px,3vw,46px);bottom:clamp(20px,4vh,42px);pointer-events:auto}
.scene-book-return{position:absolute;left:-31px;top:50%;width:61px;min-width:0!important;height:228px;min-height:0!important;padding:0;transform:translateY(-50%);border:4px solid #29170d;border-left:0;background:#6b3f24 url("assets/minecraft/ui/book_cover.png") center/48px 48px;box-shadow:inset 3px 3px rgba(180,112,65,.5),inset -4px -4px rgba(45,20,9,.58),6px 8px 0 rgba(0,0,0,.3);font-size:0;image-rendering:pixelated;cursor:pointer;pointer-events:auto;transition:left .25s ease,filter .18s ease}
.scene-book-return:before{content:"";position:absolute;inset:13px 8px 13px 13px;border:2px solid rgba(232,203,140,.38);box-shadow:inset 0 0 0 3px rgba(40,20,13,.15)}
.scene-book-return span{position:absolute;right:7px;top:50%;width:4px;height:4px;background:#e6cb83;box-shadow:0 -8px #e6cb83,0 8px #e6cb83,4px -4px #e6cb83,4px 4px #e6cb83;transform:translateY(-50%);filter:drop-shadow(1px 1px #5b3b20)}
.scene-book-return:hover,.scene-book-return:focus-visible{left:-9px;filter:brightness(1.12);outline:2px solid #fff;outline-offset:-6px}.scene-book-return:active{left:-4px}
@media(max-width:680px){
  .scene-clock{right:12px;bottom:calc(15px + env(safe-area-inset-bottom))}
  .scene-book-return{left:-26px;width:54px;height:172px;border-width:3px;box-shadow:inset 2px 2px rgba(180,112,65,.5),inset -3px -3px rgba(45,20,9,.58),4px 6px 0 rgba(0,0,0,.3)}
  .scene-book-return:before{inset:10px 7px 10px 11px}.scene-book-return:hover,.scene-book-return:focus-visible{left:-7px}.scene-book-return:active{left:-3px}
}

/* Exact book-height spine, frameless clock and smooth manual time changes. */
.scene-book-return{height:var(--scene-book-height,600px)}
.scene-clock{width:82px;height:82px;padding:0;border:0;background:transparent;box-shadow:none}
.scene-clock img{filter:drop-shadow(4px 6px 2px rgba(0,0,0,.55));transition:transform .25s ease,filter .25s ease}
.scene-clock:hover,.scene-clock:focus-visible{outline:0;filter:none}.scene-clock:hover img,.scene-clock:focus-visible img{transform:scale(1.1);filter:drop-shadow(5px 7px 3px rgba(0,0,0,.65)) brightness(1.1)}.scene-clock:active{transform:none}.scene-clock:active img{transform:scale(.94)}
.hero-scene-day,.hero-scene-night,.hero-night-vignette,.hero-night-stars,.hero-light-glow{transition:opacity 1.45s ease,filter 1.45s ease}
@media(max-width:680px){.scene-clock{width:66px;height:66px}.scene-book-return{height:var(--scene-book-height,535px)}}
@media(prefers-reduced-motion:reduce){.hero-scene-day,.hero-scene-night,.hero-night-vignette,.hero-night-stars,.hero-light-glow{transition-duration:.01s}}

/* Interactive coordinates map: exact marker, draggable world, block clouds and fog. */
.minecraft-map{--map-world-width:100%;--map-world-height:100%;--map-zoom:1.06;--fog-left:0;--fog-right:0;--fog-top:0;--fog-bottom:0;cursor:zoom-in;touch-action:pan-y}
.map-world{position:absolute;z-index:1;left:50%;top:50%;width:var(--map-world-width);height:var(--map-world-height);transform:translate(-50%,-50%) translate(var(--map-x),var(--map-y)) scale(var(--map-zoom));transform-origin:center;transition:transform .48s cubic-bezier(.2,.72,.2,1);will-change:transform;user-select:none}
.map-world>img{width:100%;height:100%;display:block;object-fit:fill;filter:saturate(.94) contrast(1.04) brightness(.8);pointer-events:none;-webkit-user-drag:none}
.map-world .map-shade{z-index:2;background:linear-gradient(90deg,rgba(6,10,8,.82),rgba(6,10,8,.5) 30%,rgba(6,10,8,.08) 68%),linear-gradient(180deg,rgba(3,7,5,.18),transparent 28% 72%,rgba(3,7,5,.35));box-shadow:none;transition:opacity .45s ease}
.map-explore-trigger{position:absolute;z-index:3;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.map-explore-trigger:focus-visible{outline:4px solid rgba(255,255,255,.9);outline-offset:-8px}
.map-section.is-exploring .map-explore-trigger{pointer-events:none}
.map-world .map-target{z-index:4;left:44.8%;top:42%;transform:none;transition:filter .18s ease,opacity .35s ease}
.map-section .coordinates-panel{z-index:8;transition:opacity .36s ease,transform .48s cubic-bezier(.2,.72,.2,1),visibility 0s linear 0s}
.map-section.is-exploring .coordinates-panel{opacity:0;visibility:hidden;transform:translate(-42px,-50%);transition:opacity .28s ease,transform .45s ease,visibility 0s linear .45s;pointer-events:none}
.map-section.is-exploring .minecraft-map{--map-zoom:1.18;cursor:grab;touch-action:none}
.map-section.is-dragging .minecraft-map{cursor:grabbing}
.map-section.is-dragging .map-world{transition:none}
.map-section.is-exploring .map-world .map-shade{opacity:.18}
.map-section.is-exploring .map-target{opacity:.92}
.map-clouds{position:absolute;z-index:3;inset:0;overflow:hidden;pointer-events:none;opacity:.52;mix-blend-mode:screen;transition:opacity .4s ease}
.map-clouds i{position:absolute;left:-190px;top:15%;width:112px;height:20px;background:rgba(242,247,238,.72);box-shadow:20px -20px rgba(242,247,238,.72),44px -20px rgba(242,247,238,.72),68px -8px rgba(242,247,238,.72),92px 0 rgba(242,247,238,.72),20px 20px rgba(242,247,238,.72),44px 20px rgba(242,247,238,.72);image-rendering:pixelated;animation:map-cloud-drift 46s linear infinite;filter:drop-shadow(12px 15px 0 rgba(17,38,30,.12))}
.map-clouds i:nth-child(2){top:42%;left:-280px;opacity:.58;transform:scale(.72);animation-duration:64s;animation-delay:-29s}
.map-clouds i:nth-child(3){top:68%;left:-230px;opacity:.34;transform:scale(1.25);animation-duration:82s;animation-delay:-49s}
.map-section.is-exploring .map-clouds{opacity:.68}
.map-fog{position:absolute;z-index:5;inset:-2px;pointer-events:none;background:linear-gradient(90deg,rgba(213,225,214,var(--fog-left)) 0 3%,transparent 19%),linear-gradient(270deg,rgba(213,225,214,var(--fog-right)) 0 3%,transparent 19%),linear-gradient(180deg,rgba(213,225,214,var(--fog-top)) 0 3%,transparent 19%),linear-gradient(0deg,rgba(213,225,214,var(--fog-bottom)) 0 3%,transparent 19%);transition:background .12s linear}
.map-fog:before,.map-fog:after{display:none}
html.map-explorer-open,body.map-explorer-open{overflow:hidden;overscroll-behavior:none}
.map-explore-hint,.map-explore-close{position:absolute;z-index:7;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,transform .3s ease,visibility 0s linear .3s}
.map-explore-hint{left:50%;bottom:24px;margin:0;padding:9px 12px;transform:translate(-50%,12px);background:rgba(18,20,18,.76);border:2px solid rgba(0,0,0,.8);color:#fff;font:8px/1 "Minecraft Rus",monospace;text-shadow:2px 2px #111;white-space:nowrap}
.map-explore-close{right:22px;top:22px;min-height:38px;padding:8px 15px;transform:translateY(-10px);font-size:8px}
.map-section.is-exploring .map-explore-hint,.map-section.is-exploring .map-explore-close{opacity:1;visibility:visible;pointer-events:auto;transition-delay:.18s}
.map-section.is-exploring .map-explore-hint{transform:translate(-50%,0)}
.map-section.is-exploring .map-explore-close{position:fixed;z-index:1000;transform:none}
@keyframes map-cloud-drift{from{translate:0 0}to{translate:calc(100vw + 430px) 0}}

@media(max-width:850px){
  .map-section.is-exploring .coordinates-panel{transform:translateY(35px)}
  .map-explore-close{right:12px;top:calc(12px + env(safe-area-inset-top));font-size:7px}
  .map-explore-hint{bottom:calc(18px + env(safe-area-inset-bottom));font-size:7px}
  .map-fog{inset:-1px}
}
@media(prefers-reduced-motion:reduce){.map-clouds i{animation:none}.map-world{transition-duration:.01s}}

/* Custom wishlist icons supplied by the host. */
.gift-shape.design-book{background-image:url("assets/minecraft/wishlist-design-book.png")!important}
.gift-shape.book-box{background-image:url("assets/minecraft/wishlist-book-box.png")!important}
.gift-shape.mac-clock{background-image:url("assets/minecraft/wishlist-mac-clock.png")!important}
.gift-shape.boat-motor{background-image:url("assets/minecraft/wishlist-boat-motor.png")!important}
.gift-shape.fence-organizer{background-image:url("assets/minecraft/wishlist-fence-organizer.png")!important}
.gift-shape.finance-book{background-image:url("assets/minecraft/wishlist-finance-book.png")!important}
.gift-shape.monitor-lamp{background-image:url("assets/minecraft/wishlist-monitor-lamp.png")!important}
.gift-shape.screwdriver{background-image:url("assets/minecraft/wishlist-screwdriver.png")!important}
.gift-shape.light-sign{background-image:url("assets/minecraft/wishlist-light-sign.png")!important}
.gift-shape.mouse{background-image:url("assets/minecraft/wishlist-mouse.png")!important}
.gift-shape.money{background-image:url("assets/minecraft/wishlist-money.png")!important}
.gift-shape.compact-axe{background-image:url("assets/minecraft/wishlist-compact-axe.png")!important}
.gift-shape.chatgpt{background-image:url("assets/minecraft/wishlist-chatgpt.png")!important}
.wishlist-note-prelude{margin:0 0 30px;padding:17px 19px;border:2px solid #b6c0af;background:rgba(255,250,229,.72);color:#505b4d;box-shadow:5px 6px 0 rgba(65,84,57,.08)}
.wishlist-note-prelude p{margin:0;line-height:1.55}
@media(max-width:680px){.wishlist-note-prelude{margin:0 0 18px;padding:12px 11px;font-size:7.5px}.wishlist-note-prelude span{flex:0 0 24px;width:24px;height:24px}}

/* Desktop wishlist book: enough room for real descriptions and booking controls. */
@media(min-width:761px){
  .gift-dialog{width:min(1160px,98vw);height:min(780px,96vh)}
  .gift-book{width:min(1040px,94vw);height:min(640px,88vh)}
  .gift-page{padding:44px 50px 36px}
  .gift-page-label{margin-bottom:20px}
  .gift-page h4{margin-bottom:16px;font-size:15px}
  .gift-page-right>p:not(.gift-page-label):not(.modal-hint){margin:0 0 14px;font-size:11px!important;line-height:1.55!important}
  .gift-price{margin:14px 0;padding:11px 0}
  .gift-page-right .pixel-button{margin-top:0;font-size:7px}
  .gift-page-right .pixel-button span{padding:11px 13px}
  .reservation-panel{margin-top:11px;padding-top:9px}
  .reservation-panel p{margin-bottom:7px!important;font-size:9px!important}
  .reservation-panel .mc-ui-button{min-height:34px;font-size:8px}
  .reservation-panel small{margin-top:6px;font-size:6px;line-height:1.3}
}

/* Simplified archive and footer sign. */
.archive-layout{grid-template-columns:minmax(260px,.78fr) minmax(420px,1.22fr);align-items:center;gap:clamp(32px,6vw,90px)}
.archive-layout>div:first-child{grid-row:auto;padding-right:0}
.archive-layout>.world-card{width:100%;max-width:720px;justify-self:end}
footer{min-height:190px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(28px,5vw,74px);padding:30px 5vw}
.footer-party-sign{width:220px!important;height:88px!important;aspect-ratio:2.5/1!important;padding:12px 18px!important;font-size:12px!important;line-height:1.12!important;box-shadow:inset 4px 4px rgba(232,190,91,.34),inset -4px -4px rgba(72,47,16,.42),0 5px 0 #2a1d0d,0 0 0 3px #17110a!important}
.footer-party-sign span{min-height:14px!important}
footer>p{max-width:520px;justify-self:center}
footer>[data-year]{justify-self:end}
@media(max-width:900px){
  .archive-layout{grid-template-columns:1fr;gap:26px}
  .archive-layout>.world-card{max-width:none;justify-self:stretch}
}
@media(max-width:600px){
  footer{min-height:260px;grid-template-columns:1fr;justify-items:center;gap:24px;padding:38px 20px}
  .footer-party-sign{width:190px!important;height:76px!important;padding:10px 14px!important;font-size:10px!important}
  footer>p{margin:0;max-width:290px}
  footer>[data-year]{justify-self:center}
}

