.inventory-page .page{
max-width:1240px;
}

.inventory-hero{
display:grid;
grid-template-columns:minmax(0,1fr) 360px;
gap:28px;
align-items:stretch;
padding:24px 0 44px;
border-bottom:1px solid rgba(255,255,255,.08);
}

.inventory-hero h1{
max-width:850px;
margin:0 0 18px;
font-size:clamp(42px,6vw,72px);
line-height:1;
letter-spacing:0;
}

.hero-actions,
.action-row{
display:flex;
flex-wrap:wrap;
gap:12px;
align-items:center;
margin-top:22px;
}

.inventory-page .btn{
width:auto;
min-height:48px;
margin:0;
}

.outline-link,
.secondary-btn{
min-height:48px;
display:inline-flex;
align-items:center;
justify-content:center;
padding:0 18px;
border:1px solid rgba(255,255,255,.16);
border-radius:8px;
background:rgba(255,255,255,.045);
color:white;
font:inherit;
font-weight:900;
text-decoration:none;
cursor:pointer;
}

.secondary-btn:disabled{
opacity:.45;
cursor:not-allowed;
}

.status-panel{
display:grid;
grid-template-columns:1fr 1fr;
gap:12px;
}

.status-panel div,
.module-grid article,
.section-shell,
.admin-grid article{
border:1px solid rgba(255,255,255,.1);
border-radius:8px;
background:rgba(255,255,255,.045);
box-shadow:0 0 30px rgba(0,123,255,.08);
}

.status-panel div{
min-height:132px;
display:flex;
flex-direction:column;
justify-content:center;
padding:18px;
}

.status-panel span{
color:var(--muted);
font-size:13px;
font-weight:900;
}

.status-panel strong{
margin-top:8px;
color:var(--green);
font-size:42px;
line-height:1;
}

.module-grid{
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:14px;
margin:34px 0;
}

.module-grid article{
padding:22px;
}

.module-icon{
display:inline-flex;
align-items:center;
justify-content:center;
width:42px;
height:32px;
margin-bottom:14px;
border:1px solid rgba(140,255,0,.34);
border-radius:999px;
color:var(--green);
font-weight:900;
}

.module-grid h2,
.section-shell h2,
.admin-grid h3{
margin:0 0 10px;
letter-spacing:0;
}

.module-grid p,
.hint{
color:var(--muted);
line-height:1.6;
}

.section-shell{
padding:24px;
margin:22px 0;
}

.section-heading{
display:flex;
justify-content:space-between;
align-items:end;
gap:18px;
margin-bottom:18px;
}

.section-heading.compact{
align-items:start;
}

.section-heading h2{
font-size:clamp(28px,4vw,42px);
line-height:1.1;
}

.filters-panel{
display:grid;
grid-template-columns:1.4fr repeat(4,minmax(130px,1fr));
gap:12px;
margin-bottom:18px;
}

.inventory-page label{
display:block;
margin:0;
color:white;
font-size:13px;
font-weight:900;
}

.inventory-page input,
.inventory-page select,
.inventory-page textarea{
width:100%;
margin:8px 0 0;
}

.catalog-grid{
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:14px;
}

.bike-card{
display:flex;
flex-direction:column;
min-height:100%;
overflow:hidden;
border:1px solid rgba(255,255,255,.1);
border-radius:8px;
background:rgba(0,0,0,.18);
}

.bike-media{
position:relative;
aspect-ratio:16/10;
display:grid;
place-items:center;
background:linear-gradient(135deg,rgba(0,123,255,.18),rgba(140,255,0,.1));
border-bottom:1px solid rgba(255,255,255,.08);
}

.bike-media img{
width:78%;
height:78%;
object-fit:contain;
filter:drop-shadow(0 14px 18px rgba(0,0,0,.35));
}

.badge-row{
position:absolute;
top:10px;
left:10px;
right:10px;
display:flex;
gap:8px;
flex-wrap:wrap;
}

.status-badge{
padding:7px 10px;
border-radius:999px;
background:rgba(2,7,10,.82);
border:1px solid rgba(140,255,0,.24);
color:var(--green);
font-size:12px;
font-weight:900;
}

.status-badge.warning{
border-color:rgba(255,193,7,.5);
color:#ffd36a;
}

.status-badge.blocked{
border-color:rgba(255,42,109,.55);
color:#ff7aa6;
}

.bike-body{
display:flex;
flex-direction:column;
gap:12px;
padding:18px;
flex:1;
}

.bike-body h3{
margin:0;
font-size:20px;
line-height:1.2;
}

.meta-list{
display:grid;
gap:7px;
color:#eef2f7;
font-size:14px;
}

.meta-list div{
display:flex;
justify-content:space-between;
gap:12px;
padding-bottom:7px;
border-bottom:1px solid rgba(255,255,255,.07);
}

.meta-list span{
color:var(--soft);
}

.bike-actions{
display:flex;
gap:10px;
margin-top:auto;
}

.bike-actions button{
flex:1 1 0;
}

.workspace-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:18px;
align-items:start;
}

#csvInput{
min-height:250px;
font-family:Consolas,monospace;
font-size:13px;
line-height:1.45;
}

.import-result,
.offer-summary{
margin-top:16px;
}

.result-box,
.admin-item{
padding:14px;
margin-top:10px;
border:1px solid rgba(255,255,255,.1);
border-radius:8px;
background:rgba(0,0,0,.18);
color:var(--muted);
line-height:1.55;
}

.result-box strong,
.admin-item strong{
display:block;
color:white;
margin-bottom:5px;
}

.result-box.ok{
border-color:rgba(140,255,0,.32);
}

.result-box.error{
border-color:rgba(255,42,109,.4);
}

