:root{color-scheme:dark;--bg:#06101d;--panel:#0d1b2e;--panel2:#12243b;--line:#263b58;--text:#eef6ff;--muted:#91a5be;--blue:#4ea1ff;--green:#38d996;--red:#ff6b75;--orange:#ffb04d}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:radial-gradient(circle at 20% 0,#12345a55,transparent 35%),linear-gradient(180deg,#071322,#030912);color:var(--text);min-height:100vh}.admin-top{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:16px max(24px,calc((100vw - 1240px)/2));background:#07111ee8;backdrop-filter:blur(18px);border-bottom:1px solid #ffffff14}.admin-brand{color:#fff;text-decoration:none;font-weight:850;font-size:20px}.admin-brand span{display:block;color:var(--muted);font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-top:2px}.admin-top nav{display:flex;gap:8px;flex-wrap:wrap}.admin-top nav a,.btn{border:1px solid #ffffff18;background:#ffffff0b;color:#fff;text-decoration:none;border-radius:12px;padding:10px 14px;font-weight:750;cursor:pointer}.admin-top nav a:hover,.btn:hover{background:#ffffff14;border-color:#4ea1ff66}.admin-wrap{width:min(1240px,calc(100% - 32px));margin:28px auto 80px}.admin-card{background:linear-gradient(145deg,#102139e8,#091729e8);border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 18px 55px #0005;margin-bottom:18px}.admin-card h1,.admin-card h2{margin:0 0 8px}.muted{color:var(--muted)}.alert{padding:13px 15px;border-radius:13px;margin:14px 0}.alert.ok{background:#143b2d;color:#aef5d2;border:1px solid #38d99655}.alert.err{background:#442029;color:#ffd1d5;border:1px solid #ff6b7555}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#a9bdd3;font-weight:800}.field input,.field select,.field textarea{width:100%;background:#071322;border:1px solid #2a4160;color:#fff;border-radius:12px;padding:12px;font:inherit}.field textarea{min-height:90px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #4ea1ff66;border-color:#4ea1ff}.span-2{grid-column:span 2}.span-3{grid-column:1/-1}.actions{display:flex;gap:10px;align-items:center;margin-top:18px}.btn.primary{background:linear-gradient(135deg,#2d7ff0,#57a9ff);border:0}.btn.danger{background:#4a1d27;border-color:#ff6b7555}.data-table{width:100%;border-collapse:separate;border-spacing:0}.data-table th,.data-table td{padding:11px 12px;border-bottom:1px solid #ffffff10;text-align:left}.data-table th{color:#9fb5cf;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.data-table tr:hover td{background:#ffffff05}.pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#ffffff0c;border:1px solid #ffffff12}.setup-secret{font:700 20px ui-monospace,monospace;letter-spacing:.12em;background:#050b13;padding:14px;border-radius:12px;word-break:break-all}.admin-footer{text-align:center;color:#71869f;padding:25px}.two-col{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.diff{font-family:ui-monospace,monospace;font-size:12px;white-space:pre-wrap}.login-box{width:min(480px,100%);margin:8vh auto}.checkbox-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.checkbox-grid label{background:#ffffff08;border:1px solid #ffffff10;padding:9px;border-radius:10px}@media(max-width:850px){.form-grid,.two-col{grid-template-columns:1fr}.span-2,.span-3{grid-column:auto}.checkbox-grid{grid-template-columns:repeat(2,1fr)}.admin-top{align-items:flex-start;gap:12px;flex-direction:column}}
.qr-wrap{width:230px;min-height:230px;display:grid;place-items:center;background:#fff;border-radius:18px;padding:12px;box-shadow:0 12px 35px #0005}.qr-wrap img{width:206px;height:206px;image-rendering:pixelated}.qr-wrap span{display:none;color:#111;text-align:center;font-weight:700}.qr-wrap.qr-failed img{display:none}.qr-wrap.qr-failed span{display:block}.recovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.recovery-grid code{display:block;background:#050b13;border:1px solid #2a4160;border-radius:12px;padding:12px;text-align:center;font-size:17px;letter-spacing:.08em}.recovery-card{border-color:#ffb04d66}@media(max-width:600px){.recovery-grid{grid-template-columns:1fr}.qr-wrap{width:100%;max-width:260px}}
.qc-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;background:radial-gradient(circle at 85% 10%,#2d7ff033,transparent 34%),linear-gradient(145deg,#102640ee,#091729ee)}.qc-kicker{display:inline-block;color:#7bbcff;font-size:11px;font-weight:850;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px}.qc-filter{display:flex;gap:10px;flex-wrap:wrap}.qc-filter label{display:flex;flex-direction:column;gap:6px;color:#91a5be;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.qc-filter select{min-width:150px;background:#071322;border:1px solid #2a4160;color:#fff;border-radius:12px;padding:11px 34px 11px 12px}.qc-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.qc-stat{position:relative;overflow:hidden;min-height:112px;padding:20px;border-radius:20px;text-decoration:none;color:#fff;border:1px solid #ffffff15;background:#0d1b2ee8;box-shadow:0 15px 40px #0004;transition:transform .18s,border-color .18s}.qc-stat:hover{transform:translateY(-2px);border-color:#ffffff38}.qc-stat strong{display:block;font-size:38px;line-height:1}.qc-stat span{display:block;color:#b2c4d8;font-weight:750;margin-top:8px}.qc-stat:after{content:"";position:absolute;width:100px;height:100px;border-radius:50%;right:-30px;bottom:-45px;background:currentColor;opacity:.08}.qc-stat.critical{color:#ff7d86}.qc-stat.warning{color:#ffc36d}.qc-stat.info{color:#72b7ff}.qc-stat.total{color:#9ce8c9}.qc-list{display:grid;gap:12px}.qc-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:16px;align-items:center;margin-bottom:0;padding:18px 20px;border-left:4px solid transparent}.qc-item.qc-critical{border-left-color:#ff6b75}.qc-item.qc-warning{border-left-color:#ffb04d}.qc-item.qc-info{border-left-color:#4ea1ff}.qc-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font-size:20px;font-weight:950;background:#ffffff0b;border:1px solid #ffffff14}.qc-critical .qc-icon{color:#ff8b93;background:#ff6b7514}.qc-warning .qc-icon{color:#ffc06a;background:#ffb04d14}.qc-info .qc-icon{color:#74baff;background:#4ea1ff14}.qc-main h2{font-size:17px;margin:5px 0 4px}.qc-main p{margin:0;color:#c5d3e2}.qc-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.qc-meta time{font-weight:850;color:#fff}.qc-badge{font-size:10px;text-transform:uppercase;letter-spacing:.09em;border-radius:999px;padding:4px 8px;background:#ffffff0b;color:#a9bdd3}.qc-fields{font-size:11px;color:#738aa4;margin-top:7px;font-family:ui-monospace,monospace}.qc-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.qc-empty{text-align:center;padding:55px 25px}.qc-check{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;background:#38d9961f;border:1px solid #38d99655;color:#73efba;font-size:34px;font-weight:900}@media(max-width:900px){.qc-hero{align-items:stretch;flex-direction:column}.qc-stats{grid-template-columns:repeat(2,1fr)}.qc-item{grid-template-columns:44px minmax(0,1fr)}.qc-actions{grid-column:2;justify-content:flex-start}}@media(max-width:560px){.qc-stats{grid-template-columns:1fr 1fr}.qc-stat{min-height:96px;padding:16px}.qc-stat strong{font-size:30px}.qc-item{grid-template-columns:1fr}.qc-icon{display:none}.qc-actions{grid-column:1}.qc-filter{display:grid;grid-template-columns:1fr 1fr}.qc-filter select{min-width:0;width:100%}}

/* Quality control: missing-data category */
.qc-stats.qc-stats-five{grid-template-columns:repeat(5,minmax(0,1fr))}
.qc-stat.missing{color:#d9a7ff}
.qc-stat.clean{color:#71e3ad}
.qc-item.qc-missing{border-left-color:#b774e8}
.qc-missing .qc-icon{color:#e0b3ff;background:#b774e814}
@media(max-width:1100px){.qc-stats.qc-stats-five{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.qc-stats.qc-stats-five{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* Admin dashboard + sectioned editor */
.admin-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;background:radial-gradient(circle at 85% 15%,rgba(78,161,255,.22),transparent 32%),linear-gradient(145deg,#102640ee,#091729ee)}
.admin-kicker{display:block;color:#75b8ff;font-size:11px;font-weight:850;letter-spacing:.15em;text-transform:uppercase;margin-bottom:8px}.big-number{font-size:54px;line-height:1;color:#9fcaff}.dashboard-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.dash-stat{padding:20px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,#11223a,#0a1728);box-shadow:0 15px 38px #0004}.dash-stat strong{display:block;font-size:34px;line-height:1}.dash-stat span{display:block;color:var(--muted);margin-top:8px}.dash-stat.warning strong{color:#ffc06a}.day-summary{display:grid;gap:10px;margin-top:18px;padding:15px;border-radius:15px;background:#ffffff08}.day-summary span{color:var(--muted)}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-grid a{display:flex;flex-direction:column;gap:5px;text-decoration:none;color:#fff;padding:15px;border-radius:15px;border:1px solid #ffffff12;background:#ffffff08}.quick-grid a:hover{border-color:#4ea1ff66;background:#ffffff0d}.quick-grid span{color:var(--muted);font-size:12px}.filter-row{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.filter-row label{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:12px}.missing-list{display:grid;gap:10px}.missing-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;border:1px solid #ffffff12;border-radius:15px;background:#ffffff06}.missing-row>div{display:flex;flex-direction:column;gap:4px}.missing-row span{color:var(--muted);font-size:12px}.editor-sections{display:grid;gap:12px}.editor-section{border:1px solid #29415f;border-radius:18px;background:linear-gradient(145deg,rgba(16,33,57,.92),rgba(8,21,37,.92));overflow:hidden}.editor-section summary{list-style:none;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:17px 18px;cursor:pointer}.editor-section summary::-webkit-details-marker{display:none}.section-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#ffffff0a;border:1px solid #ffffff12}.editor-section summary strong{display:block;font-size:16px}.editor-section summary small{display:block;color:var(--muted);margin-top:3px}.section-chevron{font-size:22px;color:#86a4c5;transition:transform .2s}.editor-section[open] .section-chevron{transform:rotate(180deg)}.section-body{padding:0 18px 20px;border-top:1px solid #ffffff0d}.section-body .form-grid{padding-top:18px}.sticky-save{position:sticky;bottom:14px;z-index:20;margin-top:18px;padding:13px 15px;border:1px solid #ffffff1a;border-radius:16px;background:rgba(6,16,29,.88);backdrop-filter:blur(18px);box-shadow:0 16px 45px #0008;display:flex;align-items:center;justify-content:space-between;gap:14px}.sticky-save>div:first-child{display:flex;flex-direction:column}.sticky-save span{font-size:12px;color:var(--muted)}.sticky-save .actions{margin:0}
@media(max-width:900px){.dashboard-stats{grid-template-columns:repeat(2,1fr)}.admin-hero{align-items:flex-start;flex-direction:column}.sticky-save{align-items:stretch;flex-direction:column}.sticky-save .actions{width:100%}.sticky-save .btn{flex:1}.quick-grid{grid-template-columns:1fr}.missing-row{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.dashboard-stats{grid-template-columns:1fr 1fr}.dash-stat{padding:16px}.dash-stat strong{font-size:28px}.editor-section summary{grid-template-columns:38px 1fr auto;padding:14px}.section-icon{width:36px;height:36px}.section-body{padding:0 14px 16px}}

/* Premium login screen */
.admin-login-page{
  position:relative;
  display:flex;
  min-height:100vh;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 16% 12%,rgba(45,127,240,.24),transparent 31%),
    radial-gradient(circle at 84% 82%,rgba(56,217,150,.12),transparent 29%),
    linear-gradient(145deg,#06111f 0%,#071524 45%,#020811 100%);
}
.admin-login-page:before,
.admin-login-page:after{
  content:"";
  position:fixed;
  pointer-events:none;
  border-radius:50%;
  filter:blur(4px);
  opacity:.55;
}
.admin-login-page:before{width:360px;height:360px;left:-180px;top:18%;background:radial-gradient(circle,rgba(78,161,255,.16),transparent 68%)}
.admin-login-page:after{width:440px;height:440px;right:-230px;bottom:-120px;background:radial-gradient(circle,rgba(56,217,150,.1),transparent 68%)}
.admin-top-login{display:none}
.admin-login-page .admin-wrap{width:100%;margin:0;display:grid;place-items:center;min-height:100vh;padding:30px 18px}
.login-shell{width:100%;display:grid;place-items:center}
.admin-card.login-box{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:min(520px,100%);
  margin:0;
  padding:34px 36px 28px;
  border-radius:28px;
  border:1px solid rgba(151,190,229,.2);
  background:linear-gradient(145deg,rgba(17,37,62,.88),rgba(7,20,35,.91));
  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);
  box-shadow:0 30px 90px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.055);
}
.admin-card.login-box:before{
  content:"";
  position:absolute;
  z-index:-1;
  width:260px;height:260px;
  right:-100px;top:-130px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(78,161,255,.22),transparent 68%);
}
.login-brand{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:30px}
.login-brand-icon{flex:0 0 58px;width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.045));border:1px solid rgba(255,255,255,.13);box-shadow:0 13px 34px rgba(0,0,0,.26)}
.login-brand-icon svg{width:43px;height:43px;display:block}
.login-brand-copy{display:flex;flex-direction:column;line-height:1.05}
.login-brand-copy strong{font-size:27px;letter-spacing:-.04em;color:#fff;font-weight:900}
.login-brand-copy strong span{color:#74b8ff}
.login-brand-copy small{margin-top:7px;color:#849bb5;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.login-heading{text-align:center;margin-bottom:25px}
.login-kicker{display:inline-flex;padding:7px 11px;border-radius:999px;color:#8fc7ff;background:rgba(78,161,255,.1);border:1px solid rgba(78,161,255,.2);font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;margin-bottom:13px}
.login-heading h1{margin:0;color:#fff;font-size:30px;letter-spacing:-.035em}
.login-heading p{margin:9px auto 0;max-width:390px;color:#91a5be;font-size:14px;line-height:1.55}
.login-form{display:grid;gap:16px}
.login-field{gap:8px}
.login-field label{font-size:11px;color:#b4c7db;letter-spacing:.07em}
.login-input-wrap{position:relative}
.login-input-icon{position:absolute;z-index:2;left:15px;top:50%;width:20px;height:20px;transform:translateY(-50%);color:#7f9ab6;pointer-events:none}
.login-input-icon svg,.login-submit svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.login-field .login-input-wrap input{
  min-height:54px;
  padding:14px 15px 14px 47px;
  border-radius:15px;
  border:1px solid rgba(109,144,181,.34);
  background:rgba(3,13,24,.62);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  transition:border-color .18s,box-shadow .18s,background .18s;
}
.login-field .login-input-wrap input::placeholder{color:#5e7690}
.login-field .login-input-wrap input:focus{outline:none;border-color:#5aa8ff;background:rgba(4,16,29,.83);box-shadow:0 0 0 4px rgba(78,161,255,.13)}
.login-field .login-input-wrap:focus-within .login-input-icon{color:#69b0ff}
.login-submit{width:100%;min-height:54px;margin-top:5px;border-radius:15px!important;display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;box-shadow:0 14px 32px rgba(45,127,240,.26);transition:transform .18s,box-shadow .18s,filter .18s}
.login-submit svg{width:20px;height:20px;transition:transform .18s}
.login-submit:hover{transform:translateY(-1px);filter:brightness(1.07);box-shadow:0 18px 38px rgba(45,127,240,.34)}
.login-submit:hover svg{transform:translateX(3px)}
.login-submit:active{transform:translateY(0)}
.login-alert{margin:0 0 18px;text-align:center;font-size:13px}
.login-signature{text-align:center;color:#647c96;font-size:11px;letter-spacing:.045em;margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.075)}
@media(max-width:560px){
  .admin-login-page .admin-wrap{padding:16px}
  .admin-card.login-box{padding:28px 20px 23px;border-radius:23px}
  .login-brand{gap:11px;margin-bottom:25px}
  .login-brand-icon{width:51px;height:51px;flex-basis:51px;border-radius:16px}
  .login-brand-icon svg{width:38px;height:38px}
  .login-brand-copy strong{font-size:23px}
  .login-brand-copy small{font-size:8px;letter-spacing:.09em}
  .login-heading h1{font-size:27px}
}

/* Logo portalu na ekranie logowania */
.login-brand{display:flex;justify-content:center;margin-bottom:24px}
.login-logo{display:block;height:96px;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 8px 22px rgba(0,0,0,.35))}
@media(max-width:560px){.login-logo{height:78px}}

/* Automatyczna prognoza */
.forecast-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}.forecast-kpis .dash-stat small{display:block;color:var(--muted);margin-top:8px;line-height:1.45}.forecast-time{font-size:25px!important}.forecast-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:15px}.forecast-toolbar h2{margin-bottom:5px}.forecast-toolbar p{margin:0}.forecast-toolbar .actions{margin:0}.forecast-table-wrap{overflow:auto}.forecast-table{min-width:980px}.forecast-table td{white-space:nowrap}.forecast-table small{color:var(--muted)}.confidence{display:inline-block;width:58px;height:7px;border-radius:999px;background:#ffffff12;overflow:hidden;vertical-align:middle;margin-right:7px}.confidence i{display:block;height:100%;background:linear-gradient(90deg,#f7b955,#4ea1ff,#42d89d);border-radius:inherit}.status-pill{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;background:#ffffff10;color:#a9bdd2}.status-pill.approved{background:#39d39120;color:#77e3b2}.status-pill.published{background:#4ea1ff20;color:#9ecbff}.btn.mini{padding:7px 10px;font-size:11px}code{padding:2px 6px;border-radius:6px;background:#ffffff0d;color:#b9d7f8}@media(max-width:900px){.forecast-kpis{grid-template-columns:repeat(2,1fr)}.forecast-toolbar{flex-direction:column}.forecast-toolbar .actions{width:100%}}@media(max-width:560px){.forecast-kpis{grid-template-columns:1fr}}
.forecast-horizon-cards{align-items:stretch;margin-bottom:18px}.horizon-card{min-width:0}.horizon-card h2{margin-bottom:14px}.horizon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.horizon-item{padding:11px;border:1px solid #ffffff0d;border-radius:10px;background:#ffffff05}.horizon-item span,.horizon-item small{display:block;color:var(--muted)}.horizon-item strong{display:block;font-size:20px;margin:3px 0}.horizon-item small{font-size:10px;line-height:1.35}.forecast-model-table{min-width:1550px}.forecast-model-table th{white-space:normal;min-width:92px}.three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}@media(max-width:1100px){.three-col{grid-template-columns:1fr}.horizon-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:700px){.horizon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Automatyczna prognoza v3 — jawne dane stacji i pełna walidacja */
.station-source-card{display:flex;justify-content:space-between;gap:24px;align-items:center}
.station-source-card>div:first-child{max-width:520px}
.station-metrics{display:grid;grid-template-columns:repeat(2,minmax(145px,1fr));gap:10px;min-width:390px}
.station-metrics>div{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:12px}
.station-metrics span{display:block;color:var(--muted,#9fb0c3);font-size:.78rem;margin-bottom:5px}
.station-metrics strong{font-size:1rem}
.validation-explainer{margin:10px 0 18px;padding:12px 15px;border-radius:11px;background:rgba(54,164,255,.09);border:1px solid rgba(86,174,255,.2);color:#dbeeff}
.validation-detail-table td,.validation-detail-table th{white-space:nowrap}
.validation-detail-table .station-cell{background:rgba(45,190,120,.08)}
.cell-sub{display:block;margin-top:4px;color:var(--muted,#91a4b8);font-size:.72rem;font-weight:400}
@media(max-width:900px){.station-source-card{display:block}.station-metrics{min-width:0;margin-top:16px}.station-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.station-metrics{grid-template-columns:1fr}}
.simple-status-grid,.weather-now-grid,.score-grid,.correction-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.weather-now-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.weather-now-grid>div,.correction-grid>div{padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.025)}.weather-now-grid span,.correction-grid span{display:block;color:var(--muted);font-size:12px}.weather-now-grid strong,.correction-grid strong{display:block;font-size:20px;margin-top:5px}.correction-grid small{color:var(--muted)}.forecast-cards{display:grid;gap:8px}.forecast-hour-card{border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.025)}.forecast-hour-card summary{cursor:pointer;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:15px}.forecast-hour-card summary div:first-child{display:flex;flex-direction:column;gap:4px}.forecast-hour-card summary span{color:var(--muted)}.forecast-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.forecast-badges span{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.06);font-size:12px}.model-compare-grid{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:12px;padding:0 14px 14px}.model-compare-grid>div{padding:12px;border-radius:10px;background:rgba(0,0,0,.15)}.model-compare-grid p{margin:5px 0;color:var(--muted)}.score-card{padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:12px}.score-card span,.score-card small{display:block;color:var(--muted)}.score-card strong{display:block;font-size:28px;margin:6px 0}.admin-details>summary{cursor:pointer;font-weight:700;padding:4px 0}.horizon-simple{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:15px}.horizon-simple p{display:grid;grid-template-columns:80px 55px 1fr;gap:8px;margin:7px 0}.horizon-simple small{color:var(--muted)}@media(max-width:900px){.simple-status-grid,.score-grid,.correction-grid{grid-template-columns:repeat(2,1fr)}.weather-now-grid{grid-template-columns:repeat(3,1fr)}.model-compare-grid,.horizon-simple{grid-template-columns:1fr}}@media(max-width:560px){.simple-status-grid,.score-grid,.correction-grid,.weather-now-grid{grid-template-columns:1fr 1fr}.forecast-hour-card summary{align-items:flex-start;flex-direction:column}.forecast-badges{justify-content:flex-start}}

/* Automatyczna prognoza v7: wykres i dziennik CRON */
.forecast-chart-wrap{width:100%;overflow:hidden;border:1px solid var(--border,#dfe5ec);border-radius:14px;padding:10px;background:var(--card,#fff)}
.forecast-chart-wrap svg{display:block;width:100%;height:auto;min-height:260px}
.chart-grid{stroke:#dfe5ec;stroke-width:1}
.chart-axis{fill:#667085;font-size:12px}
.chart-date{text-anchor:middle}
.chart-empty{fill:#667085;font-size:15px;text-anchor:middle}
.chart-line-gfs,.chart-line-ecmwf,.chart-line-icon,.chart-line-local{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.chart-line-gfs{stroke:#2563eb}.chart-line-ecmwf{stroke:#f59e0b}.chart-line-icon{stroke:#a855f7}.chart-line-local{stroke:#16a34a}
.chart-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px}.chart-legend span{display:flex;align-items:center;gap:7px}.chart-legend i{width:24px;height:4px;border-radius:4px;display:inline-block}.legend-gfs{background:#2563eb}.legend-ecmwf{background:#f59e0b}.legend-icon{background:#a855f7}.legend-local{background:#16a34a}
.cron-status{font-size:12px;padding:4px 8px;border-radius:999px}.cron-ok{background:#dcfce7;color:#166534}.cron-partial{background:#fef3c7;color:#92400e}.cron-error{background:#fee2e2;color:#991b1b}.cron-running{background:#dbeafe;color:#1e40af}
.cron-log-table td{white-space:nowrap}

/* Automatyczna prognoza v8 — czytelny pulpit */
.forecast-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}
.overview-card{background:linear-gradient(145deg,rgba(17,37,65,.95),rgba(9,26,48,.95));border:1px solid rgba(135,190,255,.16);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:5px}
.overview-card>span,.overview-card small{color:var(--muted,#9fb0c5)}.overview-card strong{font-size:30px;line-height:1.05}.overview-card.quality-card{border-color:rgba(94,213,160,.35)}
.quality-stars{font-size:18px;letter-spacing:2px;color:#ffd36a}.state-ok{color:#69e4a8}.state-partial{color:#ffd36a}.state-error{color:#ff7d7d}.state-idle{color:#aab8c9}
.quality-explanation{display:flex;justify-content:space-between;align-items:center;gap:24px}.quality-explanation h2{margin:4px 0}.quality-big{font-size:42px;font-weight:800;text-align:right}.quality-big small{display:block;font-size:18px;color:#ffd36a;letter-spacing:2px}
.correction-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.correction-status{border:1px solid rgba(135,190,255,.14);border-radius:13px;padding:13px;display:flex;flex-direction:column;gap:3px;background:rgba(12,29,52,.65)}.correction-status strong{font-size:15px}.correction-status small,.correction-status em{font-style:normal;color:var(--muted,#9fb0c5);font-size:12px}.correction-status.is-active{border-color:rgba(94,213,160,.35)}.correction-status.is-active strong{color:#69e4a8}.correction-status.is-learning strong{color:#ffd36a}
.ranking-list{display:grid;gap:8px}.ranking-row{display:grid;grid-template-columns:38px 170px 1fr 120px;align-items:center;gap:10px;padding:12px;border:1px solid rgba(135,190,255,.13);border-radius:13px;background:rgba(10,27,49,.64)}.rank-pos{font-size:22px;font-weight:800}.rank-days{display:grid;grid-template-columns:repeat(7,minmax(44px,1fr));gap:5px}.rank-days span{padding:6px;border-radius:8px;background:rgba(255,255,255,.035);text-align:center}.rank-days small,.rank-days b{display:block}.ranking-row em{font-style:normal;text-align:right;color:var(--muted,#9fb0c5)}
.why-card{border-color:rgba(94,213,160,.25)}.why-values{display:flex;align-items:center;gap:20px;margin:12px 0}.why-values>div:not(.why-arrow){padding:12px 18px;border-radius:12px;background:rgba(255,255,255,.04)}.why-values span,.why-values strong{display:block}.why-values strong{font-size:28px}.why-arrow{font-size:30px;color:#69e4a8}
.validation-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.validation-card{border:1px solid rgba(135,190,255,.14);border-radius:14px;padding:13px;background:rgba(10,27,49,.66)}.validation-head{display:flex;justify-content:space-between;gap:10px;color:var(--muted,#9fb0c5)}.validation-observed{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.07)}.validation-observed strong{font-size:25px}.validation-models{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:9px}.validation-models>div{padding:9px;border-radius:10px;background:rgba(255,255,255,.035)}.validation-models span,.validation-models strong,.validation-models small{display:block}.validation-models .winner{outline:1px solid rgba(94,213,160,.55);background:rgba(53,178,124,.12)}.validation-models .winner small{color:#69e4a8}
.chart-switcher{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.chart-switcher button{border:1px solid rgba(135,190,255,.18);background:rgba(255,255,255,.035);color:inherit;border-radius:999px;padding:8px 12px;cursor:pointer}.chart-switcher button.active{background:#3f8cff;border-color:#3f8cff;color:#fff}
@media(max-width:1000px){.forecast-overview-grid{grid-template-columns:repeat(2,1fr)}.ranking-row{grid-template-columns:34px 140px 1fr}.ranking-row em{grid-column:2/4;text-align:left}.rank-days{grid-template-columns:repeat(4,1fr)}}
@media(max-width:700px){.forecast-overview-grid,.correction-status-grid,.validation-cards{grid-template-columns:1fr}.quality-explanation{align-items:flex-start}.quality-big{font-size:34px}.ranking-row{grid-template-columns:32px 1fr}.rank-days{grid-column:1/3;grid-template-columns:repeat(4,1fr)}.ranking-row em{grid-column:1/3}.validation-models{grid-template-columns:1fr}.why-values{gap:8px}.why-values>div:not(.why-arrow){padding:10px}.why-values strong{font-size:22px}}

/* v9: rozdzielenie Dashboard / Laboratorium */
.dashboard-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dashboard-actions form{margin:0}
.system-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 18px}.system-strip>div{padding:14px 16px;border:1px solid rgba(135,190,255,.16);border-radius:14px;background:rgba(10,27,49,.74)}.system-strip span,.system-strip small{display:block;color:var(--muted)}.system-strip strong{display:block;margin:4px 0;font-size:16px}
.dashboard-primary-grid{display:grid;grid-template-columns:1.25fr .85fr .9fr;gap:14px;margin-bottom:18px}.today-forecast-card,.trust-card,.improvement-card{min-height:235px}.forecast-main-value{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:18px 0}.forecast-main-value strong{font-size:56px;line-height:1}.forecast-main-value span{color:var(--muted)}.forecast-main-metrics{display:flex;gap:8px;flex-wrap:wrap}.forecast-main-metrics span{padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.055)}.trust-card{text-align:center}.trust-score{font-size:54px;font-weight:850;line-height:1;margin-top:12px}.trust-card h2{margin:8px 0}.trust-card p{color:var(--muted);margin-bottom:0}.improvement-card h2{margin:14px 0}.improvement-lines{display:grid;gap:8px;margin:18px 0}.improvement-lines>div{display:flex;justify-content:space-between;padding:10px;border-radius:10px;background:rgba(255,255,255,.04)}.improvement-lines strong{font-size:20px}
.learning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.learning-card{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;padding:13px;border:1px solid rgba(135,190,255,.14);border-radius:13px;background:rgba(10,27,49,.66)}.learning-card.active{border-color:rgba(94,213,160,.36)}.learning-icon{font-size:24px}.learning-card span,.learning-card strong,.learning-card small{display:block}.learning-card small{color:var(--muted)}.learning-card.active strong{color:#69e4a8}.learning-card.learning strong{color:#ffd36a}.learning-result{text-align:right;font-size:20px;font-weight:800}.learning-result small{font-size:10px;font-weight:400}
.climate-insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.climate-insight-grid article{padding:15px;border-radius:13px;background:rgba(255,255,255,.035);border:1px solid rgba(135,190,255,.13)}.climate-insight-grid span,.climate-insight-grid strong,.climate-insight-grid small{display:block}.climate-insight-grid strong{font-size:18px;margin:7px 0}.climate-insight-grid small{color:var(--muted)}
.compact-weather-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.compact-weather-grid>div{padding:12px;border-radius:11px;background:rgba(255,255,255,.035)}.compact-weather-grid span,.compact-weather-grid strong{display:block}.compact-weather-grid span{font-size:11px;color:var(--muted)}.compact-weather-grid strong{font-size:17px;margin-top:5px}
.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.module-grid a{display:grid;grid-template-columns:36px 1fr;column-gap:10px;padding:14px;border:1px solid rgba(135,190,255,.14);border-radius:13px;background:rgba(10,27,49,.66);color:inherit;text-decoration:none}.module-grid a:hover{border-color:#4ea1ff;background:rgba(78,161,255,.09)}.module-grid b{grid-row:1/3;font-size:25px}.module-grid span{font-weight:800}.module-grid small{color:var(--muted)}
@media(max-width:1050px){.dashboard-primary-grid{grid-template-columns:1fr 1fr}.improvement-card{grid-column:1/3}.compact-weather-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.system-strip,.dashboard-primary-grid,.learning-grid,.climate-insight-grid,.module-grid{grid-template-columns:1fr}.improvement-card{grid-column:auto}.compact-weather-grid{grid-template-columns:1fr 1fr}.forecast-main-value strong{font-size:44px}.forecast-dashboard-hero{align-items:flex-start}.dashboard-actions{width:100%}}

/* Etap 2 — analiza modeli */
.analysis-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.admin-card.compact{padding:14px 16px;display:flex;flex-direction:column;gap:4px}.admin-card.compact strong{font-size:20px}.admin-card.compact small{color:var(--muted)}.analysis-filter-form h2{margin-top:0}.analysis-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.analysis-filter-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted);font-weight:700}.analysis-filter-grid select{width:100%;background:#0c1b31;color:#eef6ff;border:1px solid rgba(130,174,224,.2);border-radius:10px;padding:10px 11px}.analysis-actions{display:flex;gap:8px;margin-top:14px}.model-analysis-ranking{display:grid;gap:10px;margin-top:14px}.model-analysis-card{display:grid;grid-template-columns:44px minmax(150px,1fr) minmax(150px,.8fr) minmax(190px,1fr);align-items:center;gap:14px;padding:14px;border:1px solid rgba(130,174,224,.16);border-radius:13px;background:rgba(13,31,54,.68)}.model-analysis-card.winner{border-color:rgba(52,211,153,.5);box-shadow:inset 0 0 0 1px rgba(52,211,153,.1)}.model-analysis-place{font-size:25px}.model-analysis-card>div{display:flex;flex-direction:column;gap:2px}.model-analysis-card strong{font-size:18px}.model-analysis-card span,.model-analysis-card small{color:var(--muted);font-size:11px}.model-analysis-card b{font-size:15px}.analysis-note{margin-top:14px}@media(max-width:900px){.analysis-status-grid,.analysis-filter-grid{grid-template-columns:1fr 1fr}.model-analysis-card{grid-template-columns:38px 1fr 1fr}.model-analysis-card>div:last-child{grid-column:2/-1}}@media(max-width:620px){.analysis-status-grid,.analysis-filter-grid{grid-template-columns:1fr}.model-analysis-card{grid-template-columns:36px 1fr}.model-analysis-card>div:nth-child(n+3){grid-column:2}.analysis-actions{flex-wrap:wrap}}
.analysis-rebuild{display:flex;align-items:center;justify-content:space-between;gap:20px}.analysis-main-conclusion{margin-top:16px;padding:14px 16px;border-radius:12px;background:rgba(59,130,246,.09);border:1px solid rgba(96,165,250,.24);font-weight:700}.auto-insights-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.auto-insight-card{padding:15px;border-radius:13px;background:rgba(13,31,54,.72);border:1px solid rgba(148,163,184,.14)}.auto-insight-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.auto-insight-head span{font-size:.78rem;font-weight:800;padding:4px 8px;border-radius:999px;background:rgba(59,130,246,.14)}.auto-insight-card p{margin:10px 0 8px;font-weight:650}.auto-insight-card small{display:block;color:var(--muted)}.auto-insight-card.status-winner{border-color:rgba(34,197,94,.32)}.auto-insight-card.status-tie{border-color:rgba(245,158,11,.28)}.auto-insight-card.status-learning,.auto-insight-card.status-missing{opacity:.82}@media(max-width:760px){.auto-insights-grid{grid-template-columns:1fr}.analysis-rebuild{align-items:flex-start;flex-direction:column}}

/* Centrum prognoz v15 */
.fc-title{max-width:1180px;margin:28px auto 12px;font-size:24px}.fc-explain>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.fc-explain span{padding:12px;border:1px solid rgba(148,163,184,.16);border-radius:12px;background:rgba(15,31,53,.62)}
.fc-model-block{margin-top:14px}.fc-model-block.corrected{border-color:rgba(45,212,191,.28);background:linear-gradient(135deg,rgba(10,38,54,.95),rgba(8,29,48,.96))}.fc-model-block.wu{border-color:rgba(250,204,21,.22)}.fc-model-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.fc-model-head h2{margin:0}.fc-badge{font-size:10px;font-weight:800;letter-spacing:.08em;padding:6px 9px;border-radius:999px}.fc-badge.raw{background:rgba(96,165,250,.15);color:#93c5fd}.fc-badge.corrected{background:rgba(45,212,191,.15);color:#5eead4}.fc-badge.wu{background:rgba(250,204,21,.14);color:#fde047}
.fc-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.fc-day{min-width:0;text-align:center;border:1px solid rgba(148,163,184,.16);border-radius:15px;padding:14px 9px;background:rgba(10,25,45,.72)}.fc-date{font-weight:750}.fc-date small{display:block;color:#8ea3bd;font-weight:500;margin-top:2px}.fc-weather-icon{font-size:34px;margin:8px 0}.fc-temps{font-size:22px;white-space:nowrap}.fc-temps span{font-size:15px;color:#9eb0c6;margin-left:5px}.fc-phrase{font-size:12px;color:#c7d4e4;min-height:32px;margin:6px 0}.fc-meta{display:grid;gap:4px;font-size:11px;color:#91a5be}.fc-correction{margin-top:9px;padding:6px;border-radius:9px;font-size:10px;font-weight:700}.fc-correction.active{background:rgba(45,212,191,.12);color:#5eead4}.fc-correction.inactive{background:rgba(148,163,184,.1);color:#93a4b8}.fc-empty{grid-column:1/-1;padding:22px;text-align:center;color:#91a5be}
.fc-hourly-grid{display:grid;grid-template-columns:1fr;gap:14px}.fc-hourly-block.corrected{border-color:rgba(45,212,191,.25)}.fc-hours{display:grid;grid-template-columns:repeat(12,minmax(72px,1fr));gap:6px;overflow-x:auto;padding-bottom:4px}.fc-hours article{display:flex;min-width:72px;flex-direction:column;align-items:center;gap:5px;border:1px solid rgba(148,163,184,.15);border-radius:12px;padding:9px 5px;background:rgba(9,24,43,.7);font-size:10px}.fc-hours time{font-size:12px;font-weight:800}.fc-hours strong{font-size:15px}.fc-hours small{color:#5eead4;text-align:center}.fc-hour-icon{font-size:22px}.fc-warning{margin-top:18px;border-color:rgba(251,191,36,.25)}
@media(max-width:900px){.fc-explain>div{grid-template-columns:1fr}.fc-days{grid-template-columns:repeat(2,1fr)}.fc-days .fc-day:last-child{grid-column:span 2}.fc-hours{grid-template-columns:repeat(12,78px)}}


/* Centrum prognoz v16 — widok kartowy w stylu strony publicznej */
body{background:
 radial-gradient(circle at 12% 8%,rgba(39,104,177,.24),transparent 34%),
 radial-gradient(circle at 82% 18%,rgba(37,99,235,.10),transparent 30%),
 linear-gradient(180deg,#071525 0%,#04101c 46%,#020914 100%)}
.admin-wrap{width:min(1420px,calc(100% - 40px));margin-top:24px}
.fc-title{max-width:none;margin:34px 0 14px;font-size:27px;letter-spacing:-.025em}
.fc-explain{background:linear-gradient(145deg,rgba(20,44,75,.9),rgba(8,26,46,.92));overflow:hidden;position:relative}
.fc-explain:after{content:"";position:absolute;right:-70px;top:-90px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(78,161,255,.18),transparent 68%);pointer-events:none}
.fc-explain>div{position:relative;z-index:1}
.fc-explain span{min-height:72px;display:flex;align-items:center;line-height:1.45;background:rgba(255,255,255,.035)}

.fc-model-block{padding:20px 20px 22px!important;border-radius:20px!important;background:linear-gradient(145deg,rgba(18,38,66,.96),rgba(8,24,43,.98))!important;box-shadow:0 22px 70px rgba(0,0,0,.22)!important;overflow:hidden;position:relative}
.fc-model-block:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#54a7ff,#225dcc)}
.fc-model-block.corrected:before{background:linear-gradient(180deg,#51e2c2,#159c83)}
.fc-model-block.wu:before{background:linear-gradient(180deg,#ffd65a,#f59e0b)}
.fc-model-block.corrected{background:linear-gradient(145deg,rgba(12,48,63,.97),rgba(7,28,47,.98))!important}
.fc-model-head{margin-bottom:18px;padding:0 2px}
.fc-model-head h2{font-size:24px;letter-spacing:-.02em}
.fc-badge{padding:7px 11px;font-size:10px;border:1px solid currentColor;box-shadow:inset 0 0 20px rgba(255,255,255,.025)}

.fc-days{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;width:100%}
.fc-day{position:relative;min-width:0!important;min-height:245px;display:flex;flex-direction:column;align-items:stretch;text-align:left!important;padding:15px 15px 13px!important;border-radius:16px!important;background:linear-gradient(165deg,rgba(27,47,80,.92),rgba(11,28,50,.95))!important;border:1px solid rgba(139,181,232,.18)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 10px 30px rgba(0,0,0,.15);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;overflow:hidden}
.fc-day:hover{transform:translateY(-3px);border-color:rgba(86,166,255,.52)!important;box-shadow:0 16px 38px rgba(0,0,0,.24)}
.fc-day:after{content:"";height:4px;border-radius:999px;background:linear-gradient(90deg,#ffe45c,#ff933b,#ff5646);margin-top:auto;box-shadow:0 0 14px rgba(255,137,61,.25)}
.fc-date{display:flex;justify-content:space-between;align-items:center;font-size:15px;font-weight:850;color:#fff;text-transform:capitalize}
.fc-date small{display:inline!important;margin:0!important;font-size:11px!important;color:#9eb2cc!important;font-weight:650!important}
.fc-weather-icon{font-size:42px!important;line-height:1;margin:16px 0 12px!important;text-align:center;filter:drop-shadow(0 6px 8px rgba(0,0,0,.35))}
.fc-temps{display:flex;align-items:baseline;gap:8px;font-size:28px!important;line-height:1;color:#ff795f}
.fc-temps span{font-size:17px!important;color:#ffd760!important;margin:0!important}
.fc-phrase{min-height:34px!important;margin:8px 0 10px!important;color:#d9e5f3!important;font-size:12px!important;line-height:1.35}
.fc-meta{display:grid!important;grid-template-columns:1fr!important;gap:5px!important;margin-bottom:11px;font-size:11px!important;color:#9fb4cc!important}
.fc-meta span{display:flex;align-items:center;gap:4px}
.fc-correction{margin:0 0 10px!important;border:1px solid transparent;padding:7px 8px!important;text-align:center}
.fc-correction.active{border-color:rgba(94,234,212,.22)}
.fc-correction.inactive{border-color:rgba(148,163,184,.12)}
.fc-empty{border:1px dashed rgba(148,163,184,.22);border-radius:14px;background:rgba(255,255,255,.025)}

.fc-hourly-grid{gap:18px!important}
.fc-hourly-block{padding:20px!important;overflow:hidden}
.fc-hours{display:grid!important;grid-template-columns:repeat(12,minmax(92px,1fr))!important;gap:8px!important;overflow-x:auto;padding:2px 2px 10px!important;scrollbar-color:#315274 transparent}
.fc-hours article{min-width:92px!important;min-height:164px!important;padding:11px 8px!important;border-radius:14px!important;background:linear-gradient(165deg,rgba(27,47,80,.88),rgba(10,26,46,.94))!important;border:1px solid rgba(139,181,232,.16)!important;justify-content:flex-start!important}
.fc-hours article:hover{border-color:rgba(86,166,255,.45)!important}
.fc-hours time{font-size:13px!important;color:#fff}
.fc-hour-icon{font-size:28px!important;margin:4px 0}
.fc-hours strong{font-size:20px!important;color:#ff8b72}
.fc-hours article>span:not(.fc-hour-icon){color:#9fb4cc}
.fc-hours small{margin-top:auto;line-height:1.25}

@media(max-width:1150px){
 .admin-wrap{width:min(100% - 28px,1200px)}
 .fc-days{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .fc-days .fc-day:nth-last-child(-n+2){min-height:225px}
}
@media(max-width:760px){
 .fc-title{font-size:22px}
 .fc-days{grid-template-columns:1fr!important}
 .fc-days .fc-day:last-child{grid-column:auto!important}
 .fc-day{min-height:215px}
 .fc-explain>div{grid-template-columns:1fr!important}
 .fc-model-head{align-items:flex-start;flex-direction:column}
 .fc-hours{grid-template-columns:repeat(12,94px)!important}
}

/* v17 — Meteocons SVG */
.fc-weather-icon .meteocon,
.fc-hour-icon .meteocon {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.24));
}
.fc-weather-icon { width:78px; height:78px; margin:8px auto 3px; }
.fc-hour-icon { width:46px; height:46px; display:block; margin:4px auto; }
