*{box-sizing:border-box}
html,body{margin:0;height:100%;overflow:hidden;background:#0b1725;color:#eef3f7;font:15px/1.4 "Segoe UI",Arial,sans-serif}
.marketplace{--gold:#ebce8b;--muted:#97afbd;position:fixed;inset:0 0 var(--footer-h,62px);display:flex;flex-direction:column;gap:18px;padding:26px max(20px,calc((100vw - 1240px)/2));background:radial-gradient(ellipse at 85% 8%,#23526755,transparent 55%),linear-gradient(160deg,#122b3e,#09131f);overflow:hidden}
.marketplace button,.marketplace a,.marketplace input{font-family:inherit;font-style:normal}
.market-header{display:flex;align-items:center;justify-content:space-between;gap:18px;flex:none}
.eyebrow{color:#9fb6c2;font-size:10px;font-weight:700;letter-spacing:.16em}
h1{margin:3px 0 4px;font-size:clamp(25px,3vw,38px);line-height:1.15;color:var(--gold);font-weight:750;letter-spacing:-.035em}
.heading p{margin:0;color:var(--muted);font-size:13px}
.dock-wallet{display:flex;gap:8px;flex:none}
.dock-wallet>div{display:flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid #41607380;background:#08142266;border-radius:12px;min-width:125px}
.dock-wallet img{width:35px;height:35px;object-fit:contain}
.dock-wallet span{color:#9fb6c2;font-size:10px}.dock-wallet strong{display:block;color:#f4e0ae;font-size:19px;line-height:1.2;font-variant-numeric:tabular-nums}
.dock-nav{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #48617470;flex:none;gap:10px}
.dock-nav [role=tablist]{display:flex;gap:20px}.dock-nav button{border:0;border-bottom:2px solid transparent;color:#98b0c0;background:none;padding:10px 0 12px;font-size:14px;font-weight:700;cursor:pointer}
.dock-nav button[aria-selected=true]{border-color:var(--gold);color:var(--gold)}#harbor-count{display:inline-block;margin-left:5px;padding:1px 6px;border-radius:5px;background:#34556966;font-size:10px}
.dock-nav>a{font-size:12px;color:#c8d8e2;text-decoration:none}.dock-nav>a:hover{color:var(--gold)}
.dock-panel{min-height:0;display:flex;flex:1;flex-direction:column;gap:12px;overflow:auto;scrollbar-width:thin;scrollbar-color:#476478 transparent;padding-bottom:5px}[hidden]{display:none!important}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:none}.section-heading h2{font-size:16px;font-weight:650;margin:0}.section-heading p{margin:0;color:var(--muted);font-size:11px}
.market-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;min-height:0;flex:1;max-height:490px}
.product-card{min-width:0;display:grid;grid-template-rows:28px minmax(66px,1fr) 32px 136px 40px 22px;gap:9px;padding:16px;border:1px solid #426173;border-radius:14px;background:linear-gradient(160deg,#1b3547ee,#102335ee);box-shadow:0 10px 24px #0002;overflow:hidden}
.product-card h2{margin:0;font-size:20px;font-weight:700;color:#f4e2ba;align-self:center}.ship-card{border-color:#736948}.premium-card{background:linear-gradient(160deg,#3a3d39,#172b37 70%);border-color:#a08952}
.product-image{position:relative;min-width:0;min-height:0;display:flex;justify-content:center;align-items:center;border-radius:10px;background:radial-gradient(ellipse at 50% 95%,#7196a629,transparent 65%);overflow:hidden}
.product-image:after{content:"";position:absolute;bottom:1px;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,#7b9eac66,transparent)}
.product-image img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 5px #0003)}.currency-image img{width:66%;height:90%}
.ship-stats{display:flex;gap:6px;align-items:center}.stat-pill{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;border:1px solid #718a9833;border-radius:7px;background:#7294a011;color:#cbdbe1;font-size:12px;font-weight:700;padding:4px;white-space:nowrap}.stat-pill img{width:19px;height:19px;object-fit:contain}
.info-bubbles{display:grid;grid-template-rows:1fr 1fr;gap:8px}.info-bubble,.exchange-bubble{min-width:0;display:flex;align-items:center;gap:12px;padding:8px 12px;border:1px solid #47647688;border-radius:10px;background:#06162466}
.bubble-icon,.exchange-bubble img{width:43px;height:43px;flex:none;object-fit:contain}.bubble-copy{min-width:0;line-height:1.12}.bubble-label{display:block;color:#96afbe;font-size:9px;text-transform:uppercase;letter-spacing:.09em}.bubble-copy strong{display:block;margin-top:3px;font-size:21px;color:#f3e6c5;font-variant-numeric:tabular-nums}.bubble-sub{display:block;color:#9cb3c1;font-size:10px;margin-top:2px}
.exchange-flow{grid-row:4;position:relative;display:grid;grid-template-rows:1fr 1fr;gap:8px}.exchange-bubble span{font-size:12px;color:#c2d3dc;line-height:1.15}.exchange-bubble strong{display:block;font-size:21px;color:#f3e6c5}.exchange-arrow{position:absolute;left:29px;top:50%;transform:translateY(-50%);color:var(--gold);background:#122b3b;border-radius:50%;width:18px;height:18px;text-align:center;font-size:15px;line-height:18px}.exchange-rate{grid-row:3;align-self:center;text-align:center;color:#9cb3c1;font-size:10px}
.dock-button{display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid #f0dba3;border-radius:8px;background:linear-gradient(#efd69c,#d6b46b);color:#172636;font-weight:750;cursor:pointer;text-decoration:none;transition:filter .15s,transform .15s}.dock-button:hover{filter:brightness(1.09)}.dock-button:active{transform:translateY(1px)}.dock-button:disabled{cursor:not-allowed;background:#344651;color:#9eafb7;border-color:#526572;filter:none;transform:none}.action-button{width:100%;font-size:14px;min-height:40px}.action-note{margin:0;text-align:center;align-self:center;color:#9bb1bf;font-size:10px;line-height:1.2}
.berth-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;flex:1;min-height:0;max-height:400px}.berth{padding:22px;border:1px dashed #476170;border-radius:14px;background:#0b1c2b66;display:flex;flex-direction:column;align-items:center;min-height:0}.berth>img{width:100%;height:140px;min-height:0;flex:1;object-fit:contain;opacity:.45;filter:grayscale(.6)}.berth.is-owned{border-style:solid;border-color:#8e7e54;background:#1b3543}.berth.is-owned>img{filter:none;opacity:1}.berth h3{font-size:21px;color:var(--gold);margin:10px 0 0}.berth-status{color:var(--muted);font-size:12px;margin:6px 0 14px}.berth-count{display:flex;justify-content:space-between;align-items:center;width:100%;background:#06152388;border-radius:8px;padding:10px 14px;color:#a9c0ce;font-size:12px}.berth-count strong{font-size:22px;color:#f1dfb1}.harbor-bottom{display:flex;justify-content:space-between;align-items:center;gap:18px}.harbor-bottom p{max-width:560px;color:var(--muted);font-size:12px}.sail-button{padding:12px 22px;white-space:nowrap;font-size:13px}
.market-toast{position:fixed;bottom:calc(var(--footer-h,62px) + 12px);left:50%;transform:translate(-50%,8px);z-index:30001;width:max-content;max-width:calc(100vw - 28px);padding:12px 18px;border:1px solid #8b7b54;border-radius:10px;background:#102436;color:#f4e7c6;box-shadow:0 8px 25px #0006;font-size:13px;opacity:0;pointer-events:none;transition:.2s;text-align:center}.market-toast.show{opacity:1;transform:translate(-50%,0)}
.marketplace :focus-visible{outline:2px solid #ffe2a0;outline-offset:3px}
@media(min-width:1025px) and (max-height:780px){.marketplace{padding-top:16px;padding-bottom:12px;gap:12px}.product-card{padding:12px;gap:7px;grid-template-rows:25px minmax(52px,1fr) 28px 118px 38px 20px}.info-bubbles,.exchange-flow{gap:6px}.info-bubble,.exchange-bubble{padding:5px 9px}.bubble-icon,.exchange-bubble img{width:36px;height:36px}.bubble-copy strong,.exchange-bubble strong{font-size:19px}.action-button{min-height:38px}.dock-panel{gap:9px}.product-card h2{font-size:18px}}
@media(max-width:1024px){.marketplace{padding:16px;gap:12px}.heading p{font-size:11px}.dock-wallet>div{min-width:100px;padding:7px}.dock-wallet img{width:28px;height:28px}.dock-wallet strong{font-size:16px}.market-grid{display:flex;flex-direction:column;flex:0 0 auto;max-height:none;gap:8px}.product-card{grid-template-columns:106px minmax(95px,1fr) 210px 130px;grid-template-rows:28px 40px 22px;gap:4px 10px;padding:10px;min-height:116px;flex:none;align-items:center}.product-card h2{grid-column:2;grid-row:1;font-size:18px}.product-image{grid-column:1;grid-row:1/4;height:90px}.ship-stats{grid-column:2;grid-row:2;flex-wrap:wrap}.stat-pill{flex:0 1 auto;font-size:10px}.info-bubbles{grid-column:3;grid-row:1/4;height:100%;gap:4px}.info-bubble{padding:4px 8px;gap:8px}.bubble-icon{width:31px;height:31px}.bubble-copy strong{font-size:17px}.bubble-label{font-size:8px}.bubble-sub{font-size:9px}.action-button{grid-column:4;grid-row:1/3;font-size:12px}.action-note{grid-column:4;grid-row:3;font-size:9px}.exchange-flow{grid-column:3;grid-row:1/4;height:100%;gap:4px}.exchange-bubble{padding:4px 8px;gap:8px}.exchange-bubble img{width:31px;height:31px}.exchange-bubble strong{font-size:17px}.exchange-bubble span{font-size:10px}.exchange-arrow{left:24px}.exchange-rate{grid-column:2;grid-row:2/4;text-align:left;font-size:10px}.berth{padding:14px}.berth .eyebrow{font-size:8px}.berth-status{font-size:10px;text-align:center}.berth h3{font-size:18px}}
@media(max-width:760px){.marketplace{padding:10px;gap:9px}.market-header{gap:8px}.heading .eyebrow{font-size:8px;letter-spacing:.08em}.heading p{display:none}h1{font-size:25px}.dock-wallet{gap:4px}.dock-wallet>div{min-width:0;padding:5px;gap:3px}.dock-wallet img{width:23px;height:23px}.dock-wallet span{font-size:8px}.dock-wallet strong{font-size:14px}.product-card{grid-template-columns:80px minmax(85px,1fr) 180px 105px;padding:8px;gap:4px 7px}.product-image{height:86px}.product-card h2{font-size:16px}.dock-nav [role=tablist]{gap:18px}.dock-nav button{font-size:13px;padding:7px 0 9px}.dock-nav>a{font-size:11px}}
@media(max-width:600px){.marketplace{padding:9px 8px;gap:8px}.market-header{align-items:center}.heading .eyebrow{font-size:7px;letter-spacing:.03em}h1{font-size:21px;margin-bottom:0}.dock-wallet>div{border:0;background:none;padding:2px}.dock-wallet img{width:22px;height:22px}.dock-wallet span{font-size:0}.dock-wallet strong{font-size:12px}.dock-nav [role=tablist]{gap:14px}.dock-nav button{font-size:12px}.dock-nav>a{font-size:10px}.section-heading h2{font-size:13px}.section-heading p{font-size:9px}.dock-panel{gap:7px}.market-grid{gap:6px}.product-card{grid-template-columns:62px minmax(0,1fr) 100px;grid-template-rows:21px 25px 39px;gap:4px 6px;padding:8px;min-height:111px;border-radius:11px}.product-image{grid-column:1;grid-row:1/4;height:77px}.product-card h2{grid-column:2;grid-row:1;font-size:15px}.ship-stats{grid-column:2;grid-row:2;gap:4px;flex-wrap:nowrap}.stat-pill{font-size:9px;padding:3px;gap:3px}.stat-pill img{width:14px;height:14px}.info-bubbles{grid-column:2;grid-row:3;grid-template-columns:1fr 52px;grid-template-rows:1fr;gap:4px}.info-bubble{padding:3px 5px;gap:4px;border-radius:7px}.bubble-icon{width:23px;height:23px}.bubble-label{font-size:7px}.bubble-copy strong{font-size:13px;margin-top:1px}.bubble-sub{display:none}.owned-bubble .bubble-icon{display:none}.owned-bubble .bubble-label{font-size:6px}.action-button{grid-column:3;grid-row:2/4;align-self:start;margin-top:3px;min-height:34px;font-size:11px;padding:6px 3px}.action-note{grid-column:3;grid-row:3;align-self:end;font-size:8px;line-height:1.1}.exchange-flow{grid-column:2;grid-row:2/4;grid-template-columns:1fr 1fr;grid-template-rows:1fr;gap:4px}.exchange-bubble{padding:4px;gap:4px;flex-direction:column;align-items:flex-start;justify-content:center;border-radius:7px}.exchange-bubble img{width:21px;height:21px;position:absolute;top:4px}.exchange-bubble span{padding-top:18px;font-size:8px}.exchange-bubble strong{display:inline;font-size:12px}.exchange-bubble{position:relative}.exchange-arrow{display:none}.exchange-rate{grid-column:3;grid-row:1;font-size:8px;line-height:1.1;text-align:center}.berth-grid{display:flex;flex-direction:column;gap:8px;flex:none;max-height:none}.berth{display:grid;grid-template-columns:80px 1fr 75px;grid-template-rows:22px 22px;gap:4px 10px;padding:14px;min-height:95px;align-items:center}.berth>.eyebrow{display:none}.berth>img{width:80px;height:64px;grid-column:1;grid-row:1/3}.berth h3{grid-column:2;grid-row:1;margin:0;font-size:17px}.berth-status{grid-column:2;grid-row:2;margin:0;text-align:left;font-size:10px}.berth-count{grid-column:3;grid-row:1/3;display:block;text-align:center;font-size:8px;padding:8px 4px}.berth-count strong{display:block;font-size:19px}.harbor-bottom{flex-direction:column;align-items:stretch;gap:4px}.harbor-bottom p{font-size:11px;margin:4px 0}.sail-button{padding:10px}.harbor-panel{gap:12px}}
@media(max-width:370px){h1{font-size:18px}.heading .eyebrow{font-size:6px}.product-card{grid-template-columns:48px minmax(0,1fr) 88px;padding:6px;gap:4px}.product-card h2{font-size:13px}.stat-pill{font-size:8px}.bubble-icon{width:19px;height:19px}.info-bubble{gap:2px;padding:3px}.info-bubbles{grid-template-columns:1fr 44px}.dock-nav>a{font-size:9px}.dock-wallet img{width:19px;height:19px}}
@media(prefers-reduced-motion:reduce){.marketplace *{transition:none!important}}

/* 2026-10-08: hlavní trojice lodí a odměny za úkoly */
.reward-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;flex:1;min-height:0;max-height:575px}
.reward-card{display:flex;flex-direction:column;min-width:0;min-height:0;gap:8px;padding:16px 18px;border:1px solid #426578;border-radius:14px;background:linear-gradient(155deg,#1b3a4b,#102233 78%);box-shadow:0 12px 28px #0002;overflow:hidden}
.reward-card.starter-card{border-color:#547d99}.reward-card.royal-card{border-color:#a78a48;background:linear-gradient(145deg,#354043,#182939 68%)}
.reward-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none}.reward-step{color:#acc0cd;font-size:10px;font-weight:800;letter-spacing:.12em}.reward-tag{border:1px solid #7d856f;border-radius:20px;padding:4px 8px;color:#e0d0a3;font-size:10px;font-weight:800;white-space:nowrap}
.reward-image{display:flex;align-items:center;justify-content:center;flex:1;min-height:110px;margin:0 0 -3px;background:radial-gradient(ellipse at 50% 74%,#67a6e125,transparent 72%);overflow:hidden}.reward-image img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 8px #07152655)}
.reward-card h3{margin:0;color:#f4e2ba;font-size:clamp(21px,2.1vw,29px);line-height:1.08;white-space:normal}.reward-description{margin:0;color:#b7cbd7;font-size:12px;line-height:1.45;min-height:36px}.reward-description strong{color:#f6dfaf}
.reward-footer{display:flex;flex-direction:column;gap:6px;margin-top:auto}.reward-footer .ship-stats{min-height:30px}.reward-footer .stat-pill{font-size:11px}.reward-status{margin:0;background:#091c2acc;border:1px solid #56728266;padding:7px 8px;border-radius:8px;color:#b7c7ce;font-size:11px;font-weight:700;text-align:center}.reward-card.is-owned .reward-status{border-color:#af955b;color:#f4db98;background:#443c244f}
.royal-info{text-align:center;font-size:12px;color:#e6d09b;margin:4px 0 3px}
.reward-link{border:1px solid #aa986d;border-radius:8px;background:#263f4b;color:#f5ddb1;font-size:12px;font-weight:700;min-height:31px;cursor:pointer}.reward-link:hover{background:#36566a}
.fleet-panel .section-heading{gap:12px}
.berth-grid{grid-template-columns:repeat(5,minmax(0,1fr));max-height:450px;gap:10px}.berth{padding:13px 10px}.berth h3{font-size:17px;text-align:center;line-height:1.15}.berth-status{margin:8px 0 10px;text-align:center}.berth-count{padding:8px 7px;font-size:10px;gap:3px}.berth-count strong{font-size:18px}.berth .eyebrow{min-height:13px;text-align:center;letter-spacing:.09em}.berth.royal-berth{border-color:#897343}
@media(max-width:1024px){.reward-grid{gap:10px;max-height:650px}.reward-card{padding:11px;gap:5px}.reward-step{font-size:8px}.reward-tag{font-size:8px;padding:3px 6px}.reward-card h3{font-size:19px}.reward-description{font-size:10px}.reward-footer .stat-pill{font-size:9px}.berth-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:none;flex:0 0 auto}.berth{min-height:180px}.berth>img{height:90px;flex:1}.berth h3{font-size:16px}}
@media(max-width:700px){.dock-nav [role=tablist]{gap:12px}.dock-nav button{font-size:12px}.fleet-panel{overflow:auto}.reward-grid{grid-template-columns:1fr;gap:9px;flex:none;max-height:none}.reward-card{display:grid;grid-template-columns:120px minmax(0,1fr);grid-template-rows:auto auto auto auto;gap:4px 12px;min-height:170px;padding:11px}.reward-topline{grid-column:1/3;grid-row:1}.reward-image{grid-column:1;grid-row:2/5;min-height:108px;max-height:130px}.reward-card h3{grid-column:2;grid-row:2;font-size:19px}.reward-description{grid-column:2;grid-row:3;min-height:0}.reward-footer{grid-column:2;grid-row:4;margin:0}.reward-footer .ship-stats{min-height:0}.reward-footer .stat-pill{font-size:9px}.reward-footer .stat-pill img{height:13px;width:13px}.reward-status{font-size:10px;padding:5px}.royal-info{display:none}}
@media(max-width:600px){.section-heading p{font-size:9px;text-align:right}.reward-card{grid-template-columns:100px minmax(0,1fr);min-height:154px;gap:3px 8px}.reward-image{max-height:115px;min-height:90px}.reward-tag{font-size:8px}.reward-card h3{font-size:17px}.reward-description{font-size:10px;line-height:1.28}.reward-link{font-size:10px;min-height:27px}.berth-grid{display:flex;flex-direction:column;gap:8px;flex:0 0 auto;max-height:none}.berth{display:grid;grid-template-columns:80px 1fr 75px;grid-template-rows:22px 22px;gap:4px 10px;min-height:95px;padding:14px;align-items:center}.berth>.eyebrow{display:none}.berth>img{width:80px;height:64px;grid-column:1;grid-row:1/3}.berth h3{grid-column:2;grid-row:1;margin:0;font-size:16px;text-align:left}.berth-status{grid-column:2;grid-row:2;margin:0;text-align:left;font-size:10px}.berth-count{grid-column:3;grid-row:1/3;display:block;text-align:center;font-size:8px;padding:8px 4px}.berth-count strong{display:block;font-size:19px}}
@media(max-width:370px){.reward-card{grid-template-columns:81px minmax(0,1fr);gap:2px 7px}.reward-card h3{font-size:15px}.reward-description{font-size:9px}.reward-tag{font-size:7px}.reward-step{font-size:7px}.dock-nav button{font-size:11px}.dock-nav [role=tablist]{gap:9px}}

/* STRÁNKA LODĚNIC / NÁVRH VÝPRAVY – žádný zásah do hry */
.expedition-layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:14px;align-items:stretch}
.expedition-roster-card,.expedition-settings{min-width:0;min-height:0;padding:16px;border:1px solid #456273;border-radius:14px;background:linear-gradient(150deg,#1b3547d9,#0c2031ec);display:flex;flex-direction:column;gap:11px}
.expedition-settings{border-color:#7e724e}
.expedition-subhead{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:27px;flex:none}
.expedition-subhead h3,.expedition-difficulty-header h3{font-size:16px;color:#f2dcaf;margin:0}
.expedition-subhead span,.expedition-difficulty-header small{font-size:11px;color:#9db7c7}
.selection-counter{color:#f5e1b4;font-size:16px;padding:2px 9px;border:1px solid #826b43;background:#594a2c4a;border-radius:8px}
.fleet-roster{min-height:0;display:grid;grid-template-rows:repeat(5,minmax(0,1fr));gap:7px;flex:1}
.fleet-roster-row{min-width:0;display:grid;grid-template-columns:76px minmax(0,1fr) 105px;align-items:center;gap:10px;min-height:58px;padding:5px 10px;border:1px solid #4c6a7a8e;border-radius:10px;background:#07182694}
.fleet-roster-row img{width:76px;height:57px;object-fit:contain}
.fleet-roster-row.is-locked img{opacity:.48;filter:grayscale(.45)}
.roster-info{min-width:0;display:flex;flex-direction:column;gap:2px}
.roster-info strong{font-size:14px;color:#f2e0b8;line-height:1.15}
.roster-info small{font-size:11px;color:#b5ceda;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.roster-info span{color:#93adbe;font-size:10px}
.fleet-add{min-height:33px;padding:5px 8px;border:1px solid #d4ba7e;border-radius:8px;background:#e2c589;color:#142635;font-size:11px;font-weight:800;cursor:pointer}
.fleet-add:disabled{background:#1b3242;color:#899fae;border-color:#4c6472;cursor:default}
.fleet-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,58px);gap:7px}
.fleet-slot{display:flex;align-items:center;gap:7px;border:1px dashed #526c78;border-radius:9px;padding:6px 8px;background:#091a2894;min-width:0;color:#89a6b6;font-size:12px}
.fleet-slot.filled{border-style:solid;border-color:#8c7952;color:#e9d9b1}
.fleet-slot img{width:49px;height:43px;object-fit:contain;flex:none}
.fleet-slot strong{font-size:11px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.slot-number{display:inline-flex;align-items:center;justify-content:center;border-radius:5px;background:#243e50;color:#c5d6dd;min-width:20px;height:23px;font-size:11px}
.fleet-slot button{margin-left:auto;border:0;background:#3a4050;color:#fff;font-size:20px;cursor:pointer;line-height:1;min-width:26px;min-height:26px;border-radius:6px}
.expedition-difficulty-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:2px}
.expedition-difficulty-header h3{white-space:nowrap}
.expedition-difficulty-header small{text-align:right;line-height:1.1}
.difficulty-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.difficulty-option{padding:9px 7px;border:1px solid #4f6f80;border-radius:8px;background:#132d3e;color:#c5d8e1;font-size:12px;font-weight:700;cursor:pointer;min-height:39px}
.difficulty-option.special-option{border-color:#8c7250;color:#f2d7ad}
.difficulty-option.selected,.difficulty-option[aria-pressed="true"]{border-color:#f3d593;background:#7b6334;color:#fff5d2}
.expedition-actions{display:flex;align-items:center;gap:12px;margin-top:auto}
.expedition-save{padding:9px 14px;min-height:40px;font-size:12px;flex:1}
.expedition-state{color:#d9b28b;font-size:11px;white-space:nowrap}.expedition-state.is-saved{color:#a5d7b2}
.expedition-note,.expedition-disclaimer{margin:0;color:#b1c6d2;font-size:11px;line-height:1.25}
.expedition-disclaimer{font-size:10px;color:#88a7ba;border-top:1px solid #42617260;padding-top:7px}
/* Výpis tříd a schopností přímo pod názvem každé lodi */
.berth{gap:3px}
.berth h3{margin:6px 0 0}
.berth-class{margin:0;text-align:center;min-height:27px;color:#aec8d6;font-size:11px;line-height:1.2}
.berth-stats{display:flex;justify-content:center;flex-wrap:wrap;gap:5px;width:100%;margin:1px 0 4px}
.berth-stats span{padding:4px 6px;border:1px solid #59748380;border-radius:7px;color:#f2e4c5;background:#0b1c2bb8;font-weight:700;font-size:10px;white-space:nowrap}
.berth-status{margin:5px 0 8px}
@media(min-width:1025px) and (max-height:780px){.expedition-roster-card,.expedition-settings{padding:10px;gap:7px}.fleet-roster-row{min-height:48px}.fleet-roster-row img{height:43px}.fleet-slots{grid-template-rows:repeat(2,49px)}.expedition-difficulty-header h3{font-size:14px}.difficulty-option{min-height:34px;padding:7px 4px}.expedition-disclaimer{padding-top:4px}}
@media(max-width:1024px){.expedition-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;flex:0 0 auto}.expedition-roster-card,.expedition-settings{padding:11px;gap:8px}.fleet-roster{display:flex;flex-direction:column}.fleet-roster-row{grid-template-columns:56px minmax(0,1fr) 83px;gap:6px;min-height:61px;padding:4px 6px}.fleet-roster-row img{width:56px;height:51px}.roster-info strong{font-size:12px}.roster-info small{font-size:10px}.roster-info span{font-size:9px}.fleet-add{font-size:10px;padding:4px;min-height:30px}.fleet-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.fleet-slot img{width:35px}.expedition-difficulty-header{flex-direction:column;gap:2px}.expedition-difficulty-header small{text-align:left}.difficulty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.difficulty-option{min-height:36px}.berth-class{font-size:10px}}
@media(max-width:700px){.expedition-layout{grid-template-columns:1fr;gap:10px}.fleet-roster-row{grid-template-columns:66px minmax(0,1fr) 90px}.fleet-roster-row img{width:66px;height:52px}.expedition-roster-card,.expedition-settings{padding:10px}.expedition-difficulty-header{flex-direction:row}.fleet-slots{grid-template-rows:repeat(2,52px)}.berth{grid-template-columns:80px 1fr 72px;grid-template-rows:22px 16px 20px 20px;gap:1px 10px;min-height:103px;padding:8px 10px}.berth>img{grid-column:1;grid-row:1/5;width:80px;height:82px}.berth h3{grid-column:2;grid-row:1;margin:0;align-self:end}.berth-class{grid-column:2;grid-row:2;text-align:left;min-height:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.berth-stats{grid-column:2;grid-row:3;justify-content:flex-start;align-self:center;margin:0;gap:3px}.berth-stats span{font-size:9px;padding:2px 4px}.berth-status{grid-column:2;grid-row:4;margin:0;font-size:10px;text-align:left}.berth-count{grid-column:3;grid-row:1/5;font-size:8px;padding:8px 3px;text-align:center}.berth-count strong{display:block;font-size:19px}}
@media(max-width:395px){.dock-nav button{font-size:10px!important}.dock-nav [role=tablist]{gap:9px!important}.roster-info small{font-size:9px}.roster-info span{font-size:8px}.berth{grid-template-columns:66px minmax(0,1fr) 58px;column-gap:6px}.berth>img{width:66px}.berth h3{font-size:14px}.berth-class{font-size:9px}.berth-count strong{font-size:17px}.expedition-actions{flex-direction:column;gap:4px}.expedition-save{width:100%}}

/* VELKÉ A ČITELNÉ PÍSMO – děti, lodní ikony HP a pancíře */
/* Obecně: důležitá sdělení nejsou menší než navigace; uvnitř panelů je případně svislý posuv */
html,body{font-size:16px}
.marketplace{gap:15px;padding-top:20px;padding-bottom:16px}
.eyebrow{font-size:12px;letter-spacing:.09em}
.heading p{font-size:15px}
.dock-wallet span{font-size:12px}.dock-wallet strong{font-size:21px}
.dock-nav button{font-size:17px}.dock-nav>a{font-size:15px}
#harbor-count{font-size:13px;padding:2px 8px}
.section-heading h2{font-size:21px}.section-heading p{font-size:14px}
.dock-panel{gap:12px}
/* Přístaviště: 5 velkých karet ve stejné řadě, čitelné třídy a obrázkové statistiky */
.berth-grid{max-height:none;min-height:0;gap:11px}
.berth{gap:6px;padding:15px 12px}
.berth .eyebrow{font-size:11px;letter-spacing:.045em}
.berth>img{height:160px;min-height:100px}
.berth h3{font-size:21px;line-height:1.2;margin:4px 0 0}
.berth-class{font-size:15px;line-height:1.3;min-height:37px;color:#e0eef7;font-weight:650}
.berth-stats{gap:7px;margin:2px 0 3px}
.berth-stats .berth-stat{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:14px;line-height:1.1;padding:6px 7px;white-space:nowrap}
.berth-stat img{width:25px;height:25px;object-fit:contain;flex:none}
.berth-status{font-size:13px;line-height:1.25;margin:4px 0 7px;min-height:17px}
.berth-count{font-size:13px;min-height:44px;padding:8px 10px}
.berth-count strong{font-size:23px}
.harbor-bottom p{font-size:14px}.sail-button{font-size:16px;min-height:46px}
/* Příprava výpravy */
.expedition-roster-card,.expedition-settings{gap:12px;padding:15px}
.expedition-subhead h3,.expedition-difficulty-header h3{font-size:20px}
.expedition-subhead span,.expedition-difficulty-header small{font-size:13px;line-height:1.25}
.selection-counter{font-size:19px;padding:5px 11px}
.fleet-roster{gap:8px}
.fleet-roster-row{grid-template-columns:82px minmax(0,1fr) 112px;gap:10px;min-height:75px;padding:7px 9px}
.fleet-roster-row>img{width:82px;height:61px}
.roster-info{gap:4px}.roster-info strong{font-size:17px;line-height:1.15}
.roster-info small{font-size:13px;color:#c4dbe7}
.roster-info span{font-size:12px}
.roster-stats{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.roster-stats .roster-stat{display:inline-flex;gap:4px;align-items:center;font-size:13px;color:#f0e3c5;font-weight:750;white-space:nowrap}
.fleet-roster-row .roster-stat img{width:23px;height:23px;object-fit:contain;opacity:1;filter:none;flex:none}
.roster-stats .roster-owned{font-size:12px;color:#a7c3d3;white-space:nowrap}
.fleet-add{font-size:14px;min-height:42px;padding:7px 9px}
.fleet-slots{grid-template-rows:repeat(2,64px);gap:9px}
.fleet-slot{gap:9px;font-size:15px;padding:8px}.fleet-slot img{width:52px;height:45px}
.fleet-slot strong{font-size:14px}.slot-number{font-size:14px;min-width:24px;height:28px}
.fleet-slot button{min-width:32px;min-height:32px}
.difficulty-grid{gap:9px}.difficulty-option{min-height:48px;font-size:15px;display:flex;align-items:center;justify-content:center;gap:5px;padding:10px 7px}
.difficulty-option img{width:25px;height:25px;object-fit:contain}
.expedition-save{min-height:46px;font-size:15px}.expedition-state{font-size:14px}
.expedition-note{font-size:13px;line-height:1.35}.expedition-disclaimer{font-size:12px;line-height:1.35}
/* Prodejní dok / Černý trh */
.market-grid{max-height:none}
.product-card{grid-template-rows:35px minmax(92px,1fr) 38px 145px 44px 32px;gap:9px}
.product-card h2{font-size:22px}
.stat-pill{font-size:14px;padding:6px}.stat-pill img{width:25px;height:25px}
.bubble-label{font-size:12px}.bubble-sub{font-size:12px}.bubble-copy strong{font-size:24px}
.exchange-rate{font-size:13px}.exchange-bubble span{font-size:14px}.exchange-bubble strong{font-size:24px}
.action-button{font-size:16px;min-height:44px}.action-note{font-size:12px}
/* Menší počítač či tablet: karty přeskupit, ne zmenšovat text na nečitelných 8 px */
@media(max-width:1024px){
 .marketplace{padding:14px;gap:11px}
 .heading p{font-size:13px}
 .dock-nav button{font-size:16px}.dock-nav>a{font-size:14px}
 .berth-grid{grid-template-columns:repeat(3,minmax(0,1fr));flex:0 0 auto;gap:10px}
 .berth{min-height:365px;padding:14px 10px}.berth>img{height:130px;min-height:108px}
 .berth h3{font-size:20px}.berth-class{font-size:14px;min-height:35px}.berth-status{font-size:13px}
 .berth-stats .berth-stat{font-size:13px;padding:5px}.berth-stat img{width:23px;height:23px}
 .expedition-layout{gap:11px}
 .expedition-roster-card,.expedition-settings{padding:12px;gap:11px}
 .fleet-roster-row{grid-template-columns:60px minmax(0,1fr) 90px;gap:7px;min-height:85px}
 .fleet-roster-row>img{width:60px;height:55px}
 .roster-info strong{font-size:16px}.roster-info small{font-size:12px}
 .roster-stats .roster-stat{font-size:12px}.fleet-roster-row .roster-stat img{width:21px;height:21px}
 .fleet-add{font-size:13px;min-height:42px}
 .fleet-slots{grid-template-rows:repeat(2,64px)}.fleet-slot strong{font-size:13px}
 .difficulty-option{font-size:14px;min-height:45px}
 .market-grid{max-height:none}
 .product-card{min-height:140px;grid-template-columns:114px minmax(90px,1fr) 200px 142px;grid-template-rows:32px 46px 31px;gap:5px 10px}
 .product-card h2{font-size:19px}.product-image{height:106px}
 .stat-pill{font-size:12px}.stat-pill img{width:20px;height:20px}
 .bubble-label{font-size:11px}.bubble-copy strong{font-size:19px}.bubble-sub{font-size:11px}
 .action-button{font-size:14px;min-height:41px}.action-note{font-size:11px}
 .exchange-rate{font-size:12px}.exchange-bubble span{font-size:12px}
}
@media(max-width:700px){
 .marketplace{padding:11px;gap:9px}
 .eyebrow{font-size:10px}.section-heading h2{font-size:18px}.section-heading p{font-size:12px}
 .dock-nav button{font-size:14px}.dock-nav>a{font-size:12px}
 .expedition-layout{grid-template-columns:1fr;gap:12px}
 .fleet-roster-row{grid-template-columns:65px minmax(0,1fr) 96px;min-height:88px;gap:7px}
 .fleet-roster-row>img{width:65px;height:62px}
 .roster-info strong{font-size:16px}.roster-info small{font-size:13px}
 .roster-stats .roster-stat{font-size:12px}
 .berth-grid{grid-template-columns:1fr;display:flex;flex-direction:column;gap:10px}
 .berth{display:grid;grid-template-columns:94px minmax(0,1fr) 76px;grid-template-rows:auto auto auto auto;gap:3px 10px;min-height:155px;padding:11px 12px;align-items:center}
 .berth .eyebrow{display:none}.berth>img{width:94px;height:130px;min-height:0;grid-column:1;grid-row:1/5}
 .berth h3{grid-column:2;grid-row:1;font-size:20px;align-self:end;margin:0;text-align:left}
 .berth-class{grid-column:2;grid-row:2;font-size:14px;line-height:1.2;min-height:0;white-space:normal;overflow:visible}
 .berth-stats{grid-column:2;grid-row:3;justify-content:flex-start;gap:5px;margin:1px 0;flex-wrap:wrap}
 .berth-stats .berth-stat{font-size:12px;padding:3px 5px;gap:4px}.berth-stat img{width:21px;height:21px}
 .berth-status{grid-column:2;grid-row:4;margin:0;font-size:12px}
 .berth-count{grid-column:3;grid-row:1/5;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:11px;padding:6px 3px;min-height:65px}
 .berth-count strong{font-size:20px}
 .market-grid{gap:9px}
 .product-card{grid-template-columns:94px minmax(0,1fr) 125px;grid-template-rows:28px 45px 40px;min-height:145px;padding:9px;gap:4px 8px}
 .product-card h2{grid-column:2;grid-row:1;font-size:18px}
 .product-image{grid-column:1;grid-row:1/4;height:105px}
 .ship-stats{grid-column:2;grid-row:2;gap:3px}
 .stat-pill{font-size:11px;padding:3px}.stat-pill img{width:19px;height:19px}
 .info-bubbles{grid-column:2;grid-row:3;grid-template-columns:1fr 64px;grid-template-rows:1fr;gap:4px;height:auto}
 .info-bubble{padding:4px 6px}.bubble-icon{width:25px;height:25px}
 .bubble-label{font-size:10px}.bubble-copy strong{font-size:16px}.bubble-sub{display:none}
 .action-button{grid-column:3;grid-row:2/4;font-size:13px;min-height:45px}
 .action-note{grid-column:3;grid-row:3;font-size:10px}
 .exchange-flow{grid-column:2;grid-row:2/4;grid-template-columns:1fr 1fr;grid-template-rows:1fr;gap:5px;height:auto}
 .exchange-bubble{position:relative;gap:2px;padding:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
 .exchange-bubble img{position:static;width:25px;height:25px}.exchange-bubble span{padding:0;font-size:10px}.exchange-bubble strong{font-size:16px}
 .exchange-arrow{display:none}.exchange-rate{grid-column:3;grid-row:1;font-size:11px;line-height:1.2}
}
@media(max-width:430px){
 .marketplace{padding:9px 7px;gap:8px}
 h1{font-size:24px}.heading .eyebrow{font-size:9px}
 .dock-nav [role=tablist]{gap:10px}.dock-nav button{font-size:13px!important;padding:8px 0}
 .dock-nav>a{display:none}
 .berth{grid-template-columns:78px minmax(0,1fr) 62px;min-height:156px;gap:3px 7px;padding:10px 8px}
 .berth>img{width:78px;height:118px}.berth h3{font-size:18px}
 .berth-class{font-size:13px}.berth-stats .berth-stat{font-size:11px;padding:3px 4px}
 .berth-stat img{width:19px;height:19px}.berth-status{font-size:11px}.berth-count{font-size:10px}
 .expedition-subhead h3,.expedition-difficulty-header h3{font-size:18px}
 .expedition-subhead span,.expedition-difficulty-header small{font-size:12px}
 .fleet-roster-row{grid-template-columns:55px minmax(0,1fr) 83px;gap:5px;padding:6px;min-height:85px}
 .fleet-roster-row>img{width:55px;height:56px}.roster-info strong{font-size:15px}.roster-info small{font-size:12px}
 .roster-stats .roster-stat{font-size:11px}.fleet-roster-row .roster-stat img{width:20px;height:20px}
 .fleet-add{font-size:12px;min-height:42px;padding:5px}
 .difficulty-option{font-size:14px}.difficulty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .product-card{grid-template-columns:68px minmax(0,1fr) 100px;min-height:141px;gap:4px 6px}
 .product-image{height:95px}.product-card h2{font-size:17px}
 .action-button{font-size:12px}.ship-stats{flex-wrap:wrap}.stat-pill{font-size:10px}
 .exchange-bubble span{font-size:9px}
}

/* Opravna a příprava flotily 2026-10-09: zachován původní layout a design */
.fleet-battle-notice{padding:10px 14px;border:1px solid #526f6d;border-radius:11px;background:#17402e55;color:#d7f2df;font-size:14px;font-weight:700;flex:none}
.fleet-battle-notice.has-warning{border-color:#9c7b4a;background:#7c50232e;color:#f6dfa9}
.fleet-repair-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:11px;padding:10px 14px;background:#071925a8;border:1px solid #456171;flex:none}
.fleet-repair-bar span{font-size:14px;color:#d6e8f0;font-weight:700}
.fleet-repair-bar button{min-height:38px;padding:7px 14px;font-size:14px;white-space:nowrap}
.fleet-roster-row{align-items:center;min-height:99px;grid-template-columns:76px minmax(0,1fr) 117px}
.fleet-roster-row.is-selected{border-color:#9e8959;background:#2e3d4180}
.fleet-roster-row.is-damaged{border-left:3px solid #d59756}
.fleet-roster-row.is-healthy{border-left:3px solid #458e73}
.fleet-roster-row>img{width:76px;height:75px;object-fit:contain}
.fleet-roster-row .roster-info{min-width:0}
.roster-info .ship-custom-name{font-weight:500;font-size:13px;color:#b8cbd7}
.roster-stats .roster-stat{font-size:13px}
.fleet-health-track{width:min(230px,100%);height:7px;background:#0c1b29;border-radius:12px;overflow:hidden;margin-top:3px}
.fleet-health-track span{display:block;height:100%;background:#5bb38c;border-radius:12px}
.is-damaged .fleet-health-track span{background:#d78c53}
.ship-repair-description{display:block;font-size:12px;color:#d8c5a4}
.roster-controls{display:flex;flex-direction:column;gap:6px;align-self:center}
.roster-controls button{width:100%;min-height:34px;padding:5px 6px;border-radius:8px;font-weight:750;cursor:pointer}
.roster-controls .fleet-add{background:#34516a;color:#f9e8bd;border:1px solid #6b899e;font-size:12px}
.roster-controls .ship-repair-button{background:#d6b46b;border:1px solid #efd69c;color:#172636;font-size:12px}
.roster-controls button:disabled{opacity:.45;cursor:not-allowed}
.repair-ready{font-size:12px;color:#a5dfb8;text-align:center}
.fleet-slots{grid-template-rows:repeat(2,minmax(75px,auto));gap:8px}
.fleet-slot.filled{display:flex;gap:7px;min-width:0;align-items:center;padding:7px}
.fleet-slot.is-damaged{border-color:#c68a54}.fleet-slot.is-swapping{outline:2px solid #f0dbaa;outline-offset:-2px}
.fleet-slot .slot-body{min-width:0;display:flex;flex-direction:column;flex:1;gap:2px}
.fleet-slot .slot-body strong{font-size:13px}.fleet-slot .slot-body small{font-size:12px;color:#bcd1d8}
.fleet-slot .slot-swap{width:auto;min-width:65px;font-size:12px;padding:5px}
.expedition-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:center}
.expedition-actions .expedition-state{grid-column:1/-1;text-align:center}
.expedition-sail{min-height:46px;padding:9px;font-size:15px;background:linear-gradient(#f5e1aa,#d4b56c);color:#152634}
.expedition-sail:disabled{opacity:.48}
.difficulty-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1024px){
  .fleet-roster-row{grid-template-columns:70px minmax(0,1fr) 109px}
  .fleet-roster-row>img{width:70px;height:67px}
  .fleet-slots{grid-template-rows:none}
  .fleet-slot .slot-swap{min-width:55px}
}
@media(max-width:700px){
  .fleet-repair-bar{flex-direction:column;align-items:stretch}
  .fleet-repair-bar button{width:100%}
  .fleet-roster-row{grid-template-columns:69px minmax(0,1fr) 99px;gap:7px}
  .fleet-roster-row>img{width:68px;height:72px}
  .roster-info strong{font-size:15px}
  .roster-stats .roster-stat{font-size:11px}.fleet-roster-row .roster-stat img{width:19px;height:19px}
  .fleet-slots{grid-template-rows:none}
  .fleet-slot .slot-body strong{font-size:12px}
  .difficulty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:430px){
  .fleet-battle-notice{font-size:12px}
  .fleet-repair-bar span{font-size:12px}
  .fleet-roster-row{grid-template-columns:54px minmax(0,1fr) 88px;gap:5px;padding:6px}
  .fleet-roster-row>img{width:54px;height:65px}
  .roster-info strong{font-size:14px}.roster-info small{font-size:11px}
  .roster-controls button{font-size:10px!important;padding:4px 3px}
  .fleet-slot .slot-swap{min-width:52px;font-size:10px}
  .fleet-slot img{width:38px;height:35px}
  .expedition-actions{grid-template-columns:1fr}
  .expedition-actions .expedition-state{grid-column:1}
}

.fleet-repair-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.fleet-repair-actions .dock-shop-link{padding:7px 13px;font-size:14px;font-weight:750;border:1px solid #7c94a1;border-radius:8px;background:#274355;color:#e9e1c2;cursor:pointer;min-height:38px}
@media(max-width:700px){.fleet-repair-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.fleet-repair-actions .dock-shop-link{min-width:0}}
@media(max-width:430px){.fleet-repair-actions{grid-template-columns:1fr}}
.fleet-roster{grid-template-rows:none;grid-auto-rows:minmax(90px,auto);align-content:start;overflow:auto;scrollbar-width:thin;padding-right:2px}
@media(max-width:700px){.fleet-roster{overflow:visible;max-height:none}}
@media(max-width:600px){.fleet-slots{grid-template-columns:1fr}}

/* 2026-10-10: Loděnice pouze Prodejní dok + Moje flotila; statistiky DMG */
.ship-card .ship-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:5px;min-width:0}
.ship-card .ship-stats .stat-pill{min-width:0;display:flex;gap:3px;padding:5px 2px;font-size:clamp(10px,.85vw,13px);white-space:nowrap}
.ship-card .ship-stats .stat-pill img{height:21px;width:21px;flex:none}
.berth-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:5px}
.berth-stats .berth-stat{white-space:nowrap;min-width:0}
.berth-stats .berth-stat img{flex:none}
@media(max-width:1024px){
  .ship-card .ship-stats{grid-template-columns:repeat(3,minmax(0,max-content));justify-content:start;gap:6px}
  .ship-card .ship-stats .stat-pill{font-size:12px;padding:3px 5px}
  .ship-card .ship-stats .stat-pill img{width:20px;height:20px}
}
@media(max-width:600px){
  .ship-card .ship-stats{grid-template-columns:repeat(3,minmax(0,max-content));gap:2px;align-items:center}
  .ship-card .ship-stats .stat-pill{font-size:10px;gap:2px;padding:2px 3px}
  .ship-card .ship-stats .stat-pill img{height:14px;width:14px}
  .berth-stats{justify-content:flex-start;gap:4px}
  .berth-stats .berth-stat{font-size:11px;padding:3px 4px}
  .berth-stats .berth-stat img{height:18px;width:18px}
}

/* Jižní město a královský přístav — společný vzhled nákupu v celých loděnicích.
   Zboží používá stejný sloupec, pořadí a bubliny CENA / VLASTNÍŠ jako lodě. */
.heading h1{font-size:clamp(24px,2.55vw,36px);line-height:1.12}
.dock-nav [role=tablist]{width:100%;display:flex;align-items:center;gap:clamp(9px,1.55vw,23px);flex-wrap:wrap;row-gap:0}
.dock-nav button{white-space:nowrap}
#hourly-offer-status{font-size:12px;color:#e0c891;max-width:62%;text-align:right}
.ship-card.is-hourly-sale{border-color:#f8d374;box-shadow:inset 0 0 0 1px #b48d30,0 10px 24px #0003}
.ship-card.is-hourly-sale h2::after{content:'  −10 %';color:#ffe39c;font-size:.66em;vertical-align:middle}
.price-bubble del{font-size:12px;color:#8fa4af;margin-right:5px}
.price-bubble strong{display:inline-block}

/* PC: všechny produktové karty mají stejnou šířku jako karty čtyř lodí.
   Při jediné položce (Tržiště / Černý trh) je karta vycentrovaná. */
.market-goods-grid{
 display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;
 grid-auto-rows:minmax(0,1fr);max-height:490px;flex:1;min-height:0;
 padding:0;align-content:stretch
}
.market-goods-grid .product-card,
.market-goods-grid .product-card:nth-child(4),
.market-goods-grid .product-card:nth-child(5){
 grid-column:auto;min-width:0;width:100%;min-height:0;
 display:grid;grid-template-columns:minmax(0,1fr);
 grid-template-rows:28px minmax(74px,1fr) 39px 136px 40px 22px;
 gap:9px;padding:16px;align-items:stretch
}
.single-goods-grid .product-card{grid-column:1/-1;justify-self:center;width:min(300px,100%)}
.market-goods-grid .product-card h2,
.market-goods-grid .product-image,
.market-goods-grid .market-item-detail,
.market-goods-grid .market-item-bubbles,
.market-goods-grid .action-button,
.market-goods-grid .action-note{grid-column:1;grid-row:auto;min-width:0}
.market-goods-grid .product-image{height:auto;min-height:0}
.market-goods-grid .product-image img{width:100%;height:100%;max-height:205px;max-width:230px;object-fit:contain;filter:drop-shadow(0 7px 7px #0004)}
.market-goods-grid .market-item-detail{
 display:flex;flex-direction:column;justify-content:center;align-items:center;
 gap:1px;padding:3px 6px;min-height:0;
 border:1px solid #718a9833;border-radius:8px;background:#7294a011;text-align:center
}
.market-goods-grid .market-item-detail strong{font-size:12px;line-height:1.18;color:#f5e5bf}
.market-goods-grid .market-item-detail small{font-size:10px;line-height:1.15;color:#b8cbd6}
.market-goods-grid .market-item-bubbles{
 display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr));
 gap:8px;min-height:0;height:auto
}
.market-goods-grid .market-item-bubbles .info-bubble{
 display:flex;flex-direction:row;align-items:center;justify-content:flex-start;
 min-width:0;gap:12px;padding:8px 12px
}
.market-goods-grid .market-item-bubbles .bubble-icon{display:block;width:43px;height:43px;flex:none}
.market-goods-grid .market-item-bubbles .bubble-copy strong{font-size:21px;white-space:normal}
.market-goods-grid .market-item-bubbles .bubble-label{font-size:9px}
.market-goods-grid .action-button{width:100%;min-height:40px;align-self:stretch;font-size:14px;margin:0}
.market-goods-grid .action-note{font-size:10px;line-height:1.2;min-height:0;align-self:center;max-width:100%;text-align:center}

/* Tablet: dvě nákupní karty vedle sebe bez změny jejich pořadí. */
@media(max-width:1024px){
 .market-goods-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:377px;max-height:none;flex:0 0 auto;gap:10px;padding-bottom:12px}
 .market-goods-grid .product-card,
 .market-goods-grid .product-card:nth-child(4),
 .market-goods-grid .product-card:nth-child(5){
  grid-column:auto;grid-template-columns:1fr;
  grid-template-rows:25px minmax(80px,1fr) 40px 112px 40px 24px;
  min-height:330px;padding:12px;gap:6px
 }
 .market-goods-grid .market-item-bubbles .info-bubble{gap:9px;padding:6px 10px}
 .market-goods-grid .market-item-bubbles .bubble-icon{width:35px;height:35px}
 .market-goods-grid .market-item-bubbles .bubble-copy strong{font-size:18px}
 .market-goods-grid .product-card h2{font-size:19px}
 .single-goods-grid .product-card{grid-column:1/-1;max-width:420px;width:100%;justify-self:center}
}
/* Telefon: vodorovná karta podle lodí, bez vodorovného posouvání stránky. */
@media(max-width:600px){
 .heading h1{font-size:clamp(18px,4.2vw,24px);line-height:1.08}
 .dock-nav [role=tablist]{gap:1px 10px}
 .dock-nav button{font-size:12px!important;padding:7px 0 8px}
 .market-goods-grid{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:8px;padding-bottom:10px}
 .market-goods-grid .product-card,
 .market-goods-grid .product-card:nth-child(4),
 .market-goods-grid .product-card:nth-child(5),
 .single-goods-grid .product-card{
  grid-column:1;width:100%;max-width:none;justify-self:stretch;
  grid-template-columns:77px minmax(0,1fr) 108px;
  grid-template-rows:23px 38px 48px 30px;
  min-height:160px;gap:4px 7px;padding:8px
 }
 .market-goods-grid .product-card h2{grid-column:2;grid-row:1;font-size:15px;align-self:center;line-height:1.06}
 .market-goods-grid .product-image{grid-column:1;grid-row:1/5;min-height:0;height:100%}
 .market-goods-grid .product-image img{max-height:125px;max-width:100%}
 .market-goods-grid .market-item-detail{grid-column:2;grid-row:2;padding:2px 4px;align-items:flex-start;text-align:left;overflow:hidden}
 .market-goods-grid .market-item-detail strong{font-size:10px;line-height:1.12}
 .market-goods-grid .market-item-detail small{font-size:9px;line-height:1.12}
 .market-goods-grid .market-item-bubbles{grid-column:2;grid-row:3/5;gap:4px;min-height:0}
 .market-goods-grid .market-item-bubbles .info-bubble{padding:3px 7px;gap:3px;justify-content:center}
 .market-goods-grid .market-item-bubbles .bubble-icon{display:none}
 .market-goods-grid .market-item-bubbles .bubble-label{font-size:8px}
 .market-goods-grid .market-item-bubbles .bubble-copy strong{font-size:14px;line-height:1.08}
 .market-goods-grid .action-button{grid-column:3;grid-row:2/4;align-self:stretch;min-height:0;font-size:11px;padding:3px 4px;white-space:normal}
 .market-goods-grid .action-note{grid-column:3;grid-row:4;font-size:8px;line-height:1.05;text-align:center;align-self:center}
 #hourly-offer-status{font-size:10px}
}
@media(max-width:380px){
 .dock-nav button{font-size:11px!important}
 .dock-nav [role=tablist]{gap:0 7px}
 .market-goods-grid .product-card,
 .market-goods-grid .product-card:nth-child(4),
 .market-goods-grid .product-card:nth-child(5),
 .single-goods-grid .product-card{grid-template-columns:58px minmax(0,1fr) 93px;gap:3px}
 .market-goods-grid .product-card h2{font-size:14px}
 .market-goods-grid .market-item-detail small{font-size:8px}
 .market-goods-grid .market-item-bubbles .bubble-copy strong{font-size:12px}
}

/* Tržiště a Ateliér mají přesně stejnou velikost karet i rozestupy jako Mladý alchymista.
   Tržiště má jen dvě karty v prvních dvou ze čtyř sloupců; další dva zůstávají volné. */
.atelier-goods-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.atelier-goods-grid .product-card{min-width:0}
.atelier-goods-grid .product-image img{max-height:205px}
#panel-atelier .section-heading p strong{color:#ffe5a0;font-size:15px;font-variant-numeric:tabular-nums}
@media(max-width:1024px){.atelier-goods-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.atelier-goods-grid{grid-template-columns:minmax(0,1fr)}#panel-atelier .section-heading p{max-width:53%;text-align:right;font-size:10px;line-height:1.25}}

/* Ateliér – čtyři samostatné PNG omalovánky v jednom odemčeném setu. */
.coloring-gallery{width:min(880px,calc(100vw - 24px));max-height:min(88vh,920px);overflow:auto;border:1px solid #657e92;border-radius:14px;background:#102b3d;color:#e9e3cf;padding:20px;box-shadow:0 20px 80px #000b}
.coloring-gallery::backdrop{background:#030c16bd}
.coloring-gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.coloring-gallery-heading h2{margin:0;color:#ffdea4;font-size:22px}
.coloring-gallery-close{background:#28465c;color:#fff1d3;border:1px solid #70859a;border-radius:8px;padding:8px 12px;cursor:pointer}
.coloring-gallery>p{font-size:13px;color:#bdd0db;margin:10px 0 16px}
.coloring-gallery-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.coloring-gallery-item{display:flex;flex-direction:column;gap:8px;text-align:center;text-decoration:none;color:#ffe3a2;background:#17384e;border:1px solid #466b7c;border-radius:10px;padding:10px}
.coloring-gallery-item img{display:block;width:100%;aspect-ratio:3/4;object-fit:contain;background:#f9f6ee;border-radius:4px}
.coloring-gallery-item span{font-size:12px;font-weight:700}
@media(max-width:620px){.coloring-gallery{padding:12px}.coloring-gallery-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.coloring-gallery-item{padding:6px}.coloring-gallery-heading h2{font-size:17px}}

.coloring-gallery-zip{display:inline-block;margin:0 0 14px;padding:10px 15px;border:1px solid #dca74b;border-radius:8px;background:#b7802d;color:#081d2b;font-size:14px;font-weight:800;text-decoration:none}.coloring-gallery-zip:hover{background:#ffda91;color:#102638}

/* Úvodní kniha má vlastní neprodejný zůstatek, žádný přídavný informační pruh. */
#atelier-starter-count:not(:empty){display:block;margin-top:4px;font-size:11px;color:#e8c77d}
@media(max-width:600px){#atelier-starter-count:not(:empty){font-size:9px}}

/* Černý trh: jedna karta ve stejném prvním sloupci jako Tržiště. */
@media (min-width:601px){#panel-black-market .single-goods-grid .product-card{grid-column:1;justify-self:stretch;width:100%;max-width:none}}

/* Patch 1.0.1: Černý trh zatím nabízí jednu směnu; používá původní rozměry karet. */
#panel-black-market .single-goods-grid{align-content:start;}

/* Oprava 1.0.1: dvě karty Černého trhu, konzistentní rozměry i na PC. */
@media(min-width:601px){#panel-black-market .market-goods-grid{align-content:start}}


/* Jednotné potvrzení nákupu: lodě, tržiště, alchymista a knihovník. */
.purchase-dialog{width:min(420px,calc(100vw - 24px));max-height:calc(100dvh - 30px);overflow:auto;padding:0;background:#10293a;color:#edf2f6;border:1px solid #cfb477;border-radius:18px;box-shadow:0 24px 80px #000b}
.purchase-dialog::backdrop{background:rgba(0,9,18,.75);backdrop-filter:blur(3px)}
.purchase-dialog-inner{display:flex;flex-direction:column;gap:15px;padding:24px}
.purchase-dialog h2{font-size:23px;line-height:1.2;color:#f2d99a;margin:0}
.purchase-item-name{font-size:20px;line-height:1.3}
.purchase-dialog-price{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid #58758b;border-radius:10px;background:#091d2d}
.purchase-dialog-price span{color:#afc5d2;font-size:15px}
.purchase-dialog-price strong{color:#f9e7b8;font-size:25px;font-variant-numeric:tabular-nums}
.purchase-dialog p{margin:0;color:#c4d8e5;font-size:15px}
.purchase-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.purchase-dialog-actions form{min-width:0}
.purchase-dialog-actions button{min-height:46px;width:100%;font-size:15px;font-weight:750;border-radius:9px;cursor:pointer}
.purchase-cancel{color:#e5eef3;background:#274252;border:1px solid #668397}
.purchase-dialog .dock-button:disabled{cursor:wait}
@media(max-width:600px){.purchase-dialog-inner{padding:18px;gap:12px}.purchase-dialog h2{font-size:21px}.purchase-dialog-price strong{font-size:23px}}

/* Záložky zůstanou dostupné i na úzkých displejích; nescrolluje se celá stránka. */
.dock-nav{min-width:0}
.dock-nav [role="tablist"]{min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.dock-nav [role="tab"]{flex:none;white-space:nowrap;scroll-snap-align:start}

/* Patch 2026-10-22: sjednocené nadpisy všech obchodních karet. */
.market-grid .product-card > h2{text-align:center;}
/* Smazaný stav vlastnictví loděnice: počítadlo ve spodní části zůstává. */
@media(max-width:700px){.berth{grid-template-rows:auto auto auto;}.berth>img{grid-row:1/4}.berth-count{grid-row:1/4}}

/* Černý trh – OslíKvět: fialový předmět, stejná PNG ikona jako v batohu. */
#panel-black-market .osli-flower-card{border-color:#ae72e9;background:linear-gradient(158deg,#30224d,#182b41 76%);box-shadow:inset 0 0 0 1px #b978e338,0 10px 24px #0002}
#panel-black-market .osli-flower-card h2{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap;color:#f0d5ff}
#panel-black-market .osli-flower-rarity{font-size:10px;letter-spacing:.035em;line-height:1.1;padding:4px 6px;border:1px solid #ad74ea;border-radius:7px;background:#6d359a66;color:#efd6ff;white-space:nowrap}
#panel-black-market .osli-flower-image{background:radial-gradient(ellipse,#7845a94d,transparent 70%)}
#panel-black-market .osli-flower-image img{width:88%;height:95%;object-fit:contain;filter:drop-shadow(0 5px 15px #b973f578)}
#panel-black-market .osli-flower-buy:not(:disabled){border-color:#d9b1ff;background:linear-gradient(180deg,#a76bde,#7542b1);color:white}
#panel-black-market .osli-flower-buy:hover:not(:disabled){background:linear-gradient(180deg,#bf8df0,#8b55c4)}
@media(max-width:720px){#panel-black-market .osli-flower-rarity{font-size:9px;padding:3px 5px}}

/* POZOR: Rámečky zachovávají původní styl Černého trhu (OslíKvět).
   Jen konkrétní PRODEJNÍ itemy, bez obarvení lodí, budov, statistik a ostatního rozhraní. */
.market-goods-grid .item-quality-card[data-item-quality="purple"]{
 --item-edge:#ae72e9;--item-bg:#30224d;--item-bg-end:#182b41;--item-soft:#b978e338;
 --item-text:#f0d5ff;--item-pill:#6d359a66;--item-pill-text:#efd6ff;
 --item-icon:#7845a94d;--item-shadow:#b973f578;
 --item-buy-top:#a76bde;--item-buy-bottom:#7542b1;--item-hover-top:#bf8df0;--item-hover-bottom:#8b55c4
}
.market-goods-grid .item-quality-card[data-item-quality="blue"]{
 --item-edge:#4caff8;--item-bg:#1d345a;--item-bg-end:#14283c;--item-soft:#69b8fd38;
 --item-text:#d5edff;--item-pill:#174e8c99;--item-pill-text:#d7edff;
 --item-icon:#3676c04d;--item-shadow:#4faff578;
 --item-buy-top:#428fcd;--item-buy-bottom:#24669f;--item-hover-top:#60a8e4;--item-hover-bottom:#307eb7
}
.market-goods-grid .item-quality-card[data-item-quality="green"]{
 --item-edge:#67ce81;--item-bg:#1d453b;--item-bg-end:#162c36;--item-soft:#78cf9540;
 --item-text:#d5ffdf;--item-pill:#26764688;--item-pill-text:#e0ffe7;
 --item-icon:#348b594d;--item-shadow:#61bf8a78;
 --item-buy-top:#3a9c62;--item-buy-bottom:#257146;--item-hover-top:#4fbb79;--item-hover-bottom:#328b59
}
.market-goods-grid .item-quality-card[data-item-quality="white"]{
 --item-edge:#dce6f1;--item-bg:#303b4b;--item-bg-end:#192a3c;--item-soft:#e4ebf13d;
 --item-text:#f4f8ff;--item-pill:#6d788c99;--item-pill-text:#f3f7ff;
 --item-icon:#a6b8c348;--item-shadow:#b5d3ee5e;
 --item-buy-top:#7991ac;--item-buy-bottom:#526981;--item-hover-top:#91a8bf;--item-hover-bottom:#657f98
}
.market-goods-grid .item-quality-card{
 border-color:var(--item-edge);
 background:linear-gradient(158deg,var(--item-bg),var(--item-bg-end) 76%);
 box-shadow:inset 0 0 0 1px var(--item-soft),0 10px 24px #0002
}
.market-goods-grid .item-quality-card h2{
 display:flex;align-items:center;justify-content:space-between;gap:4px;flex-wrap:wrap;
 color:var(--item-text);line-height:1.08
}
.market-goods-grid .item-quality-card .item-quality-tag{
 display:inline-block;font-size:10px;letter-spacing:.035em;line-height:1.1;
 padding:4px 6px;border:1px solid var(--item-edge);border-radius:7px;
 background:var(--item-pill);color:var(--item-pill-text);white-space:nowrap;font-weight:600
}
.market-goods-grid .item-quality-card .product-image{
 background:radial-gradient(ellipse,var(--item-icon),transparent 70%)
}
.market-goods-grid .item-quality-card .product-image img{
 filter:drop-shadow(0 5px 15px var(--item-shadow))
}
.market-goods-grid .item-quality-card .action-button:not(:disabled){
 border-color:var(--item-edge);
 background:linear-gradient(180deg,var(--item-buy-top),var(--item-buy-bottom));color:#fff
}
.market-goods-grid .item-quality-card .action-button:hover:not(:disabled){
 background:linear-gradient(180deg,var(--item-hover-top),var(--item-hover-bottom))
}
@media(max-width:720px){.market-goods-grid .item-quality-card .item-quality-tag{font-size:9px;padding:3px 5px}}

/* Křupavá mrkev: pouze oranžový vizuální akcent, původní styl karet zachován. */
.market-goods-grid .item-quality-card[data-market-item="carrots"][data-item-quality="orange"]{
 --item-edge:#ee9642;--item-bg:#54321f;--item-bg-end:#2c2630;--item-soft:#ffc07338;
 --item-text:#ffe0a9;--item-pill:#9b552b88;--item-pill-text:#ffe9c4;
 --item-icon:#da762e4d;--item-shadow:#f19e4e78;
 --item-buy-top:#e38c38;--item-buy-bottom:#ad5d20;--item-hover-top:#f4a54c;--item-hover-bottom:#bf6c26
}

