/* V4.7 — ornamented panels and clear day/night town */
.panel,.game-dialog{position:relative;border-color:#69583e;border-radius:8px;background:linear-gradient(135deg,#302d25f5,#1b1e20fa);box-shadow:0 12px 30px #0005,inset 0 0 0 5px #12151755}
.panel::before,.game-dialog::before{content:"";position:absolute;inset:-3px;pointer-events:none;z-index:1;border:18px solid transparent;border-image:url('polish/frame.svg') 30 stretch}
.panel::after{content:"";position:absolute;top:-13px;left:50%;transform:translateX(-50%);width:100px;height:24px;background:url('polish/crest.svg') center/contain no-repeat;pointer-events:none;z-index:2}
.panel>h2:first-child{padding-top:5px}.tooltip{border-color:#af9163;box-shadow:0 12px 38px #000c,inset 0 0 0 3px #d8b77912}
.paperdoll,.character .paperdoll{grid-template-columns:84px minmax(128px,1fr) 84px;grid-template-rows:112px repeat(3,94px) 58px 50px;max-width:470px}.paperdoll .equip-slot img{height:70px}.paperdoll .slot-head,.paperdoll .slot-neck{height:94px}.paperdoll .slot-ring_left img,.paperdoll .slot-ring_right img{height:37px}.paperdoll .slot-ammo img{height:42px}.profile-layout .paperdoll .doll-portrait img{object-fit:cover!important;object-position:50% 12%;width:100%;height:100%}.profile-layout .doll-portrait{border-radius:35px 35px 7px 7px}
.achievement{display:inline-flex;align-items:center;justify-content:center;width:64px;height:68px;padding:5px;margin:4px;background:radial-gradient(ellipse,#80663b35,transparent 72%);border:1px solid #77613d55;border-radius:8px}.achievement img{width:54px;height:56px;object-fit:contain;filter:drop-shadow(0 3px 3px #0009)}
.shop-grid>.panel{padding-left:24px;padding-right:24px}.shop-grid .shop-item{padding:14px 9px;gap:12px;min-width:0}.shop-info{min-width:0;overflow-wrap:anywhere}.shop-grid .shop-item>[data-action="sell"],.shop-grid .shop-item>[data-action="buy"]{flex-shrink:0;max-width:100%;margin-right:5px;padding:9px 12px}.shop-item .coins{flex-wrap:wrap;justify-content:center;gap:5px}.shop-item .coin img{width:20px;height:20px}
.town-map{margin-top:15px;border:2px solid #aa8c59;box-shadow:0 10px 30px #0008}.town-map>img{aspect-ratio:3/2;display:block;width:100%;object-fit:cover}.town-map>button>span{font-size:13px;background:linear-gradient(#302820f7,#17191bf7);border-color:#dab274;padding:9px 13px;text-shadow:0 1px 2px #000;box-shadow:0 3px 12px #000b}.town-map>button:hover,.town-map>button:focus-visible{background:#ffd58a20;border:1px solid #ffe0a0aa;box-shadow:inset 0 0 30px #ffe0a022}.town-time{position:absolute;top:10px;left:50%;transform:translateX(-50%);z-index:2;border:1px solid #ccb58099;border-radius:20px;background:#182026e8;color:#f5e6c7;font-size:11px;padding:6px 14px;pointer-events:none}
body.auth-page{min-height:100dvh;background:linear-gradient(90deg,#10161c20,#10161c30 45%,#0e131ac9),url('polish/login-bg.webp') center/cover fixed no-repeat,#111820}.auth-layout{position:relative;min-height:100dvh;max-width:1280px;padding:50px 40px;grid-template-columns:minmax(0,1fr) 430px;gap:100px}.auth-story{background:none;box-shadow:none;border:0;padding:0;min-height:580px;justify-content:space-between}.auth-story .brand{font-size:25px;letter-spacing:3px;text-shadow:0 3px 15px #000}.auth-story h1{font-size:clamp(38px,4vw,61px);line-height:1.1;max-width:560px;text-shadow:0 2px 24px #000,0 2px 4px #000}.auth-story p,.auth-story .eyebrow{color:#ede0c9;text-shadow:0 2px 8px #000}.auth-story>div{padding:24px 0}.auth-card{padding:32px 34px;background:linear-gradient(145deg,#302c25f5,#10171df5);backdrop-filter:blur(12px);border:1px solid #b39664;box-shadow:0 25px 80px #0009,inset 0 0 0 6px #15181980}.auth-card::after{width:140px;height:32px;top:-18px}.auth-card h2{font-size:32px;color:#ead3a7;letter-spacing:.2px}.auth-card>small{letter-spacing:2px;color:#bba27b;font-size:9px}.auth-card label{color:#d5c8af;font-size:12px}.auth-card input{background:linear-gradient(#0c1219,#182027);border:1px solid #7c694b;border-radius:3px;padding:14px;color:#f1e7d4;box-shadow:inset 0 2px 7px #0006}.auth-card input:focus{border-color:#e2c187;outline:1px solid #e2c18740}.auth-card button.primary{min-height:48px;background:linear-gradient(#b18c53,#70522e);font-size:14px;letter-spacing:.5px;border:1px solid #d6b77f;box-shadow:inset 0 1px #ffe3a88a,0 4px 12px #0006}.auth-card .telegram-promo{padding:13px 30px 13px 13px;margin:20px 0 0;background:#24313a80}.auth-card .telegram-promo p{font-size:11px}.auth-card .telegram-promo h2{font-size:15px}.auth-card .auth-switch{margin-top:10px!important}.auth-card .text-button{color:#dbc293}.auth-card .honeypot{display:none!important}
@media(max-width:1000px){.auth-layout{gap:40px;padding:40px 28px;grid-template-columns:minmax(0,1fr) 400px}.auth-story .brand{font-size:20px;letter-spacing:1px}}
@media(max-width:760px){body.auth-page{background-position:35% center;background-attachment:scroll}.auth-layout{display:flex;flex-direction:column;gap:30px;padding:30px 22px}.auth-story{min-height:0;width:100%;max-width:460px;text-align:center}.auth-story h1{font-size:32px;margin:12px auto}.auth-story p,.auth-story .eyebrow,.auth-story>div>small{display:none}.auth-story>div{padding:0}.auth-card{width:100%;max-width:460px;padding:28px}.town-map>button>span{font-size:10px;padding:6px}.town-time{font-size:9px;padding:4px 10px;top:5px}}
@media(max-width:520px){.paperdoll,.character .paperdoll{grid-template-columns:64px minmax(100px,1fr) 64px;grid-template-rows:112px repeat(3,77px) 50px 46px;gap:6px}.paperdoll .equip-slot img{height:53px}.paperdoll .slot-head,.paperdoll .slot-neck{height:77px}.paperdoll .slot-ring_left img{height:30px}.paperdoll .slot-ring_right img{height:30px}.paperdoll .slot-ammo img{height:36px}.shop-grid>.panel{padding-left:18px;padding-right:18px}.shop-grid .shop-item{flex-wrap:wrap;padding:14px 4px}.shop-grid .shop-item .shop-info{flex:1;min-width:110px}.shop-grid .shop-item>[data-action="sell"],.shop-grid .shop-item>[data-action="buy"]{margin:4px 4px 0 auto;min-height:40px}.town-map>button>span{font-size:8px;padding:4px 3px;max-width:100%;line-height:1.3}.town-time{font-size:8px}.achievement{width:54px;height:58px}.achievement img{width:44px;height:46px}.auth-card{padding:26px 22px}.auth-card h2{font-size:27px}}
