.monthly-cycle{--cycle-gold:#c89b3c;--cycle-teal:#0ac8b9;--cycle-steel:#789195;--cycle-danger:#d0616f;position:relative;margin-bottom:14px;border:1px solid #33494f;background:radial-gradient(circle at 78% 28%,#0ac8b912,transparent 27%),linear-gradient(135deg,#0c1920,#071116 64%,#12130e);box-shadow:0 22px 65px #02080b52;overflow:hidden}.monthly-cycle:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.85%,#c89b3c13 50%,transparent 50.15%);background-size:74px 100%}.cycle-head,.cycle-board,.cycle-route{position:relative;z-index:1}.cycle-head{display:flex;justify-content:space-between;gap:24px;padding:21px 23px;border-bottom:1px solid #263c42}.cycle-head h2{margin:3px 0 7px;color:#dce2dd;font:600 clamp(22px,2.8vw,31px)/1.08 Constantia,Georgia,serif}.cycle-head p:not(.eyebrow){max-width:720px;margin:0;color:#819699;font-size:11px;line-height:1.55}.cycle-window{flex:0 0 auto;display:flex;align-items:center;gap:9px;align-self:flex-start;padding:9px 11px;border:1px solid #6c5932;background:#201b0f;color:#dfbf6d;font:800 8px Bahnschrift,monospace;letter-spacing:.1em}.cycle-window i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 12px currentColor}.cycle-window.complete{border-color:#28625d;background:#0c2928;color:#56cfc3}.cycle-window.overdue{border-color:#6c3d45;background:#251317;color:#dd7b88}.cycle-route{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #263c42;background:#091319}.cycle-route>div{position:relative;display:flex;gap:10px;align-items:center;padding:13px 17px;color:#60777b}.cycle-route>div+div{border-left:1px solid #21363b}.cycle-route i{width:24px;height:24px;display:grid;place-items:center;border:1px solid #3b5359;border-radius:50%;font:700 9px Bahnschrift,monospace;font-style:normal}.cycle-route b,.cycle-route small{display:block}.cycle-route b{color:#8da0a2;font-size:10px}.cycle-route small{margin-top:2px;font-size:8px}.cycle-route .done i{border-color:#347c73;background:#123631;color:#58cfc2}.cycle-route .done b{color:#b4c8c5}.cycle-route .current{background:#17170f}.cycle-route .current:after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:2px;background:var(--cycle-gold);box-shadow:0 0 10px #c89b3c70}.cycle-route .current i{border-color:#8d733a;color:#e0bd65}.cycle-route .current b{color:#dfc579}.cycle-board{display:grid;grid-template-columns:minmax(330px,1.25fr) minmax(270px,.75fr);gap:12px;padding:14px}.cycle-sources,.cycle-live{border:1px solid #2b4147;background:#081419d9;min-width:0}.cycle-section-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;padding:15px 17px 12px}.cycle-section-head span{color:#71878b;font:800 8px Bahnschrift,monospace;letter-spacing:.1em}.cycle-section-head h3{margin:4px 0 0;color:#cfd9d5;font:600 17px Constantia,Georgia,serif}.cycle-section-head button{border:0;background:none;color:#81999b;font-size:8px;font-weight:800;cursor:pointer}.cycle-source-list{display:grid}.cycle-source{display:grid;grid-template-columns:9px minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px 17px;border-top:1px solid #20353a}.cycle-source>i{width:8px;height:8px;border-radius:50%;background:#667b7f}.cycle-source.imported>i{background:var(--cycle-teal);box-shadow:0 0 9px #0ac8b980}.cycle-source.no_movement>i{background:var(--cycle-gold)}.cycle-source b,.cycle-source small{display:block}.cycle-source b{color:#c8d2cf;font-size:10px}.cycle-source small{margin-top:3px;color:#6e8589;font-size:8px}.cycle-source-actions{display:flex;gap:6px}.cycle-source-actions button{border:1px solid #385157;background:#0d2026;color:#9eb0b1;padding:7px 9px;font-size:8px;font-weight:800;cursor:pointer}.cycle-source-actions button:first-child{border-color:#6d5a32;color:#d4b861}.cycle-source-status{color:#6f888b;font:800 8px Bahnschrift,monospace}.cycle-source.imported .cycle-source-status{color:#52c7bb}.cycle-source.no_movement .cycle-source-status{color:#d3b663}.cycle-live{display:grid;grid-template-rows:auto 1fr}.cycle-live-main{display:grid;grid-template-columns:105px 1fr;gap:15px;align-items:center;padding:5px 17px 17px}.cycle-score{display:grid;place-items:center;align-content:center;width:95px;aspect-ratio:1;border:1px solid #5d4d2e;border-radius:50%;background:radial-gradient(circle,#1d1b10,#091318 68%);box-shadow:0 0 24px #c89b3c15}.cycle-score b{color:#e0bd68;font:600 30px Constantia,Georgia,serif}.cycle-score small,.cycle-score span{color:#71878a;font:800 7px Bahnschrift,monospace}.cycle-score span{margin-top:4px;color:#ba9c53}.cycle-live-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.cycle-live-stats div{padding:9px;border-left:2px solid #2b454a;background:#0b1a1f}.cycle-live-stats span,.cycle-live-stats b,.cycle-live-stats small{display:block}.cycle-live-stats span{color:#687f82;font:800 7px Bahnschrift,monospace;letter-spacing:.08em}.cycle-live-stats b{margin-top:4px;color:#cad4d0;font:600 14px Constantia,Georgia,serif}.cycle-live-stats small{margin-top:2px;color:#6f8386;font-size:7px}.cycle-late{grid-column:1/-1;display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #693f47;background:#25151a;color:#d88a94}.cycle-late i{font-style:normal;font-weight:900}.cycle-late span{flex:1;font-size:9px;line-height:1.45}.cycle-late button{border:1px solid #8b5660;background:#3a1d24;color:#f0c0c6;padding:8px 10px;font-size:8px;font-weight:800;cursor:pointer}.cycle-config-dialog{width:min(620px,calc(100vw - 28px));border:1px solid #3a5359;background:#09151a;color:#d4ddda;padding:0}.cycle-config-dialog::backdrop{background:#02080bc9;backdrop-filter:blur(3px)}.cycle-config-dialog form{padding:21px}.cycle-config-dialog header{display:flex;justify-content:space-between;gap:20px}.cycle-config-dialog h2{margin:3px 0 5px;font:600 25px Constantia,Georgia,serif}.cycle-config-dialog header p:not(.eyebrow){margin:0;color:#758c90;font-size:10px}.cycle-config-list{display:grid;gap:7px;margin-top:18px}.cycle-config-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.cycle-config-row input{min-width:0;border:1px solid #365057;background:#071217;color:#d4ddda;padding:10px}.cycle-config-row button{border:1px solid #5a3b43;background:#251419;color:#d98490;padding:0 12px;cursor:pointer}.cycle-config-add{margin-top:9px;border:0;background:none;color:#c8aa5a;font-size:9px;font-weight:800;cursor:pointer}.cycle-config-dialog footer{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.gateway-source-choice{display:grid;gap:6px;margin-bottom:12px;padding:13px 15px;border:1px solid #315057;background:#0b1a20}.gateway-source-choice span{color:#779095;font:800 8px Bahnschrift,monospace}.gateway-source-choice select{width:100%;border:1px solid #3d5960;background:#071318;color:#d5dedb;padding:10px}
@media(max-width:900px){.cycle-board{grid-template-columns:1fr}.cycle-route{grid-template-columns:1fr 1fr}.cycle-route>div:nth-child(3){border-left:0;border-top:1px solid #21363b}.cycle-route>div:nth-child(4){border-top:1px solid #21363b}}
@media(max-width:560px){.cycle-head{display:block}.cycle-window{margin-top:13px}.cycle-route{grid-template-columns:1fr}.cycle-route>div+div,.cycle-route>div:nth-child(3){border-left:0;border-top:1px solid #21363b}.cycle-live-main{grid-template-columns:1fr}.cycle-score{width:86px}.cycle-source{grid-template-columns:9px 1fr}.cycle-source-actions,.cycle-source-status{grid-column:2}.cycle-source-actions{display:grid;grid-template-columns:1fr 1fr}.cycle-config-row{grid-template-columns:1fr}.cycle-config-row button{padding:9px}}
@media(prefers-reduced-motion:reduce){.cycle-window i,.cycle-source.imported>i{box-shadow:none}}

/* V2.4: bankovní účty jsou skutečné zdroje dat, ne jen názvy checklistu. */
.cycle-source>span>em{display:block;margin-top:3px;color:#899c9d;font-size:8px;font-style:normal}
.cycle-config-dialog{width:min(820px,calc(100vw - 28px));max-height:min(880px,calc(100vh - 28px));overflow:auto}
.cycle-config-dialog form{padding:25px}.cycle-config-dialog header>div{max-width:680px}.cycle-config-dialog header p:not(.eyebrow){font-size:12px;line-height:1.55}
.cycle-config-list{gap:11px}.cycle-config-list .cycle-config-row{display:block;padding:15px 16px;background:#071217;border:1px solid #2c454b}
.cycle-config-row>header{display:flex;align-items:center;gap:10px}.cycle-config-row>header i{display:grid;place-items:center;width:29px;height:29px;transform:rotate(45deg);background:#18231a;border:1px solid #756133;color:#d7b85f;font-style:normal}.cycle-config-row>header b{flex:1;color:#d8e0dc;font:600 15px Constantia,serif}.cycle-config-row>header button{padding:6px 8px;background:transparent;border:0;color:#a66870;font-size:10px}
.cycle-config-row>div{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:11px;margin-top:15px}.cycle-config-row label{display:grid;gap:6px}.cycle-config-row label>span{color:#71888b;font:700 9px Bahnschrift,monospace;letter-spacing:.06em;text-transform:uppercase}.cycle-config-list .cycle-config-row input,.cycle-config-list .cycle-config-row select{box-sizing:border-box;width:100%;min-width:0;padding:10px;background:#09191e;border:1px solid #304b51;color:#d6dfdb;font-size:12px}
.cycle-config-dialog footer{align-items:center}.cycle-config-dialog footer>p{min-height:18px;margin:0 auto 0 0;color:#d77b86;font-size:11px}.cycle-config-add{padding:10px 0;font-size:11px}.cycle-config-dialog .primary,.cycle-config-dialog .secondary{font-size:11px}
@media(max-width:560px){.cycle-config-dialog form{padding:20px 16px}.cycle-config-row>div{grid-template-columns:1fr}.cycle-config-dialog footer{align-items:stretch;flex-direction:column}.cycle-config-dialog footer>p{margin:0}.cycle-config-dialog footer button{width:100%}}
