/* =====================================================================
 * 47 尾号限行查询 · 视觉母题「尾号轮换日历条」
 * ---------------------------------------------------------------------
 * 色板：交通蓝（--ll-pri #1f5fa8）+ 限行红（--ll-bad），冷静权威。
 * 版式：B 顶部横向控制条 + 全宽结果板 —— 一条铺满的参数条，结果整块展开。
 * 本页只作用于 .b11--plate 容器，不外溢到其它任何页面。
 * ===================================================================== */

.b11--plate {
    --ll-pri: #1f5fa8;
    --ll-pri2: #3a83d4;
    --ll-hot: #d84a4a;
    --ll-tint: #e0ebf7;
    --b11-pri: #1f5fa8;
    --b11-pri2: #3a83d4;
    --b11-tint: #e0ebf7;
    --b11-bg: #eceff4;
    --b11-bg2: #dde2ea;
    --b11-card2: #f8fafc;
    background-image:
        linear-gradient(to right, color-mix(in srgb, var(--b11-line2) 30%, transparent) 1px, transparent 1px),
        linear-gradient(to bottom, color-mix(in srgb, var(--b11-line2) 30%, transparent) 1px, transparent 1px);
    background-size: 40px 40px, 40px 40px;
}
:root[data-theme="dark"] .b11.b11--plate {
    --ll-pri: #6ea6e8;
    --ll-pri2: #90bff2;
    --ll-hot: #f08585;
    --ll-tint: #16273a;
    --b11-pri: #6ea6e8;
    --b11-pri2: #90bff2;
    --b11-tint: #16273a;
    --b11-bg: #0f1318;
    --b11-bg2: #171d25;
    --b11-card2: #1a2029;
}

/* ---------- 首屏 ---------- */
.ll-hero { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 26px; align-items: center; }
.ll-hero .b11-h1 em { color: var(--ll-pri); }
.ll-hero .b11-lead b { box-shadow: inset 0 -.42em 0 var(--ll-tint); }
.ll-strip { display: grid; place-items: center; }
.ll-strip svg { width: min(300px, 78vw); height: auto; }

/* ---------- 顶部横向控制条 ---------- */
.ll-bar {
    margin-top: 24px; background: var(--b11-card); border: 1px solid var(--b11-line);
    border-top: 4px solid var(--ll-pri); padding: 18px 22px 14px; box-shadow: var(--b11-shadow);
    clip-path: polygon(0 0, calc(100% - 16px) 0, 100% 16px, 100% 100%, 0 100%);
}
.ll-bar-t { font-size: var(--b11-xs); font-family: var(--b11-mono); letter-spacing: .16em; color: var(--ll-pri); margin-bottom: 12px; }
.ll-bar-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)) auto; gap: 14px; align-items: end; }
.ll-bar-acts { display: flex; gap: 9px; flex-wrap: wrap; align-items: center; }
.ll-bar-acts .b11-btn { white-space: nowrap; }

/* ---------- 结果板 ---------- */
.ll-verdict {
    display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 20px; align-items: center;
    background: var(--b11-card); border: 1px solid var(--b11-line); border-left: 8px solid var(--ll-pri);
    padding: 22px 24px; margin-bottom: var(--b11-gap); box-shadow: var(--b11-shadow);
}
.ll-verdict.is-bad { border-left-color: var(--ll-hot); background: var(--b11-badbg); }
.ll-verdict.is-ok { border-left-color: var(--b11-ok); }
.ll-verdict-badge {
    font-family: var(--b11-mono); font-size: clamp(22px, 3.2vw, 34px); font-weight: 800;
    color: var(--ll-pri); letter-spacing: -.02em; white-space: nowrap;
}
.ll-verdict.is-bad .ll-verdict-badge { color: var(--ll-hot); }
.ll-verdict.is-ok .ll-verdict-badge { color: var(--b11-ok); }
.ll-verdict-txt b { display: block; font-size: var(--b11-md); color: var(--b11-ink); margin-bottom: 4px; }
.ll-verdict-txt span { font-size: var(--b11-sm); color: var(--b11-sub); line-height: 1.75; }

