.v7-hidden{display:none!important}.v7-shell{padding:4px}.v7-shell>header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.v7-shell>header h2{margin:0}.v7-shell>header p,.v7-mode-title p,.v7-filter-head p,.v7-fields-head p{color:#64748b;margin:5px 0}.v7-shell>header button{width:38px;height:38px;border:1px solid #cbd5e1;border-radius:50%;background:#fff;color:#475569;font-size:25px;cursor:pointer}.v7-shell nav{display:flex;gap:7px;border-bottom:1px solid #cbd5e1;margin:18px 0}.v7-shell nav button{border:0;border-bottom:3px solid transparent;background:none;padding:11px 16px;font-weight:800;color:#64748b;cursor:pointer}.v7-shell nav button.active{color:#b42318;border-bottom-color:#d93025}.v7-filters,.v7-fields{border:1px solid #cbd5e1;border-radius:12px;padding:16px;margin-top:15px;background:#fff}.v7-filter-head,.v7-fields-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.v7-filter-head h4,.v7-fields-head h4{margin:0}.v7-filter-row{display:grid;grid-template-columns:1fr 2fr;gap:14px;margin-top:13px}.v7-filter-row fieldset{border:0;padding:0}.v7-filter-row legend{font-weight:800;color:#475569;margin-bottom:7px}.v7-year-grid,.v7-month-grid{display:flex;flex-wrap:wrap;gap:8px}.v7-year-grid label,.v7-month-grid label{display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #dbe3ee;border-radius:8px;background:#f8fafc;font-weight:700}.v7-year-grid label.not-loaded{border-style:dashed;background:#fff}.v7-year-grid label small{font-size:10px;color:#94a3b8}.v7-field-grid{display:grid;grid-template-columns:repeat(4,minmax(190px,1fr));gap:9px;margin-top:12px}.v7-field-grid label{display:flex;align-items:center;gap:9px;min-height:44px;padding:9px 12px;border:1px solid #dbe3ee;border-radius:8px;background:#f8fafc;color:#334155;font-weight:700;cursor:pointer}.v7-field-grid label:hover{border-color:#93c5fd;background:#eff6ff}.v7-field-grid input,.v7-year-grid input,.v7-month-grid input{width:17px;height:17px;accent-color:#d93025}.v7-fields-head>div:last-child{display:flex;gap:7px}.v7-actions{display:flex;gap:9px;margin:15px 0}.v7-preview{border:1px solid #cbd5e1;border-radius:10px;padding:13px;max-height:48vh;overflow:auto}.v7-preview table{border-collapse:collapse;width:max-content;min-width:100%;margin-top:10px}.v7-preview th,.v7-preview td{border-bottom:1px solid #e2e8f0;padding:7px;text-align:left}.v7-preview th{position:sticky;top:0;background:#f8fafc}.v7-count{display:flex;align-items:baseline;gap:7px}.v7-count strong{font-size:25px;color:#b42318}.v7-error{color:#b42318}.v7-refresh-status{position:fixed;right:20px;bottom:20px;z-index:7000;width:380px;padding:14px;background:#fff;border:1px solid #93c5fd;border-radius:10px;box-shadow:0 18px 45px rgba(15,23,42,.3)}.v7-refresh-status strong,.v7-refresh-status span{display:block}.v7-refresh-status>div{height:8px;background:#e2e8f0;border-radius:99px;margin:9px 0}.v7-refresh-status i{display:block;height:100%;background:#2563eb}.v7-refresh-status.failed{border-color:#fca5a5}.v7-refresh-status.success{border-color:#86efac}@media(max-width:1100px){.v7-field-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){.v7-filter-row{grid-template-columns:1fr}.v7-field-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.v7-field-grid{grid-template-columns:1fr}.v7-filter-head,.v7-fields-head{flex-direction:column}}


/* V8: correct rolling-year labels and Rogers source dropdown */
.v7-year-grid label {
  min-width: 170px;
  justify-content: flex-start;
}
.v7-year-grid label span {
  min-width: 42px;
  font-size: 15px;
  color: #1e293b;
}
.v7-year-grid label small {
  margin-left: auto;
  color: #64748b;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}
.v7-year-grid label.not-loaded {
  background: #fffaf0;
  border-color: #fed7aa;
}
.v7-year-grid label.not-loaded small {
  color: #9a3412;
}
.v8-rogers-refresh {
  display: inline-flex;
  position: relative;
}
.v8-rogers-main {
  border-radius: 7px 0 0 7px !important;
}
.v8-rogers-arrow {
  border-left: 0 !important;
  border-radius: 0 7px 7px 0 !important;
  padding-left: 9px !important;
  padding-right: 9px !important;
}
.v8-rogers-panel {
  position: absolute;
  right: 0;
  top: calc(100% + 7px);
  z-index: 7000;
  width: 330px;
  padding: 7px;
  background: #fff;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  box-shadow: 0 16px 40px rgba(15,23,42,.25);
}
.v8-rogers-panel[hidden] { display: none !important; }
.v8-rogers-panel button {
  display: flex;
  flex-direction: column;
  gap: 3px;
  width: 100%;
  padding: 10px;
  border: 0;
  border-radius: 7px;
  background: #fff;
  text-align: left;
  cursor: pointer;
}
.v8-rogers-panel button:hover { background: #f1f5f9; }
.v8-rogers-panel span { color: #64748b; font-size: 12px; }

.v9-history-import{display:flex;align-items:center;gap:12px;margin-top:14px;padding:12px 14px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff}.v9-history-import>div{display:flex;flex-direction:column;flex:1}.v9-history-import span,.v9-history-import small{color:#475569}.v9-history-import small{max-width:420px}@media(max-width:750px){.v9-history-import{align-items:flex-start;flex-direction:column}}


/* V12: Province is a dedicated report-filter stage */
.v12-provinces {
  margin-top: 14px;
  padding: 16px;
  border: 1px solid #cbd5e1;
  border-radius: 12px;
  background: #fff;
}
.v12-province-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}
.v12-province-head h4 { margin: 0; }
.v12-province-head p { margin: 5px 0 0; color: #64748b; }
.v7-province-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(85px, 1fr));
  gap: 8px;
}
.v7-province-grid label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 8px 10px;
  border: 1px solid #dbe3ee;
  border-radius: 8px;
  background: #f8fafc;
  color: #334155;
  font-weight: 800;
  cursor: pointer;
}
.v7-province-grid label:hover {
  border-color: #93c5fd;
  background: #eff6ff;
}
.v7-province-grid input {
  width: 17px;
  height: 17px;
  accent-color: #d93025;
}
@media (max-width: 1100px) { .v7-province-grid { grid-template-columns: repeat(5, 1fr); } }
@media (max-width: 800px) { .v7-province-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 520px) {
  .v12-province-head { flex-direction: column; }
  .v7-province-grid { grid-template-columns: repeat(2, 1fr); }
}
