.cal-modal{max-width:520px;width:95vw;}.cal-modal-lg{max-width:680px;width:95vw;}.cal-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-md,16px);margin-bottom:var(--space-lg,24px);}.cal-stat-card{background:var(--bg-card,rgba(255,255,255,0.05));border:1px solid var(--border-glass,rgba(255,255,255,0.1));border-radius:var(--radius-lg,12px);padding:var(--space-md,16px);transition:border-color 0.2s ease;}.cal-stat-card:hover{border-color:rgba(99,102,241,0.4);}.cal-stat-label{font-size:11px;color:var(--text-muted,#94a3b8);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:6px;}.cal-stat-value{font-size:13px;color:var(--text-primary,#f1f5f9);font-weight:600;line-height:1.4;}.cal-stat-card--warn{border-color:rgba(251,191,36,0.4);background:rgba(251,191,36,0.06);}.cal-stat-card--warn .cal-stat-value{color:#fbbf24;}.cal-stat-card--issue{border-color:rgba(244,63,94,0.4);background:rgba(244,63,94,0.06);}.cal-stat-card--issue .cal-stat-value{color:#f43f5e;}.cal-layout{display:grid;grid-template-columns:1fr 390px;gap:var(--space-lg,24px);align-items:flex-start;}.cal-left{min-width:0;}.cal-controls{display:flex;align-items:center;gap:8px;margin-bottom:var(--space-md,16px);flex-wrap:wrap;}.cal-nav-group{display:flex;align-items:center;gap:6px;flex-shrink:0;}.cal-action-group{display:flex;align-items:center;gap:6px;margin-left:auto;flex-wrap:wrap;}.cal-month-title{font-size:1.05rem;font-weight:700;color:var(--text-primary,#f1f5f9);min-width:90px;text-align:center;}.btn-icon{background:var(--bg-card,rgba(255,255,255,0.05));border:1px solid var(--border-glass,rgba(255,255,255,0.1));border-radius:var(--radius-md,8px);color:var(--text-primary,#f1f5f9);font-size:1.3rem;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.15s ease;line-height:1;padding:0;}.btn-icon:hover{background:var(--bg-hover,rgba(255,255,255,0.1));border-color:rgba(99,102,241,0.5);}.btn-icon.delete{width:24px;height:24px;font-size:0.85rem;}.cal-weekday-headers{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px;}.cal-weekday-headers > div{text-align:center;font-size:11px;font-weight:600;color:var(--text-muted,#94a3b8);padding:4px 0;}.cal-weekend-header{color:#f43f5e !important;}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;}.cal-day{min-height:82px;padding:5px 6px 4px;border-radius:8px;cursor:pointer;background:var(--bg-card,rgba(255,255,255,0.05));border:1px solid transparent;transition:border-color 0.15s ease,background 0.15s ease,box-shadow 0.15s ease;position:relative;overflow:hidden;user-select:none;-webkit-tap-highlight-color:transparent;}.cal-day:hover{border-color:rgba(99,102,241,0.5);background:var(--bg-hover,rgba(255,255,255,0.08));}.cal-day:active{transform:scale(0.97);}.cal-day--other-month{opacity:0.3;}.cal-day--today{border-color:#6366f1 !important;box-shadow:0 0 0 1px #6366f1;}.cal-day--nowork{background:rgba(100,116,139,0.12) !important;}.cal-day--selected{border-color:#6366f1 !important;background:rgba(99,102,241,0.12) !important;box-shadow:0 0 0 2px rgba(99,102,241,0.3);}.cal-day-num{font-size:12px;font-weight:700;color:var(--text-primary,#f1f5f9);line-height:1;margin-bottom:3px;display:flex;align-items:center;gap:4px;}.cal-today-badge{display:inline-flex;align-items:center;justify-content:center;background:#6366f1;color:white;border-radius:50%;width:18px;height:18px;font-size:10px;font-weight:700;}.cal-nowork-label{font-size:9px;color:#94a3b8;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.cal-task-tag{font-size:9px;padding:1px 4px;border-radius:3px;border:1px solid;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;line-height:1.5;font-weight:500;}.cal-task-tag--completed{opacity:0.55;text-decoration:line-through;}.cal-task-tag--delayed{animation:pulse-warn 2s infinite;}@keyframes pulse-warn{0%,100%{opacity:1}50%{opacity:0.65}}.cal-more{font-size:9px;color:var(--text-muted,#94a3b8);margin-top:1px;}.cal-badges{display:flex;gap:2px;flex-wrap:wrap;margin-top:2px;}.cal-badge{font-size:10px;line-height:1;}.cal-notice{font-size:11px;color:var(--text-muted,#94a3b8);text-align:center;margin-top:12px;padding:6px;opacity:0.75;}.cal-notice-inline{font-size:12px;color:var(--text-muted,#94a3b8);background:rgba(251,191,36,0.08);border:1px solid rgba(251,191,36,0.25);border-radius:8px;padding:8px 12px;margin-top:8px;line-height:1.5;}.cal-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px;justify-content:center;}.cal-legend-item{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-muted,#94a3b8);}.cal-legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block;}.cal-legend-nowork{background:rgba(100,116,139,0.4) !important;border:1px solid rgba(100,116,139,0.7);}.day-panel{background:var(--bg-card,rgba(20,20,35,0.7));border:1px solid var(--border-glass,rgba(255,255,255,0.1));border-radius:var(--radius-lg,12px);overflow-y:auto;max-height:calc(100vh - 160px);position:sticky;top:80px;opacity:0;transform:translateX(16px);pointer-events:none;transition:opacity 0.22s ease,transform 0.22s ease;}.day-panel--open{opacity:1;transform:translateX(0);pointer-events:auto;}.day-panel-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;color:var(--text-muted,#94a3b8);font-size:13px;gap:4px;}.day-panel-header{display:flex;align-items:flex-start;justify-content:space-between;padding:14px 16px 12px;border-bottom:1px solid var(--border-glass,rgba(255,255,255,0.08));position:sticky;top:0;background:var(--bg-card,rgba(20,20,35,0.95));backdrop-filter:blur(8px);z-index:2;}.day-panel-date{font-size:14px;font-weight:700;color:var(--text-primary,#f1f5f9);}.day-panel-nowork-badge{font-size:11px;color:#f43f5e;margin-top:3px;}.day-panel-body{padding:12px 14px;}.day-panel-footer{display:flex;gap:8px;justify-content:flex-end;padding:10px 14px 14px;border-top:1px solid var(--border-glass,rgba(255,255,255,0.08));flex-wrap:wrap;}.day-panel-section{margin-bottom:16px;}.day-panel-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}.day-panel-section-title{font-size:12px;font-weight:700;color:var(--text-secondary,#94a3b8);text-transform:uppercase;letter-spacing:0.06em;}.day-panel-empty{font-size:12px;color:var(--text-muted,#64748b);padding:6px 0;font-style:italic;}.day-panel-nowork-card{background:rgba(100,116,139,0.15);border:1px solid rgba(100,116,139,0.3);border-radius:8px;padding:10px 12px;font-size:13px;color:var(--text-secondary,#94a3b8);line-height:1.6;}.day-panel-hint{font-size:11px;color:var(--text-muted,#64748b);margin-top:4px;}.day-panel-hint.quiet-allowed{color:#22c55e;}.day-task-card{border-left:3px solid;padding:9px 11px;border-radius:8px;background:rgba(255,255,255,0.04);margin-bottom:8px;border-top:1px solid rgba(255,255,255,0.06);border-right:1px solid rgba(255,255,255,0.06);border-bottom:1px solid rgba(255,255,255,0.06);}.day-task-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px;gap:8px;}.day-task-name{font-size:13px;font-weight:600;color:var(--text-primary,#f1f5f9);}.day-task-status{font-size:11px;font-weight:600;white-space:nowrap;}.day-task-meta{font-size:11px;color:var(--text-muted,#94a3b8);margin-bottom:2px;line-height:1.5;}.day-task-actions{display:flex;align-items:center;gap:6px;margin-top:8px;flex-wrap:wrap;}.task-status-select{font-size:11px !important;padding:3px 6px !important;height:26px !important;}.day-worker-card,.day-material-card{padding:7px 10px;background:rgba(255,255,255,0.04);border-radius:7px;border:1px solid rgba(255,255,255,0.06);margin-bottom:6px;}.day-worker-name,.day-material-name{font-size:13px;font-weight:600;color:var(--text-primary,#f1f5f9);}.day-worker-meta,.day-material-meta{font-size:11px;color:var(--text-muted,#94a3b8);margin-top:2px;}.day-material-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px;}.day-material-status{font-size:11px;font-weight:600;}.day-material-actions,.day-issue-actions,.day-acc-actions,.day-task-actions{display:flex;gap:6px;margin-top:7px;flex-wrap:wrap;align-items:center;}.day-acc-card{padding:9px 11px;background:rgba(255,255,255,0.04);border-radius:8px;border:1px solid rgba(255,255,255,0.06);margin-bottom:8px;}.day-acc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px;}.day-acc-name{font-size:13px;font-weight:600;color:var(--text-primary,#f1f5f9);}.day-acc-result{font-size:11px;font-weight:600;}.day-acc-checklist-progress,.day-acc-meta{font-size:11px;color:var(--text-muted,#94a3b8);margin-bottom:3px;}.day-acc-checklist{background:rgba(0,0,0,0.2);border-radius:6px;padding:6px 8px;margin:6px 0;display:flex;flex-direction:column;gap:5px;max-height:160px;overflow-y:auto;}.day-acc-item{display:flex;align-items:flex-start;gap:7px;font-size:12px;color:var(--text-primary,#f1f5f9);cursor:pointer;line-height:1.4;}.day-acc-item input[type="checkbox"]{margin-top:2px;flex-shrink:0;}.day-acc-item--done{text-decoration:line-through;color:var(--text-muted,#64748b);}.day-log-card{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.06);border-radius:8px;padding:10px 12px;}.day-log-item{font-size:12px;color:var(--text-primary,#f1f5f9);margin-bottom:6px;line-height:1.5;}.day-log-item strong{color:var(--text-secondary,#94a3b8);margin-right:4px;}.day-issue-card{padding:8px 11px;background:rgba(244,63,94,0.06);border:1px solid rgba(244,63,94,0.2);border-radius:8px;margin-bottom:6px;}.day-issue-card--resolved{background:rgba(34,197,94,0.05);border-color:rgba(34,197,94,0.2);opacity:0.7;}.day-issue-header{display:flex;align-items:flex-start;justify-content:space-between;gap:6px;margin-bottom:3px;}.day-issue-desc{font-size:12px;font-weight:600;color:var(--text-primary,#f1f5f9);line-height:1.4;flex:1;}.day-issue-status{font-size:11px;font-weight:600;white-space:nowrap;}.day-issue-meta{font-size:11px;color:var(--text-muted,#94a3b8);margin-bottom:2px;}.color-swatch-group{display:flex;gap:8px;flex-wrap:wrap;padding:4px 0;}.color-swatch{width:26px;height:26px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform 0.15s ease,box-shadow 0.15s ease;flex-shrink:0;}.color-swatch:hover{transform:scale(1.15);}.color-swatch--selected{border-color:white !important;box-shadow:0 0 0 3px rgba(255,255,255,0.35);transform:scale(1.2);}.cal-empty-state{text-align:center;padding:48px 24px;background:var(--bg-card,rgba(255,255,255,0.03));border:1px dashed var(--border-glass,rgba(255,255,255,0.15));border-radius:var(--radius-lg,12px);margin-bottom:var(--space-lg,24px);}.cal-empty-icon{font-size:3rem;margin-bottom:12px;}.cal-empty-title{font-size:1.1rem;font-weight:700;color:var(--text-primary,#f1f5f9);margin-bottom:8px;}.cal-empty-desc{font-size:13px;color:var(--text-muted,#94a3b8);margin-bottom:20px;max-width:400px;margin-left:auto;margin-right:auto;line-height:1.6;}.cal-empty-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}.cal-checkbox-row{display:flex;flex-wrap:wrap;gap:10px 20px;}.cal-radio-group{display:flex;flex-direction:column;gap:8px;}.cal-radio-label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-primary,#f1f5f9);cursor:pointer;}.cal-end-date-hint{font-size:12px;color:#6366f1;min-height:18px;margin-bottom:6px;font-weight:500;}.acc-checklist-container{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto;background:rgba(0,0,0,0.15);border-radius:8px;padding:8px;}.acc-checklist-item{display:flex;align-items:center;gap:8px;}.btn-xs{padding:3px 8px !important;font-size:11px !important;border-radius:5px !important;white-space:nowrap;line-height:1.5;}.btn.btn-danger{background:rgba(244,63,94,0.15);border-color:rgba(244,63,94,0.4);color:#f43f5e;}.btn.btn-danger:hover{background:rgba(244,63,94,0.25);border-color:#f43f5e;}.btn.btn-success{background:rgba(34,197,94,0.15);border-color:rgba(34,197,94,0.4);color:#22c55e;}.btn.btn-success:hover{background:rgba(34,197,94,0.25);border-color:#22c55e;}.cal-panel-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.55);z-index:340;opacity:0;transition:opacity 0.25s ease;-webkit-tap-highlight-color:transparent;}.cal-panel-overlay.active{opacity:1;}.day-panel-drag-handle{display:none;justify-content:center;padding:10px 0 6px;cursor:grab;flex-shrink:0;}.day-panel-drag-handle::before{content:'';display:block;width:36px;height:4px;border-radius:2px;background:rgba(255,255,255,0.25);}@media (max-width:900px){.cal-layout{grid-template-columns:1fr;}.cal-stats-grid{grid-template-columns:repeat(2,1fr);}.day-panel{position:fixed;bottom:0;left:0;right:0;top:auto;max-height:72vh;height:auto;border-radius:20px 20px 0 0;z-index:350;transform:translateY(100%);opacity:1;transition:transform 0.3s cubic-bezier(0.32,0.72,0,1);display:flex;flex-direction:column;overflow:hidden;pointer-events:none;background:#111827 !important;border:1px solid var(--border-glass-strong) !important;border-bottom:none !important;box-shadow:0 -10px 40px rgba(0,0,0,0.6);}.day-panel-header{background:#111827 !important;}.day-panel--open{transform:translateY(0);pointer-events:auto;}.day-panel-body{overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;}.cal-panel-overlay{display:block;}.day-panel-drag-handle{display:flex;}.cal-day{min-height:60px;}}@media (max-width:768px){.cal-panel-overlay{bottom:var(--mobile-nav-height,64px);}.day-panel{bottom:var(--mobile-nav-height,64px);}.day-panel-footer{padding-bottom:12px;}}@media (max-width:600px){.cal-stats-grid{grid-template-columns:repeat(3,1fr);gap:8px;}.cal-stat-card{padding:10px 8px;}.cal-stat-label{font-size:10px;}.cal-stat-value{font-size:12px;}.cal-controls{flex-direction:column;align-items:stretch;gap:8px;}.cal-nav-group{justify-content:center;}.cal-action-group{margin-left:0;justify-content:center;gap:6px;}.cal-action-group .btn{flex:1;min-width:0;font-size:12px;padding:6px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.cal-day{min-height:52px;padding:3px 3px 2px;border-radius:6px;}.cal-day-num{font-size:11px;margin-bottom:2px;}.cal-task-tag{font-size:7.5px;padding:1px 2px;margin-bottom:1px;border-radius:2px;}.cal-nowork-label{font-size:8px;}.cal-more{font-size:8px;}.cal-badges{gap:1px;}.cal-badge{font-size:9px;}.cal-today-badge{width:16px;height:16px;font-size:9px;}.day-panel{max-height:78vh;}.day-panel-footer{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:10px 12px 14px;}.day-panel-footer .btn{font-size:12px;padding:8px 6px;justify-content:center;}.cal-legend{gap:8px;}.cal-legend-item{font-size:10px;}.day-task-actions{gap:5px;}.task-status-select{font-size:12px !important;}}@media (max-width:380px){.cal-stats-grid{grid-template-columns:repeat(2,1fr);gap:6px;}.cal-stat-card{padding:8px 6px;}.cal-day{min-height:44px;padding:2px 2px 2px;}.cal-day-num{font-size:10px;}.cal-task-tag{display:none;}.cal-nowork-label{display:none;}.cal-more{display:none;}.cal-badges{margin-top:0;}.cal-action-group{display:grid;grid-template-columns:1fr 1fr;}.cal-action-group .btn:first-child{grid-column:1 / -1;}.day-panel{max-height:82vh;}}