/* ============================================================
 * 多行业系统 UI（行业徽章 / 行业卡片 / 模块配置 / 行业工作台）
 * 依赖 base.css 设计令牌
 * ============================================================ */

/* ---------- 行业徽章 ---------- */
.industry-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 12px 4px 9px;
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.5;
    color: var(--ib-color, #007aff);
    background: color-mix(in srgb, var(--ib-color, #007aff) 12%, #fff);
    border: 1px solid color-mix(in srgb, var(--ib-color, #007aff) 22%, #fff);
    white-space: nowrap;
}
.industry-badge .ib-icon { font-size: 14px; }
.industry-badge-none { color: #8e8e93; background: #f2f2f7; border-color: #e5e5ea; }
@supports not (background: color-mix(in srgb, red 10%, white)) {
    .industry-badge { background: #eef4ff; border-color: #dbe7ff; }
}

/* ---------- 侧边栏行业信息（浅色侧栏） ---------- */
.side-industry {
    margin: 8px 0 10px;
    padding: 8px 9px;
    border-radius: 12px;
    background: color-mix(in srgb, var(--si-color, #007aff) 9%, #fff);
    border: 1px solid color-mix(in srgb, var(--si-color, #007aff) 24%, #fff);
    display: flex;
    align-items: center;
    gap: 9px;
    text-decoration: none;
    line-height: 1.25;
}
.side-industry .si-icon {
    width: 30px; height: 30px; border-radius: 9px;
    display: flex; align-items: center; justify-content: center;
    font-size: 16px; flex-shrink: 0;
    background: color-mix(in srgb, var(--si-color, #007aff) 16%, #fff);
}
.side-industry .si-name { font-size: 12.5px; font-weight: 700; color: #1d1d1f; }
.side-industry .si-sub { font-size: 10.5px; color: #6e6e73; margin-top: 1px; }
@supports not (background: color-mix(in srgb, red 10%, white)) {
    .side-industry { background: #f0f6ff; border-color: #dbe7ff; }
    .side-industry .si-icon { background: #e2edff; }
}
.table .badge, .table .industry-badge { white-space: nowrap; }

/* ---------- 行业卡片网格 ---------- */
.ind-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 16px;
}
.ind-card {
    position: relative;
    background: #fff;
    border-radius: var(--radius-lg, 20px);
    border: 1px solid var(--line2, #f0f0f2);
    box-shadow: var(--shadow, 0 1px 3px rgba(0, 0, 0, .04));
    padding: 20px;
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease;
}
.ind-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-lg, 0 8px 30px rgba(0, 0, 0, .08)); }
.ind-card::before {
    content: '';
    position: absolute; inset: 0 0 auto 0; height: 4px;
    background: var(--ind-color, #007aff);
    opacity: .85;
}
.ind-card.paused { opacity: .72; }
.ind-card .ic-head { display: flex; align-items: flex-start; gap: 12px; }
.ind-card .ic-icon {
    width: 48px; height: 48px; border-radius: 14px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    font-size: 24px;
    background: color-mix(in srgb, var(--ind-color, #007aff) 12%, #fff);
}
.ind-card .ic-title { font-size: 17px; font-weight: 700; color: var(--text); line-height: 1.3; }
.ind-card .ic-code {
    font-size: 11px; color: #8e8e93; font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    background: #f7f7fa; border-radius: 5px; padding: 1px 6px; margin-left: 6px;
}
.ind-card .ic-tagline { font-size: 12.5px; color: var(--text2); margin-top: 4px; line-height: 1.5; }
.ind-card .ic-meta {
    display: flex; gap: 14px; margin: 14px 0 12px;
    font-size: 12px; color: var(--text2);
}
.ind-card .ic-meta b { color: var(--text); font-size: 15px; font-weight: 700; margin-right: 3px; }
.ind-card .ic-mods { display: flex; flex-wrap: wrap; gap: 6px; min-height: 26px; }
.ind-card .ic-mod {
    font-size: 11.5px; padding: 3px 8px; border-radius: 7px;
    background: #f5f5f9; color: #4a4a4f; white-space: nowrap;
}
.ind-card .ic-foot {
    display: flex; gap: 8px; margin-top: 16px; padding-top: 14px;
    border-top: 1px dashed var(--line2, #f0f0f2);
}
.ind-card .ic-foot .btn { flex: 1; justify-content: center; }
.ind-status {
    position: absolute; top: 14px; right: 14px;
    font-size: 11px; padding: 2px 8px; border-radius: 999px;
    background: rgba(52, 199, 89, .12); color: #1e8e3e;
}
.ind-status.off { background: #f2f2f7; color: #8e8e93; }

/* ---------- 行业选择（试用/激活） ---------- */
.ind-pick-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 16px;
}
.ind-pick {
    position: relative;
    background: #fff;
    border: 2px solid var(--line2, #f0f0f2);
    border-radius: 18px;
    padding: 22px 18px;
    cursor: pointer;
    text-align: center;
    transition: all .16s ease;
}
.ind-pick:hover { border-color: var(--ind-color, #007aff); transform: translateY(-2px); box-shadow: var(--shadow-lg); }
.ind-pick.selected { border-color: var(--ind-color, #007aff); background: color-mix(in srgb, var(--ind-color, #007aff) 6%, #fff); }
.ind-pick .ip-icon { font-size: 34px; line-height: 1; }
.ind-pick .ip-name { font-size: 16px; font-weight: 700; margin-top: 10px; color: var(--text); }
.ind-pick .ip-tag { font-size: 12px; color: var(--text2); margin-top: 6px; line-height: 1.5; min-height: 36px; }
.ind-pick .ip-mods { display: flex; flex-wrap: wrap; gap: 4px; justify-content: center; margin-top: 10px; }
.ind-pick .ip-mods span { font-size: 10.5px; background: #f5f5f9; color: #6e6e73; padding: 2px 6px; border-radius: 5px; }
.ind-pick .ip-check {
    position: absolute; top: 10px; right: 10px; width: 20px; height: 20px; border-radius: 50%;
    background: var(--ind-color, #007aff); color: #fff; font-size: 12px; line-height: 20px;
    display: none;
}
.ind-pick.selected .ip-check { display: block; }

/* ---------- 行业工作台头部 ---------- */
.ind-hero {
    position: relative;
    border-radius: var(--radius-lg, 20px);
    padding: 22px 24px;
    color: #fff;
    overflow: hidden;
    margin-bottom: 16px;
    background: linear-gradient(120deg, var(--ind-color, #007aff), color-mix(in srgb, var(--ind-color, #007aff) 55%, #1c1c1e));
}
.ind-hero::after {
    content: '';
    position: absolute; right: -40px; top: -60px; width: 220px; height: 220px;
    border-radius: 50%; background: rgba(255, 255, 255, .12);
}
.ind-hero .ih-icon { font-size: 34px; line-height: 1; }
.ind-hero h2 { font-size: 22px; margin: 8px 0 4px; color: #fff; font-weight: 700; }
.ind-hero p { font-size: 13px; color: rgba(255, 255, 255, .82); margin: 0; }
.ind-hero .ih-right { position: absolute; right: 24px; bottom: 22px; text-align: right; z-index: 1; }
.ind-hero .ih-num { font-size: 26px; font-weight: 800; line-height: 1; }
.ind-hero .ih-label { font-size: 11.5px; color: rgba(255, 255, 255, .75); margin-top: 4px; }

/* ---------- 行业看板卡片 ---------- */
.ind-dash-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
    gap: 14px;
    margin-bottom: 16px;
}
.ind-dash {
    background: #fff; border-radius: 16px; padding: 16px 18px;
    border: 1px solid var(--line2, #f0f0f2); box-shadow: var(--shadow);
}
.ind-dash .id-label { font-size: 12.5px; color: var(--text2); display: flex; align-items: center; gap: 6px; }
.ind-dash .id-value { font-size: 26px; font-weight: 800; margin-top: 8px; color: var(--text); letter-spacing: -.5px; }
.ind-dash .id-value small { font-size: 13px; font-weight: 600; color: #8e8e93; margin-left: 4px; }
.ind-dash .id-sub { font-size: 11.5px; color: #8e8e93; margin-top: 6px; }
.ind-dash.accent { background: linear-gradient(135deg, var(--ind-color, #007aff), color-mix(in srgb, var(--ind-color, #007aff) 60%, #111)); color: #fff; border: none; }
.ind-dash.accent .id-label, .ind-dash.accent .id-value, .ind-dash.accent .id-sub { color: #fff; }
.ind-dash.accent .id-label { opacity: .85; }
.ind-dash.accent .id-sub { opacity: .75; }

/* ---------- 模块矩阵（行业编辑） ---------- */
.mod-group { margin-bottom: 18px; }
.mod-group h4 { font-size: 13px; color: var(--text2); font-weight: 600; margin: 0 0 10px; }
.mod-checks { display: grid; grid-template-columns: repeat(auto-fill, minmax(168px, 1fr)); gap: 8px; }
.mod-check {
    display: flex; align-items: center; gap: 8px;
    padding: 9px 11px; border-radius: 10px; border: 1px solid var(--line, #e5e5ea);
    font-size: 13px; cursor: pointer; background: #fff; transition: all .14s;
    user-select: none;
}
.mod-check:hover { border-color: #c7d8ff; background: #f8faff; }
.mod-check input { accent-color: var(--blue, #007aff); }
.mod-check.on { border-color: var(--blue, #007aff); background: color-mix(in srgb, var(--ind-color, #ff5a3c) 6%, #fff); }
.mod-check .mc-icon { font-size: 15px; }
.mod-check .mc-lock { font-size: 10.5px; color: #8e8e93; margin-left: auto; }

/* ---------- 桌台 ---------- */
.table-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 14px; }
.table-card {
    position: relative; background: #fff; border-radius: 16px; padding: 16px;
    border: 1px solid var(--line2); box-shadow: var(--shadow); text-align: left;
    transition: transform .15s, box-shadow .15s;
}
.table-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-lg); }
.table-card .tc-name { font-size: 17px; font-weight: 700; color: var(--text); }
.table-card .tc-zone { font-size: 11.5px; color: #8e8e93; margin-top: 2px; }
.table-card .tc-seats { font-size: 11.5px; color: var(--text2); margin-top: 8px; }
.table-card .tc-status {
    display: inline-block; margin-top: 12px; font-size: 11.5px; padding: 3px 10px;
    border-radius: 999px; font-weight: 600;
}
.table-card.st-idle .tc-status { background: #f2f2f7; color: #6e6e73; }
.table-card.st-open { border-color: rgba(52, 199, 89, .45); background: linear-gradient(180deg, #f4fff8, #fff); }
.table-card.st-open .tc-status { background: rgba(52, 199, 89, .14); color: #1e8e3e; }
.table-card.st-reserved .tc-status { background: rgba(255, 149, 0, .14); color: #c26a00; }
.table-card.st-clean .tc-status { background: rgba(0, 122, 255, .12); color: #0055b3; }
.table-card .tc-actions { display: flex; gap: 6px; margin-top: 12px; }
.table-card .tc-actions .btn { flex: 1; padding: 6px 8px; font-size: 12px; justify-content: center; }
.table-card .tc-bill { font-size: 12px; color: #1e8e3e; font-weight: 600; margin-top: 6px; }

/* ---------- 看板（后厨 / 预约） ---------- */
.kanban { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.kanban-col { background: #f7f7fa; border-radius: 16px; padding: 12px; min-height: 200px; }
.kanban-col h4 { font-size: 13px; color: var(--text2); margin: 2px 4px 10px; display: flex; justify-content: space-between; }
.kanban-col h4 b { color: var(--text); }
.kb-card {
    background: #fff; border-radius: 12px; padding: 12px; margin-bottom: 10px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .04); border-left: 3px solid var(--ind-color, #007aff);
}
.kb-card .kb-title { font-size: 14px; font-weight: 700; color: var(--text); display: flex; justify-content: space-between; }
.kb-card .kb-title span { font-size: 11.5px; color: #8e8e93; font-weight: 500; }
.kb-card .kb-items { margin: 8px 0; font-size: 12.5px; color: #4a4a4f; line-height: 1.8; }
.kb-card .kb-items .qty { color: var(--ind-color, #ff5a3c); font-weight: 600; }
.kb-card .kb-note { font-size: 11.5px; color: #c26a00; background: #fff8ec; border-radius: 6px; padding: 4px 8px; margin-bottom: 8px; }
.kb-card .kb-foot { display: flex; gap: 6px; }
.kb-card .kb-foot .btn { flex: 1; padding: 5px 8px; font-size: 12px; justify-content: center; }
@media (max-width: 900px) { .kanban { grid-template-columns: 1fr; } }

/* ---------- 通用行业页工具 ---------- */
.ind-toolbar { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.ind-toolbar .spacer { flex: 1; }
.ind-chip-group { display: flex; gap: 6px; flex-wrap: wrap; }
.ind-chip {
    font-size: 12.5px; padding: 5px 12px; border-radius: 999px; cursor: pointer;
    background: #fff; border: 1px solid var(--line, #e5e5ea); color: var(--text2);
}
.ind-chip.on { background: var(--blue, #007aff); border-color: var(--blue, #007aff); color: #fff; }

.ind-empty { text-align: center; padding: 48px 20px; color: #8e8e93; }
.ind-empty .ie-icon { font-size: 40px; margin-bottom: 10px; }
.ind-empty p { margin: 0 0 14px; font-size: 13.5px; }

.ind-mod-hero {
    display: flex; align-items: center; gap: 16px;
    background: linear-gradient(120deg, #fff, color-mix(in srgb, var(--ind-color, #007aff) 7%, #fff));
    border: 1px solid var(--line2); border-radius: 18px; padding: 18px 20px; margin-bottom: 16px;
}
.ind-mod-hero .imh-icon {
    width: 52px; height: 52px; border-radius: 15px; display: flex; align-items: center; justify-content: center;
    font-size: 26px; background: color-mix(in srgb, var(--ind-color, #007aff) 14%, #fff); flex-shrink: 0;
}
.ind-mod-hero h2 { font-size: 18px; margin: 0 0 4px; color: var(--text); }
.ind-mod-hero p { margin: 0; font-size: 12.5px; color: var(--text2); }
.ind-mod-hero .imh-right { margin-left: auto; display: flex; gap: 8px; }

/* ---------- 规格矩阵 ---------- */
.sku-matrix { border-collapse: separate; border-spacing: 4px; }
.sku-matrix th, .sku-matrix td { padding: 6px; text-align: center; font-size: 12.5px; }
.sku-matrix th { color: var(--text2); font-weight: 600; }
.sku-matrix .sku-cell {
    width: 64px; height: 38px; border-radius: 8px; border: 1px dashed var(--line, #e5e5ea);
    background: #fff; cursor: pointer; font-size: 12px; color: var(--text2);
}
.sku-matrix .sku-cell.on { border-style: solid; border-color: var(--blue, #007aff); background: color-mix(in srgb, var(--ind-color, #ff5a3c) 10%, #fff); color: var(--ind-color, #ff5a3c); }

/* ---------- 授权/激活横幅 ---------- */
.ind-lock-banner {
    display: flex; align-items: center; gap: 14px;
    background: linear-gradient(120deg, #fff7ed, #fff);
    border: 1px solid #ffdcb3; border-radius: 16px; padding: 16px 18px; margin-bottom: 16px;
}
.ind-lock-banner .ilb-icon { font-size: 26px; }
.ind-lock-banner h3 { margin: 0 0 3px; font-size: 15px; color: #8a4b00; }
.ind-lock-banner p { margin: 0; font-size: 12.5px; color: #a16207; }
.ind-lock-banner .btn { margin-left: auto; }

/* ---------- 收银台桌台条 ---------- */
.ind-pos-bar {
    display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
    background: #fff; border-bottom: 1px solid var(--line2, #f0f0f2);
    padding: 8px 14px; font-size: 12.5px;
}
.ind-pos-bar .pb-label { color: #8e8e93; }
.ind-pos-bar .pb-mode {
    display: inline-flex; align-items: center; gap: 5px;
    background: color-mix(in srgb, var(--ind-color, #ff5a3c) 10%, #fff);
    color: var(--ind-color, #ff5a3c); border-radius: 999px; padding: 4px 12px;
    font-weight: 600; font-size: 12.5px;
}
.ind-pos-bar .pb-table {
    padding: 4px 12px; border-radius: 999px; border: 1px solid var(--line, #e5e5ea);
    background: #fff; cursor: pointer; font-size: 12.5px; color: var(--text2);
}
.ind-pos-bar .pb-table.on { background: color-mix(in srgb, var(--ind-color, #ff5a3c) 10%, #fff); border-color: color-mix(in srgb, var(--ind-color, #ff5a3c) 38%, #fff); color: var(--ind-color, #ff5a3c); font-weight: 600; }
.ind-pos-bar .pb-table.open { border-color: #b7e7c8; background: #f2fdf6; color: #1e8e3e; }
.ind-pos-bar .pb-sep { width: 1px; height: 16px; background: var(--line, #e5e5ea); }
.ind-pos-bar .pb-pill { color: var(--ind-color, #ff5a3c); font-weight: 600; }
.ind-pos-bar .pb-badge {
    display: inline-flex; align-items: center; gap: 6px;
    background: color-mix(in srgb, var(--ind-color, #007aff) 10%, #fff);
    color: var(--ind-color, #007aff); border-radius: 999px; padding: 3px 10px;
    font-weight: 600; font-size: 12px;
}
.ind-pos-bar .pb-note {
    flex: 1; min-width: 180px; max-width: 420px;
    border: 1px solid var(--line, #e5e5ea); border-radius: 999px;
    padding: 5px 14px; font-size: 12.5px; outline: none; background: #fafafb;
}
.ind-pos-bar .pb-note:focus { border-color: var(--ind-color, #007aff); background: #fff; }
.table-card.selected { outline: 2px solid var(--blue, #007aff); outline-offset: 1px; }
.ind-empty {
    padding: 26px 16px; text-align: center; color: #8e8e93; font-size: 13px;
    background: #fafafb; border: 1px dashed var(--line, #e5e5ea); border-radius: 12px;
}
.cart-note { font-size: 11px; color: #c26a00; background: #fff8ec; border-radius: 5px; padding: 1px 5px; margin-top: 3px; display: inline-block; }

/* 收银台行业主题色 */
body.ind-theme-tea { --ind-color: #ff8a3d; --blue: #ff8a3d; --blue-hover: #f2752a; }
body.ind-theme-restaurant { --ind-color: #ff5a3c; --blue: #ff5a3c; --blue-hover: #ea4529; }
body.ind-theme-fresh { --ind-color: #25a85a; --blue: #25a85a; --blue-hover: #1d8f4c; }
body.ind-theme-beauty { --ind-color: #c04bb8; --blue: #c04bb8; --blue-hover: #a63da0; }
body.ind-theme-apparel { --ind-color: #7b5cff; --blue: #7b5cff; --blue-hover: #6a4bea; }
body.ind-theme-pet { --ind-color: #b3763a; --blue: #b3763a; --blue-hover: #9c6530; }
body.ind-theme-retail { --ind-color: #2f7bff; --blue: #2f7bff; --blue-hover: #1f68e6; }
body.ind-theme-bakery { --ind-color: #e0699b; --blue: #e0699b; --blue-hover: #cc5a89; }
body.ind-theme-maternal { --ind-color: #ff6fa5; --blue: #ff6fa5; --blue-hover: #ee5d94; }

/* ===== 行业主题化：首页渐变与主色跟随店铺类型 ===== */
body[class^="ind-theme-"] .dash-hero {
    background: linear-gradient(135deg, var(--ind-color, #0a84ff), color-mix(in srgb, var(--ind-color, #0a84ff) 55%, #5b5be6));
}
body[class^="ind-theme-"] .table-card.st-open { border-color: color-mix(in srgb, var(--ind-color,#007aff) 40%, #fff); }
/* stores table: keep every cell on one line, let the name column breathe */
#storeTable th, #storeTable td { white-space: nowrap; }
#storeTable td:nth-child(2) { white-space: normal; min-width: 132px; }
#storeTable code { font-size: 11.5px; }
#storeTable th, #storeTable td { padding: 10px 8px; font-size: 12.5px; }
#storeTable th { font-size: 12px; }

/* 侧栏：行业运营分组 */
.menu-group{margin:8px 6px 10px;padding:6px 6px 8px;border-radius:14px;background:color-mix(in srgb,var(--si-color,#007aff) 5%,#fff);border:1px solid color-mix(in srgb,var(--si-color,#007aff) 12%,#eef0f5)}
.menu-group .mg-title{display:flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.4px;color:#8e8e93;padding:4px 8px 6px;font-weight:600}
.menu-group .mg-ic{font-size:14px}
.menu-group a{border-radius:9px}
.menu-group a.active{background:color-mix(in srgb,var(--si-color,#007aff) 12%,#fff)}

/* 统一餐饮模板：复选框/单选框也使用行业主色（当前全局主色=餐饮橙红） */
body[class^="ind-theme-"] input[type="checkbox"],
body[class^="ind-theme-"] input[type="radio"]{accent-color:var(--ind-color,#ff5a3c)}


/* 收银台行业工具抽屉 */
.ind-pos-bar .pb-tools{
  border:1px solid color-mix(in srgb,var(--ind-color,#ff5a3c) 32%,#fff);
  background:color-mix(in srgb,var(--ind-color,#ff5a3c) 8%,#fff);
  color:var(--ind-color,#ff5a3c);border-radius:999px;padding:5px 12px;
  font-size:12.5px;font-weight:700;cursor:pointer;white-space:nowrap;
}
.ind-pos-bar .pb-tools:hover{background:color-mix(in srgb,var(--ind-color,#ff5a3c) 14%,#fff)}
.ind-tools-mask{position:fixed;inset:0;z-index:9000;background:rgba(17,24,39,.38);display:flex;justify-content:flex-end}
.ind-tools-mask[hidden]{display:none}
.ind-tools-drawer{width:min(460px,92vw);height:100%;background:#f5f6fa;display:flex;flex-direction:column;box-shadow:-12px 0 32px rgba(17,24,39,.18)}
.ind-tools-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#fff;border-bottom:1px solid #e8eaf0;font-size:15px;color:#1f2937}
.ind-tools-close{border:none;background:transparent;font-size:24px;line-height:1;color:#8e8e93;cursor:pointer}
.ind-tools-body{flex:1;overflow-y:auto;padding:4px 0 16px}
.ind-tools-body .desk-panels{display:flex;flex-direction:column;gap:10px;padding:10px;background:transparent;border:0;overflow:visible}
.ind-tools-body .dp-card{width:auto;max-height:none;min-height:0}
.ind-tools-body .dp-body{max-height:220px}
.ind-tools-body .dp-refresh:hover,.ind-tools-body .dp-btn{color:var(--ind-color,#ff5a3c)}
.ind-tools-body .dp-btn.pri{background:var(--ind-color,#ff5a3c);border-color:var(--ind-color,#ff5a3c)}
.ind-tools-body .dp-chip.on{background:var(--ind-color,#ff5a3c);border-color:var(--ind-color,#ff5a3c)}
@media (max-width:640px){.ind-tools-drawer{width:100%}}
body.ind-tools-open{overflow:hidden}

/* 后厨看板：无侧栏、可全屏 */
body.kitchen-full .layout{display:block}
body.kitchen-full .main.kitchen-main{margin-left:0!important;width:100%;max-width:none;padding:16px 20px}
body.kitchen-full .topbar{max-width:none}

/* 全屏业务页：不显示后台侧栏，内容占满整页 */
body.fullpage .layout{display:block}
body.fullpage .main{margin-left:0!important;width:100%;max-width:none;padding:16px 20px}
body.fullpage .topbar{max-width:none}