.offer-form{
display:grid;
grid-template-columns:1fr 1fr;
gap:12px;
}

.offer-form label:first-child,
.offer-form button{
grid-column:1/-1;
}

.admin-grid{
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:14px;
}

.admin-grid article{
padding:18px;
}

.admin-actions{
display:flex;
gap:8px;
flex-wrap:wrap;
margin-top:12px;
}

@media(max-width:980px){
.inventory-hero,
.workspace-grid{
grid-template-columns:1fr;
}

.filters-panel,
.catalog-grid,
.admin-grid{
grid-template-columns:1fr 1fr;
}
}

@media(max-width:640px){
.status-panel,
.module-grid,
.filters-panel,
.catalog-grid,
.offer-form,
.admin-grid{
grid-template-columns:1fr;
}

.section-heading{
align-items:flex-start;
flex-direction:column;
}
}

.dealer-map-layout{
display:grid;
grid-template-columns:minmax(0,1.15fr) 360px;
gap:18px;
align-items:stretch;
}

.hungary-map{
position:relative;
min-height:430px;
border:1px solid rgba(255,255,255,.1);
border-radius:8px;
background:linear-gradient(135deg,rgba(0,123,255,.16),rgba(140,255,0,.075)),rgba(0,0,0,.2);
overflow:hidden;
}

.hungary-map svg{
width:100%;
height:100%;
min-height:430px;
display:block;
}

.country-shape{
fill:rgba(255,255,255,.06);
stroke:rgba(140,255,0,.42);
stroke-width:3;
filter:drop-shadow(0 20px 26px rgba(0,0,0,.28));
}

.river{
fill:none;
stroke:rgba(0,123,255,.7);
stroke-width:5;
stroke-linecap:round;
stroke-dasharray:10 12;
}

.river.secondary{
stroke:rgba(0,123,255,.38);
stroke-width:3;
}

.map-pin{
cursor:pointer;
}

.map-pin circle.outer{
fill:rgba(140,255,0,.2);
stroke:rgba(140,255,0,.55);
stroke-width:2;
}

.map-pin circle.inner{
fill:#8cff00;
filter:drop-shadow(0 0 10px rgba(140,255,0,.7));
}

.map-pin text{
fill:white;
font-size:13px;
font-weight:900;
paint-order:stroke;
stroke:#02070a;
stroke-width:4;
stroke-linejoin:round;
}

.map-pin.active circle.outer,
.map-pin:hover circle.outer{
fill:rgba(0,123,255,.25);
stroke:#fff;
}

.map-pin.active circle.inner,
.map-pin:hover circle.inner{
fill:#007BFF;
}

.dealer-panel{
display:flex;
flex-direction:column;
gap:12px;
min-height:430px;
}

.dealer-search-box,
.dealer-summary,
.dealer-list-card{
border:1px solid rgba(255,255,255,.1);
border-radius:8px;
background:rgba(0,0,0,.18);
padding:14px;
}

.dealer-search-box{
display:grid;
grid-template-columns:1fr auto;
gap:10px;
align-items:end;
}

.dealer-summary strong,
.dealer-list-card strong{
display:block;
color:white;
margin-bottom:5px;
}

.dealer-summary span,
.dealer-list-card span{
display:block;
color:var(--muted);
font-size:14px;
line-height:1.45;
}

.dealer-list{
display:grid;
gap:10px;
max-height:292px;
overflow:auto;
padding-right:4px;
}

.dealer-list-card{
text-align:left;
color:white;
cursor:pointer;
}

.dealer-list-card:hover,
.dealer-list-card.active{
border-color:rgba(140,255,0,.42);
background:rgba(140,255,0,.065);
}

.dealer-tags{
display:flex;
flex-wrap:wrap;
gap:6px;
margin-top:10px;
}

.dealer-tags em{
font-style:normal;
font-size:12px;
font-weight:900;
color:#071018;
background:var(--green);
border-radius:999px;
padding:5px 8px;
}

.step-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:18px;
}

.step-card{
min-height:210px;
display:grid;
grid-template-columns:54px minmax(0,1fr);
gap:12px;
padding:24px;
border:1px solid rgba(255,255,255,.12);
border-radius:8px;
background:rgba(255,255,255,.045);
transition:transform .18s ease,border-color .18s ease,background .18s ease;
}

.step-card:hover,
.step-card.active{
transform:translateY(-3px);
border-color:rgba(140,255,0,.42);
background:linear-gradient(135deg,rgba(0,123,255,.42),rgba(140,255,0,.18));
}

.step-number{
display:block;
font-size:52px;
line-height:.92;
font-weight:900;
color:white;
}

.step-card h3{
margin:0 0 10px;
color:white;
font-size:24px;
line-height:1.18;
}

.step-card p{
margin:0;
color:var(--muted);
line-height:1.55;
}

.step-card.active p,
.step-card:hover p{
color:#eef6ff;
}

.step-action{
min-height:42px;
margin-top:16px;
padding:0 14px;
border:1px solid rgba(255,255,255,.2);
border-radius:8px;
background:rgba(0,0,0,.18);
color:white;
font:inherit;
font-weight:900;
cursor:pointer;
}

.step-action:hover{
background:#8cff00;
color:#071018;
}

@media(max-width:980px){
.dealer-map-layout,
.step-grid{
grid-template-columns:1fr;
}

.dealer-panel,
.hungary-map,
.hungary-map svg{
min-height:360px;
}
}

@media(max-width:640px){
.dealer-search-box{
grid-template-columns:1fr;
}

.step-card{
grid-template-columns:1fr;
min-height:auto;
}

.step-number{
font-size:42px;
}
}