.ll-panel { background: var(--b11-card); border: 1px solid var(--b11-line); padding: 20px 22px 18px; margin-bottom: var(--b11-gap); box-shadow: var(--b11-shadow); }

/* ---------- 一周日历条 ---------- */
.ll-week { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; }
.ll-day {
    border: 1px solid var(--b11-line2); background: var(--b11-card2); padding: 11px 6px 10px; text-align: center;
    clip-path: polygon(0 0, calc(100% - 9px) 0, 100% 9px, 100% 100%, 0 100%);
}
.ll-day .wd { display: block; font-size: var(--b11-xs); color: var(--b11-mute); }
.ll-day .dd { display: block; font-family: var(--b11-mono); font-size: var(--b11-md); font-weight: 800; color: var(--b11-ink); margin: 3px 0; }
.ll-day .pl { display: block; font-family: var(--b11-mono); font-size: var(--b11-sm); font-weight: 800; color: var(--ll-hot); }
.ll-day .pl.off { color: var(--b11-mute); font-weight: 400; }
.ll-day.today { border-color: var(--ll-pri); background: var(--ll-tint); }
.ll-day.today .dd { color: var(--ll-pri); }
.ll-day.hit { border-color: var(--ll-hot); }
.ll-day.hit .pl { color: var(--ll-hot); }

/* ---------- 四格提示 ---------- */
.ll-grid4 { display: grid; grid-template-columns: repeat(auto-fit, minmax(212px, 1fr)); gap: 12px; margin-bottom: var(--b11-gap); }
.ll-cell { background: var(--b11-card); border: 1px solid var(--b11-line); border-top: 3px solid var(--ll-pri); padding: 14px 16px; }
.ll-cell .t { display: block; font-size: var(--b11-xs); color: var(--b11-mute); letter-spacing: .06em; }
.ll-cell b { display: block; font-size: var(--b11-base); color: var(--b11-ink); margin: 5px 0 4px; line-height: 1.5; }
.ll-cell .d { display: block; font-size: var(--b11-xs); color: var(--b11-sub); line-height: 1.7; }

/* ---------- 处罚提示 ---------- */
.ll-notes { list-style: none; margin: 0; padding: 0; }
.ll-notes li {
    position: relative; padding: 8px 0 8px 28px; font-size: var(--b11-sm); color: var(--b11-sub);
    border-bottom: 1px dotted var(--b11-line2); line-height: 1.74;
}
.ll-notes li:last-child { border-bottom: 0; }
.ll-notes li::before {
    content: "§"; position: absolute; left: 2px; top: 8px; width: 19px; height: 19px;
    display: grid; place-items: center; background: var(--ll-tint); color: var(--ll-pri);
    font-family: var(--b11-mono); font-size: 11px; font-weight: 800;
}
.ll-notes li b { color: var(--b11-ink); }

/* ---------- 批量清洗条 ---------- */
.ll-clean {
    display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px;
    margin-top: 14px; padding: 12px 14px; background: var(--b11-card2);
    border: 1px solid var(--b11-line); font-size: var(--b11-sm);
}
.ll-clean > b { color: var(--ll-pri); font-family: var(--b11-mono); font-size: var(--b11-xs); letter-spacing: .08em; }
.ll-clean code { margin-left: auto; }

/* ---------- 响应式 ---------- */
@media (max-width: 980px) {
    .ll-bar-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ll-bar-acts { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
    .ll-hero { grid-template-columns: minmax(0, 1fr); }
    .ll-strip { order: -1; }
    .ll-week { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .ll-clean code { margin-left: 0; }
}
@media (max-width: 560px) {
    .ll-bar-grid { grid-template-columns: minmax(0, 1fr); }
    .ll-week { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
