:root{--ink:#1c1a16;--muted:#6d6a61;--panel:#ffffff;--canvas:#f7f1e6;--accent:#d36d4c;--accent-deep:#8f3b2a;--accent-cool:#1f6f7a;--edge:rgba(28,26,22,0.12);--soft:rgba(28,26,22,0.06);--shadow:0 16px 32px rgba(28,26,22,0.12)}body{font-family:"IBM Plex Sans","Segoe UI",Tahoma,sans-serif;color:var(--ink);background:radial-gradient(circle at top left,#fff6e4 0%,transparent 45%),radial-gradient(circle at 75% 20%,#e6f2f6 0%,transparent 40%),linear-gradient(120deg,#f7f1e6 0%,#f3f7f8 100%)}h3{font-family:"Space Grotesk","Segoe UI",Tahoma,sans-serif;letter-spacing:-0.01em}.view-switch .btn{border-radius:999px}.filter-label{font-size:0.78rem;color:var(--muted);margin-bottom:2px;text-transform:uppercase;letter-spacing:0.04em}.filter-block select[multiple]{min-width:170px}.filter-block .form-select{line-height:1.1}.filter-block .small-link{font-size:0.78rem}.date-preset .btn{min-width:62px}.amount-single{min-width:180px}.calendar-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.calendar-main{background:var(--panel);border-radius:20px;padding:18px;box-shadow:var(--shadow);border:1px solid var(--edge)}.calendar-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.calendar-title{font-family:"Space Grotesk","Segoe UI",Tahoma,sans-serif;font-size:1.35rem;font-weight:600;display:flex;flex-direction:column}.calendar-subtitle{font-size:0.85rem;color:var(--muted);font-weight:500}.calendar-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pill-count{background:var(--accent);color:#fff;border-radius:999px;padding:2px 8px;font-size:0.75rem;margin-left:6px}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;font-size:0.75rem;text-transform:uppercase;letter-spacing:0.08em;color:var(--muted);margin-bottom:8px;padding:0 4px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.calendar-day{background:#fff;border-radius:16px;padding:10px;min-height:122px;border:1px solid var(--soft);display:flex;flex-direction:column;gap:8px;transition:transform 0.15s ease,box-shadow 0.15s ease,border-color 0.15s ease;cursor:pointer}.calendar-day:hover{transform:translateY(-2px);border-color:rgba(211,109,76,0.35);box-shadow:0 10px 18px rgba(28,26,22,0.1)}.calendar-day.is-outside{background:rgba(255,255,255,0.5);color:rgba(28,26,22,0.35)}.calendar-day.is-selected{border-color:var(--accent);box-shadow:0 14px 24px rgba(211,109,76,0.18)}.day-top{display:flex;justify-content:space-between;align-items:center;font-size:0.85rem;font-weight:600}.day-number{font-family:"Space Grotesk","Segoe UI",Tahoma,sans-serif}.day-count{font-size:0.7rem;color:var(--muted);background:rgba(31,111,122,0.12);padding:2px 8px;border-radius:999px}.day-jobs-preview{display:flex;flex-direction:column;gap:6px;font-size:0.75rem}.job-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;font-weight:600;background:rgba(31,111,122,0.1);color:var(--ink);border:1px solid transparent}.job-chip .chip-num{font-weight:700}.job-chip.is-more{background:rgba(28,26,22,0.08);color:var(--muted)}.day-panel{background:linear-gradient(160deg,#fff 0%,#f7f3eb 100%);border-radius:20px;padding:18px;box-shadow:var(--shadow);border:1px solid var(--edge);position:sticky;top:84px;min-height:520px}.day-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.day-title{font-family:"Space Grotesk","Segoe UI",Tahoma,sans-serif;font-size:1.15rem;font-weight:600}.day-meta{color:var(--muted);font-size:0.85rem}.day-stats{display:flex;flex-wrap:wrap;gap:6px}.stat-pill{font-size:0.7rem;background:rgba(28,26,22,0.08);padding:4px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:0.04em}.day-jobs{display:flex;flex-direction:column;gap:10px}.job-card{background:#fff;border-radius:14px;padding:10px 12px;border:1px solid var(--soft);display:flex;flex-direction:column;gap:6px;cursor:pointer;transition:border-color 0.15s ease,box-shadow 0.15s ease}.job-card:hover{border-color:rgba(31,111,122,0.5);box-shadow:0 10px 20px rgba(28,26,22,0.08)}.job-card-header{display:flex;justify-content:space-between;align-items:center;font-weight:600;gap:8px}.job-card-title{font-family:"Space Grotesk","Segoe UI",Tahoma,sans-serif}.job-card-meta{font-size:0.8rem;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap}.status-pill{font-size:0.7rem;text-transform:uppercase;letter-spacing:0.05em;border-radius:999px;padding:2px 8px;font-weight:700;background:rgba(28,26,22,0.08)}.status-created{background:rgba(211,109,76,0.15);color:var(--accent-deep)}.status-completed{background:rgba(31,111,122,0.2);color:#0f4e58}.status-scheduled{background:rgba(52,109,187,0.15);color:#27447c}.status-synchronized{background:rgba(75,115,81,0.15);color:#2e5a36}.status-started{background:rgba(217,161,67,0.2);color:#8b5b1a}.status-paused{background:rgba(97,87,176,0.15);color:#3d3476}.status-validated{background:rgba(84,167,108,0.2);color:#205f36}.status-mixed{background:rgba(28,26,22,0.18);color:#3a342b}.job-modal-backdrop{position:fixed;inset:0;background:rgba(18,16,14,0.45);opacity:0;pointer-events:none;transition:opacity 0.2s ease;z-index:1040}.job-modal{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;opacity:0;pointer-events:none;transition:opacity 0.2s ease;z-index:1050;padding:16px}.job-modal.is-open,.job-modal-backdrop.is-open{opacity:1;pointer-events:auto}.job-modal-card{background:#fff;border-radius:20px;padding:18px;max-width:560px;width:100%;box-shadow:var(--shadow);position:relative}.job-modal-close{position:absolute;right:14px;top:14px;border:none;background:rgba(28,26,22,0.08);border-radius:999px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center}.job-modal-header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.job-modal-title{font-family:"Space Grotesk","Segoe UI",Tahoma,sans-serif;font-size:1.25rem;font-weight:700}.job-modal-subtitle{color:var(--muted);font-size:0.9rem}.job-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;font-size:0.9rem;margin-bottom:14px}.job-modal-label{color:var(--muted);text-transform:uppercase;letter-spacing:0.06em;font-size:0.7rem}.job-modal-actions{display:flex;flex-wrap:wrap;gap:8px}@media (max-width:1100px){.calendar-shell{grid-template-columns:1fr}.day-panel{position:static}}@media (max-width:700px){.calendar-main{padding:14px}.calendar-day{min-height:96px}.day-panel{padding:14px}.job-modal-grid{grid-template-columns:1fr}}