:root{
  --mx-navy:#07182d;
  --mx-blue:#1e416a;
  --mx-blue-2:#0f5f99;
  --mx-cyan:#00a8c6;
  --mx-yellow:#ffbf00;
  --mx-bg:#f2f6fb;
  --mx-surface:#ffffff;
  --mx-border:#d8e2ef;
  --mx-text:#102033;
  --mx-muted:#64748b;
  --mx-success:#0f8a5f;
  --mx-danger:#c83a3a;
  --mx-radius:18px;
  --mx-shadow:0 14px 38px rgba(7,24,45,.10);
  --mx-container:1480px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--mx-bg);color:var(--mx-text);font:16px/1.55 Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
.mx-container{width:min(calc(100% - 40px),var(--mx-container));margin-inline:auto}
.mx-topbar{background:var(--mx-navy);color:#fff;font-size:14px;font-weight:800}
.mx-topbar .mx-container{min-height:34px;display:flex;align-items:center;gap:10px}
.mx-header{background:#fff;border-bottom:1px solid var(--mx-border);position:sticky;top:0;z-index:100}
.mx-header-row{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.mx-brand{display:flex;align-items:center;gap:12px;min-width:220px}
.mx-brand-logo{width:58px;height:58px;border-radius:13px;object-fit:cover;box-shadow:0 8px 18px rgba(7,24,45,.16)}
.mx-brand-name{font-size:26px;line-height:1;font-weight:900;letter-spacing:.02em;color:var(--mx-blue-2)}
.mx-brand-sub{display:block;margin-top:5px;font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--mx-muted);text-transform:uppercase}
.mx-nav{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.mx-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 13px;border-radius:11px;font-weight:800;white-space:nowrap}
.mx-nav a:hover,.mx-nav a[aria-current="page"]{background:#eef5fb;color:var(--mx-blue-2)}
.mx-nav .mx-btn{background:var(--mx-yellow);color:var(--mx-navy);padding-inline:20px}
.mx-nav .mx-btn:hover{background:#f3b600;color:var(--mx-navy)}
.mx-menu-toggle{display:none;width:44px;height:44px;border:0;border-radius:11px;background:var(--mx-navy);color:#fff;font-size:22px}
.mx-main{min-height:calc(100vh - 220px);padding:42px 0 64px}
.mx-footer{background:var(--mx-navy);color:#fff;margin-top:auto}
.mx-footer-row{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.mx-footer-brand{display:flex;align-items:center;gap:12px;font-weight:900}
.mx-footer-brand img{width:42px;height:42px;border-radius:10px}
.mx-footer-note{color:#c7d3e1}

/* Shared surfaces */
.card,.panel,.admin-card,.mx-card{background:var(--mx-surface);border:1px solid var(--mx-border);border-radius:var(--mx-radius);box-shadow:0 8px 24px rgba(7,24,45,.05)}
.mx-card{padding:24px}
.hero,.admin-hero,.mx-hero{background:linear-gradient(135deg,var(--mx-blue),#17395e);color:#fff;border-radius:22px;box-shadow:var(--mx-shadow);padding:32px}
.hero h1,.admin-hero h1,.mx-hero h1{margin:0 0 8px;font-size:clamp(30px,4vw,48px);line-height:1.05}
.eyebrow,.admin-kicker,.mx-kicker{color:var(--mx-yellow);font-size:13px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.btn,.button,.ap-button,.mx-button,button[type="submit"]{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 18px;border:0;border-radius:11px;background:var(--mx-yellow);color:var(--mx-navy);font-weight:900;cursor:pointer;transition:.18s ease}
.btn:hover,.button:hover,.ap-button:hover,.mx-button:hover,button[type="submit"]:hover{transform:translateY(-1px);filter:brightness(.98)}
.btn.secondary,.button.secondary,.ap-button.secondary,.mx-button.secondary{background:#eaf1f8;color:var(--mx-blue)}

/* Forms */
form{max-width:100%}
label{display:block;margin-bottom:6px;font-weight:850;color:var(--mx-text)}
input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="url"],input[type="datetime-local"],select,textarea{width:100%;min-height:46px;border:1px solid #c9d6e5;border-radius:11px;background:#fff;color:var(--mx-text);padding:10px 13px;outline:none;transition:.18s ease}
textarea{min-height:140px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--mx-cyan);box-shadow:0 0 0 4px rgba(0,168,198,.12)}
.form-grid,.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.form-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:20px}
.alert,.notice,.message{padding:13px 16px;border-radius:12px;margin:0 0 18px;background:#eef5fb;border:1px solid #d7e6f4}
.alert.success,.notice.success{background:#e9f8f1;border-color:#c6ebda;color:var(--mx-success)}
.alert.error,.notice.error{background:#fff0f0;border-color:#f0cccc;color:var(--mx-danger)}

/* Admin */
.admin-page,.ap-shell,.admin-shell{width:min(calc(100% - 40px),1200px);margin-inline:auto}
.admin-layout,.ap-layout{display:grid;grid-template-columns:208px minmax(0,1fr);gap:22px;align-items:start}
.admin-sidebar,.ap-sidebar{background:var(--mx-navy);color:#fff;border-radius:20px;padding:18px;position:sticky;top:112px;box-shadow:var(--mx-shadow)}
.admin-sidebar h3,.ap-sidebar h3{margin:4px 0 14px;font-size:17px}
.admin-sidebar nav,.ap-sidebar nav{display:grid;gap:7px}
.admin-sidebar a,.ap-sidebar a{padding:11px 13px;border-radius:10px;font-weight:800}
.admin-sidebar a:hover,.admin-sidebar a.active,.ap-sidebar a:hover,.ap-sidebar a.active{background:var(--mx-yellow);color:var(--mx-navy)}
.admin-content,.ap-content{min-width:0}
.admin-header,.ap-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:start;background:linear-gradient(135deg,var(--mx-blue),#17395e);color:#fff;border-radius:22px;padding:28px 32px;box-shadow:var(--mx-shadow)}
.admin-header h1,.ap-hero h1{font-size:clamp(31px,4vw,48px);line-height:1.05;margin:0 0 8px}
.admin-toolbar,.admin-tabs,.ap-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:18px}
.admin-toolbar a,.admin-tabs a,.ap-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 11px;border-radius:10px;background:rgba(255,255,255,.08);font-weight:800;white-space:nowrap}
.admin-toolbar a:hover,.admin-tabs a:hover,.ap-tabs a:hover{background:rgba(255,255,255,.16)}
.admin-toolbar .primary,.admin-tabs .primary,.ap-tabs .primary{background:var(--mx-yellow);color:var(--mx-navy)}
.admin-stats,.stat-grid,.ap-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:18px 0}
.admin-stat,.stat-card,.ap-stat{background:#fff;border:1px solid var(--mx-border);border-radius:15px;padding:16px 18px;min-width:0;box-shadow:0 6px 18px rgba(7,24,45,.04)}
.admin-stat .label,.stat-card .label,.ap-stat .label{display:block;color:var(--mx-muted);font-size:14px;font-weight:800;line-height:1.25}
.admin-stat .value,.stat-card .value,.ap-stat .value{display:block;margin-top:5px;font-size:28px;line-height:1;font-weight:950}
.admin-grid,.module-grid,.ap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.admin-module,.module-card,.ap-card{background:#fff;border:1px solid var(--mx-border);border-radius:16px;padding:20px;min-width:0;box-shadow:0 6px 18px rgba(7,24,45,.04)}
.admin-module h3,.module-card h3,.ap-card h3{margin:0 0 6px;font-size:20px}
.admin-module p,.module-card p,.ap-card p{margin:0;color:var(--mx-muted)}
.table-wrap{overflow:auto;border:1px solid var(--mx-border);border-radius:14px;background:#fff}
table{width:100%;border-collapse:collapse;min-width:760px}
th,td{text-align:left;padding:13px 14px;border-bottom:1px solid #e7edf4;vertical-align:middle}
th{background:#f6f9fc;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:#52657a}

/* Listing grids */
.catalog-grid,.listing-grid,.cards-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.listing-card,.offer-card,.auction-card{background:#fff;border:1px solid var(--mx-border);border-radius:16px;overflow:hidden;box-shadow:0 8px 20px rgba(7,24,45,.05)}
.listing-card img,.offer-card img,.auction-card img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#e9eff5}
.listing-card-body,.offer-card-body,.auction-card-body{padding:16px}
.price{font-size:22px;font-weight:950;color:var(--mx-blue-2)}

/* Responsive */
@media (max-width:1180px){
  .admin-stats,.stat-grid,.ap-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .catalog-grid,.listing-grid,.cards-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:960px){
  .mx-menu-toggle{display:inline-grid;place-items:center}
  .mx-nav{display:none;position:absolute;left:20px;right:20px;top:76px;background:#fff;border:1px solid var(--mx-border);border-radius:14px;padding:12px;box-shadow:var(--mx-shadow);justify-content:flex-start}
  .mx-nav.is-open{display:flex}
  .mx-nav a{width:100%;justify-content:flex-start}
  .admin-layout,.ap-layout{grid-template-columns:1fr}
  .admin-sidebar,.ap-sidebar{position:static}
  .admin-sidebar nav,.ap-sidebar nav{display:flex;flex-wrap:wrap}
  .admin-header,.ap-hero{grid-template-columns:1fr}
  .admin-grid,.module-grid,.ap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .catalog-grid,.listing-grid,.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:680px){
  .mx-container,.admin-page,.ap-shell,.admin-shell{width:min(calc(100% - 24px),var(--mx-container))}
  .mx-brand-sub{display:none}
  .mx-brand-name{font-size:22px}
  .mx-brand-logo{width:48px;height:48px}
  .mx-main{padding-top:24px}
  .form-grid,.admin-form-grid{grid-template-columns:1fr}
  .admin-stats,.stat-grid,.ap-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-grid,.module-grid,.ap-grid,.catalog-grid,.listing-grid,.cards-grid{grid-template-columns:1fr}
  .admin-header,.ap-hero,.hero,.mx-hero{padding:24px 20px}
}
@media (max-width:420px){
  .admin-stats,.stat-grid,.ap-stats{grid-template-columns:1fr}
  .mx-brand{min-width:0}
}

/* v1.1 stability and admin-overlap fixes */
.mx-brand-copy{min-width:0;display:block}
.mx-header-row{position:relative}
.mx-nav{min-width:0}
.admin-header>*,.ap-hero>*{min-width:0}
.admin-header .admin-toolbar,.admin-header .admin-tabs,.ap-hero .ap-tabs{max-width:100%}
.admin-toolbar a,.admin-tabs a,.ap-tabs a{line-height:1.2;text-align:center;overflow-wrap:anywhere}
.admin-header,.ap-hero{overflow:hidden}
.admin-header nav,.ap-hero nav{max-width:100%}
.admin-sidebar nav{min-width:0}
.admin-sidebar a,.ap-sidebar a{overflow-wrap:anywhere}
.admin-grid>*,.module-grid>*,.ap-grid>*,.admin-stats>*,.stat-grid>*,.ap-stats>*{min-width:0}

@media (max-width:1180px){
  .admin-header,.ap-hero{grid-template-columns:1fr}
  .admin-toolbar,.admin-tabs,.ap-tabs{justify-content:flex-start}
}
@media (max-width:960px){
  .mx-nav{top:calc(100% + 8px);left:0;right:0;max-height:calc(100vh - 130px);overflow:auto;z-index:120}
  .mx-header-row{gap:12px}
  .admin-sidebar nav,.ap-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:680px){
  .mx-topbar .mx-container{justify-content:center;text-align:center;line-height:1.25;padding-block:7px}
  .mx-header-row{min-height:72px}
  .mx-nav{left:0;right:0}
  .admin-sidebar nav,.ap-sidebar nav{grid-template-columns:1fr}
  .admin-toolbar,.admin-tabs,.ap-tabs{display:grid;grid-template-columns:1fr;width:100%}
  .admin-toolbar a,.admin-tabs a,.ap-tabs a{width:100%}
}
