:root {
  --sea-top: #1a9fd4;
  --sea-mid: #0e7aaa;
  --sea-deep: #0a3a5c;
  --wood-dark: #2c1a0e;
  --wood-mid: #4a2c1a;
  --wood-light: #6b3f22;
  --wood-bright: #8b5a2b;
  --gold: #c8a020;
  --gold-light: #e8c040;
  --gold-dark: #8b6800;
  --text-cream: #f0e6c8;
  --green: #40c040;
  --red: #e04040;
  --g-wood: linear-gradient(180deg,#6b3f22 0%,#4a2c1a 50%,#2c1a0e 100%);
  --g-wood-h: linear-gradient(180deg,#8b5a2b 0%,#6b3f22 50%,#4a2c1a 100%);
  --g-wood-d: linear-gradient(180deg,#2c1a0e 0%,#1a0e06 100%);
  --g-wood-d2: linear-gradient(135deg,#2c1a0e,#1a0e06);
  --b-gold: 1px solid #8b6800;
  --b-gold2: 1px solid rgba(200,160,32,.35);
  --tc-dim: rgba(240,230,200,.55);
  --tc-med: rgba(240,230,200,.75);
  --tc-faint: rgba(240,230,200,.4);
}

:root {
  /* ── Wood tones ── */
  --g-wood: linear-gradient(180deg, #6b3f22 0%, #4a2c1a 50%, #2c1a0e 100%);
  --g-wood-h: linear-gradient(180deg, #8b5a2b 0%, #6b3f22 50%, #4a2c1a 100%);
  --g-wood-d: linear-gradient(180deg, #2c1a0e 0%, #1a0e06 100%);
  --g-wood-d2: linear-gradient(135deg, #2c1a0e, #1a0e06);
  /* ── Borders ── */
  --b-gold: 1px solid #8b6800;
  --b-gold2: 1px solid rgba(200,160,32,.35);
}

/* ═══════════════════════════════════════════════
   Морские Псы — Пиратская RPG  |  style.css
   Автоматически извлечено из монолита
═══════════════════════════════════════════════ */

*{margin:0;padding:0;box-sizing:border-box;}body{color:var(--text-cream);font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;background:linear-gradient(180deg,var(--sea-top) 0%,var(--sea-mid) 40%,var(--sea-deep) 100%);min-height:100vh;}.waves{position:fixed;bottom:0;left:0;right:0;height:100px;pointer-events:none;z-index:0;overflow:hidden;}.wave{position:absolute;bottom:0;width:200%;height:70px;background:radial-gradient(ellipse at 50% 100%,rgba(255,255,255,.13) 0%,transparent 70%);border-radius:50% 50% 0 0/30% 30% 0 0;animation:waveAnim 6s ease-in-out infinite;}.wave:nth-child(2){animation-delay:-3s;opacity:.5;height:50px;}.sparkle{position:fixed;width:3px;height:3px;background:rgba(255,255,255,.7);border-radius:50%;animation:sparkleAnim 3s ease-in-out infinite;pointer-events:none;}@keyframes waveAnim{0%,100%{transform:translateX(-50%) scaleY(1);}50%{transform:translateX(-25%) scaleY(1.2);}}@keyframes sparkleAnim{0%,100%{opacity:0;transform:scale(1);}50%{opacity:1;transform:scale(2);}}@keyframes pulse{0%,100%{transform:scale(1);}50%{transform:scale(1.3);}}@keyframes shipFloat{0%,100%{transform:translateY(0) rotate(-2deg);}50%{transform:translateY(-8px) rotate(2deg);}}@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}@keyframes slideUp{from{transform:translateY(100%);}to{transform:translateY(0);}}@keyframes resultPop{0%{transform:scale(.5);opacity:0;}70%{transform:scale(1.1);}100%{transform:scale(1);opacity:1;}}@keyframes shimmer{0%{background-position:-200% center;}100%{background-position:200% center;}}@keyframes rewardBounce{0%,100%{transform:translateY(0);}30%{transform:translateY(-12px);}60%{transform:translateY(-5px);}}.game-wrapper{position:relative;z-index:1;max-width:520px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;}.top-bar{background:transparent;border-bottom:none;padding:8px 12px;display:flex;align-items:flex-start;justify-content:space-between;position:absolute;top:0;left:0;right:0;z-index:100;box-shadow:none;}.mail-btn{position:relative;width:42px;height:42px;background:linear-gradient(180deg,#a07040,#6b4422,#4a2c10);border:3px solid #3a1c08;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:20px;transition:background .2s;box-shadow:inset 0 1px 0 rgba(255,200,100,.3),0 3px 8px rgba(0,0,0,.6);}.mail-btn:hover{background:linear-gradient(180deg,#b88050,#7b5432,#5a3c20);}.mail-badge{position:absolute;top:-5px;right:-5px;width:14px;height:14px;background:#e03030;border-radius:50%;border:2px solid var(--wood-dark);animation:pulse 2s ease-in-out infinite;}.player-name{background:linear-gradient(180deg,#c09060,#a07040,#7a5030);border:3px solid #4a2c10;border-radius:8px;padding:6px 24px;color:#3a1c08;font-size:14px;font-weight:700;letter-spacing:1px;cursor:pointer;transition:background .2s;box-shadow:inset 0 2px 0 rgba(255,220,150,.4),inset 0 -2px 0 rgba(0,0,0,.2),0 4px 10px rgba(0,0,0,.5);text-shadow:0 1px 0 rgba(255,220,150,.4);}.player-name:hover{background:linear-gradient(180deg,#d0a070,#b08050,#8a6040);}.refresh-btn{width:42px;height:42px;background:linear-gradient(180deg,#a07040,#6b4422,#4a2c10);border:3px solid #3a1c08;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:20px;transition:all .3s;box-shadow:inset 0 1px 0 rgba(255,200,100,.3),0 3px 8px rgba(0,0,0,.6);}.refresh-btn:hover{background:linear-gradient(180deg,#b88050,#7b5432,#5a3c20);transform:none;}.sea-area{min-height:118px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;background:url('/img/header_bg.jpg') center top/100% auto no-repeat;position:relative;}.sea-area::after{content:'';position:absolute;bottom:0;left:0;right:0;height:30px;background:linear-gradient(to bottom,transparent,var(--wood-mid));pointer-events:none;}.ship-silhouette{display:none;}.progress-bar-section{background:var(--wood-mid);border-top:var(--b-gold2);border-bottom:var(--b-gold2);padding:6px 12px;display:flex;align-items:center;gap:8px;flex-shrink:0;}.progress-label{color:var(--text-cream);font-size:11px;white-space:nowrap;min-width:65px;}.progress-track{flex:1;height:14px;background:rgba(0,0,0,.4);border-radius:7px;border:var(--b-gold);overflow:hidden;}.progress-fill{height:100%;width:5%;background:linear-gradient(90deg,#a06010,var(--gold-light));border-radius:7px;}.progress-pct{color:var(--gold-light);font-size:11px;white-space:nowrap;}.progress-hint{color:rgba(240,230,200,.6);font-size:10px;white-space:nowrap;}.stats-bar{background:var(--wood-dark);border-bottom:3px solid rgba(0,0,0,.4);padding:4px 6px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;overflow:hidden;}.stat-item{display:flex;align-items:center;gap:2px;white-space:nowrap;flex:1;justify-content:center;cursor:pointer;padding:2px 3px;border-radius:6px;transition:background .2s;min-width:0;overflow:hidden;}.stat-item:hover{background:rgba(200,160,32,.15);}.stat-item.no-click{cursor:default;}.stat-item.no-click:hover{background:none;}.stat-value{color:var(--text-cream);font-size:clamp(9px,2.5vw,12px);font-weight:600;overflow:hidden;text-overflow:ellipsis;max-width:100%;}.stat-icon{font-size:clamp(12px,3.5vw,16px);line-height:1;flex-shrink:0;}.cd-stat{flex-shrink:0;}.cd-stat .stat-value{color:#ff9944;font-family:monospace;font-size:clamp(9px,2.5vw,11px);}.stat-label{color:rgba(240,230,200,.5);font-size:10px;}.stat-divider{width:1px;height:16px;background:rgba(200,160,32,.3);flex-shrink:0;}.pearl-icon{display:inline-flex;align-items:flex-end;gap:2px;flex-shrink:0;}.pearl-icon span{background:radial-gradient(circle at 35% 35%,#fff,#c8d8e8 50%,#8aaabb);border-radius:50%;display:inline-block;box-shadow:0 1px 3px rgba(0,0,0,.35);}.pearl-icon .p1{width:7px;height:7px;}.pearl-icon .p2{width:11px;height:11px;}.pearl-icon .p3{width:8px;height:8px;}.main-menu{background:linear-gradient(180deg,rgba(44,26,14,.93) 0%,rgba(30,18,8,.96) 100%);padding:12px;display:flex;flex-direction:column;flex:1;}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px;}.menu-btn{background:linear-gradient(180deg,var(--wood-light) 0%,var(--wood-mid) 50%,var(--wood-dark) 100%);border:var(--b-gold2);border-radius:10px;padding:14px 6px 10px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;overflow:hidden;}.menu-btn::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,220,100,.4),transparent);}.menu-btn:hover{background:linear-gradient(180deg,var(--wood-bright) 0%,var(--wood-light) 50%,var(--wood-mid) 100%);border-color:var(--gold);transform:translateY(-2px);box-shadow:0 6px 15px rgba(0,0,0,.5);}.btn-icon{font-size:26px;line-height:1;}.btn-label{color:var(--text-cream);font-size:11px;font-weight:600;text-align:center;line-height:1.2;}.btn-badge{position:absolute;top:4px;right:4px;background:#e03030;color:#fff;font-size:9px;padding:1px 4px;border-radius:4px;}.btn-badge.green{background:#2a7a20;}.bottom-links{display:flex;justify-content:center;gap:24px;padding:8px 0 0;background:linear-gradient(180deg,rgba(44,26,14,.93) 0%,rgba(30,18,8,.96) 100%);}.bottom-link{color:var(--gold);font-size:12px;text-decoration:underline;cursor:pointer;}.footer-bar{background:var(--wood-dark);border-top:3px solid var(--gold-dark);padding:8px 14px;display:flex;align-items:center;justify-content:space-between;position:sticky;bottom:0;z-index:200;box-shadow:0 -3px 15px rgba(0,0,0,.5);flex-shrink:0;}.footer-time{color:var(--gold);font-size:13px;font-weight:600;letter-spacing:1px;font-family:monospace;}.online-dot{width:7px;height:7px;background:#40e040;border-radius:50%;box-shadow:0 0 5px #40e040;animation:pulse 2s ease-in-out infinite;margin-right:4px;}.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:200;align-items:flex-end;justify-content:center;}.modal-overlay.active{display:flex;animation:fadeIn .2s ease;}.modal-panel{width:100%;max-width:520px;background:linear-gradient(180deg,var(--wood-mid) 0%,var(--wood-dark) 100%);border-top:3px solid var(--gold-dark);border-radius:16px 16px 0 0;padding:14px 12px 28px;animation:slideUp .3s ease;max-height:92vh;overflow-y:auto;}.modal-title{text-align:center;color:var(--gold-light);font-size:15px;letter-spacing:1.5px;margin-bottom:12px;padding-bottom:9px;border-bottom:1px solid rgba(200,160,32,.3);}.modal-close{float:right;cursor:pointer;color:rgba(240,230,200,.5);font-size:20px;line-height:1;}.modal-close:hover{color:var(--text-cream);}.submenu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}.submenu-btn{background:linear-gradient(180deg,var(--wood-light) 0%,var(--wood-mid) 50%,var(--wood-dark) 100%);border:var(--b-gold2);border-radius:10px;padding:14px 6px 10px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;overflow:hidden;text-align:center;}.submenu-btn::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,220,100,.4),transparent);}.submenu-btn:hover{background:linear-gradient(180deg,var(--wood-bright) 0%,var(--wood-light) 50%,var(--wood-mid) 100%);border-color:var(--gold);transform:translateY(-2px);box-shadow:0 6px 15px rgba(0,0,0,.5);}.sub-icon{font-size:26px;line-height:1;margin-bottom:2px;}.sub-label{color:var(--text-cream);font-size:11px;font-weight:600;text-align:center;line-height:1.2;}.tab-row{display:flex;gap:6px;margin-bottom:12px;}.tab-btn{flex:1;background:var(--g-wood);border:var(--b-gold);border-radius:7px;padding:8px 4px;cursor:pointer;color:var(--text-cream);font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:11px;font-weight:600;text-align:center;transition:all .2s;}.tab-btn.active{background:linear-gradient(180deg,var(--gold-dark),#6b4800);border-color:var(--gold);color:var(--gold-light);}.tab-content{display:none;}.tab-content.active{display:block;}.page-nav{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:12px;flex-shrink:0;}.page-btn{background:var(--g-wood);border:var(--b-gold);border-radius:6px;width:32px;height:32px;cursor:pointer;color:var(--text-cream);font-size:14px;display:flex;align-items:center;justify-content:center;transition:all .2s;}.page-btn:hover{background:var(--g-wood-h);border-color:var(--gold);}.page-btn:disabled{opacity:.4;cursor:default;}.page-info{color:var(--gold-light);font-size:12px;}.ship-cards{display:flex;flex-direction:column;gap:10px;}.ship-card{background:linear-gradient(180deg,rgba(60,35,15,.9),rgba(30,15,5,.95));border:var(--b-gold2);border-radius:10px;overflow:hidden;}.ship-card-header{display:flex;gap:10px;padding:10px;background:rgba(0,0,0,.2);}.ship-card-img{width:72px;height:72px;background:linear-gradient(135deg,#1a6090,#0a3050);border:var(--b-gold2);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:36px;flex-shrink:0;}.ship-card-info{flex:1;}.ship-card-name{color:var(--gold-light);font-size:13px;font-weight:700;margin-bottom:4px;}.ship-card-desc{color:rgba(240,230,200,.65);font-size:10px;line-height:1.5;}.ship-stats{padding:6px 10px;display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;}.ship-stat-row{display:flex;align-items:center;justify-content:space-between;padding:2px 0;border-bottom:1px solid rgba(200,160,32,.1);}.ship-stat-name{color:rgba(240,230,200,.7);font-size:10px;}.ship-stat-val{font-size:10px;font-weight:600;color:var(--gold-light);}.diff-pos{color:#40c040;}.diff-neg{color:#e04040;}.ship-card-footer{padding:8px 10px;background:rgba(0,0,0,.25);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;}.price-tag{display:flex;align-items:center;gap:3px;color:var(--text-cream);font-size:12px;font-weight:600;}.currency-toggle{display:flex;gap:4px;}.curr-btn{background:rgba(0,0,0,.3);border:var(--b-gold);border-radius:4px;padding:3px 7px;cursor:pointer;font-size:10px;color:rgba(240,230,200,.6);font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;transition:all .2s;}.curr-btn.active{background:rgba(200,160,32,.25);color:var(--gold-light);border-color:var(--gold);}.shop-btns{display:flex;gap:6px;}.btn-buy{background:linear-gradient(180deg,#2a5c1a,#1a3c0a);border:1px solid #40a020;border-radius:6px;color:#80e040;font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:10px;font-weight:600;padding:5px 12px;cursor:pointer;transition:all .2s;}.btn-buy:hover{background:linear-gradient(180deg,#3a7c2a,#2a5c1a);}.btn-sell{background:linear-gradient(180deg,#5c2a1a,#3c1a0a);border:1px solid #a05020;border-radius:6px;color:#e08040;font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:10px;font-weight:600;padding:5px 12px;cursor:pointer;}.lvl-req{color:rgba(240,230,200,.5);font-size:10px;text-align:center;margin-top:6px;padding:4px;}.item-list{display:flex;flex-direction:column;gap:8px;}.item-card{background:linear-gradient(90deg,rgba(50,28,10,.9),rgba(30,15,5,.9));border:var(--b-gold);border-radius:9px;padding:10px 12px;display:flex;align-items:center;gap:10px;}.item-card-img{width:52px;height:52px;background:linear-gradient(135deg,var(--wood-mid),var(--wood-dark));border:var(--b-gold2);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;}.item-card-body{flex:1;}.item-card-name{color:var(--gold-light);font-size:12px;font-weight:700;margin-bottom:3px;}.item-card-stat{color:rgba(240,230,200,.7);font-size:10px;margin-bottom:4px;}.item-card-stat b{color:var(--green);}.item-card-actions{display:flex;flex-direction:column;align-items:flex-end;gap:5px;}.crew-card{background:linear-gradient(90deg,rgba(30,50,25,.9),rgba(15,30,10,.9));border:1px solid #3a6020;border-radius:9px;padding:10px 12px;display:flex;align-items:center;gap:10px;margin-bottom:8px;}.crew-img{width:60px;height:60px;border:2px solid #3a6020;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:30px;background:linear-gradient(135deg,#1a4020,#0a2010);}.crew-body{flex:1;}.crew-name{color:#80e060;font-size:12px;font-weight:700;margin-bottom:4px;}.crew-stats{display:grid;grid-template-columns:1fr 1fr;gap:2px;}.crew-stat{color:rgba(240,230,200,.7);font-size:10px;}.crew-stat b{color:#80e060;}.crew-actions{display:flex;flex-direction:column;align-items:flex-end;gap:5px;}.profile-top{display:flex;align-items:center;gap:14px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid rgba(200,160,32,.25);}.profile-avatar{width:72px;height:72px;background:var(--g-wood-d2);border:3px solid var(--gold);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:36px;flex-shrink:0;box-shadow:0 0 14px rgba(200,160,32,.35);cursor:pointer;position:relative;overflow:hidden;}.profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:7px;}.avatar-edit{position:absolute;bottom:-2px;right:-2px;width:18px;height:18px;background:var(--gold-dark);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;}.profile-name-block{flex:1;}.p-name{color:var(--gold-light);font-size:15px;font-weight:700;margin-bottom:2px;}.p-level{color:var(--gold);font-size:11px;margin-bottom:6px;}.p-title-badge{display:inline-block;background:rgba(200,160,32,.18);border:var(--b-gold);border-radius:10px;padding:2px 10px;color:var(--gold-light);font-size:10px;}.p-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px;}.p-stat{background:rgba(0,0,0,.3);border:var(--b-gold);border-radius:8px;padding:7px 4px;text-align:center;}.p-stat-val{color:var(--gold-light);font-size:15px;font-weight:700;}.p-stat-lbl{color:var(--tc-dim);font-size:9px;margin-top:2px;line-height:1.3;}.p-ship{background:rgba(0,0,0,.25);border:var(--b-gold);border-radius:8px;padding:10px 12px;margin-bottom:10px;display:flex;align-items:center;gap:10px;}.p-ship-icon{font-size:32px;flex-shrink:0;}.p-ship-info{flex:1;}.p-ship-name{color:var(--gold-light);font-size:12px;font-weight:700;}.p-ship-stats{color:rgba(240,230,200,.6);font-size:10px;margin-top:3px;display:flex;gap:10px;flex-wrap:wrap;}.xp-block{background:rgba(0,0,0,.3);border:var(--b-gold);border-radius:8px;padding:10px 12px;margin-bottom:10px;}.xp-row{display:flex;justify-content:space-between;color:var(--text-cream);font-size:11px;margin-bottom:6px;}.xp-track{height:12px;background:rgba(0,0,0,.4);border-radius:6px;border:var(--b-gold);overflow:hidden;}.xp-fill{height:100%;width:4.9%;background:linear-gradient(90deg,#a06010,var(--gold-light));border-radius:6px;}.achieve-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:10px;}.achieve-card{background:rgba(0,0,0,.3);border:var(--b-gold);border-radius:9px;padding:9px 5px;text-align:center;position:relative;transition:all .2s;}.achieve-card.locked{opacity:.4;filter:grayscale(1);}.achieve-card:hover:not(.locked){border-color:var(--gold);background:rgba(200,160,32,.1);}.achieve-icon{font-size:26px;margin-bottom:4px;}.achieve-name{color:var(--gold-light);font-size:9px;font-weight:700;line-height:1.3;}.achieve-desc{color:rgba(240,230,200,.5);font-size:8.5px;margin-top:2px;line-height:1.4;}.achieve-card .achieve-new{position:absolute;top:-4px;right:-4px;background:#e8c020;color:#1a0a00;font-size:8px;font-weight:700;padding:1px 4px;border-radius:6px;}.bh-row{display:flex;align-items:center;gap:9px;padding:7px 10px;background:rgba(0,0,0,.25);border:1px solid rgba(200,160,32,.15);border-radius:7px;margin-bottom:5px;}.bh-icon{width:30px;height:30px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}.bh-icon.w{background:rgba(30,80,15,.5);border:1px solid #3a8020;}.bh-icon.l{background:rgba(80,20,15,.5);border:1px solid #802020;}.bh-info{flex:1;}.bh-enemy{color:var(--text-cream);font-size:11px;font-weight:600;}.bh-type{color:rgba(240,230,200,.5);font-size:9px;margin-top:1px;}.bh-result{text-align:right;font-size:10px;font-weight:700;}.bh-result.w{color:#60d030;}.bh-result.l{color:#d06030;}.stats-overview{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;}.stat-overview-card{background:rgba(0,0,0,.3);border:var(--b-gold);border-radius:8px;padding:10px 12px;}.soc-label{color:var(--tc-dim);font-size:9px;margin-bottom:6px;text-transform:uppercase;letter-spacing:.8px;}.soc-val{color:var(--gold-light);font-size:20px;font-weight:700;}.soc-sub{color:rgba(240,230,200,.45);font-size:9px;margin-top:2px;}.winrate-bar-wrap{background:rgba(0,0,0,.3);border-radius:4px;height:6px;margin-top:6px;overflow:hidden;}.winrate-bar{height:100%;background:linear-gradient(90deg,#2a7020,#60d030);border-radius:4px;}.avatar-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:10px 0;}.av-option{width:100%;aspect-ratio:1;background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;cursor:pointer;transition:all .2s;}.av-option:hover{border-color:var(--gold);background:rgba(200,160,32,.15);}.av-option.selected{border-color:var(--gold-light);box-shadow:0 0 10px rgba(200,160,32,.5);}.profile-tab-row{display:flex;gap:5px;margin-bottom:12px;}.battle-type-lbl{text-align:center;background:linear-gradient(90deg,var(--wood-mid),var(--wood-light),var(--wood-mid));border:var(--b-gold);border-radius:8px;padding:7px;color:var(--gold-light);font-size:13px;letter-spacing:2px;margin-bottom:12px;}.battle-ships{display:flex;gap:10px;margin-bottom:12px;}.bs-card{flex:1;background:rgba(0,0,0,.35);border:var(--b-gold2);border-radius:10px;padding:10px;display:flex;flex-direction:column;align-items:center;gap:5px;}.bs-card.mine{border-color:#2d6b2d;}.bs-ship-img{font-size:42px;}.bs-name{color:var(--gold-light);font-size:11px;font-weight:700;text-align:center;}.bs-stat{color:var(--text-cream);font-size:10px;width:100%;}.bs-stat b{color:var(--gold);}.btn-attack{width:100%;background:linear-gradient(180deg,#3a1a1a,#1a0a0a);border:2px solid #c03030;border-radius:8px;color:#ff8080;font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:14px;font-weight:700;letter-spacing:2px;padding:12px;cursor:pointer;transition:all .2s;margin-bottom:8px;}.btn-attack:hover{box-shadow:0 0 15px rgba(200,50,50,.4);}.btn-row{display:flex;gap:8px;}.btn-sec{flex:1;background:var(--g-wood);border:var(--b-gold);border-radius:8px;color:var(--text-cream);font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:12px;padding:9px;cursor:pointer;transition:all .2s;}.btn-sec:hover{background:var(--g-wood-h);border-color:var(--gold);}.result-overlay.active{display:flex;}.r-title.win{color:#40e040;}.r-title.lose{color:#e04040;}.skill-row{background:rgba(0,0,0,.3);border:var(--b-gold);border-radius:8px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}.skill-name{color:var(--gold-light);font-size:12px;font-weight:600;}.skill-lvl{color:rgba(240,230,200,.6);font-size:10px;margin-top:2px;}.skill-up{background:var(--g-wood);border:var(--b-gold);border-radius:6px;padding:4px 10px;cursor:pointer;color:var(--text-cream);font-size:10px;font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;}.section-hdr{color:var(--gold);font-size:11px;text-align:center;letter-spacing:1px;margin-bottom:10px;padding:4px;background:rgba(0,0,0,.2);border-radius:4px;}.active-missions-panel{background:rgba(0,0,0,.25);border:1px solid rgba(200,160,32,.3);border-radius:10px;padding:10px;margin-bottom:14px;}.active-missions-title{color:var(--gold);font-size:11px;letter-spacing:1px;margin-bottom:8px;display:flex;align-items:center;gap:6px;}.active-missions-title::after{content:'';flex:1;height:1px;background:rgba(200,160,32,.3);}.no-missions{color:var(--tc-faint);font-size:11px;text-align:center;padding:8px;}.active-mission-card{background:linear-gradient(135deg,rgba(20,40,15,.9),rgba(10,25,8,.9));border:1px solid #3a6020;border-radius:8px;padding:10px 12px;margin-bottom:8px;position:relative;overflow:hidden;}.active-mission-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(64,200,64,.3),transparent);}.am-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;}.am-icon{font-size:22px;}.am-info{flex:1;}.am-name{color:#80e060;font-size:12px;font-weight:700;}.am-duration{color:rgba(240,230,200,.6);font-size:10px;margin-top:1px;}.am-reward-preview{display:flex;gap:8px;align-items:center;}.am-reward-tag{font-size:10px;color:var(--text-cream);background:rgba(0,0,0,.3);border:1px solid rgba(200,160,32,.3);border-radius:4px;padding:2px 6px;}.mission-progress-wrap{margin-bottom:6px;}.mission-progress-label{display:flex;justify-content:space-between;margin-bottom:3px;}.mpl-left{color:rgba(240,230,200,.7);font-size:10px;}.mpl-right{color:var(--gold-light);font-size:10px;font-weight:600;font-family:monospace;}.mission-progress-track{height:8px;background:rgba(0,0,0,.4);border-radius:4px;border:1px solid rgba(64,160,32,.3);overflow:hidden;}.mission-progress-fill{height:100%;border-radius:4px;transition:width .5s ease;background:linear-gradient(90deg,#1a5c10,#40c020,#80e040);background-size:200% auto;animation:shimmer 2s linear infinite;}.am-cancel{position:absolute;top:8px;right:8px;background:rgba(180,40,40,.2);border:1px solid rgba(180,40,40,.4);border-radius:4px;color:rgba(240,100,100,.7);font-size:10px;padding:2px 6px;cursor:pointer;font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;}.am-cancel:hover{background:rgba(180,40,40,.4);color:#ff8080;}.daily-limit-bar{background:rgba(0,0,0,.2);border:1px solid rgba(200,160,32,.2);border-radius:8px;padding:8px 10px;margin-bottom:12px;}.dlb-label{display:flex;justify-content:space-between;margin-bottom:4px;}.dlb-text{color:rgba(240,230,200,.6);font-size:10px;}.dlb-val{color:var(--gold-light);font-size:10px;font-weight:600;}.dlb-track{height:6px;background:rgba(0,0,0,.4);border-radius:3px;border:1px solid rgba(200,160,32,.2);overflow:hidden;}.dlb-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--gold-dark),var(--gold-light));transition:width .3s;}.mission-cards{display:flex;flex-direction:column;gap:8px;}.mission-card{background:linear-gradient(90deg,rgba(40,25,10,.9),rgba(25,15,5,.9));border:var(--b-gold);border-radius:9px;padding:10px 12px;display:flex;align-items:center;gap:10px;position:relative;transition:all .2s;}.mission-card:hover{border-color:var(--gold);}.mission-card.running{border-color:#3a6020;background:linear-gradient(90deg,rgba(15,35,10,.9),rgba(10,22,5,.9));opacity:.7;pointer-events:none;}.mc-icon{width:48px;height:48px;background:linear-gradient(135deg,rgba(0,60,100,.5),rgba(0,30,60,.5));border:var(--b-gold2);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;}.mc-body{flex:1;}.mc-name{color:var(--gold-light);font-size:12px;font-weight:700;margin-bottom:3px;}.mc-desc{color:rgba(240,230,200,.6);font-size:10px;margin-bottom:5px;line-height:1.4;}.mc-rewards{display:flex;gap:5px;flex-wrap:wrap;}.mc-reward{font-size:10px;color:var(--text-cream);background:rgba(0,0,0,.3);border:1px solid rgba(200,160,32,.25);border-radius:4px;padding:1px 5px;}.mc-actions{display:flex;flex-direction:column;align-items:flex-end;gap:5px;}.time-picker-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:350;align-items:center;justify-content:center;}.time-picker-overlay.active{display:flex;animation:fadeIn .2s ease;}.time-picker-box{background:var(--g-wood-d);border:3px solid var(--gold-dark);border-radius:16px;padding:20px;max-width:320px;width:90%;animation:resultPop .3s ease;}.tp-title{text-align:center;color:var(--gold-light);font-size:14px;font-weight:700;letter-spacing:1px;margin-bottom:4px;}.tp-mission-name{text-align:center;color:var(--text-cream);font-size:13px;margin-bottom:16px;display:flex;align-items:center;justify-content:center;gap:6px;}.tp-label{color:rgba(240,230,200,.7);font-size:11px;margin-bottom:10px;text-align:center;}.time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px;}.time-opt{background:var(--g-wood);border:var(--b-gold2);border-radius:8px;padding:10px 6px;cursor:pointer;text-align:center;transition:all .2s;}.time-opt:hover{background:var(--g-wood-h);border-color:var(--gold);}.time-opt.selected{background:linear-gradient(180deg,var(--gold-dark),#6b4800);border-color:var(--gold-light);}.time-opt .to-h{color:var(--gold-light);font-size:15px;font-weight:700;}.time-opt .to-reward{color:rgba(240,230,200,.7);font-size:10px;margin-top:2px;}.time-opt .to-limited{color:#e06040;font-size:9px;margin-top:1px;}.tp-btns{display:flex;gap:8px;}.tp-btn-cancel{flex:1;background:rgba(0,0,0,.3);border:1px solid rgba(200,160,32,.3);border-radius:8px;color:rgba(240,230,200,.6);font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:12px;padding:9px;cursor:pointer;}.tp-btn-start{flex:2;background:linear-gradient(180deg,#2a5c1a,#1a3c0a);border:1px solid #40a020;border-radius:8px;color:#80e040;font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:13px;font-weight:700;padding:9px;cursor:pointer;transition:all .2s;}.tp-btn-start:hover{background:linear-gradient(180deg,#3a7c2a,#2a5c1a);box-shadow:0 0 10px rgba(64,160,32,.3);}.mission-complete-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:450;align-items:center;justify-content:center;}.mission-complete-overlay.active{display:flex;}.mc-box{background:linear-gradient(180deg,#1a3010,#0a1a08);border:3px solid #40a020;border-radius:16px;padding:24px;text-align:center;max-width:320px;width:90%;animation:resultPop .4s ease;}.mc-complete-emoji{font-size:60px;animation:rewardBounce 1s ease infinite;margin-bottom:8px;}.mc-complete-title{color:#80e040;font-size:22px;font-weight:700;letter-spacing:2px;margin-bottom:6px;}.mc-complete-mission{color:rgba(240,230,200,.8);font-size:13px;margin-bottom:14px;}.mc-complete-rewards{background:rgba(0,0,0,.3);border:1px solid #3a6020;border-radius:8px;padding:12px;margin-bottom:16px;}.mc-reward-row{display:flex;align-items:center;justify-content:space-between;padding:4px 0;border-bottom:1px solid rgba(64,160,32,.15);}.mc-reward-row:last-child{border:none;}.mc-reward-label{color:rgba(240,230,200,.7);font-size:12px;}.mc-reward-value{color:#80e040;font-size:13px;font-weight:700;}.btn-mc-close{background:linear-gradient(180deg,#2a5c1a,#1a3c0a);border:2px solid #40a020;border-radius:8px;color:#80e040;font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:13px;padding:10px 30px;cursor:pointer;}.toast.show{opacity:1;transform:translateX(-50%) translateY(0);}::-webkit-scrollbar{width:4px;}::-webkit-scrollbar-track{background:var(--wood-dark);}::-webkit-scrollbar-thumb{background:var(--gold-dark);border-radius:2px;}.msg-list{display:flex;flex-direction:column;gap:6px;}.msg-item{background:linear-gradient(90deg,rgba(44,26,14,.95),rgba(30,15,5,.95));border:var(--b-gold);border-radius:9px;padding:10px 12px;cursor:pointer;transition:all .2s;position:relative;}.msg-item:hover{border-color:var(--gold);background:linear-gradient(90deg,rgba(70,40,20,.95),rgba(44,26,14,.95));}.msg-item.unread{border-left:3px solid var(--gold-light);}.msg-item.unread::before{content:'';position:absolute;top:10px;right:10px;width:7px;height:7px;background:var(--gold-light);border-radius:50%;box-shadow:0 0 5px var(--gold);}.msg-header{display:flex;align-items:center;gap:8px;margin-bottom:4px;}.msg-avatar{width:28px;height:28px;border-radius:50%;background:var(--g-wood-d2);border:var(--b-gold);display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;}.msg-from{color:var(--gold-light);font-size:12px;font-weight:700;flex:1;}.msg-time{color:rgba(240,230,200,.45);font-size:10px;}.msg-preview{color:rgba(240,230,200,.7);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.msg-full{display:none;position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:350;align-items:flex-end;justify-content:center;}.msg-full.active{display:flex;animation:fadeIn .2s ease;}.msg-full-panel{width:100%;max-width:520px;background:var(--g-wood-d);border-top:3px solid var(--gold-dark);border-radius:16px 16px 0 0;padding:14px 12px 28px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease;}.msg-full-header{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid rgba(200,160,32,.3);}.msg-full-avatar{width:44px;height:44px;border-radius:50%;background:var(--g-wood-d2);border:var(--b-gold2);display:flex;align-items:center;justify-content:center;font-size:22px;}.msg-full-name{color:var(--gold-light);font-size:14px;font-weight:700;}.msg-full-sub{color:rgba(240,230,200,.5);font-size:10px;margin-top:2px;}.msg-body{background:rgba(0,0,0,.3);border:var(--b-gold);border-radius:8px;padding:12px;color:var(--text-cream);font-size:12px;line-height:1.8;margin-bottom:12px;}.msg-reply-area{background:rgba(0,0,0,.3);border:var(--b-gold);border-radius:8px;padding:10px;}.msg-reply-input{width:100%;background:transparent;border:none;outline:none;color:var(--text-cream);font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:11px;resize:none;min-height:48px;}.msg-reply-row{display:flex;justify-content:flex-end;margin-top:8px;gap:8px;}.report-card{background:linear-gradient(135deg,rgba(20,10,5,.95),rgba(40,20,8,.95));border:var(--b-gold);border-radius:10px;overflow:hidden;margin-bottom:8px;}.report-header{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;transition:background .2s;}.report-header:hover{background:rgba(255,255,255,.04);}.report-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;}.report-icon.win{background:rgba(40,100,20,.4);border:1px solid #40a020;}.report-icon.lose{background:rgba(100,20,20,.4);border:1px solid #a04020;}.report-info{flex:1;}.report-title{font-size:12px;font-weight:700;}.report-title.win{color:#80e040;}.report-title.lose{color:#e06040;}.report-sub{color:var(--tc-dim);font-size:10px;margin-top:2px;}.report-gold{font-size:11px;font-weight:600;text-align:right;}.report-gold.pos{color:#e8c040;}.report-gold.neg{color:#e06040;}.report-body{display:none;padding:10px 12px;border-top:1px solid rgba(200,160,32,.15);animation:fadeIn .2s ease;}.report-body.open{display:block;}.report-stat-row{display:flex;justify-content:space-between;font-size:11px;color:rgba(240,230,200,.8);padding:2px 0;}.report-stat-row b{color:var(--gold-light);}.report-battle-log{background:rgba(0,0,0,.35);border-radius:6px;padding:8px 10px;font-size:10px;color:rgba(240,230,200,.7);line-height:2;margin-top:8px;}.report-log-line{display:flex;gap:6px;}.report-log-line .log-turn{color:rgba(200,160,32,.5);min-width:30px;}.report-log-line .log-atk{color:#e08040;}.report-log-line .log-def{color:#6090e0;}.compose-btn{width:100%;background:linear-gradient(180deg,rgba(30,55,15,.85),rgba(15,35,8,.85));border:1px solid #3a7020;border-radius:8px;color:#80d040;font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:12px;font-weight:600;padding:10px;cursor:pointer;margin-bottom:12px;transition:all .2s;}.compose-btn:hover{background:linear-gradient(180deg,rgba(50,80,25,.85),rgba(30,55,15,.85));box-shadow:0 0 10px rgba(80,160,40,.25);}.empty-msg{text-align:center;padding:28px 20px;color:rgba(240,230,200,.35);font-size:12px;}.compose-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:350;align-items:flex-end;justify-content:center;}.compose-overlay.active{display:flex;animation:fadeIn .2s ease;}.compose-panel{width:100%;max-width:520px;background:var(--g-wood-d);border-top:3px solid var(--gold-dark);border-radius:16px 16px 0 0;padding:14px 12px 28px;animation:slideUp .3s ease;}.compose-field{background:rgba(0,0,0,.35);border:var(--b-gold);border-radius:7px;padding:8px 10px;margin-bottom:8px;}.compose-field input,.compose-field textarea{width:100%;background:transparent;border:none;outline:none;color:var(--text-cream);font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:12px;}.compose-field label{display:block;color:rgba(240,230,200,.5);font-size:10px;margin-bottom:4px;}.compose-field textarea{resize:none;min-height:80px;line-height:1.7;}.msg-filter-row{display:flex;gap:6px;margin-bottom:12px;}.msg-filter-btn{flex:1;background:rgba(0,0,0,.3);border:var(--b-gold);border-radius:7px;padding:7px 4px;cursor:pointer;color:rgba(240,230,200,.6);font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:11px;text-align:center;transition:all .2s;}.msg-filter-btn.active{background:rgba(200,160,32,.2);color:var(--gold-light);border-color:var(--gold);}.msg-count-badge{display:inline-block;background:#e03030;color:#fff;font-size:9px;padding:1px 5px;border-radius:8px;margin-left:4px;}@keyframes monsterShake{0%,100%{transform:translateX(0) rotate(0deg);}25%{transform:translateX(-5px) rotate(-2deg);}75%{transform:translateX(5px) rotate(2deg);}}@keyframes fogLift{from{opacity:1;}to{opacity:0;}}@keyframes shipBob{0%,100%{transform:translateY(0);}50%{transform:translateY(-3px);}}@keyframes reloadSpin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}@keyframes attackFlash{0%,100%{opacity:1;}50%{opacity:.25;}}.map-size-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px;}.ls-info{flex:1;}.log-line-monster{color:#ff8050;}.log-line-player{color:#60d030;}.log-line-system{color:var(--gold);font-weight:600;}
.item-row{display:flex;align-items:center;gap:8px;padding:8px 4px;border-bottom:1px solid rgba(200,160,32,.15);}
.item-row:last-child{border-bottom:none;}
.ir-icon{font-size:24px;flex-shrink:0;width:32px;text-align:center;}
.ir-info{flex:1;}.ir-info b{display:block;color:var(--gold-light);font-size:12px;}
.ir-info span{color:var(--tc-dim);font-size:10px;}
.ir-price{color:#80e040;font-size:11px;font-weight:700;white-space:nowrap;}
.tab-row{display:flex;gap:6px;margin-bottom:10px;}
.sc-list{display:flex;flex-direction:column;gap:12px;}
.sc-card{background:linear-gradient(180deg,rgba(55,30,10,.95),rgba(25,12,3,.98));border:1px solid var(--gold-dark);border-radius:12px;overflow:hidden;margin-bottom:12px;}
.sc-top{display:flex;gap:12px;padding:12px 12px 8px;}
.sc-img{width:80px;height:80px;background:rgba(0,0,0,.3);border:2px solid var(--gold-dark);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:44px;flex-shrink:0;overflow:hidden;}.sc-img img{width:100%;height:100%;object-fit:cover;border-radius:8px;}
.sc-head{flex:1;}
.sc-name{color:var(--gold-light);font-size:14px;font-weight:700;margin-bottom:2px;}
.sc-class{display:inline-block;background:rgba(200,160,32,.18);border:1px solid var(--gold-dark);border-radius:6px;padding:1px 8px;color:var(--gold);font-size:10px;margin-bottom:5px;}
.sc-desc{color:rgba(240,230,200,.6);font-size:10px;line-height:1.5;}
.sc-stats{display:grid;grid-template-columns:1fr;gap:0;padding:0 12px 6px;}
.sc-row{display:flex;justify-content:space-between;align-items:center;padding:3px 0;border-bottom:1px solid rgba(200,160,32,.1);}
.sc-sname{color:rgba(240,230,200,.65);font-size:10px;}
.sc-sval{color:var(--gold-light);font-size:11px;font-weight:700;}
.sc-footer{padding:8px 12px;background:rgba(0,0,0,.3);display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-top:1px solid rgba(200,160,32,.15);}
.sc-price-block{display:flex;align-items:center;gap:5px;flex:1;}
.sc-price-label{color:rgba(240,230,200,.55);font-size:11px;}
.sc-price-val{color:#e8c040;font-size:12px;font-weight:700;}
.sc-lvl{color:#e06040;font-size:10px;flex-basis:100%;order:3;}
.weapon-select-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.8);z-index:450;align-items:flex-end;justify-content:center;}.weapon-select-overlay.active{display:flex;}
/* ── Page navigation system ── */
.game-page { display:none; animation:fadeIn .2s ease;   background: var(--bg-dark, #1a0f00);
}
.game-page.active { display:flex; flex-direction:column; flex:1; min-height:0; background:linear-gradient(180deg,rgba(44,26,14,.97) 0%,rgba(28,14,6,.99) 100%); }
#page-home.active { display:flex; flex-direction:column; flex:1; }
.page-header {
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 12px 0; margin-bottom:10px; flex-shrink:0;
}
.page-back-btn{border-radius:8px;font-family:'Palatino Linotype','Book Antiqua',Palatino,serif;font-size:12px;font-weight:600;padding:7px 14px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:4px;}

.page-title {
  color:var(--gold-light); font-size:14px; font-weight:700;
  letter-spacing:1px; text-align:center;
}
.page-body { padding:0 12px 24px; overflow-y:auto; flex:1; min-height:0; -webkit-overflow-scrolling:touch; }

/* keep home page menu layout */
#page-home .menu-grid { margin-bottom:8px; }
#page-home .bottom-links { padding:8px 0 4px; }
/* sub-pages scrollable */
#page-earn .page-body,
#page-shipyard .page-body { padding-bottom:40px; }

.raid-intro{display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,rgba(80,30,10,.4),rgba(40,15,5,.4));border:var(--b-gold2);border-radius:10px;padding:12px;margin-bottom:12px;}
.raid-intro-icon{font-size:36px;flex-shrink:0;}
.raid-intro-text{color:rgba(240,230,200,.75);font-size:11px;line-height:1.6;}
.raid-chances{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:14px;}
.raid-chance-item{background:rgba(0,0,0,.3);border:var(--b-gold);border-radius:7px;padding:7px 10px;color:var(--text-cream);font-size:11px;display:flex;align-items:center;gap:6px;}
.raid-chance-item b{color:#80e040;}
.raid-ship-list{display:flex;flex-direction:column;gap:8px;}
.raid-ship-card{background:linear-gradient(90deg,rgba(60,20,5,.9),rgba(30,10,3,.95));border:var(--b-gold2);border-radius:10px;padding:10px 12px;display:flex;align-items:center;gap:10px;cursor:pointer;transition:all .2s;}
.raid-ship-card:hover{border-color:var(--gold);transform:translateX(3px);box-shadow:0 4px 12px rgba(0,0,0,.4);}
.raid-ship-card.hard{border-color:rgba(200,60,30,.5);}
.raid-ship-img{font-size:36px;flex-shrink:0;width:50px;text-align:center;}
.raid-ship-info{flex:1;}
.raid-ship-name{color:var(--gold-light);font-size:12px;font-weight:700;margin-bottom:3px;}
.raid-ship-stats{color:rgba(240,230,200,.6);font-size:10px;display:flex;gap:8px;flex-wrap:wrap;margin-bottom:5px;}
.raid-ship-reward{display:flex;gap:6px;flex-wrap:wrap;}
.raid-reward-tag{font-size:10px;background:rgba(0,0,0,.3);border:1px solid rgba(200,160,32,.25);border-radius:4px;padding:1px 6px;color:var(--text-cream);}
.raid-win-chance{text-align:right;flex-shrink:0;}
.rwc-label{color:rgba(240,230,200,.45);font-size:9px;margin-bottom:2px;}
.rwc-val{font-size:14px;font-weight:700;}
.rwc-val.easy{color:#60d030;}
.rwc-val.med{color:#e8a020;}
.rwc-val.hard{color:#e04040;}
.raid-loot-preview{background:rgba(0,0,0,.25);border:1px solid rgba(200,160,32,.2);border-radius:8px;padding:8px 10px;margin-bottom:10px;}
.rlp-title{color:var(--gold);font-size:10px;margin-bottom:6px;}
#raidLootItems{display:flex;gap:5px;flex-wrap:wrap;}
.rlp-item{font-size:10px;background:rgba(0,0,0,.3);border:1px solid rgba(200,160,32,.2);border-radius:4px;padding:2px 7px;color:var(--text-cream);}
.btn-raid-sec{flex:1;background:linear-gradient(180deg,#0a2a3a,#051520);border:2px solid #4ab0d8;border-radius:8px;color:#80d8ff;font-family:'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif;font-size:13px;font-weight:700;letter-spacing:1.5px;padding:12px;cursor:pointer;transition:all .2s;width:100%;}.btn-raid-sec:hover{box-shadow:0 0 15px rgba(74,176,216,.4);border-color:#80d8ff;}
/* ── Job bar ── */
.job-bar-section{background:var(--wood-mid);border-top:var(--b-gold2);border-bottom:var(--b-gold2);padding:4px 12px;display:flex;align-items:center;gap:8px;flex-shrink:0;}
.job-bar-label{color:var(--text-cream);font-size:10px;}
.job-bar-fill{height:100%;background:linear-gradient(90deg,#206020,#40c040);border-radius:7px;}
.job-bar-time{color:rgba(200,240,200,.6);font-size:10px;white-space:nowrap;}
/* ── Job picker ── */
.jp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;}
.time-opt{background:rgba(0,0,0,.35);border:var(--b-gold);border-radius:8px;padding:8px 4px;text-align:center;cursor:pointer;transition:all .2s;}
.time-opt:hover{border-color:var(--gold);background:rgba(0,0,0,.5);}
.time-opt.selected{border-color:#60d030;background:rgba(20,60,10,.6);box-shadow:0 0 10px rgba(60,200,30,.3);}
.to-h{color:var(--gold-light);font-size:14px;font-weight:700;margin-bottom:3px;}
.to-reward{color:rgba(240,230,200,.65);font-size:9px;line-height:1.5;}
/* ── Active mission card ── */
.active-mission-card{background:linear-gradient(135deg,rgba(20,60,10,.8),rgba(10,30,5,.9));border:1px solid rgba(60,180,60,.4);border-radius:10px;padding:10px 12px;margin-bottom:12px;}
.am-header{display:flex;align-items:center;gap:10px;}
.am-icon{font-size:28px;flex-shrink:0;}
.am-info{flex:1;}
.am-name{color:#80e080;font-size:12px;font-weight:700;}
.am-duration{color:rgba(200,240,200,.6);font-size:10px;margin-top:2px;}
.am-cancel{background:rgba(120,20,20,.6);border:1px solid rgba(200,60,60,.4);border-radius:6px;color:#ff8080;font-size:10px;padding:4px 10px;cursor:pointer;}
.am-cancel:hover{background:rgba(160,30,30,.7);}
/* ── Shop item cards ── */
.shop-item-list{display:flex;flex-direction:column;gap:8px;}
.shop-item-card{background:linear-gradient(90deg,rgba(40,15,5,.9),rgba(20,8,2,.95));border:var(--b-gold2);border-radius:10px;padding:10px;display:flex;gap:10px;align-items:flex-start;}
.sic-img{font-size:34px;width:44px;text-align:center;flex-shrink:0;padding-top:2px;}
.sic-body{flex:1;}.sic-info{flex:1;}
.sic-name{color:var(--gold-light);font-size:12px;font-weight:700;margin-bottom:3px;}
.sic-desc{color:rgba(240,230,200,.6);font-size:10px;line-height:1.5;margin-bottom:4px;}
.sic-stock{color:rgba(240,230,200,.5);font-size:10px;}
.sic-qty{color:#80e040;font-weight:700;}
.sic-actions{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0;min-width:90px;}
.sic-price{color:var(--gold);font-size:11px;font-weight:700;white-space:nowrap;}
.sic-qty-row{display:flex;gap:4px;align-items:center;}
.sic-qty-input{width:38px;background:rgba(0,0,0,.4);border:1px solid rgba(200,160,32,.3);border-radius:5px;color:var(--text-cream);font-size:11px;text-align:center;padding:3px 2px;}
.btn-buy{background:linear-gradient(180deg,#1a5a10,#0d3508);border:1px solid #3a9020;border-radius:6px;color:#80e040;font-size:10px;font-weight:700;padding:5px 8px;cursor:pointer;white-space:nowrap;}
.btn-buy:hover{background:linear-gradient(180deg,#246e14,#164009);border-color:#60c040;}
.btn-sell{background:linear-gradient(180deg,rgba(80,30,10,.8),rgba(40,15,5,.8));border:1px solid rgba(180,100,20,.4);border-radius:6px;color:rgba(240,180,60,.8);font-size:10px;padding:4px 8px;cursor:pointer;width:100%;}
.btn-sell:hover{border-color:var(--gold);}
/* ── Cargo/Inventory ── */
.cargo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.cargo-item{background:rgba(0,0,0,.3);border:var(--b-gold);border-radius:8px;padding:8px 6px;text-align:center;}
.cargo-icon{font-size:28px;margin-bottom:4px;}
.cargo-name{color:rgba(240,230,200,.8);font-size:9px;line-height:1.3;}
.cargo-qty{color:#80e040;font-size:11px;font-weight:700;margin-top:3px;}
.empty-msg{text-align:center;color:rgba(240,230,200,.35);font-size:12px;padding:30px 0;}
/* ── Skill tree ── */
.skill-row{display:flex;justify-content:space-between;align-items:center;background:rgba(0,0,0,.25);border:var(--b-gold);border-radius:8px;padding:10px 12px;margin-bottom:7px;}
.skill-name{color:var(--gold-light);font-size:12px;font-weight:700;margin-bottom:3px;}
.skill-lvl{color:rgba(240,230,200,.55);font-size:10px;}
.skill-up{background:linear-gradient(180deg,#1a4a10,#0d2a08);border:1px solid #3a7020;border-radius:6px;color:#80e040;font-size:10px;padding:5px 10px;cursor:pointer;}
.skill-up:hover{border-color:#60c040;}
/* ── Skill point badge on admiral btn ── */
.btn-badge.green{background:#1a6010;border-color:#3a9020;color:#80e040;}
/* ── Progress bar hint text fix ── */
#xpLabel{color:var(--text-cream);font-size:10px;min-width:auto;white-space:nowrap;}

/* ── Crew bar ── */
.admiral-ship-card{background:linear-gradient(135deg,rgba(40,15,5,.85),rgba(20,8,2,.95));border:var(--b-gold2);border-radius:12px;padding:14px;}
.asc-top{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.asc-icon{font-size:52px;line-height:1;}
.asc-info{}
.asc-name{color:var(--gold-light);font-size:15px;font-weight:700;margin-bottom:3px;}
.asc-class{color:rgba(240,230,200,.5);font-size:10px;}
.asc-hp-bar{margin-bottom:4px;}
.asc-hp-label{color:rgba(240,230,200,.7);font-size:10px;margin-bottom:4px;}
.asc-hp-track{height:10px;background:rgba(0,0,0,.4);border-radius:5px;overflow:hidden;}
.asc-hp-fill{height:100%;background:linear-gradient(90deg,#8b0000,#e03030);border-radius:5px;transition:width .4s;}
display:flex;align-items:center;gap:8px;background:rgba(0,0,0,.25);border:var(--b-gold);border-radius:8px;padding:8px 12px;margin-bottom:12px;flex-wrap:wrap;}
.ccb-label{color:var(--gold);font-size:11px;white-space:nowrap;}
.ccb-track{flex:1;height:8px;background:rgba(0,0,0,.4);border-radius:4px;overflow:hidden;min-width:60px;}
.ccb-fill{height:100%;background:linear-gradient(90deg,#1a4ab0,#4080f0);border-radius:4px;transition:width .4s;}
/* ── Shipyard owned badge ── */
.sc-owned-badge{background:linear-gradient(135deg,rgba(20,60,10,.9),rgba(10,35,5,.9));border:1px solid #3a9020;border-radius:8px;color:#60d030;font-size:11px;font-weight:700;padding:8px 14px;text-align:center;width:100%;}
.sc-buy-btn{background:linear-gradient(180deg,var(--wood-light),var(--wood-mid));border:var(--b-gold2);border-radius:8px;color:var(--text-cream);font-size:12px;font-weight:700;padding:10px 16px;cursor:pointer;width:100%;transition:all .2s;}
.sc-buy-btn:hover{border-color:var(--gold);background:linear-gradient(180deg,var(--wood-bright),var(--wood-light));}
.sc-action-area{width:100%;margin-top:6px;}
/* ── Raid counter ── */
#raidCountEl{color:#e8a020;font-weight:700;}

.sc-dual-price{display:flex;align-items:center;gap:6px;margin-top:4px;flex-wrap:wrap;}
.sc-dual-opt{padding:4px 10px;border-radius:6px;border:1px solid rgba(200,160,32,.25);color:rgba(240,230,200,.5);font-size:11px;cursor:pointer;transition:all .2s;white-space:nowrap;}
.sc-dual-opt:hover{border-color:var(--gold);color:var(--text-cream);}
.sc-dual-opt.active{border-color:var(--gold);color:var(--gold-light);background:rgba(0,0,0,.3);font-weight:700;}
.sc-dual-sep{color:rgba(240,230,200,.3);font-size:11px;}

/* CD inline */
.cd-ready{color:#60d030;font-weight:700;}
.cd-wait{color:#e04040;font-weight:700;}
.cd-count{color:var(--gold-light);font-weight:700;}

/* ═══ CARPENTER ═══ */







.carp-cards{display:flex;flex-direction:column;gap:12px;}
.carp-card{background:rgba(30,18,8,.7);border:1px solid rgba(200,160,32,.25);border-radius:12px;
  padding:12px 14px;display:flex;flex-direction:column;gap:10px;}
.carp-top{display:flex;gap:12px;align-items:flex-start;}
.carp-icon{font-size:32px;min-width:40px;text-align:center;}
.carp-info{flex:1;}
.carp-name{color:var(--gold-light);font-size:13px;font-weight:700;margin-bottom:2px;}
.carp-desc{color:rgba(240,230,200,.55);font-size:10px;line-height:1.4;}
.carp-bonus{color:#60d890;font-size:10px;margin-top:3px;}

.carp-installed-row{display:flex;align-items:center;justify-content:space-between;
  background:rgba(0,0,0,.2);border-radius:6px;padding:5px 10px;margin:2px 0;}
.carp-installed-lbl{font-size:10px;color:rgba(240,230,200,.55);}
.carp-installed-val{font-size:11px;font-weight:700;color:var(--gold-light);}

.carp-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.carp-price-block{flex:1;}
.carp-price-val{color:var(--gold-light);font-size:11px;font-weight:700;}
.carp-dual-price{display:flex;align-items:center;gap:4px;flex-wrap:wrap;}

/* max level badge */
.carp-maxed{text-align:center;color:#e8c040;font-size:11px;font-weight:700;
  padding:6px;border:1px solid rgba(232,192,64,.3);border-radius:6px;
  background:rgba(232,192,64,.08);}

/* ══ MAIL SYSTEM ══ */
.msg-filter-row{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:10px;}
.msg-filter-btn{flex:1;min-width:60px;background:rgba(0,0,0,.3);border:1px solid rgba(200,160,32,.25);
  border-radius:7px;color:rgba(240,230,200,.65);font-size:10px;padding:6px 4px;cursor:pointer;text-align:center;}
.msg-filter-btn.active{background:rgba(60,40,0,.6);border-color:var(--gold);color:var(--gold-light);}
.mail-tab-panel{display:flex;flex-direction:column;gap:7px;min-height:20px;}
.mail-item{background:rgba(30,18,8,.7);border:1px solid rgba(200,160,32,.2);border-radius:9px;
  padding:10px 12px;cursor:pointer;transition:border-color .2s;}
.mail-item:hover{border-color:var(--gold);}
.mail-item.unread{border-left:3px solid #e8c040;}
.mi-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3px;padding-right:32px;}
.mi-from{color:var(--gold-light);font-size:11px;font-weight:700;}
.mi-date{color:rgba(240,230,200,.4);font-size:9px;}
.mi-subj{color:rgba(240,230,200,.8);font-size:11px;font-weight:600;margin-bottom:2px;}
.mi-preview{color:rgba(240,230,200,.5);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mail-empty{text-align:center;color:rgba(240,230,200,.35);font-size:12px;padding:30px 0;}
.compose-form{display:flex;flex-direction:column;gap:10px;}
.compose-field{display:flex;flex-direction:column;gap:4px;}
.compose-label{color:var(--gold-light);font-size:11px;font-weight:600;}
.compose-input{background:rgba(0,0,0,.4);border:1px solid rgba(200,160,32,.3);border-radius:7px;
  color:var(--text-cream);font-size:12px;padding:8px 10px;outline:none;font-family:inherit;width:100%;box-sizing:border-box;}
.compose-input:focus{border-color:var(--gold);}
.compose-textarea{background:rgba(0,0,0,.4);border:1px solid rgba(200,160,32,.3);border-radius:7px;
  color:var(--text-cream);font-size:12px;padding:8px 10px;outline:none;font-family:inherit;
  width:100%;box-sizing:border-box;resize:vertical;}
.compose-textarea:focus{border-color:var(--gold);}
.mail-view-card{background:rgba(0,0,0,.3);border:1px solid rgba(200,160,32,.25);border-radius:10px;padding:14px;}
.mv-row{display:flex;gap:8px;margin-bottom:6px;align-items:baseline;}
.mv-lbl{color:rgba(240,230,200,.5);font-size:10px;min-width:40px;}
.mv-val{color:var(--gold-light);font-size:11px;}
.mv-body{margin-top:12px;color:var(--text-cream);font-size:12px;line-height:1.8;white-space:pre-wrap;word-break:break-word;background:rgba(0,0,0,.2);border-radius:7px;padding:10px;}
.player-link{cursor:pointer;text-decoration:underline;color:#80d0ff !important;}
.player-link:hover{color:#b0e8ff !important;}
.notify-item{background:rgba(20,40,10,.6);border:1px solid rgba(60,180,60,.25);border-radius:9px;
  padding:10px 12px;}
.ni-badge{font-size:10px;color:#80e080;font-weight:700;margin-bottom:3px;}
.ni-text{color:rgba(240,230,200,.8);font-size:11px;line-height:1.5;}

/* ══ BULLETIN BOARD ══ */
.board-list{display:flex;flex-direction:column;gap:8px;}
.board-card{background:rgba(30,18,8,.7);border:1px solid rgba(200,160,32,.2);border-radius:10px;padding:12px;}
.bc-cat{font-size:10px;color:rgba(240,230,200,.5);margin-bottom:4px;}
.bc-title{color:var(--gold-light);font-size:12px;font-weight:700;margin-bottom:4px;}
.bc-body{color:rgba(240,230,200,.75);font-size:11px;line-height:1.5;margin-bottom:6px;}
.bc-footer{display:flex;justify-content:space-between;align-items:center;}
.bc-author{color:#80d0ff;font-size:10px;cursor:pointer;text-decoration:underline;}
.bc-date{color:rgba(240,230,200,.35);font-size:9px;}

/* ══ CHAT ══ */
.chat-page-body{padding-bottom:0 !important;display:flex;flex-direction:column;gap:0;flex:1;}
.chat-box{flex:1;background:rgba(0,0,0,.3);border:1px solid rgba(200,160,32,.2);border-radius:8px;
  padding:10px;overflow-y:auto;min-height:160px;max-height:380px;display:flex;flex-direction:column;gap:5px;margin-bottom:8px;}
.chat-msg{font-size:11px;line-height:1.5;}
.chat-nick{font-weight:700;cursor:pointer;text-decoration:underline;}
.chat-nick:hover{opacity:.8;}
.chat-text{color:var(--text-cream);margin-left:4px;}
.chat-time{color:rgba(240,230,200,.3);font-size:9px;margin-left:6px;}
.chat-input-row{display:flex;gap:6px;margin-bottom:8px;}
.chat-input-field{flex:1;background:rgba(0,0,0,.4);border:1px solid rgba(200,160,32,.3);border-radius:7px;
  color:var(--text-cream);font-size:12px;padding:8px 10px;outline:none;font-family:inherit;}
.chat-input-field:focus{border-color:var(--gold);}
.chat-send-btn{background:linear-gradient(180deg,#b87a1a,#7a4a0a);border:1px solid var(--gold-dark);
  border-radius:7px;color:var(--gold-light);font-size:14px;padding:8px 14px;cursor:pointer;}
.chat-send-btn:hover{background:linear-gradient(180deg,#d09020,#9a5a10);}
.compose-btn{background:linear-gradient(180deg,rgba(60,40,0,.8),rgba(30,20,0,.9));
  border:1px solid rgba(200,160,32,.4);border-radius:8px;color:var(--gold-light);
  font-size:12px;font-weight:600;padding:10px;cursor:pointer;text-align:center;}
.compose-btn:hover{border-color:var(--gold);}


/* ══════════════ BROTHERHOOD v2 ══════════════ */
.guild-inner-title{color:var(--gold-light);font-size:14px;font-weight:700;}
.guild-inner-sub{color:rgba(240,230,200,.5);font-size:9px;margin-top:1px;}
.guild-leave-menu-btn .btn-icon{filter:hue-rotate(180deg) saturate(.6);}

/* Flag picker */
.flag-picker{display:flex;flex-wrap:wrap;gap:6px;padding:8px;background:rgba(0,0,0,.2);border:var(--b-gold2);border-radius:8px;}
.flag-opt{font-size:22px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer;border:2px solid transparent;transition:all .2s;}
.flag-opt:hover{background:rgba(255,180,0,.15);}
.flag-opt.selected{background:rgba(255,180,0,.2);border-color:var(--gold);}

/* War map */
.war-map-area{flex:1;position:relative;min-height:320px;background:linear-gradient(180deg,#0a1628 0%,#0d2240 40%,#103050 70%,#0a2030 85%,#1a3a20 92%,#2a5030 100%);overflow:hidden;user-select:none;}
.war-map-ocean{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 60%,rgba(0,80,140,.3),transparent 70%);}
.war-map-island{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:180px;height:60px;background:linear-gradient(180deg,#3a6030 0%,#2a4820 60%,#1e3018 100%);border-radius:60% 60% 0 0;box-shadow:0 -4px 20px rgba(0,0,0,.5);}
.war-map-island::before{content:'🏰';position:absolute;top:-28px;left:50%;transform:translateX(-50%);font-size:28px;}
.war-ship{position:absolute;font-size:22px;cursor:default;transition:all .3s;);width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid transparent;}
.war-ship.attacker{border-color:rgba(60,200,60,.5);background:rgba(0,80,0,.3);}
.war-ship.defender{border-color:rgba(200,60,60,.5);background:rgba(80,0,0,.3);}
.war-ship.fort{font-size:28px;border-color:rgba(255,150,0,.6);background:rgba(80,40,0,.4);}
.war-ship.defeated{opacity:.3;filter:grayscale(1);pointer-events:none;}
.war-ship.clickable{cursor:pointer;animation:shipPulse 2s infinite;}
.war-ship.clickable:hover{transform:scale(1.2);z-index:10;}
@keyframes shipPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,80,80,.4);}50%{box-shadow:0 0 0 8px rgba(255,80,80,0);}}
.war-ship-name{position:absolute;top:-18px;left:50%;transform:translateX(-50%);font-size:9px;color:rgba(240,230,200,.7);white-space:nowrap;pointer-events:none;}
.war-map-vs{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:16px;font-weight:700;color:rgba(255,100,100,.5);text-shadow:0 0 10px rgba(255,0,0,.3);pointer-events:none;}
.war-map-controls{background:var(--wood-dark);border-top:2px solid var(--gold-dark);padding:10px 12px;flex-shrink:0;}
.war-phase-badge{display:inline-block;padding:3px 10px;border-radius:10px;font-size:10px;font-weight:700;margin-bottom:8px;}
.phase-prep{background:rgba(255,200,0,.15);color:#ffd060;border:1px solid rgba(255,200,0,.3);}
.phase-battle{background:rgba(255,60,60,.15);color:#ff8080;border:1px solid rgba(255,60,60,.3);}
.phase-done{background:rgba(60,200,60,.15);color:#60e060;border:1px solid rgba(60,200,60,.3);}
.war-participants-wrap{margin-bottom:8px;}
.war-participant-chip{display:inline-block;background:rgba(255,180,0,.12);border:1px solid rgba(255,180,0,.25);border-radius:10px;padding:1px 7px;font-size:9px;color:var(--gold-light);margin:2px;}
.war-application-row{display:flex;align-items:center;justify-content:space-between;background:rgba(0,0,0,.2);border:var(--b-gold2);border-radius:6px;padding:5px 8px;margin-bottom:4px;font-size:10px;color:var(--text-cream);}

/* War battle screen */
.war-battle-target{display:flex;align-items:center;gap:12px;background:rgba(80,0,0,.3);border:1px solid rgba(200,60,60,.4);border-radius:10px;padding:12px;margin-bottom:10px;}
.war-battle-icon{font-size:36px;}
.war-battle-hp-bar{height:8px;background:rgba(255,255,255,.1);border-radius:4px;margin-top:6px;}
.war-battle-hp-fill{height:8px;background:linear-gradient(90deg,#e04040,#ff6060);border-radius:4px;transition:width .3s;}
.war-btn-next{background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:7px;color:rgba(240,230,200,.6);font-size:10px;padding:8px 14px;cursor:pointer;}

/* Guild overview inline */
.guild-overview-header{background:linear-gradient(135deg,rgba(60,30,0,.8),rgba(30,15,0,.9));border:var(--b-gold);border-radius:12px;padding:12px 14px;display:flex;align-items:center;gap:12px;}
.guild-badge{width:44px;height:44px;background:var(--wood-mid);border:2px solid var(--gold);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;}
.guild-overview-name{color:var(--gold-light);font-size:13px;font-weight:700;}
.guild-overview-tag{color:var(--gold);font-size:10px;margin:1px 0;}
.guild-overview-desc{color:rgba(240,230,200,.55);font-size:9px;line-height:1.4;}

/* Settings row in overview */
.guild-settings-row{display:flex;gap:6px;margin-top:8px;}
.guild-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0;}
.guild-stat-box{background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:8px;padding:8px;text-align:center;}
.guild-stat-val{color:var(--gold);font-size:15px;font-weight:700;}
.guild-stat-lbl{color:rgba(240,230,200,.5);font-size:9px;margin-top:2px;}

/* Members */
.guild-member-row{background:rgba(0,0,0,.25);border:var(--b-gold2);border-radius:8px;padding:8px 10px;margin-bottom:6px;display:flex;align-items:center;gap:8px;}
.guild-member-avatar{font-size:20px;width:30px;text-align:center;flex-shrink:0;}
.guild-member-info{flex:1;min-width:0;}
.guild-member-nick{color:var(--gold-light);font-size:11px;font-weight:700;}
.guild-member-sub{color:rgba(240,230,200,.5);font-size:9px;margin-top:1px;}
.guild-rank-badge{font-size:9px;padding:2px 6px;border-radius:10px;font-weight:700;flex-shrink:0;}
.rank-captain{background:rgba(255,180,0,.2);color:#ffd060;border:1px solid rgba(255,180,0,.4);}
.rank-officer{background:rgba(100,180,255,.15);color:#80c8ff;border:1px solid rgba(100,180,255,.3);}
.rank-member{background:rgba(255,255,255,.07);color:rgba(240,230,200,.5);border:1px solid rgba(255,255,255,.1);}
.guild-online-dot{width:6px;height:6px;border-radius:50%;background:#40e040;display:inline-block;margin-right:3px;vertical-align:middle;}
.guild-offline-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.2);display:inline-block;margin-right:3px;vertical-align:middle;}

/* Treasury */
.guild-treasury-box{background:linear-gradient(135deg,rgba(60,30,0,.7),rgba(30,15,0,.9));border:var(--b-gold);border-radius:12px;padding:14px;margin-bottom:12px;}
.guild-treasury-vals{display:flex;gap:10px;justify-content:center;margin:10px 0 4px;}
.guild-treasury-val{text-align:center;}
.gtv-amount{color:var(--gold);font-size:20px;font-weight:700;}
.gtv-label{color:rgba(240,230,200,.5);font-size:9px;margin-top:2px;}
.guild-deposit-row{display:flex;gap:6px;align-items:center;margin-top:8px;}
.guild-deposit-input{flex:1;background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:6px;color:var(--gold-light);padding:6px 8px;font-size:12px;font-family:inherit;}
.guild-deposit-input:focus{outline:none;border-color:var(--gold);}

/* Builds */
.guild-build-card{background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:10px;padding:10px 12px;margin-bottom:8px;display:flex;align-items:center;gap:10px;}
.guild-build-icon{font-size:26px;flex-shrink:0;}
.guild-build-info{flex:1;}
.guild-build-name{color:var(--gold-light);font-size:11px;font-weight:700;}
.guild-build-desc{color:rgba(240,230,200,.5);font-size:9px;margin-top:2px;}
.guild-build-lvl{color:var(--gold);font-size:10px;margin-top:3px;}

/* Chat */
.guild-chat-wrap{display:flex;flex-direction:column;height:100%;min-height:0;}
.guild-chat-box{overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:3px;background:rgba(0,0,0,.25);border:1px solid rgba(200,160,32,.15);border-radius:0;min-height:200px;}
.guild-chat-input-row{display:flex;gap:6px;padding:8px 10px;border-top:1px solid rgba(180,130,50,.2);background:var(--wood-dark);flex-shrink:0;}

/* Search */
.guild-search-card{background:rgba(0,0,0,.25);border:var(--b-gold2);border-radius:10px;padding:10px 12px;margin-bottom:8px;display:flex;align-items:center;gap:10px;}
.gsc-badge{font-size:24px;width:40px;text-align:center;flex-shrink:0;}
.gsc-info{flex:1;}
.gsc-name{color:var(--gold-light);font-size:12px;font-weight:700;}
.gsc-desc{color:rgba(240,230,200,.5);font-size:9px;margin-top:2px;}
.gsc-stats{color:rgba(240,230,200,.4);font-size:9px;margin-top:3px;}
.btn-guild-action{background:linear-gradient(135deg,var(--wood-mid),rgba(40,20,0,.9));border:var(--b-gold2);border-radius:7px;color:var(--gold-light);font-size:10px;padding:6px 10px;cursor:pointer;transition:all .2s;white-space:nowrap;}
.btn-guild-action:hover{border-color:var(--gold);color:var(--gold);}
.btn-guild-danger{background:rgba(180,30,30,.3);border:1px solid rgba(200,50,50,.4);border-radius:7px;color:#ff8080;font-size:10px;padding:6px 10px;cursor:pointer;}

/* Profile guild badge */
.profile-guild-badge{display:inline-flex;align-items:center;gap:4px;background:rgba(255,180,0,.12);border:1px solid rgba(255,180,0,.3);border-radius:10px;padding:2px 8px;font-size:9px;color:var(--gold);margin-top:4px;}
/* ════════════ BROTHERHOOD v2 ════════════ */
.bh-guild-banner{background:linear-gradient(135deg,rgba(60,30,0,.85),rgba(25,10,0,.95));border:var(--b-gold);border-radius:12px;padding:14px 14px 12px;margin-bottom:4px;display:flex;align-items:center;gap:12px;}
.bh-guild-flag{font-size:36px;flex-shrink:0;}
.bh-guild-info{flex:1;}
.bh-guild-name{color:var(--gold-light);font-size:14px;font-weight:700;}
.bh-guild-sub{color:rgba(240,230,200,.5);font-size:9px;margin-top:2px;}
.bh-guild-rank{margin-top:5px;}
.bh-edit-btn{background:none;border:none;font-size:18px;cursor:pointer;opacity:.5;align-self:flex-start;padding:2px;}
.bh-edit-btn:hover{opacity:1;}
.bh-menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;}
.bh-menu-btn{background:linear-gradient(180deg,var(--wood-light) 0%,var(--wood-mid) 50%,var(--wood-dark) 100%);border:var(--b-gold2);border-radius:10px;padding:14px 6px 10px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;overflow:hidden;text-align:center;}
.bh-menu-btn::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,220,100,.4),transparent);}.bh-menu-btn:hover{background:linear-gradient(180deg,var(--wood-bright) 0%,var(--wood-light) 50%,var(--wood-mid) 100%);border-color:var(--gold);transform:translateY(-2px);box-shadow:0 6px 15px rgba(0,0,0,.5);}
.bh-mbtn-icon{font-size:26px;line-height:1;margin-bottom:2px;}
.bh-mbtn-label{color:var(--text-cream);font-size:11px;font-weight:600;text-align:center;line-height:1.2;}
.bh-danger-btn{background:linear-gradient(135deg,rgba(80,10,10,.8),rgba(40,5,5,.9))!important;border-color:rgba(180,30,30,.4)!important;}
.bh-danger-btn .bh-mbtn-label{color:#ff8080!important;}
/* flag picker */
.guild-flag-grid{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;}
.guild-flag-opt{font-size:22px;cursor:pointer;padding:4px 6px;border-radius:8px;border:2px solid transparent;transition:all .15s;line-height:1;}
.guild-flag-opt.selected,.guild-flag-opt:hover{border-color:var(--gold);background:rgba(255,180,0,.15);}
/* members */
.bh-members-header{display:flex;justify-content:space-between;font-size:10px;color:rgba(240,230,200,.5);margin-bottom:8px;padding:0 2px;}
.bh-member-actions{display:flex;flex-direction:column;gap:3px;}
/* rank badges */
.guild-rank-badge{font-size:9px;padding:2px 7px;border-radius:10px;font-weight:700;flex-shrink:0;white-space:nowrap;}
.rank-captain{background:rgba(255,180,0,.2);color:#ffd060;border:1px solid rgba(255,180,0,.4);}
.rank-officer{background:rgba(100,180,255,.15);color:#80c8ff;border:1px solid rgba(100,180,255,.3);}
.rank-member{background:rgba(255,255,255,.07);color:rgba(240,230,200,.5);border:1px solid rgba(255,255,255,.1);}
/* online dots */
.guild-online-dot{width:6px;height:6px;border-radius:50%;background:#40e040;display:inline-block;margin-right:3px;vertical-align:middle;}
.guild-offline-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.2);display:inline-block;margin-right:3px;vertical-align:middle;}
/* member row */
.guild-member-row{background:rgba(0,0,0,.25);border:var(--b-gold2);border-radius:8px;padding:8px 10px;margin-bottom:6px;display:flex;align-items:center;gap:8px;}
.guild-member-avatar{font-size:22px;width:34px;text-align:center;flex-shrink:0;}
.guild-member-info{flex:1;min-width:0;}
.guild-member-nick{color:var(--gold-light);font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.guild-member-sub{color:rgba(240,230,200,.5);font-size:9px;margin-top:1px;}
/* treasury */
.guild-treasury-box{background:linear-gradient(135deg,rgba(60,30,0,.7),rgba(30,15,0,.9));border:var(--b-gold);border-radius:12px;padding:14px;margin-bottom:12px;}
.guild-treasury-vals{display:flex;gap:10px;justify-content:center;margin:8px 0 4px;}
.guild-treasury-val{text-align:center;}
.gtv-amount{color:var(--gold);font-size:20px;font-weight:700;}
.gtv-label{color:rgba(240,230,200,.5);font-size:9px;margin-top:2px;}
.guild-deposit-row{display:flex;gap:6px;align-items:center;}
.guild-deposit-input{background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:6px;color:var(--gold-light);padding:7px 8px;font-size:12px;font-family:inherit;}
.guild-deposit-input:focus{outline:none;border-color:var(--gold);}
/* war map */
.war-map{position:relative;width:100%;height:230px;background:linear-gradient(180deg,#0a1a2e 0%,#0d2540 40%,#0e2a45 65%,#1a3010 85%,#2a4018 100%);overflow:hidden;flex-shrink:0;}
.war-map::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent,transparent 60px,rgba(255,255,255,.02) 60px,rgba(255,255,255,.02) 61px),repeating-linear-gradient(0deg,transparent,transparent 40px,rgba(255,255,255,.02) 40px,rgba(255,255,255,.02) 41px);}
.war-attackers{position:absolute;top:18px;left:0;right:0;height:70px;}
.war-defenders{position:absolute;bottom:55px;left:0;right:0;height:70px;}
.war-island{position:absolute;bottom:0;left:0;right:0;height:52px;background:linear-gradient(0deg,rgba(40,60,20,1),rgba(30,50,15,.8));border-top:2px solid rgba(100,160,50,.4);display:flex;align-items:center;justify-content:center;color:rgba(240,230,200,.6);font-size:11px;font-weight:700;}
.war-ship{position:absolute;text-align:center;width:20%;cursor:default;}
.war-ship-icon{font-size:24px;line-height:1;}
.war-ship-hp-bar{width:30px;height:4px;background:rgba(255,255,255,.15);border-radius:2px;margin:2px auto 0;}
.war-ship-enemy{cursor:pointer;}
.war-ship-enemy:hover .war-ship-icon{transform:scale(1.15);transition:.15s;}
.war-ship-friendly{opacity:.9;}
.war-ship-dead{opacity:.25;}
.war-ship-static{opacity:.7;}
.war-map-label{position:absolute;font-size:9px;color:rgba(240,230,200,.4);font-weight:700;padding:2px 8px;z-index:2;}
.war-map-label-top{top:4px;left:8px;}
.war-map-label-bot{bottom:56px;left:8px;}
/* guild search */
.guild-search-card{background:rgba(0,0,0,.25);border:var(--b-gold2);border-radius:10px;padding:10px 12px;margin-bottom:8px;display:flex;align-items:center;gap:10px;}
.gsc-badge{font-size:24px;width:34px;text-align:center;flex-shrink:0;}
.gsc-info{flex:1;min-width:0;}
.gsc-name{color:var(--gold-light);font-size:12px;font-weight:700;}
.gsc-desc{color:rgba(240,230,200,.5);font-size:9px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.gsc-stats{color:rgba(240,230,200,.4);font-size:9px;margin-top:3px;}
/* raid card reuse */
.guild-raid-card{background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:10px;padding:12px;}
.guild-raid-target{display:flex;align-items:center;gap:10px;}
.guild-raid-target-icon{font-size:30px;flex-shrink:0;}
/* guild stat box */
.guild-stat-box{background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:8px;padding:8px;text-align:center;}
.guild-stat-val{color:var(--gold);font-size:15px;font-weight:700;}
.guild-stat-lbl{color:rgba(240,230,200,.5);font-size:9px;margin-top:2px;}
/* action btns */
.btn-guild-action{background:linear-gradient(135deg,var(--wood-mid),rgba(40,20,0,.9));border:var(--b-gold2);border-radius:7px;color:var(--gold-light);font-size:10px;padding:5px 10px;cursor:pointer;transition:all .2s;white-space:nowrap;}
.btn-guild-action:hover{border-color:var(--gold);}
.btn-guild-action:disabled{opacity:.35;cursor:default;}
.btn-guild-danger{background:rgba(180,30,30,.3);border:1px solid rgba(200,50,50,.4);border-radius:7px;color:#ff8080;font-size:10px;padding:5px 10px;cursor:pointer;}
/* participant chip */
.guild-participant-chip{display:inline-block;background:rgba(255,180,0,.12);border:1px solid rgba(255,180,0,.25);border-radius:10px;padding:1px 7px;font-size:9px;color:var(--gold-light);margin:2px;}


/* ════════════ SPANISH ARMADA ════════════ */
.armada-map{position:relative;width:100%;height:220px;background:linear-gradient(180deg,#0a1525 0%,#0d2540 50%,#0e2a48 70%,#1a3015 88%,#263d10 100%);overflow:hidden;flex-shrink:0;}
.armada-map::after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent,transparent 55px,rgba(255,255,255,.015) 55px,rgba(255,255,255,.015) 56px);}
.armada-map-label-top{position:absolute;top:6px;left:10px;font-size:9px;color:rgba(240,230,200,.4);font-weight:700;z-index:3;}
.armada-ship-token{position:absolute;text-align:center;width:18%;z-index:4;transition:top 0.8s linear;}
.armada-ship-token:hover{filter:brightness(1.3);}
.armada-ship-token .war-ship-icon{font-size:22px;line-height:1;);}
.armada-ship-token .war-ship-hp-bar{width:28px;height:4px;background:rgba(255,255,255,.15);border-radius:2px;margin:2px auto 0;}
.armada-wave-line{position:absolute;bottom:52px;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(100,160,255,.3),transparent);}
.armada-island-block{position:absolute;bottom:0;left:0;right:0;height:50px;background:linear-gradient(0deg,rgba(35,55,15,1),rgba(28,48,12,.9));border-top:2px solid rgba(80,140,40,.5);display:flex;align-items:center;justify-content:center;color:rgba(240,230,200,.7);font-size:12px;font-weight:700;}
.armada-calm-msg{margin:10px 10px 0;background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:10px;padding:16px;text-align:center;color:var(--text-cream);font-size:12px;}
/* Global alert */




/* ════════════ VIP / DONATE SHOP ════════════ */
.vip-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:700;}
.vip-bronze{background:rgba(180,100,30,.25);color:#e8a060;border:1px solid rgba(180,100,30,.4);}
.vip-silver{background:rgba(160,180,200,.2);color:#b0d0f0;border:1px solid rgba(160,180,200,.4);}
.vip-gold{background:rgba(220,170,0,.2);color:#ffd040;border:1px solid rgba(220,170,0,.45);}
.topbar-vip-badge{font-size:10px;font-weight:700;padding:2px 6px;border-radius:8px;margin-left:4px;background:rgba(220,170,0,.2);color:#ffd040;border:1px solid rgba(220,170,0,.4);}
.vip-status-card{display:flex;align-items:center;gap:12px;border-radius:12px;padding:12px 14px;margin-bottom:4px;border:1px solid;}
.vip-status-card.vip-none{background:rgba(0,0,0,.25);border-color:rgba(255,255,255,.1);}
.vip-status-card.vip-bronze{background:rgba(180,100,30,.15);border-color:rgba(180,100,30,.4);}
.vip-status-card.vip-silver{background:rgba(160,180,200,.1);border-color:rgba(160,180,200,.35);}
.vip-status-card.vip-gold{background:rgba(220,170,0,.12);border-color:rgba(220,170,0,.4);}
.vip-status-icon{font-size:28px;flex-shrink:0;}
.vip-status-label{color:var(--gold-light);font-size:12px;font-weight:700;}
.vip-status-sub{color:rgba(240,230,200,.5);font-size:10px;margin-top:2px;}

/* ════════════ CARPENTER v2 ════════════ */
.carp-card-active{background:rgba(40,80,30,.25)!important;border-color:rgba(80,180,60,.5)!important;}
.carp-active-dot{position:absolute;top:-2px;right:-2px;width:8px;height:8px;border-radius:50%;background:#40e040;border:1px solid #60ff60;}
.carp-icon{position:relative;display:inline-block;}



/* ════════════ TRAVEL MAP v3 ════════════ */
/* Map card */
.tv-intro-box{background:rgba(0,0,0,.25);border:var(--b-gold2);border-radius:10px;padding:10px 12px;margin-bottom:10px;font-size:10px;color:rgba(240,230,200,.6);text-align:center;line-height:1.6;}
.tv-map-card{display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.25);border:var(--b-gold2);border-radius:10px;padding:10px;margin-bottom:8px;}
.tv-locked{opacity:.5;}
.tv-mc-icon{font-size:28px;flex-shrink:0;}
.tv-mc-info{flex:1;}
.tv-mc-name{color:var(--gold-light);font-size:12px;font-weight:700;}
.tv-mc-desc{color:rgba(240,230,200,.5);font-size:9px;margin-top:2px;}
.tv-mc-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px;}
.tv-mc-tags span{background:rgba(0,0,0,.3);border-radius:5px;padding:1px 5px;font-size:9px;color:var(--gold-light);}
/* Grid outer */
.tv-grid-outer{flex:1;overflow:auto;background:#0a1828;padding:6px;}
.tv-grid-container{display:inline-block;}
.tv-col-row{display:flex;}
.tv-col-lbl{display:flex;align-items:center;justify-content:center;font-size:9px;color:rgba(240,230,200,.4);font-weight:700;}
.tv-grid-row{display:flex;align-items:center;}
.tv-row-lbl{display:flex;align-items:center;justify-content:center;font-size:9px;color:rgba(240,230,200,.4);font-weight:700;flex-shrink:0;}
/* Cells */
.tv-cell{display:flex;align-items:center;justify-content:center;border-radius:3px;cursor:pointer;transition:filter .1s;flex-shrink:0;margin:1px;}
.tv-cell:hover{filter:brightness(1.3);}
.tv-fog{background:rgba(5,5,15,.95);border:1px solid rgba(30,30,50,.6);}
.tv-sea{background:linear-gradient(135deg,#0d3560,#0a2845);border:1px solid rgba(30,100,180,.3);}
.tv-island{background:linear-gradient(135deg,#2a5a10,#1a3a08);border:1px solid rgba(60,150,30,.5);}
.tv-monster{background:linear-gradient(135deg,#4a0a0a,#2a0505);border:1px solid rgba(200,40,40,.7);animation:tv-mpulse 2s infinite;}
.tv-player{background:linear-gradient(135deg,#0a3060,#0a1840);border:2px solid var(--gold);box-shadow:0 0 8px rgba(255,180,0,.5);}
.tv-clear{background:linear-gradient(135deg,#0a2840,#081a2a);border:1px solid rgba(30,80,130,.25);}
@keyframes tv-mpulse{0%,100%{box-shadow:0 0 3px rgba(220,50,50,.4);}50%{box-shadow:0 0 10px rgba(255,80,80,.8);}}
/* Controls */
.tv-controls-panel{background:var(--wood-dark);border-top:2px solid var(--gold-dark);padding:8px;display:flex;justify-content:center;flex-shrink:0;}
.tv-ctrl-grid{display:grid;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(3,44px);gap:4px;}
.tv-btn-dir{background:linear-gradient(135deg,var(--wood-mid),rgba(40,20,0,.9));border:var(--b-gold2);border-radius:8px;color:var(--gold-light);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.tv-btn-dir:hover{border-color:var(--gold);background:rgba(80,40,0,.9);}
.tv-btn-dir:active{transform:scale(.93);}
.tv-btn-ship{background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:8px;font-size:18px;display:flex;align-items:center;justify-content:center;}
.tv-btn-reveal{background:rgba(20,60,130,.6);border:1px solid rgba(100,160,255,.5);border-radius:8px;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#80c8ff;}
.tv-btn-reveal:hover{border-color:#80c8ff;background:rgba(30,80,160,.7);}
/* Battle card — screenshot style */
.tv-battle-card{background:linear-gradient(180deg,rgba(30,20,10,.98),rgba(20,15,8,.98));min-height:100%;}
.tv-mon-img-wrap{width:100%;height:130px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:2px solid rgba(180,120,40,.4);}
.tv-mon-emoji-art{font-size:48px;line-height:1.2;text-align:center;);}
.tv-mon-title{background:linear-gradient(90deg,rgba(80,40,0,.9),rgba(60,30,0,.8),rgba(80,40,0,.9));color:var(--gold-light);font-size:14px;font-weight:700;padding:8px 14px;border-bottom:1px solid rgba(180,120,40,.3);}
.tv-mon-hp-line{padding:10px 14px 4px;font-size:13px;color:rgba(240,230,200,.8);}
.tv-hp-track{margin:0 14px 0;height:8px;background:rgba(255,255,255,.1);border-radius:4px;overflow:hidden;}
.tv-hp-fill{height:100%;border-radius:4px;transition:width .4s;}
.tv-mon-desc{padding:10px 14px;font-size:10px;color:rgba(240,230,200,.65);line-height:1.6;border-bottom:1px solid rgba(180,120,40,.15);}
.tv-mon-duration{padding:6px 14px;font-size:10px;color:rgba(240,230,200,.5);display:flex;gap:6px;align-items:center;border-bottom:1px solid rgba(180,120,40,.15);}
/* Parts & attack */
.tv-part-section{padding:8px 14px;border-bottom:1px solid rgba(180,120,40,.12);}
.tv-part-name{color:var(--gold-light);font-size:12px;font-weight:700;margin-bottom:6px;}
.tv-btn-attack{background:linear-gradient(135deg,#5a3a10,#3a2008);border:1px solid rgba(180,130,50,.5);border-radius:8px;color:var(--gold-light);font-size:13px;font-weight:700;padding:8px 18px;cursor:pointer;width:100%;transition:all .2s;}
.tv-btn-attack:hover:not(:disabled){background:linear-gradient(135deg,#7a5020,#5a3010);border-color:var(--gold);}
.tv-btn-attack:disabled{opacity:.4;cursor:default;}
.tv-btn-attack-sel{background:linear-gradient(135deg,#3a6020,#2a4010)!important;border-color:#60c040!important;color:#80e060!important;}
/* Weapon picker */
.tv-weapon-picker{padding:10px 14px;background:rgba(0,0,0,.3);border-bottom:1px solid rgba(180,120,40,.15);}
.tv-weapons-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;}
.tv-wbtn{background:linear-gradient(135deg,rgba(40,20,0,.9),rgba(25,12,0,.9));border:var(--b-gold2);border-radius:8px;padding:8px 4px;cursor:pointer;text-align:center;transition:all .2s;color:var(--gold-light);}
.tv-wbtn:hover{border-color:var(--gold);background:rgba(80,40,0,.9);}
/* Cooldown bar */
.tv-cd-bar{padding:10px 14px;text-align:center;background:rgba(60,0,0,.2);border-top:1px solid rgba(200,50,50,.2);}

/* ════════ TRAVEL v4 extras ════════ */
/* Lobby */
.tv-lobby-card{background:rgba(0,0,0,.25);border:var(--b-gold2);border-radius:10px;padding:10px;margin-bottom:0;}
.tv-slot{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;margin-bottom:6px;}
.tv-slot-filled{background:rgba(20,60,20,.3);border:1px solid rgba(60,160,60,.35);}
.tv-slot-empty{background:rgba(0,0,0,.2);border:1px dashed rgba(255,255,255,.12);}
.tv-slot-ship{font-size:20px;flex-shrink:0;}
.tv-slot-info{flex:1;}
.tv-slot-nick{color:var(--gold-light);font-size:11px;font-weight:700;}
.tv-slot-sub{color:rgba(240,230,200,.4);font-size:9px;}
/* Lobby chat */
.tv-lobby-chat{margin-top:10px;background:rgba(0,0,0,.2);border:var(--b-gold2);border-radius:8px;padding:8px;}
.tv-lchat-box{min-height:60px;max-height:100px;overflow-y:auto;margin-bottom:6px;display:flex;flex-direction:column;gap:3px;}
/* Map chat panel */
.tv-chat-panel{display:flex;flex-direction:column;height:160px;background:rgba(0,0,0,.4);border-top:1px solid rgba(180,130,50,.2);}
.tv-chat-box{flex:1;overflow-y:auto;padding:6px 10px;display:flex;flex-direction:column;gap:3px;}
/* Battle v4 */
.tv-mon-header{width:100%;height:120px;display:flex;align-items:center;justify-content:center;border-bottom:2px solid rgba(180,100,30,.3);}
.tv-mon-big-icon{font-size:52px;);}
.tv-mon-namebar{background:linear-gradient(90deg,rgba(70,35,0,.95),rgba(50,25,0,.9),rgba(70,35,0,.95));color:var(--gold-light);font-size:14px;font-weight:700;padding:7px 14px;border-bottom:1px solid rgba(180,130,50,.3);}
.tv-mon-stats-block{padding:8px 14px 4px;}
.tv-hp-line{font-size:12px;color:rgba(240,230,200,.8);margin-bottom:5px;}
.tv-hptrack{height:10px;background:rgba(255,255,255,.1);border-radius:5px;overflow:hidden;}
.tv-hpfill{height:100%;border-radius:5px;transition:width .4s;}
.tv-mon-descblock{padding:8px 14px;font-size:10px;color:rgba(240,230,200,.6);line-height:1.6;border-top:1px solid rgba(180,130,50,.1);border-bottom:1px solid rgba(180,130,50,.1);}
.tv-parts-block{padding:6px 0;}
.tv-part-row{padding:8px 14px;border-bottom:1px solid rgba(180,130,50,.12);}
.tv-part-label{color:var(--gold-light);font-size:12px;font-weight:700;margin-bottom:3px;}
.tv-part-hint{color:rgba(240,230,200,.4);font-size:9px;margin-bottom:6px;}
.tv-btn-atk{width:100%;background:linear-gradient(135deg,#5a3a10,#3a2008);border:1px solid rgba(180,130,50,.5);border-radius:8px;color:var(--gold-light);font-size:13px;font-weight:700;padding:8px;cursor:pointer;transition:all .2s;}
.tv-btn-atk:not(:disabled):hover{background:linear-gradient(135deg,#7a5020,#5a3010);border-color:var(--gold);}
.tv-btn-atk:disabled{opacity:.45;cursor:default;}
.tv-wpick{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:7px;}
.tv-wbtn{background:rgba(40,20,0,.8);border:var(--b-gold2);border-radius:7px;color:var(--gold-light);font-size:10px;padding:5px 10px;cursor:pointer;}
.tv-wbtn:hover{border-color:var(--gold);}
.tv-wbtn-cancel{background:rgba(80,0,0,.6);border:1px solid rgba(200,50,50,.4);border-radius:7px;color:#ff8080;font-size:10px;padding:5px 10px;cursor:pointer;}
.tv-cdblock{padding:8px 14px;text-align:center;display:flex;align-items:center;justify-content:space-between;background:rgba(60,0,0,.2);border-top:1px solid rgba(200,50,50,.2);}


/* ── Battle chat + dmg log ── */
.tv-bchat-section{border-top:1px solid rgba(180,130,50,.15);padding:8px 14px 4px;}
.tv-dlog-section{border-top:1px solid rgba(180,130,50,.15);padding:8px 14px 10px;}
.tv-section-label{font-size:9px;color:rgba(240,230,200,.4);font-weight:700;letter-spacing:.5px;margin-bottom:5px;}
.tv-bchat-box{min-height:44px;max-height:80px;overflow-y:auto;background:rgba(0,0,0,.25);border-radius:6px;padding:5px 7px;display:flex;flex-direction:column;gap:2px;margin-bottom:5px;}
.tv-bchat-line{font-size:10px;line-height:1.4;}
.tv-dlog-box{min-height:50px;max-height:110px;overflow-y:auto;background:rgba(0,0,0,.3);border:1px solid rgba(180,130,50,.15);border-radius:6px;padding:5px 8px;display:flex;flex-direction:column;gap:3px;}
.tv-dlog-line{display:flex;gap:5px;align-items:baseline;font-size:10px;padding:2px 0;border-bottom:1px solid rgba(255,255,255,.04);}
.tv-dlog-who{font-weight:700;white-space:nowrap;flex-shrink:0;}
.tv-dlog-txt{flex:1;}
.tv-dlog-plr .tv-dlog-who{color:#80ff80;}
.tv-dlog-plr .tv-dlog-txt{color:rgba(240,230,200,.85);}
.tv-dlog-mon .tv-dlog-who{color:#ff7070;}
.tv-dlog-mon .tv-dlog-txt{color:#ffaa80;}
.tv-cdblock{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:rgba(0,0,0,.2);border-top:1px solid rgba(180,130,50,.15);border-bottom:1px solid rgba(180,130,50,.15);}
.tv-cd-label{font-size:10px;color:rgba(240,230,200,.5);}

/* ════════ CARGO EQUIPMENT ════════ */
.cargo-list{display:flex;flex-direction:column;gap:6px;}
.cargo-row{background:rgba(0,0,0,.25);border:var(--b-gold2);border-radius:8px;padding:8px 10px;display:flex;align-items:center;gap:8px;}
.cargo-row-equipped{border-color:rgba(80,180,80,.5);background:rgba(20,60,20,.3);}
.cargo-item-info{flex:1;min-width:0;}
.cargo-item-name{color:var(--gold-light);font-size:11px;font-weight:700;display:block;}
.cargo-item-stat{color:#80c8ff;font-size:9px;display:block;margin-top:1px;}
.cargo-item-cap{color:rgba(240,230,200,.4);font-size:9px;display:block;}
.cargo-item-right{display:flex;align-items:center;gap:6px;flex-shrink:0;}
.cargo-qty{color:var(--gold);font-weight:700;font-size:12px;}
.cargo-equip-btn{background:rgba(0,0,0,.4);border:var(--b-gold2);border-radius:6px;color:var(--gold-light);font-size:10px;padding:4px 10px;cursor:pointer;white-space:nowrap;}
.cargo-equip-btn.equipped{background:rgba(20,80,20,.6);border-color:rgba(80,180,80,.5);color:#80e080;}
.cargo-equip-btn:hover{border-color:var(--gold);}
/* ════════ ADMIRAL COMBAT STATS ════════ */
.asc-combat-stats{background:rgba(0,0,0,.2);border:var(--b-gold2);border-radius:8px;padding:8px 10px;}
.asc-cs-row{display:flex;justify-content:space-between;align-items:center;padding:3px 0;border-bottom:1px solid rgba(255,255,255,.04);}
.asc-cs-row:last-child{border-bottom:none;}
.asc-cs-row span:first-child{color:rgba(240,230,200,.65);font-size:10px;}
.asc-cs-val{color:var(--gold);font-size:11px;font-weight:700;}
.asc-equip-list{background:rgba(0,0,0,.2);border:var(--b-gold2);border-radius:8px;padding:6px 10px;}
.asc-equip-row{display:flex;justify-content:space-between;padding:3px 0;border-bottom:1px solid rgba(255,255,255,.04);}
.asc-equip-row:last-child{border-bottom:none;}
.asc-equip-label{color:rgba(240,230,200,.5);font-size:10px;}
.asc-equip-val{color:rgba(240,230,200,.3);font-size:10px;}
.asc-equip-val.equipped{color:#80e080;font-weight:700;}
.asc-bonus-line{color:#60d890;font-size:11px;margin-top:4px;}

/* ── Carpenter info bar ── */
.carp-info-bar{background:rgba(0,0,0,.25);border:var(--b-gold2);border-radius:8px;padding:8px 12px;margin-bottom:10px;}
.carp-info-row{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:rgba(240,230,200,.7);}

/* ── Armada battle extras ── */
.bs-hp-bar{width:100%;height:6px;background:rgba(255,255,255,.1);border-radius:3px;overflow:hidden;margin-top:6px;border:1px solid rgba(255,255,255,.08);}
.bs-vs{display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:var(--gold);flex-shrink:0;}




/* ════════════════════════════════════════════════════════════
   NOTIFICATION SYSTEM — пират + пергамент
   ════════════════════════════════════════════════════════════ */

/* Зона оповещений */
.notify-zone{
  min-height:0; overflow:visible; padding:0 6px;
  position:relative; z-index:500;
  background:var(--wood-dark);
  border-bottom:1px solid rgba(200,160,32,.15);
}
.notify-zone:empty{padding:0; border-bottom:none;}

/* Контейнер уведомления */
.pnotify{
  display:flex; align-items:stretch; gap:0;
  opacity:0; transform:translateY(-6px);
  transition:opacity .3s, transform .3s;
  margin:4px 0;
}
.pnotify.pnotify-show,
.pnotify-result,
.pnotify-armada{
  opacity:1; transform:translateY(0);
  animation:pn-pop .3s ease;
}
@keyframes pn-pop{
  from{opacity:0;transform:scale(.95) translateY(-4px);}
  to{opacity:1;transform:scale(1) translateY(0);}
}

/* Портрет пирата */
.pn-portrait{
  width:72px; min-height:68px; flex-shrink:0;
  border-radius:10px 0 0 10px;
  overflow:hidden;
  background:#3a1e08;
}
.pn-portrait img{
  width:100%; height:100%; object-fit:cover;
  display:block;
}
.pn-portrait-sm{ width:56px; min-height:52px; }

/* Свиток-пергамент */
.pn-scroll{
  flex:1; min-width:0;
  background:url('/img/notify/parchment.png') center/cover no-repeat, #e8c87a;
  border-radius:0 10px 10px 0;
  padding:10px 14px;
  overflow:hidden;
}
.pn-scroll-sm{ padding:7px 12px; }

/* Текст на пергаменте */
.pn-scroll-title{
  font-family:'Palatino Linotype','Book Antiqua',Palatino,serif;
  font-size:13px; font-weight:700;
  color:#3a1a00;
  margin-bottom:2px; line-height:1.3;
}
.pn-scroll-text{
  font-family:'Palatino Linotype','Book Antiqua',Palatino,serif;
  font-size:11px; color:#5a3010; line-height:1.4;
}
.pn-scroll-detail{
  font-size:10px; color:#7a5030;
  margin-top:4px; line-height:1.4;
}

/* Кнопка закрыть */
.pn-close{
  display:block; margin-top:8px;
  background:linear-gradient(135deg,#5a2e0a,#3a1e08);
  border:2px solid #8a5a1a; border-radius:6px;
  color:#f5e8c0; font-family:'Palatino Linotype',serif;
  font-size:11px; padding:5px 16px;
  cursor:pointer; width:100%;
}
.pn-close:hover{border-color:#c4922a;}

/* Армада глобал */
.armada-global-alert{
  position:fixed; top:8px; left:50%; transform:translateX(-50%);
  z-index:9999; width:92%; max-width:380px; pointer-events:auto;
}
.armada-global-alert .pn-portrait{width:64px; min-height:60px;}

/* ════════ RATING ════════ */
.rating-tabs{display:flex;gap:6px;margin-bottom:10px;}
.rating-tab{flex:1;background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:8px;
  color:rgba(240,230,200,.5);font-size:10px;padding:6px 4px;cursor:pointer;font-family:inherit;}
.rating-tab.active{background:rgba(60,30,0,.7);border-color:var(--gold);color:var(--gold);}
.rating-mypos{background:rgba(60,40,0,.3);border:var(--b-gold2);border-radius:8px;
  padding:8px 12px;font-size:11px;color:rgba(240,230,200,.7);margin-bottom:8px;text-align:center;}
.rating-list{display:flex;flex-direction:column;gap:5px;}
.rating-row{display:flex;align-items:center;gap:8px;background:rgba(0,0,0,.2);
  border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:8px 10px;}
.rating-me{background:rgba(50,30,0,.4);border-color:rgba(200,150,30,.5)!important;}
.rating-medal{font-size:18px;flex-shrink:0;width:26px;text-align:center;}
.rating-pos{font-size:11px;color:rgba(240,230,200,.4);}
.rating-ship{font-size:18px;flex-shrink:0;}
.rating-info{flex:1;min-width:0;}
.rating-nick{color:var(--gold-light);font-size:11px;font-weight:700;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rating-rank{color:rgba(240,230,200,.4);font-size:9px;margin-top:1px;}
.rating-guild{background:rgba(60,30,0,.5);border-radius:4px;padding:1px 4px;
  font-size:9px;color:var(--gold);margin-left:4px;}
.rating-val{color:var(--gold);font-size:11px;font-weight:700;flex-shrink:0;text-align:right;}

/* ════════ JOB PAGES ════════ */
.job-page-info{display:flex;gap:12px;background:rgba(0,0,0,.25);border:var(--b-gold2);
  border-radius:10px;padding:12px;margin-bottom:12px;}
.jpi-icon{font-size:36px;flex-shrink:0;display:flex;align-items:center;}
.jpi-body{flex:1;}
.jpi-name{color:var(--gold-light);font-size:13px;font-weight:700;margin-bottom:3px;}
.jpi-desc{color:rgba(240,230,200,.5);font-size:10px;margin-bottom:6px;}
.jpi-rewards{display:flex;gap:8px;flex-wrap:wrap;}
.jpi-rewards span{background:rgba(0,0,0,.3);border-radius:5px;padding:2px 7px;
  font-size:10px;color:var(--gold-light);}
.jpi-mult{color:rgba(240,230,200,.4);font-size:9px;margin-top:5px;}

/* ════════ FIGUREHEADS ════════ */
.fh-equipped{display:flex;align-items:center;gap:10px;background:rgba(40,20,0,.4);
  border:2px solid var(--gold);border-radius:10px;padding:10px 12px;margin-bottom:10px;}
.fh-none{text-align:center;color:rgba(240,230,200,.35);font-size:11px;
  padding:10px;margin-bottom:8px;}
.fh-grid{display:flex;flex-direction:column;gap:7px;}
.fh-card{display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.2);
  border:1px solid rgba(255,255,255,.06);border-radius:9px;padding:9px 10px;}
.fh-card-active{background:rgba(40,20,0,.4);border-color:rgba(200,150,30,.5);}
.fh-icon{font-size:28px;flex-shrink:0;position:relative;width:36px;text-align:center;}
.fh-info{flex:1;min-width:0;}
.fh-name{color:var(--gold-light);font-size:11px;font-weight:700;}
.fh-desc{color:rgba(240,230,200,.4);font-size:9px;margin-top:1px;}
.fh-bonus{color:#60d890;font-size:10px;margin-top:3px;}

/* ════════ FIGUREHEADS ════════ */
.fh-equipped{display:flex;align-items:center;gap:10px;background:rgba(40,20,0,.4);
  border:2px solid var(--gold);border-radius:10px;padding:10px 12px;margin-bottom:10px;}
.fh-none{text-align:center;color:rgba(240,230,200,.35);font-size:11px;
  padding:10px;margin-bottom:8px;}
.fh-grid{display:flex;flex-direction:column;gap:7px;}
.fh-card{display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.2);
  border:1px solid rgba(255,255,255,.06);border-radius:9px;padding:9px 10px;}
.fh-card-active{background:rgba(40,20,0,.4);border-color:rgba(200,150,30,.5);}
.fh-icon{font-size:28px;flex-shrink:0;position:relative;width:36px;text-align:center;}
.fh-info{flex:1;min-width:0;}
.fh-name{color:var(--gold-light);font-size:11px;font-weight:700;}
.fh-desc{color:rgba(240,230,200,.4);font-size:9px;margin-top:1px;}
.fh-bonus{color:#60d890;font-size:10px;margin-top:3px;}

/* ════════ ALCHEMIST ════════ */
.alch-header{background:rgba(0,0,0,.2);border:var(--b-gold2);border-radius:8px;padding:8px 12px;
  font-size:11px;color:rgba(240,230,200,.7);margin-bottom:10px;text-align:center;}
.alch-grid{display:flex;flex-direction:column;gap:6px;margin-bottom:4px;}
.alch-card{display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.2);
  border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:8px 10px;}
.alch-card-active{background:rgba(30,60,10,.4);border-color:rgba(60,180,60,.4);}
.alch-icon{font-size:26px;flex-shrink:0;width:30px;text-align:center;}
.alch-info{flex:1;min-width:0;}
.alch-name{color:var(--gold-light);font-size:11px;font-weight:700;}
.alch-desc{color:rgba(240,230,200,.45);font-size:9px;margin-top:1px;}
.alch-dur{color:rgba(240,230,200,.3);font-size:9px;}
.alch-price{color:var(--gold);font-size:10px;}
.alch-active-list{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px;}
.alch-active-pill{background:rgba(30,60,10,.5);border:1px solid rgba(60,180,60,.4);
  border-radius:12px;padding:3px 8px;font-size:10px;color:#80e080;}
.alch-special{display:flex;align-items:center;gap:10px;background:rgba(50,0,50,.3);
  border:1px solid rgba(150,50,200,.4);border-radius:8px;padding:9px 10px;margin-top:6px;}

/* ════════ SETTINGS ════════ */
.settings-row{display:flex;gap:8px;margin-bottom:6px;}
.settings-input{flex:1;background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:7px;
  color:var(--text-cream);font-family:inherit;font-size:12px;padding:7px 10px;}
.settings-avatar-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:6px;}
.settings-avatar{font-size:24px;text-align:center;padding:8px;border-radius:8px;cursor:pointer;
  background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.06);}
.settings-avatar-active{border-color:var(--gold);background:rgba(60,30,0,.4);}
.settings-toggle-row{display:flex;justify-content:space-between;align-items:center;
  padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:11px;color:rgba(240,230,200,.7);}
.toggle{position:relative;display:inline-block;width:38px;height:22px;}
.toggle input{opacity:0;width:0;height:0;}
.toggle-slider{position:absolute;inset:0;background:rgba(0,0,0,.4);border-radius:22px;cursor:pointer;transition:.3s;}
.toggle-slider:before{content:"";position:absolute;width:16px;height:16px;left:3px;bottom:3px;
  background:#888;border-radius:50%;transition:.3s;}
.toggle input:checked+.toggle-slider{background:rgba(60,150,30,.6);}
.toggle input:checked+.toggle-slider:before{transform:translateX(16px);background:#60d890;}
.settings-info{background:rgba(0,0,0,.2);border-radius:8px;padding:10px 12px;
  font-size:12px;color:rgba(240,230,200,.7);}

.gear-btn{background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:8px;
  color:var(--gold-light);font-size:18px;width:36px;height:36px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s;}
.gear-btn:hover{background:rgba(60,30,0,.5);border-color:var(--gold);}

/* ════════ EXPEDITION ════════ */
.exp-dread-bar{display:flex;align-items:center;gap:10px;background:rgba(40,20,60,.4);
  border:1px solid rgba(120,80,200,.4);border-radius:10px;padding:10px 12px;margin-bottom:12px;}
.exp-map-card{display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.2);
  border:2px solid rgba(255,255,255,.06);border-radius:10px;padding:10px 12px;margin-bottom:8px;}
.exp-map-icon{font-size:32px;flex-shrink:0;}
.exp-map-info{flex:1;min-width:0;}
.exp-map-name{color:var(--gold-light);font-size:12px;font-weight:700;}
.exp-map-desc{color:rgba(240,230,200,.45);font-size:10px;margin-top:1px;}
.exp-frags{color:rgba(240,230,200,.4);font-size:10px;margin-top:3px;}
.exp-frags-done{color:#60d890!important;}
.exp-go-header{display:flex;align-items:center;gap:12px;background:rgba(0,0,0,.25);
  border:var(--b-gold2);border-radius:10px;padding:10px 12px;margin-bottom:10px;}
.exp-log{background:rgba(0,0,0,.2);border-radius:8px;padding:8px 10px;margin-bottom:10px;
  max-height:140px;overflow-y:auto;}
.exp-log-entry{font-size:10px;color:rgba(240,230,200,.6);padding:2px 0;border-bottom:1px solid rgba(255,255,255,.04);}
.exp-action-card{background:rgba(0,0,0,.25);border:var(--b-gold2);border-radius:10px;
  padding:16px;text-align:center;margin-bottom:10px;}
.exp-timer-bar{width:100%;height:6px;background:rgba(255,255,255,.1);border-radius:3px;
  overflow:hidden;margin-top:8px;}
.exp-choices{display:flex;flex-direction:column;gap:8px;margin-bottom:10px;}
.exp-btn-primary{background:linear-gradient(135deg,rgba(60,100,30,.8),rgba(30,60,10,.9));
  border:2px solid rgba(80,160,40,.6);border-radius:10px;color:var(--text-cream);
  font-family:inherit;font-size:12px;padding:12px 16px;cursor:pointer;font-weight:600;}
.exp-btn-primary:hover{border-color:#60d890;}
.exp-btn-skip{background:rgba(0,0,0,.3);border:var(--b-gold2);border-radius:8px;
  color:rgba(240,230,200,.6);font-family:inherit;font-size:11px;padding:8px;cursor:pointer;}
.exp-done-card{text-align:center;background:rgba(0,0,0,.25);border:2px solid var(--gold-dark);
  border-radius:10px;padding:16px;margin-bottom:10px;}
.exp-loot-summary{background:rgba(0,0,0,.2);border-radius:8px;padding:10px;
  font-size:11px;color:var(--gold-light);line-height:1.8;}
/* Dreadnought materials */
.dread-mat-grid{display:flex;flex-direction:column;gap:8px;}
.dread-mat-row{display:flex;align-items:center;gap:10px;padding:6px 0;}
.dread-mat-done{opacity:.7;}
.dread-mat-icon{font-size:20px;flex-shrink:0;width:24px;}
.dread-mat-info{flex:1;}
.dread-mat-name{color:rgba(240,230,200,.7);font-size:10px;margin-bottom:3px;}
.dread-mat-track{width:100%;height:5px;background:rgba(255,255,255,.1);border-radius:3px;overflow:hidden;}
.dread-mat-qty{font-size:10px;color:var(--gold-light);flex-shrink:0;min-width:55px;text-align:right;}
.dread-mat-qty-done{color:#60d890;}

/* ═══ MOBILE FIXES ═══ */
/* Используем dvh вместо vh для корректной работы на мобильных с адресной строкой */
/* dvh disabled — page scroll mode */
/* safe-area-inset для нотча и нижней панели браузера */
.footer-bar {
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px));
}
/* На мобильном stats-bar уменьшаем зазоры чтобы не было горизонтального скролла */
@media (max-width: 480px) {
  .stats-bar {
    padding: 3px 4px;
    gap: 1px;
  }
  .stat-item {
    gap: 1px;
    padding: 2px 1px;
  }
  .stat-value {
    font-size: 10px;
  }
  .stat-label {
    display: none;
  }
  /* Уменьшаем топ-бар */
  .top-bar {
    padding: 6px 10px;
  }
  /* Уменьшаем player-name на мобильных */
  .player-name {
    padding: 5px 12px;
    font-size: 13px;
  }
  /* progress-bar-section меньше на мобильных */
  .progress-bar-section {
    padding: 4px 10px;
  }
}
@supports (padding: env(safe-area-inset-top)) {
.top-bar {
  padding-top: calc(8px + env(safe-area-inset-top, 0px));
}
}

/* ═══ ПРОКРУТКА ВСЕЙ СТРАНИЦЫ ═══ */
html, body { height: auto !important; overflow: auto !important; }
.game-wrapper { height: auto !important; overflow: visible !important; }
.game-page.active { display: flex; flex-direction: column; min-height: calc(100vh - 200px); }
.page-body { overflow: visible !important; height: auto !important; min-height: 0; }
.main-menu { overflow: visible !important; }

/* ═══ ЧАТ ТАВЕРНЫ — фиксированная высота ═══ */
/* Страница таверны — занимает весь экран минус шапку/футер */
#page-tavern.game-page.active { min-height: calc(100vh - 180px); }
#page-tavern .chat-page-body {
  display: flex !important;
  flex-direction: column !important;
  height: calc(100vh - 220px) !important;
  min-height: 400px;
  padding: 0 !important;
}
#page-tavern #chat-messages {
  flex: 1 !important;
  min-height: 0 !important;
  height: 0 !important; /* flex child trick */
  overflow-y: auto !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 10px !important;
  background: rgba(0,0,0,.3) !important;
  border-bottom: 1px solid rgba(200,160,32,.2) !important;
}

/* Гильд-чат */
.guild-chat-box { height: 300px; overflow-y: auto; }

#page-minigames, #page-game-thimble, #page-game-monks {
  background: linear-gradient(180deg, rgba(44,26,14,.95) 0%, rgba(20,10,4,.97) 100%);
  min-height: fit-content !important;
}
#page-minigames.active, #page-game-thimble.active, #page-game-monks.active {
  min-height: auto !important;
}


/* ═══ BLOCK SEPARATOR ═══ */


/* ═══ AUTH SCREEN ═══════════════════════════════════════ */
#authScreen{
  position:fixed;inset:0;z-index:9999;
  background:linear-gradient(180deg,var(--sea-top) 0%,var(--sea-mid) 40%,var(--sea-deep) 100%);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  font-family:'Palatino Linotype','Book Antiqua',Palatino,serif;
}
.auth-box{
  width:92%;max-width:400px;
  background:linear-gradient(180deg,rgba(44,26,14,.97),rgba(20,10,4,.99));
  border:2px solid var(--gold-dark);border-radius:16px;
  padding:24px 20px 28px;box-shadow:0 0 40px rgba(0,0,0,.7);
}
.auth-ship-area{
  text-align:center;font-size:64px;margin-bottom:8px;
}
.auth-title{
  text-align:center;color:var(--gold-light);font-size:20px;font-weight:700;
  letter-spacing:2px;margin-bottom:4px;
}
.auth-subtitle{
  text-align:center;color:rgba(240,230,200,.5);font-size:11px;margin-bottom:20px;
  letter-spacing:.5px;
}
.auth-field{
  background:rgba(0,0,0,.4);border:1px solid var(--gold-dark);border-radius:8px;
  padding:10px 14px;margin-bottom:10px;
}
.auth-field label{
  display:block;color:rgba(240,230,200,.5);font-size:10px;margin-bottom:4px;letter-spacing:.5px;
}
.auth-field input{
  width:100%;background:transparent;border:none;outline:none;
  color:var(--text-cream);font-family:inherit;font-size:13px;
}
.auth-btn-main{
  width:100%;background:linear-gradient(180deg,#2a5c1a,#1a3c0a);
  border:2px solid #40a020;border-radius:10px;color:#80e040;
  font-family:inherit;font-size:14px;font-weight:700;letter-spacing:1px;
  padding:13px;cursor:pointer;transition:all .2s;margin-top:6px;
}
.auth-btn-main:hover{background:linear-gradient(180deg,#3a7c2a,#2a5c1a);box-shadow:0 0 15px rgba(64,160,32,.4);}
.auth-btn-secondary{
  width:100%;background:linear-gradient(180deg,var(--wood-light),var(--wood-mid));
  border:var(--b-gold2);border-radius:10px;color:var(--text-cream);
  font-family:inherit;font-size:13px;font-weight:600;
  padding:11px;cursor:pointer;transition:all .2s;margin-top:8px;
}
.auth-btn-secondary:hover{background:linear-gradient(180deg,var(--wood-bright),var(--wood-light));}
.auth-divider{text-align:center;color:rgba(240,230,200,.3);font-size:11px;margin:10px 0;}
.auth-error{color:#ff6060;font-size:11px;text-align:center;margin-top:6px;display:none;}
.auth-back{
  background:none;border:none;color:var(--gold);font-family:inherit;
  font-size:11px;cursor:pointer;text-decoration:underline;margin-top:10px;
  display:block;text-align:center;
}

/* ═══ ONBOARDING MAP ════════════════════════════════════ */
#onboardScreen{
  position:fixed;inset:0;z-index:9998;display:none;
  background:linear-gradient(180deg,#0a1a2e 0%,#0d2540 50%,#1a3510 85%,#2a5018 100%);
  flex-direction:column;align-items:center;
  font-family:'Palatino Linotype','Book Antiqua',Palatino,serif;
}
.ob-header{
  width:100%;background:var(--wood-dark);border-bottom:2px solid var(--gold-dark);
  padding:10px 16px;display:flex;align-items:center;justify-content:space-between;
  flex-shrink:0;
}
.ob-title{color:var(--gold-light);font-size:14px;font-weight:700;letter-spacing:1px;}
.ob-subtitle{color:rgba(240,230,200,.5);font-size:10px;}
.ob-map-wrap{
  flex:1;display:flex;align-items:center;justify-content:center;
  overflow:hidden;padding:10px;
}
.ob-grid{
  background:rgba(0,0,0,.3);border:2px solid var(--gold-dark);border-radius:10px;
  display:inline-flex;flex-direction:column;gap:2px;padding:8px;
}
.ob-row{display:flex;gap:2px;}
.ob-cell{
  width:44px;height:44px;border-radius:6px;display:flex;align-items:center;
  justify-content:center;font-size:22px;cursor:pointer;transition:all .2s;
  border:1px solid rgba(200,160,32,.15);
}
.ob-cell:hover{filter:brightness(1.3);border-color:var(--gold);}
.ob-cell.ob-sea{background:rgba(10,60,100,.5);}
.ob-cell.ob-island{background:rgba(20,80,20,.4);cursor:default;}
.ob-cell.ob-monster{background:rgba(80,10,10,.5);animation:pulse 2s ease-in-out infinite;}
.ob-cell.ob-chest{background:rgba(80,60,0,.5);}
.ob-cell.ob-tortuga{background:rgba(80,40,0,.6);border-color:var(--gold);}
.ob-cell.ob-player{background:rgba(20,80,20,.6);border-color:#40e040;}
.ob-cell.ob-clear{background:rgba(10,60,100,.3);}
.ob-cell.ob-disabled{cursor:default;pointer-events:none;}
.ob-footer{
  width:100%;background:var(--wood-dark);border-top:2px solid var(--gold-dark);
  padding:10px 16px;display:flex;flex-direction:column;gap:6px;flex-shrink:0;
}
.ob-status{color:var(--gold-light);font-size:12px;text-align:center;}
.ob-loot{color:#80e040;font-size:11px;text-align:center;}
.ob-controls{display:flex;gap:8px;justify-content:center;}
.ob-nav-btn{
  width:46px;height:46px;background:var(--g-wood);border:var(--b-gold2);border-radius:8px;
  color:var(--text-cream);font-size:18px;cursor:pointer;display:flex;align-items:center;
  justify-content:center;font-family:inherit;
}
.ob-nav-btn:hover{background:var(--g-wood-h);border-color:var(--gold);}
.ob-nav-btn:disabled{opacity:.4;cursor:default;}

/* ═══ ONBOARDING BATTLE ══════════════════════════════ */
#onboardBattle{
  position:fixed;inset:0;z-index:9999;display:none;
  background:rgba(0,0,0,.88);flex-direction:column;align-items:center;justify-content:center;
  font-family:'Palatino Linotype','Book Antiqua',Palatino,serif;
}
.obb-panel{
  width:92%;max-width:400px;background:linear-gradient(180deg,rgba(30,10,5,.98),rgba(10,5,2,.99));
  border:2px solid var(--gold-dark);border-radius:16px;padding:18px 16px 22px;
  max-height:90vh;overflow-y:auto;
}
.obb-mon-icon{font-size:64px;text-align:center;margin-bottom:4px;}
.obb-mon-name{color:var(--gold-light);font-size:16px;font-weight:700;text-align:center;margin-bottom:8px;}
.obb-hp-row{display:flex;justify-content:space-between;font-size:11px;color:rgba(240,230,200,.7);margin-bottom:10px;}
.obb-desc{color:rgba(240,230,200,.6);font-size:11px;line-height:1.6;margin-bottom:14px;background:rgba(0,0,0,.3);border-radius:8px;padding:8px 10px;}
.obb-btn-atk{
  width:100%;background:linear-gradient(180deg,#3a1a1a,#1a0a0a);border:2px solid #c03030;
  border-radius:8px;color:#ff8080;font-family:inherit;font-size:14px;font-weight:700;
  letter-spacing:2px;padding:12px;cursor:pointer;margin-bottom:8px;
}
.obb-btn-atk:hover{box-shadow:0 0 15px rgba(200,50,50,.4);}
.obb-btn-atk:disabled{opacity:.5;cursor:default;}
.obb-log{background:rgba(0,0,0,.4);border-radius:8px;padding:6px 10px;font-size:11px;max-height:130px;overflow-y:auto;line-height:1.9;}
.obb-log-line{display:flex;align-items:baseline;gap:0;}
.obb-log-who{min-width:100px;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;flex-shrink:0;}
.obb-log-val{flex:1;text-align:right;white-space:nowrap;}
/* ═══ SKILL TREE ════ */
.skill-tree-row{display:flex;gap:8px;margin-bottom:4px;flex-wrap:wrap;}
.skill-node{
  flex:1;min-width:60px;max-width:80px;
  background:linear-gradient(180deg,rgba(30,50,20,.8),rgba(15,30,10,.9));
  border:2px solid #3a6020;border-radius:10px;padding:8px 4px 6px;
  text-align:center;cursor:pointer;transition:all .2s;position:relative;
}
.skill-node:hover{border-color:#80d040;background:linear-gradient(180deg,rgba(40,70,25,.9),rgba(20,45,12,.95));}
.skill-node.skill-node-active{border-color:var(--gold);background:linear-gradient(180deg,rgba(60,40,0,.8),rgba(40,25,0,.9));}
.skill-node.skill-node-locked{opacity:.5;border-color:rgba(200,160,32,.2);cursor:default;filter:grayscale(.6);}
.item-cls-badge{display:inline-block;background:rgba(200,160,32,.18);border:1px solid var(--gold-dark);border-radius:6px;padding:1px 8px;color:var(--gold);font-size:9px;font-weight:700;letter-spacing:.5px;margin-bottom:3px;}.sn-icon{font-size:26px;margin-bottom:2px;}
.sn-lvl{color:var(--gold-light);font-size:10px;font-weight:700;}
.sn-name{color:var(--text-cream);font-size:9px;line-height:1.3;margin-top:2px;}
.sn-desc{color:rgba(240,230,200,.5);font-size:8px;margin-top:3px;line-height:1.4;}
.sn-lock{color:#e06040;font-size:8px;margin-top:3px;line-height:1.3;}

.obb-run{
  width:100%;background:var(--g-wood);border:var(--b-gold);border-radius:8px;
  color:var(--text-cream);font-family:inherit;font-size:12px;padding:9px;cursor:pointer;margin-top:8px;
}
.obb-part-row{
  background:rgba(0,0,0,.3);border:1px solid rgba(200,160,32,.2);border-radius:8px;
  padding:8px 10px;margin-bottom:8px;
}
.obb-part-label{color:var(--gold-light);font-size:12px;font-weight:600;margin-bottom:2px;}
.obb-part-hint{color:rgba(240,230,200,.5);font-size:10px;margin-bottom:6px;}
.obb-wpick{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:4px;}
.obb-wbtn{
  background:linear-gradient(180deg,#1a3a5c,#0a1a2c);border:1px solid #3080b0;
  border-radius:6px;color:#80d8ff;font-family:inherit;font-size:11px;
  padding:5px 10px;cursor:pointer;
}
.obb-wbtn:hover{background:linear-gradient(180deg,#2a5a8c,#1a3a6c);}
.obb-wbtn-cancel{
  background:rgba(80,20,20,.4);border:1px solid #a04040;border-radius:6px;
  color:#e08080;font-family:inherit;font-size:11px;padding:5px 8px;cursor:pointer;
}
.obb-btn-atk{
  width:100%;background:linear-gradient(180deg,#3a1a1a,#1a0a0a);border:2px solid #c03030;
  border-radius:8px;color:#ff8080;font-family:inherit;font-size:13px;font-weight:700;
  letter-spacing:1px;padding:10px;cursor:pointer;margin-bottom:0;
}
.obb-btn-atk:hover{box-shadow:0 0 15px rgba(200,50,50,.4);}
.obb-btn-atk:disabled{opacity:.5;cursor:default;}

#page-search.game-page.active {
  min-height: calc(100vh - 180px);
}

/* === ПРОФИЛЬ ИГРОКА === */
.player-profile-body { padding: 12px; display:flex; flex-direction:column; gap:12px; }
.pp-guild { text-align:center; color:var(--gold-light); font-size:13px; }
.pp-rank { text-align:center; color:rgba(240,230,200,.6); font-size:12px; }
.pp-ship-block { display:flex; align-items:center; gap:12px; background:rgba(0,0,0,.3); border-radius:10px; padding:10px; }
.pp-ship-icon { font-size:40px; }
.pp-ship-name { font-weight:bold; color:var(--gold-light); margin-bottom:4px; }
.pp-ship-stats { font-size:12px; color:rgba(240,230,200,.7); }
.pp-stats-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.pp-stat { background:rgba(0,0,0,.3); border-radius:8px; padding:8px; display:flex; flex-direction:column; align-items:center; gap:2px; }
.pp-stat-lbl { font-size:11px; color:rgba(240,230,200,.5); }
.pp-stat span:last-child { font-size:16px; font-weight:bold; color:var(--gold-light); }
.pp-actions { display:flex; flex-direction:column; gap:8px; margin-top:4px; }
.pp-actions { display:flex; flex-direction:column; gap:8px; margin-top:4px; }
.pp-btn { background:linear-gradient(180deg,var(--wood-light),var(--wood-mid)); border:var(--b-gold2); border-radius:8px; color:var(--text-cream); font-family:'Palatino Linotype','Book Antiqua',Palatino,serif; font-size:14px; font-weight:600; padding:12px 14px; cursor:pointer; transition:all .2s; display:flex; align-items:center; justify-content:center; gap:8px; width:100%; }
.pp-btn:hover { background:linear-gradient(180deg,var(--wood-bright),var(--wood-light)); border-color:var(--gold); }




/* === ДОСКА ОБЪЯВЛЕНИЙ === */
.board-item { position:relative; padding:10px 12px; border-bottom:1px solid rgba(255,255,255,.07); }
.board-nick { font-size:12px; color:var(--gold-light); margin-bottom:3px; }
.board-date { color:rgba(240,230,200,.4); font-size:11px; margin-left:6px; }
.board-subj { font-weight:bold; color:rgba(240,230,200,.9); margin-bottom:4px; font-size:14px; }
.board-del-btn { position:absolute; top:8px; right:8px; background:rgba(180,50,50,.7); border:none; color:#fff; border-radius:5px; padding:2px 7px; cursor:pointer; font-size:12px; }

.board-text { color:rgba(240,230,200,.8); font-size:13px; margin-top:3px; }

/* ═══ FOOTER & LAYOUT FIX ═══ */

/* Сбрасываем лишний min-height у всех страниц */
.game-page.active {
  min-height: 0 !important;
}
/* Возвращаем нужный min-height только для таверны и поиска */
#page-tavern.game-page.active,
#page-search.game-page.active {
  min-height: calc(100vh - 180px) !important;
}

/* Footer — один ряд, sticky */
.footer-bar {
  position: sticky !important;
  bottom: 0 !important;
  z-index: 500 !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 6px 10px !important;
}
.footer-bar > div {
  flex-shrink: 1 !important;
  min-width: 0 !important;
}

input,textarea,select,button{color:inherit;}


/* ═══ ГЛОБАЛЬНЫЙ ФИКС: все тексты кремового цвета ═══ */
input, textarea, select, option, button {
  color: var(--text-cream) !important;
  font-family: inherit;
}
input::placeholder, textarea::placeholder {
  color: rgba(240,230,200,.4) !important;
}
input::-webkit-input-placeholder { color: rgba(240,230,200,.4) !important; }
input::-moz-placeholder { color: rgba(240,230,200,.4) !important; }
/* number input spinners */
input[type="number"] { color: var(--text-cream) !important; }
/* option dropdown (в select) */
select option { color: var(--text-cream); background: #2c1a0e; }
/* Все элементы внутри game-wrapper */
#gameWrapper, #gameWrapper * { color: inherit; }
/* Кнопки без явного цвета */
button { color: var(--text-cream); }
/* Toast, модалки */
.toast { color: var(--text-cream); }
/* Ссылки внутри игры */
a { color: var(--gold-light); }

.ccb-track { display: none !important; }


/* ═══════════════════════════════════════════════════════════ */
/* UI IMPROVEMENTS                                           */
/* ═══════════════════════════════════════════════════════════ */

/* Тактильная обратная связь для кнопок на мобильном */
.menu-btn:active, .submenu-btn:active, .btn-buy:active, .btn-sell:active,
.btn-attack:active, .btn-sec:active, .tab-btn:active, .skill-up:active {
  transform: scale(0.95) !important;
  opacity: 0.8;
}

/* Плавные переходы страниц */
.game-page.active {
  animation: fadeIn 0.15s ease-out;
}

/* Улучшенный toast */
.toast {
  max-width: 90vw;
  word-break: break-word;
  text-align: center;
}

/* Индикатор загрузки при API вызовах */
.api-loading {
  position: fixed;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--gold-light), transparent);
  background-size: 200% 100%;
  animation: shimmer 1s linear infinite;
  z-index: 9999;
  pointer-events: none;
}

/* Плавный скролл */
.page-body, .modal-panel {
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}

/* Улучшенные dropdown select */
.job-duration-select {
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23c8a832' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  padding-right: 32px !important;
}

/* Disabled кнопки */
button:disabled, .btn-buy:disabled, .btn-sell:disabled {
  opacity: 0.4;
  pointer-events: none;
}

/* Анимация для бейджей уведомлений */
.mail-badge {
  animation: pulse 2s ease-in-out infinite;
}


/* ═══ UI IMPROVEMENTS ═══════════════════════════════════ */

/* Плавные переходы между страницами */
.game-page.active {
  animation: fadeIn 0.15s ease !important;
}

/* Улучшенный dropdown для заработков */
.job-duration-select {
  -webkit-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23c8a832' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  padding-right: 32px !important;
  cursor: pointer;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.job-duration-select:focus {
  border-color: var(--gold) !important;
  box-shadow: 0 0 8px rgba(200,160,32,.3);
  outline: none;
}

/* Улучшенные тосты */
.toast {
  position: fixed;
  bottom: 70px;
  left: 50%;
  transform: translateX(-50%) translateY(20px);
  background: linear-gradient(135deg, rgba(44,26,14,.97), rgba(30,15,5,.97));
  border: 2px solid var(--gold-dark);
  border-radius: 10px;
  padding: 10px 20px;
  color: var(--text-cream);
  font-size: 12px;
  font-weight: 600;
  z-index: 9999;
  opacity: 0;
  transition: all 0.3s ease;
  max-width: 85vw;
  text-align: center;
  box-shadow: 0 4px 20px rgba(0,0,0,.6);
  pointer-events: none;
}
.toast.show {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

/* Кнопка ОТПЛЫТЬ — более заметная */
.btn-attack {
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

/* Улучшенные карточки рейтинга */
.rating-row {
  transition: background 0.15s, transform 0.15s;
}
.rating-row:active {
  transform: scale(0.98);
}

/* Плавный скролл */
.page-body, .modal-panel {
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}

/* Кнопки — тактильная обратная связь */
.btn-buy:active, .btn-sell:active, .btn-sec:active, .btn-attack:active,
.menu-btn:active, .submenu-btn:active {
  transform: scale(0.95) !important;
  transition: transform 0.1s;
}

/* Статус-бар — чёткий разделитель */
.stats-bar {
  box-shadow: 0 2px 8px rgba(0,0,0,.4);
}

/* Отчёты — более читаемый лог */
.report-battle-log {
  font-family: monospace;
  font-size: 11px;
  line-height: 1.8;
}

/* ═══ Game Icons (gi) — система иконок ═══════════════════════════════ */
.gi,.gi-sm,.gi-md,.gi-lg,.gi-xl,.gi-xxl{display:inline-block;vertical-align:middle;object-fit:cover;border-radius:6px;}
.gi{width:16px;height:16px;}
.gi-sm{width:20px;height:20px;}
.gi-md{width:32px;height:32px;}
.gi-lg{width:48px;height:48px;}
.gi-xl{width:64px;height:64px;}
.gi-xxl{width:96px;height:96px;}
.gi-emoji{text-align:center;line-height:1;}
.gi-emoji.gi{font-size:14px;}
.gi-emoji.gi-sm{font-size:18px;}
.gi-emoji.gi-md{font-size:28px;}
.gi-emoji.gi-lg{font-size:42px;}
.gi-emoji.gi-xl{font-size:56px;}
.gi-emoji.gi-xxl{font-size:84px;}

.guild-search-card .gsc-badge,
.guild-search-card .gsc-info{-webkit-tap-highlight-color:rgba(200,160,32,.3);touch-action:manipulation;user-select:none;}

.guild-search-card{cursor:pointer;-webkit-tap-highlight-color:rgba(200,160,32,.3);touch-action:manipulation;}

/* === CREW CARD v5 === */
.crew-card{display:flex;flex-direction:column;background:linear-gradient(135deg,rgba(40,20,5,.95),rgba(25,10,2,.98));border:1px solid rgba(200,160,32,.4);border-radius:10px;padding:10px;margin-bottom:8px;box-sizing:border-box;}
.crew-card-top{display:flex;gap:10px;align-items:flex-start;justify-content:flex-start;}
.crew-card-img{width:80px;height:80px;flex-shrink:0;border-radius:8px;overflow:hidden;border:2px solid rgba(200,160,32,.35);box-shadow:0 2px 8px rgba(0,0,0,.5);margin-left:0;}
.crew-card-img img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0;}
.crew-card-info{flex:1;min-width:0;}
.crew-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;}
.crew-card-name{color:var(--gold-light);font-size:14px;font-weight:700;}
.crew-card-price{color:var(--gold);font-size:13px;font-weight:700;white-space:nowrap;}
.crew-card-stats{font-size:11px;color:rgba(240,230,200,.85);line-height:1.7;}
.crew-card-stats b{color:#fff;}
.crew-card-stock{color:rgba(240,230,200,.5);font-size:11px;margin-top:3px;}
.crew-card-stock b{color:#80e040;}
.crew-card-bottom{display:flex;gap:6px;align-items:center;margin-top:8px;padding-top:8px;border-top:1px solid rgba(200,160,32,.15);width:100%;}
.crew-card-bottom input[type="number"]{width:36px;background:rgba(0,0,0,.3);border:1px solid rgba(200,160,32,.3);border-radius:5px;color:var(--text-cream);font-size:11px;padding:5px 2px;text-align:center;flex-shrink:0;}
.crew-card-bottom .btn-buy,.crew-card-bottom .btn-sell{flex:1;padding:6px 0;font-size:12px;text-align:center;white-space:nowrap;}

.crew-card-top{justify-content:flex-start;padding-left:0;}
.crew-card-img{margin-left:0;align-self:flex-start;}
.crew-card{align-items:stretch;}

/* === AVATAR IMAGES v2 === */
.settings-avatar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0 4px;}
.settings-avatar{width:100%;aspect-ratio:1;border-radius:10px;overflow:hidden;cursor:pointer;border:2px solid rgba(200,160,32,.2);transition:border-color 0.2s;box-sizing:border-box;}
.settings-avatar-active{border-color:var(--gold) !important;box-shadow:0 0 8px rgba(200,160,32,.5);}
.settings-avatar:hover{border-color:rgba(200,160,32,.5);}
.settings-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:8px;}
.profile-avatar{border-radius:10px;overflow:hidden;}
.profile-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:10px;}

/* === AVATAR IMAGES v2 === */
.settings-avatar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0 4px;}
.settings-avatar{width:100%;aspect-ratio:1;border-radius:10px;overflow:hidden;cursor:pointer;border:2px solid rgba(200,160,32,.2);transition:border-color 0.2s;box-sizing:border-box;}
.settings-avatar-active{border-color:var(--gold) !important;box-shadow:0 0 8px rgba(200,160,32,.5);}
.settings-avatar:hover{border-color:rgba(200,160,32,.5);}
.settings-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:8px;}

/* FIX: корабль квадратный в рамке */
#profileShipAvatar{border-radius:10px;overflow:hidden;}
#profileShipAvatar img,.profile-avatar img{border-radius:0 !important;}

/* Avatar img inline */
.avatar-inline{width:28px;height:28px;border-radius:6px;object-fit:cover;vertical-align:middle;margin-right:4px;}

/* ═══ UI theme: финальная конфигурация (v3) ═══ */
/* Дерево только на игровом контейнере, body не трогаем */
.game-wrapper{
  background:url('/img/bg-wood-light.jpg') top center/100% auto repeat-y!important;
}
/* Главное меню — прозрачное (фон виден через game-wrapper) */
.main-menu{
  background:transparent!important;
  min-height:auto!important;
  display:flex;
  flex-direction:column;
}
/* Бары прогресса и работы — светлое дерево */
.progress-bar-section,.job-bar-section{
  background:url('/img/bg-wood-light.jpg') center/cover!important;
}
/* Тул-бар с валютами — тёмное дерево */
.stats-bar{
  background:url('/img/bg-wood-dark.jpg') center/cover!important;
}
/* Вертикальные разделители в тул-баре — скрыть */
.stat-divider{display:none!important;}
/* Убрать тень перехода между sea-area и прогресс-баром */
.sea-area{box-shadow:none!important;}
.sea-area::after,.sea-area::before{display:none!important;}
/* Дочерние страницы внутри main-menu — прозрачный фон */
.main-menu .game-page,
.main-menu .page-body,
.main-menu #pageContainer > *{
  background:transparent!important;
}
/* Футер — тёмное дерево, прилипает к концу контента */
.footer-bar{
  background:url('/img/bg-wood-dark.jpg') center/cover!important;
  border-top:2px solid rgba(0,0,0,.4)!important;
  margin-top:12px;
}
.footer-bar .bottom-links,
.bottom-links{
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
}
.footer-bar .bottom-links{padding-top:4px;}
/* Убрать мерцающие точки/частицы с фона */
body::before,body::after,
html::before,html::after,
.main-menu::before,.main-menu::after,
.game-wrapper::before,.game-wrapper::after{
  display:none!important;
  content:none!important;
  animation:none!important;
  background:none!important;
}

/* ═══ UI fix: скрыть мерцающие частицы (sparkle) ═══ */
.sparkle,
.sparkles,
.particle,
.particles,
.twinkle,
.bubble,
[class*="sparkle"],
[class*="particle"]{
  display:none!important;
  animation:none!important;
  opacity:0!important;
}

/* ═══ UI fix: прозрачность notify-zone чтобы не видно было дыры ═══ */
.notify-zone,
#notify-zone{
  background:transparent!important;
}

/* ═══ UI: кнопки боя с монстром в путешествии ═══ */
.tv-part-row{text-align:left!important;}

/* При выборе части — скрыть остальные строки (добавляется классом) */
.tv-parts-block.has-selection .tv-part-row:not(.tv-selected){
  display:none!important;
}

/* Кнопка Атаковать — картинка без золотой плашки */
.tv-btn-atk:not([disabled]){
  background:url('/img/buttons-text/btn-attack.png') left center/contain no-repeat!important;
  font-size:0!important;
  color:transparent!important;
  border:none!important;
  box-shadow:none!important;
  width:120px!important;
  height:36px!important;
  padding:0!important;
  margin:4px 0!important;
  display:block!important;
}

/* Панель выбора оружия — вертикально, по левому краю */
.tv-wpick{
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:4px!important;
}

/* Кнопки Ядра/Гарпуны/Сабли/Мушкеты */
.tv-wbtn{
  font-size:0!important;
  color:transparent!important;
  border:none!important;
  box-shadow:none!important;
  background:transparent center/contain no-repeat!important;
  width:120px!important;
  height:36px!important;
  padding:0!important;
  display:block!important;
}
.tv-wbtn[onclick*="'cannon'"]{background-image:url('/img/buttons-text/btn-balls.png')!important;}
.tv-wbtn[onclick*="'harpoon'"]{background-image:url('/img/buttons-text/btn-harpoons.png')!important;}
.tv-wbtn[onclick*="'sabre'"]{background-image:url('/img/buttons-text/btn-sabers.png')!important;}
.tv-wbtn[onclick*="'musket'"]{background-image:url('/img/buttons-text/btn-muskets.png')!important;}

/* Крестик отмены */
.tv-wbtn-cancel{
  width:36px!important;
  height:36px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

/* При выборе части — скрыть её собственную кнопку АТАКОВАТЬ (показаны только оружия) */
.tv-part-row.tv-selected .tv-btn-atk{
  display:none!important;
}

/* ═══ UI: таймер КД в бою с монстром ═══ */
.tv-btn-atk[disabled]{display:none!important;}
.tv-cdblock{
  background:transparent!important;
  border:none!important;
  border-top:none!important;
  border-bottom:none!important;
  box-shadow:none!important;
  padding:8px 14px!important;
}


/* ============================================================================
   КНОПКИ-ПЛАШКИ ЗОЛОТЫЕ (btn-base.png) — ЕДИНАЯ ПЛАШКА + ВИДИМЫЙ ТЕКСТ
   ----------------------------------------------------------------------------
   Бывшие «картинки-с-текстом» теперь — единая золотая плашка
   с PNG-подложкой btn-base.png (1584×656) и текстом, нарисованным CSS'ом
   (в стиле плашки ника игрока: #3a1c08 + тень 0 1px 0 rgba(255,220,150,.4)).
   ============================================================================ */

/* --- БАЗА: единая плашка для всех боевых/действий --- */
body button.btn-attack[onclick*="executePvp"],
body button.btn-attack[onclick*="attackPlayer"],
body button.btn-attack[onclick*="attackSpainShip"],
body button.btn-attack[onclick*="startSpain"],
body button.btn-attack[onclick*="attackSpainFort"],
body button.btn-attack[onclick*="executeRaid"],
body button.btn-attack[onclick*="execArmadaBattleAttack"],
body button.btn-attack[onclick*="attackWarShip"],
body button.btn-attack[onclick*="declareWar"],
body button.btn-attack[onclick*="tvDeparture"],
body button.btn-attack[onclick*="upgradeGuildBuild"],
body button.btn-attack[onclick*="buildDreadnought"],
body button.btn-sell[onclick*="cursePlayer"],
body button.btn-sec[onclick*="openComposeToNick"],
body button.btn-buy[onclick*="replyToBoardPost"],
body button.btn-raid-sec[onclick*="nextRaidTarget"],
body button.btn-raid-sec[onclick*="nextPvpOpponent"],
body button.btn-raid-sec[onclick*="spainNextShip"],
body button.btn-raid-sec[onclick*="spainBattleNext"],
body button.btn-raid-sec[onclick*="armadaBattleNext"],
body button.btn-raid-sec[onclick*="warBattleNext"],
body button.btn-raid-sec[onclick*="alchemist"],
body button.btn-guild-action[onclick*="depositTreasury"],
body button.btn-guild-action[onclick*="withdrawTreasury"],
body button.btn-buy[onclick*="startMineJob"],
body button.btn-buy[onclick*="collectGuildMine"],
body button.btn-buy[onclick*="inviteToGuild"],
body #ratingBody button.tab-btn,
body #ratingBody button.btn-sec[onclick*="ratingPagePrev"],
body #ratingBody button.btn-sec[onclick*="ratingPageNext"],
body #page-mail button.compose-btn,
body #page-mail button.btn-sec[onclick*="markAllRead"],
body #page-mail button.msg-filter-btn,
body button.btn-sell[onclick*="confirmClearMail"],
body #page-mail button.btn-sec[onclick*="_mailPage"] {
  /* Подложка — единая золотая плашка */
  background-color: transparent !important;
  background-image: url("/img/buttons-text/btn-base.png") !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: 100% 100% !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  /* Текст — как на плашке ника игрока (.player-name) */
  color: #3a1c08 !important;
  font-family: 'Palatino Linotype','Book Antiqua',Palatino,'Times New Roman',serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 1px !important;
  text-align: center !important;
  text-indent: 0 !important;
  text-transform: none !important;
  text-shadow: 0 1px 0 rgba(255,220,150,.5) !important;
  line-height: 1 !important;
  /* Размеры и форма */
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 6px !important;           /* чтобы длинные надписи не прилипали к краю */
  margin: 4px auto !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 170px !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 1584 / 656 !important;
  cursor: pointer !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}

/* На очень узких экранах (≤360px) уменьшаем шрифт, чтобы «УСИЛЕНИЕ»/«АТАКОВАТЬ» не переносились */
@media (max-width: 380px) {
  body button.btn-attack[onclick*="executePvp"],
  body button.btn-attack[onclick*="attackPlayer"],
  body button.btn-attack[onclick*="attackSpainShip"],
  body button.btn-attack[onclick*="startSpain"],
  body button.btn-attack[onclick*="attackSpainFort"],
  body button.btn-attack[onclick*="executeRaid"],
  body button.btn-attack[onclick*="execArmadaBattleAttack"],
  body button.btn-attack[onclick*="attackWarShip"],
  body button.btn-attack[onclick*="declareWar"],
  body button.btn-attack[onclick*="tvDeparture"],
  body button.btn-attack[onclick*="upgradeGuildBuild"],
  body button.btn-attack[onclick*="buildDreadnought"],
  body button.btn-sell[onclick*="cursePlayer"],
  body button.btn-sec[onclick*="openComposeToNick"],
  body button.btn-buy[onclick*="replyToBoardPost"],
  body button.btn-raid-sec[onclick*="nextRaidTarget"],
  body button.btn-raid-sec[onclick*="nextPvpOpponent"],
  body button.btn-raid-sec[onclick*="spainNextShip"],
  body button.btn-raid-sec[onclick*="spainBattleNext"],
  body button.btn-raid-sec[onclick*="armadaBattleNext"],
  body button.btn-raid-sec[onclick*="warBattleNext"],
  body button.btn-raid-sec[onclick*="alchemist"],
  body button.btn-guild-action[onclick*="depositTreasury"],
  body button.btn-guild-action[onclick*="withdrawTreasury"],
  body button.btn-buy[onclick*="startMineJob"],
  body button.btn-buy[onclick*="collectGuildMine"],
  body button.btn-buy[onclick*="inviteToGuild"],
  body #ratingBody button.tab-btn,
  body #ratingBody button.btn-sec[onclick*="ratingPagePrev"],
  body #ratingBody button.btn-sec[onclick*="ratingPageNext"],
  body #page-mail button.compose-btn,
  body #page-mail button.btn-sec[onclick*="markAllRead"],
  body #page-mail button.msg-filter-btn,
  body button.btn-sell[onclick*="confirmClearMail"],
  body #page-mail button.btn-sec[onclick*="_mailPage"] {
    font-size: 11px !important;
    letter-spacing: .5px !important;
    padding: 0 4px !important;
  }
}

/* --- Тактильный отклик при нажатии --- */
body button.btn-attack[onclick*="executePvp"]:active,
body button.btn-attack[onclick*="attackPlayer"]:active,
body button.btn-attack[onclick*="attackSpainShip"]:active,
body button.btn-attack[onclick*="startSpain"]:active,
body button.btn-attack[onclick*="attackSpainFort"]:active,
body button.btn-attack[onclick*="executeRaid"]:active,
body button.btn-attack[onclick*="execArmadaBattleAttack"]:active,
body button.btn-attack[onclick*="attackWarShip"]:active,
body button.btn-attack[onclick*="declareWar"]:active,
body button.btn-attack[onclick*="tvDeparture"]:active,
body button.btn-attack[onclick*="upgradeGuildBuild"]:active,
body button.btn-attack[onclick*="buildDreadnought"]:active,
body button.btn-sell[onclick*="cursePlayer"]:active,
body button.btn-sec[onclick*="openComposeToNick"]:active,
body button.btn-buy[onclick*="replyToBoardPost"]:active,
body button.btn-raid-sec[onclick*="nextRaidTarget"]:active,
body button.btn-raid-sec[onclick*="nextPvpOpponent"]:active,
body button.btn-raid-sec[onclick*="spainNextShip"]:active,
body button.btn-raid-sec[onclick*="spainBattleNext"]:active,
body button.btn-raid-sec[onclick*="armadaBattleNext"]:active,
body button.btn-raid-sec[onclick*="warBattleNext"]:active,
body button.btn-raid-sec[onclick*="alchemist"]:active,
body button.btn-guild-action[onclick*="depositTreasury"]:active,
body button.btn-guild-action[onclick*="withdrawTreasury"]:active,
body button.btn-buy[onclick*="startMineJob"]:active,
body button.btn-buy[onclick*="collectGuildMine"]:active,
body button.btn-buy[onclick*="inviteToGuild"]:active,
body #ratingBody button.tab-btn:active,
body #ratingBody button.btn-sec[onclick*="ratingPagePrev"]:active,
body #ratingBody button.btn-sec[onclick*="ratingPageNext"]:active,
body #page-mail button.compose-btn:active,
body #page-mail button.btn-sec[onclick*="markAllRead"]:active,
body #page-mail button.msg-filter-btn:active,
body button.btn-sell[onclick*="confirmClearMail"]:active,
body #page-mail button.btn-sec[onclick*="_mailPage"]:active {
  transform: scale(0.96) !important;
  transition: transform 0.08s !important;
  filter: brightness(0.95) !important;
}

/* --- OVERRIDE для рейтинга: размеры плашек подстраиваем под flex-контейнер,
       чтобы не ломались в столбик и не были слишком большими. --- */
body #ratingBody button.tab-btn,
body #ratingBody button.btn-sec[onclick*="ratingPagePrev"],
body #ratingBody button.btn-sec[onclick*="ratingPageNext"] {
  /* Фиксированная доля, как у боевых плашек — не растягиваются */
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 115px !important;
  flex-basis: 115px !important;
  margin: 4px 0 !important;
  font-size: clamp(9px, 2.4vw, 12px) !important;
  letter-spacing: 0.5px !important;
  padding: 0 4px !important;
}

/* Родительский flex-ряд в рейтинге — собираем пары в центр, маленький gap.
   Селектор матчит только прямых потомков #ratingBody с inline display:flex,
   это все 3 ряда табов рейтинга (Игроки/Братства, Уровень/Рейтинг или Победы/Участники,
   и пагинация Назад/Далее). rating-row и прочие строки не flex — не зацеплены. */
body #ratingBody > div[style*="display:flex"] {
  justify-content: center !important;
  gap: 2px !important;
}

/* --- OVERRIDE для КАЗНЫ: меньше плашки и более компактные input'ы --- */
body #bhTreasuryBody button.btn-guild-action[onclick*="depositTreasury"],
body #bhTreasuryBody button.btn-guild-action[onclick*="withdrawTreasury"] {
  flex: 0 0 auto !important;
  width: auto !important;
  flex-basis: 95px !important;
  max-width: 95px !important;
  min-width: 0 !important;
  margin: 0 !important;
  font-size: 11px !important;
  letter-spacing: .3px !important;
  padding: 0 4px !important;
}

/* Поля ввода в казне — компактнее */
body #bhTreasuryBody .guild-deposit-input {
  font-size: 12px !important;
  padding: 5px 6px !important;
  height: auto !important;
  min-height: 0 !important;
  box-sizing: border-box !important;
}
/* Поле ввода СУММЫ — узкое (флексится) */
body #bhTreasuryBody input.guild-deposit-input[type="number"] {
  flex: 1 1 0 !important;
  width: 0 !important;
  min-width: 60px !important;
}
/* Селект валюты — только иконка, без надписи */
body #bhTreasuryBody select.guild-deposit-input {
  flex: 0 0 auto !important;
  width: 50px !important;
  min-width: 50px !important;
  max-width: 50px !important;
  padding-right: 14px !important;
  text-align: center !important;
  text-align-last: center !important;
  font-size: 13px !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}
body #bhTreasuryBody .guild-deposit-row {
  gap: 4px !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
}

/* --- ДЕКЛАРАЦИЯ ВОЙНЫ: плашка, центрирована в карточке цели, средний размер --- */
body button.btn-attack[onclick*="declareWar"] {
  display: block !important;
  margin: 8px auto 0 !important;
  flex: none !important;
  width: 70% !important;
  max-width: 200px !important;
}

/* Числовой бейдж непрочитанных через ::after.
   JS устанавливает атрибут data-count="N" на кнопке фильтра.
   CSS псевдоэлемент рендерит красный кружок с цифрой в правом-верхнем углу. */
body #page-mail button.msg-filter-btn[data-count]::after {
  content: attr(data-count);
  position: absolute;
  top: -9px;
  right: -6px;
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  background: #e03030;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 20px;
  text-align: center;
  border-radius: 10px;
  border: 1.5px solid rgba(0,0,0,0.55);
  box-shadow: 0 1px 3px rgba(0,0,0,.6);
  font-family: 'Palatino Linotype','Book Antiqua',Palatino,serif;
  letter-spacing: 0;
  pointer-events: none;
  z-index: 10;
  box-sizing: border-box;
  display: inline-block;
  white-space: nowrap;
}
body #page-mail button.msg-filter-btn:not([data-count])::after,
body #page-mail button.msg-filter-btn[data-count=""]::after,
body #page-mail button.msg-filter-btn[data-count="0"]::after {
  display: none !important;
}

/* --- ПОЧТА --- */
/* Три кнопки в один ряд: Написать / Прочитать всё / Очистить всё */
body #page-mail .mail-actions-row {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 4px !important;
  margin: 0 auto 10px !important;
  padding: 0 4px !important;
  box-sizing: border-box !important;
}
body #page-mail .mail-actions-row > button.compose-btn,
body #page-mail .mail-actions-row > button.btn-sec,
body #page-mail .mail-actions-row > button.btn-sell {
  flex: 1 1 0 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 170px !important;
  margin: 0 !important;
  padding: 0 6px !important;
  font-size: clamp(9px, 2.4vw, 12px) !important;
  letter-spacing: .2px !important;
}
/* 4 фильтра — в ряд, делим равномерно, overflow:visible чтобы счётчик не обрезался */
body #page-mail .msg-filter-row {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 4px !important;
  margin: 0 0 14px !important;
  padding: 0 12px !important;
  justify-content: center !important;
  overflow: visible !important;
}
body #page-mail button.msg-filter-btn {
  flex: 1 1 0 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 105px !important;
  margin: 0 !important;
  padding: 0 3px !important;
  font-size: clamp(8px, 2.3vw, 11px) !important;
  letter-spacing: 0 !important;
  overflow: visible !important;
  position: relative !important;
}
body #page-mail button.msg-filter-btn.active,
body #page-mail button.msg-filter-btn:hover,
body #page-mail button.msg-filter-btn:focus {
  overflow: visible !important;
  position: relative !important;
}
/* Явно скрываем старый индикатор-точку если он как-то пережил миграцию */
body #page-mail button.msg-filter-btn .tab-unread-dot {
  display: none !important;
}
/* Пагинация ◂ ▸ — компактные стрелки */
body #page-mail button.btn-sec[onclick*="_mailPage"] {
  flex: none !important;
  width: 50px !important;
  max-width: 50px !important;
  min-width: 50px !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 13px !important;
}
/* ===== /КНОПКИ-ПЛАШКИ ЗОЛОТЫЕ ===== */

/* ============================================================================
   КНОПКИ BACK / HOME в шапке страниц — прямоугольные под пропорции PNG 1584×656
   Картинки home.png / back.png — прямоугольные 2.414:1, поэтому и кнопка такая.
   ============================================================================ */
body .page-back-btn,
body button.page-back-btn,
body .page-home-btn,
body button.page-home-btn {
  width: 70px !important;
  height: auto !important;
  min-width: 70px !important;
  min-height: 0 !important;
  aspect-ratio: 1584 / 656 !important;
  background-color: transparent !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: 100% 100% !important;  /* заполняет всю кнопку */
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  color: transparent !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
  padding: 0 !important;
  flex-shrink: 0 !important;
  cursor: pointer !important;
  display: inline-block !important;
  box-sizing: border-box !important;
}
body .page-back-btn,
body button.page-back-btn {
  background-image: url("/img/back.png") !important;
}
body .page-home-btn,
body button.page-home-btn {
  background-image: url("/img/home.png") !important;
}
body .page-back-btn:active,
body button.page-back-btn:active,
body .page-home-btn:active,
body button.page-home-btn:active {
  transform: scale(0.92) !important;
  transition: transform 0.08s !important;
}
/* ===== /BACK/HOME ===== */

/* ============================================================================
   BATTLE ACTIONS ROW — 3 кнопки боя в один ряд (АТАКОВАТЬ / Следующий / Усиление)
   Применяется на страницах: Грабёж, PvP×3, Армада, Испанцы, Гильдейская война.
   Кнопки сжимаются по ширине экрана, не вылезают за края.
   ============================================================================ */
body .battle-actions-row {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;        /* всегда в одну строку */
  justify-content: center !important;
  align-items: center !important;
  gap: 2px !important;                 /* было 4px — уменьшено для +места кнопкам */
  width: 100% !important;
  max-width: 100% !important;
  margin: 12px 0 8px !important;
  padding: 0 4px !important;
  box-sizing: border-box !important;
}

/* Внутри battle-actions-row кнопки фиксированной ширины, собираем в центр.
   Покрывает классы из боёв (btn-attack, btn-raid-sec) И профиля (btn-sec, btn-sell, btn-buy). */
body .battle-actions-row > button.btn-attack,
body .battle-actions-row > button.btn-raid-sec,
body .battle-actions-row > button.btn-sec,
body .battle-actions-row > button.btn-sell,
body .battle-actions-row > button.btn-buy {
  flex: 0 0 auto !important;            /* НЕ растягиваться */
  width: 33.33% !important;             /* делим контейнер на 3 равные части */
  min-width: 0 !important;
  max-width: 150px !important;          /* потолок (увеличено с 140px на 10px) */
  margin: 0 !important;
  padding: 0 6px !important;            /* +внутренний отступ чтобы текст не лип к краям PNG */
  font-size: clamp(9px, 2.4vw, 12px) !important;
  letter-spacing: 0.5px !important;
}

/* Одна кнопка в ряду (шахта, постройки) — занимает больше места, но не растягивается бесконечно */
body .battle-actions-row > button.btn-attack:only-child,
body .battle-actions-row > button.btn-raid-sec:only-child,
body .battle-actions-row > button.btn-sec:only-child,
body .battle-actions-row > button.btn-sell:only-child,
body .battle-actions-row > button.btn-buy:only-child {
  width: 50% !important;
  max-width: 170px !important;
}
/* Две кнопки в ряду (карточка профиля: Атаковать+Написать, Проклятие+Пригласить) */
body .battle-actions-row > button.btn-attack:first-child:nth-last-child(2),
body .battle-actions-row > button.btn-attack:first-child:nth-last-child(2) ~ button,
body .battle-actions-row > button.btn-sec:first-child:nth-last-child(2),
body .battle-actions-row > button.btn-sec:first-child:nth-last-child(2) ~ button,
body .battle-actions-row > button.btn-sell:first-child:nth-last-child(2),
body .battle-actions-row > button.btn-sell:first-child:nth-last-child(2) ~ button,
body .battle-actions-row > button.btn-buy:first-child:nth-last-child(2),
body .battle-actions-row > button.btn-buy:first-child:nth-last-child(2) ~ button {
  width: 48% !important;
  max-width: 160px !important;
}
/* ===== /BATTLE ACTIONS ROW ===== */


/* ===== CURRENCY ICONS (gold/pearl/gem) ===== */
/* Inline icons replacing 🪙/🫧/💎 emoji throughout the game */
.cur-ico{
  display:inline-block;
  width:24px;height:24px;
  vertical-align:-6px;          /* align to text baseline */
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  flex-shrink:0;
}
.cur-gold {background-image:url('/img/gold.png');}
.cur-pearl{background-image:url('/img/pearl.png');}
.cur-gem  {background-image:url('/img/gem.png');}
.cur-ship {background-image:url('/img/ship.png');}

/* Smaller variant for cramped places (chat, badges) */
.cur-ico.s{width:18px;height:18px;vertical-align:-4px;}
/* Larger variant for headers, treasury display */
.cur-ico.l{width:32px;height:32px;vertical-align:-9px;}
.cur-ico.xl{width:48px;height:48px;vertical-align:-14px;}
/* ===== /CURRENCY ICONS ===== */

/* ===== CURRENCY TOGGLE (for treasury — replaces select) ===== */
.cur-toggle{
  display:inline-flex;
  gap:2px;
  background:rgba(0,0,0,.35);
  border:1px solid var(--gold-dark);
  border-radius:8px;
  padding:2px;
  flex-shrink:0;
}
.cur-toggle-btn{
  background:transparent;
  border:none;
  cursor:pointer;
  padding:4px 8px;
  border-radius:6px;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s;
}
.cur-toggle-btn:not(.active){opacity:.4;}
.cur-toggle-btn.active{background:rgba(200,160,32,.25);opacity:1;}
.cur-toggle-btn:hover:not(.active){opacity:.7;}
/* ===== /CURRENCY TOGGLE ===== */

/* ===== ИКОНКИ ВАЛЮТ В ШАПКЕ STATS-BAR ===== */
/* В шапке (узкая полоска) иконки чуть меньше + правильное выравнивание */
.stat-icon .cur-ico{
  width:18px;
  height:18px;
  vertical-align:middle;
}
.stat-item{align-items:center;}
/* ===== /ИКОНКИ ВАЛЮТ В ШАПКЕ ===== */
