[data-theme=aurora],:root{--bg-gradient-start: #1a3a3a;--bg-gradient-mid: #2a3f5f;--bg-gradient-end: #3d2f5f;--glass-bg: rgba(255, 255, 255, .05);--glass-border: rgba(255, 255, 255, .1);--glass-shadow: rgba(0, 0, 0, .3);--accent-1: #8b6f47;--accent-2: #7b68ee;--accent-3: #4a7c59;--accent-4: #d97706;--accent-5: #0891b2;--priority-highest: #dc2626;--priority-high: #f59e0b;--priority-medium: #fbbf24;--priority-low: #10b981;--priority-none: #6b7280;--status-todo: #94a3b8;--status-progress: #0891b2;--status-review: #8b5cf6;--status-done: #10b981;--accent-purple: #a855f7;--accent-red: #ef4444;--accent-amber: #f59e0b;--accent-cyan: #06b6d4;--accent-green: #22c55e;--status-in-review: #8b6f47;--status-in-progress: #4a7c59;--status-bidding: #d97706;--status-high-priority: #dc2626;--status-plumbing: #7b68ee}[data-theme=ocean]{--bg-gradient-start: #0c2d48;--bg-gradient-mid: #145374;--bg-gradient-end: #2e8bc0;--accent-1: #00a8cc;--accent-2: #0d7377;--accent-3: #14ffec;--accent-4: #ff6b6b;--accent-5: #4ecdc4;--status-in-review: #00a8cc;--status-in-progress: #0d7377;--status-bidding: #ff6b6b;--status-high-priority: #ff6b6b;--status-plumbing: #14ffec}[data-theme=sunset]{--bg-gradient-start: #2d1b2e;--bg-gradient-mid: #5b2a42;--bg-gradient-end: #8e3b46;--accent-1: #ff6b35;--accent-2: #f7931e;--accent-3: #fbb03b;--accent-4: #e74c3c;--accent-5: #c44569;--status-in-review: #f7931e;--status-in-progress: #ff6b35;--status-bidding: #fbb03b;--status-high-priority: #e74c3c;--status-plumbing: #c44569}[data-theme=forest]{--bg-gradient-start: #1b2a1f;--bg-gradient-mid: #2d4a2f;--bg-gradient-end: #3a5f42;--accent-1: #7cb342;--accent-2: #558b2f;--accent-3: #9ccc65;--accent-4: #ffa726;--accent-5: #66bb6a;--status-in-review: #7cb342;--status-in-progress: #558b2f;--status-bidding: #ffa726;--status-high-priority: #ef5350;--status-plumbing: #66bb6a}[data-theme=lavender]{--bg-gradient-start: #2b1e3d;--bg-gradient-mid: #4a2f5a;--bg-gradient-end: #6b4779;--accent-1: #9b59b6;--accent-2: #8e44ad;--accent-3: #e91e63;--accent-4: #ff6b9d;--accent-5: #c39bd3;--status-in-review: #9b59b6;--status-in-progress: #8e44ad;--status-bidding: #ff6b9d;--status-high-priority: #e91e63;--status-plumbing: #c39bd3}[data-theme=midnight]{--bg-gradient-start: #0a0e27;--bg-gradient-mid: #1a1f3a;--bg-gradient-end: #2a2f4a;--accent-1: #00d9ff;--accent-2: #667eea;--accent-3: #764ba2;--accent-4: #f093fb;--accent-5: #4facfe;--status-in-review: #00d9ff;--status-in-progress: #667eea;--status-bidding: #f093fb;--status-high-priority: #ff4757;--status-plumbing: #4facfe}[data-theme=sky]{--bg-gradient-start: #87ceeb;--bg-gradient-mid: #b0e0e6;--bg-gradient-end: #add8e6;--glass-bg: rgba(255, 255, 255, .3);--glass-border: rgba(255, 255, 255, .5);--glass-shadow: rgba(0, 0, 0, .1);--accent-1: #4a90e2;--accent-2: #5dade2;--accent-3: #3498db;--accent-4: #2980b9;--accent-5: #1abc9c;--status-in-review: #4a90e2;--status-in-progress: #5dade2;--status-bidding: #3498db;--status-high-priority: #e74c3c;--status-plumbing: #9b59b6}[data-theme=coral]{--bg-gradient-start: #ff9a8b;--bg-gradient-mid: #ff6a88;--bg-gradient-end: #fecfef;--glass-bg: rgba(255, 255, 255, .25);--glass-border: rgba(255, 255, 255, .45);--glass-shadow: rgba(0, 0, 0, .1);--accent-1: #ff6b9d;--accent-2: #c44569;--accent-3: #f8b500;--accent-4: #ff9a8b;--accent-5: #ffa07a;--status-in-review: #ff6b9d;--status-in-progress: #ffa07a;--status-bidding: #f8b500;--status-high-priority: #c44569;--status-plumbing: #ff9a8b}[data-theme=mint]{--bg-gradient-start: #a8e6cf;--bg-gradient-mid: #dcedc1;--bg-gradient-end: #c1e1c1;--glass-bg: rgba(255, 255, 255, .3);--glass-border: rgba(255, 255, 255, .5);--glass-shadow: rgba(0, 0, 0, .1);--accent-1: #52b788;--accent-2: #74c69d;--accent-3: #95d5b2;--accent-4: #40916c;--accent-5: #2d6a4f;--status-in-review: #52b788;--status-in-progress: #74c69d;--status-bidding: #95d5b2;--status-high-priority: #d62828;--status-plumbing: #40916c}[data-theme=rose]{--bg-gradient-start: #ffc3a0;--bg-gradient-mid: #ffafbd;--bg-gradient-end: #ffd3b6;--glass-bg: rgba(255, 255, 255, .3);--glass-border: rgba(255, 255, 255, .5);--glass-shadow: rgba(0, 0, 0, .1);--accent-1: #ff8fab;--accent-2: #ff6f91;--accent-3: #ffafbd;--accent-4: #e63946;--accent-5: #ffc2d1;--status-in-review: #ff8fab;--status-in-progress: #ff6f91;--status-bidding: #ffafbd;--status-high-priority: #e63946;--status-plumbing: #ffc2d1}[data-theme=citrus]{--bg-gradient-start: #ffeaa7;--bg-gradient-mid: #fdcb6e;--bg-gradient-end: #f9ca24;--glass-bg: rgba(255, 255, 255, .3);--glass-border: rgba(255, 255, 255, .5);--glass-shadow: rgba(0, 0, 0, .1);--accent-1: #fdcb6e;--accent-2: #f9ca24;--accent-3: #f0932b;--accent-4: #eb4d4b;--accent-5: #6c5ce7;--status-in-review: #fdcb6e;--status-in-progress: #f9ca24;--status-bidding: #f0932b;--status-high-priority: #eb4d4b;--status-plumbing: #6c5ce7}[data-theme=pearl]{--bg-gradient-start: #dfe6e9;--bg-gradient-mid: #b2bec3;--bg-gradient-end: #ecf0f1;--glass-bg: rgba(255, 255, 255, .4);--glass-border: rgba(255, 255, 255, .6);--glass-shadow: rgba(0, 0, 0, .15);--accent-1: #636e72;--accent-2: #74b9ff;--accent-3: #a29bfe;--accent-4: #fd79a8;--accent-5: #00b894;--status-in-review: #636e72;--status-in-progress: #74b9ff;--status-bidding: #a29bfe;--status-high-priority: #fd79a8;--status-plumbing: #00b894}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-mid) 50%,var(--bg-gradient-end) 100%);background-attachment:fixed;color:#fff;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glass-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:20px;box-shadow:0 8px 32px var(--glass-shadow);padding:24px;transition:all .3s ease}.glass-card:hover{background:rgba(255,255,255,.08);border-color:#ffffff26;transform:translateY(-2px)}.glass-card-dark{background:rgba(0,0,0,.3);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:20px;box-shadow:0 8px 32px #0006}.badge{display:inline-flex;align-items:center;padding:6px 14px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.badge-in-review{background:var(--status-in-review);color:#fff}.badge-in-progress{background:var(--status-in-progress);color:#fff}.badge-bidding{background:var(--status-bidding);color:#fff}.badge-high-priority{background:var(--status-high-priority);color:#fff}.badge-plumbing{background:var(--status-plumbing);color:#fff}.badge-complete{background:rgba(74,222,128,.2);color:#4ade80;border:1px solid rgba(74,222,128,.3)}.btn-glass{background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:12px 24px;color:#fff;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-glass:hover{background:rgba(255,255,255,.15);border-color:#ffffff4d;transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--accent-2),var(--accent-1));border:none;color:#fff;box-shadow:0 4px 15px #0003}.btn-primary:hover{box-shadow:0 6px 20px #0000004d}.text-heading{font-size:32px;font-weight:700;line-height:1.2;letter-spacing:-.5px}.text-subtitle{font-size:14px;color:#fff9;font-weight:400}.text-label{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#ffffff80;font-weight:600}.text-price{font-size:36px;font-weight:800;line-height:1}.icon-circle{width:48px;height:48px;border-radius:12px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:12px}.avatar{width:32px;height:32px;border-radius:50%;border:2px solid rgba(255,255,255,.2)}.avatar-group{display:flex;align-items:center;gap:-8px}.avatar-group .avatar{margin-left:-8px}.avatar-group .avatar:first-child{margin-left:0}.progress-bar{width:100%;height:6px;background:rgba(255,255,255,.1);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-3),var(--accent-5));border-radius:3px;transition:width .3s ease}.checkmark{width:24px;height:24px;border-radius:50%;background:rgba(74,222,128,.2);border:2px solid #4ade80;display:flex;align-items:center;justify-content:center;color:#4ade80;font-size:12px}.theme-aurora{background:linear-gradient(135deg,#2a3f5f,#7b68ee)}.theme-ocean{background:linear-gradient(135deg,#145374,#00a8cc)}.theme-sunset{background:linear-gradient(135deg,#5b2a42,#ff6b35)}.theme-forest{background:linear-gradient(135deg,#2d4a2f,#7cb342)}.theme-lavender{background:linear-gradient(135deg,#4a2f5a,#9b59b6)}.theme-midnight{background:linear-gradient(135deg,#1a1f3a,#00d9ff)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeInUp .6s ease-out}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.loading-shimmer{background:linear-gradient(90deg,rgba(255,255,255,.05) 0%,rgba(255,255,255,.1) 50%,rgba(255,255,255,.05) 100%);background-size:1000px 100%;animation:shimmer 2s infinite}.blur-bg{backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px)}.glow{box-shadow:0 0 20px currentColor}.text-glow{text-shadow:0 0 20px currentColor}.app{min-height:100vh;padding:40px}.header{margin-bottom:48px}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.app-title{font-size:40px;font-weight:800;color:#fff;letter-spacing:-1px;text-shadow:0 2px 10px rgba(0,0,0,.3)}.app-subtitle{font-size:16px;color:#fff9;font-weight:400}.metrics-grid,.metrics-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:32px;grid-auto-flow:dense}.metric-card{position:relative;overflow:hidden;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:8px;padding:10px;transition:all .3s ease}.metric-card:hover{background:rgba(255,255,255,.08);border-color:#fff3;transform:translateY(-2px)}.metric-card:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.05) 0%,transparent 70%);pointer-events:none}.metric-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.metric-label{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:#ffffff80;font-weight:600}.metric-value{font-size:48px;font-weight:900;color:#fff;line-height:1;margin-bottom:8px;text-shadow:0 2px 10px rgba(0,0,0,.2)}.metric-value-secondary{font-size:36px;font-weight:700;color:#fffc;line-height:1}.metric-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);margin:12px 0}.metric-subtitle{font-size:14px;color:#fff9}.metric-chart{margin-top:6px;display:flex;justify-content:center;align-items:center;min-height:160px}.chart-container{display:flex;justify-content:center;align-items:center;margin:8px 0}.chart-legend{display:flex;flex-direction:row;flex-wrap:wrap;gap:6px;margin-top:8px;justify-content:center;padding-top:8px;border-top:1px solid rgba(255,255,255,.1)}.legend-item{display:flex;align-items:center;gap:4px;font-size:8px;color:#fffc;cursor:pointer;padding:2px 4px;border-radius:3px;transition:all .3s ease;white-space:nowrap}.legend-item:hover{background:rgba(255,255,255,.05)}.legend-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;transition:all .3s ease}.legend-text{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.theme-switcher{position:fixed;bottom:12px;right:12px;z-index:1000;width:36px;height:36px}.theme-toggle{width:36px;height:36px;border-radius:50%;background:rgba(0,0,0,.3);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 16px #0000004d;font-size:16px}.theme-toggle:hover{background:rgba(0,0,0,.4);border-color:#ffffff4d;transform:scale(1.05)}.theme-picker{position:fixed;bottom:0;right:55px;background:rgba(0,0,0,.4);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.15);border-radius:12px 12px 0 0;padding:12px;width:200px;max-height:300px;overflow-y:auto;box-shadow:0 20px 60px #00000080;animation:slideLeft .3s ease}@keyframes slideLeft{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.theme-picker-title{font-size:8px;text-transform:uppercase;letter-spacing:1px;color:#ffffff80;font-weight:600;margin-bottom:8px}.theme-options{display:flex;flex-direction:column;gap:6px}.theme-option{display:flex;align-items:center;gap:8px;padding:6px 8px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;transition:all .3s ease;font-family:Inter,sans-serif}.theme-option:hover{background:rgba(255,255,255,.1);border-color:#fff3;transform:translate(2px)}.theme-option.active{background:rgba(255,255,255,.15);border-color:#ffffff4d;box-shadow:0 0 0 1px #ffffff1a}.theme-preview{display:flex;gap:3px}.theme-color{width:16px;height:16px;border-radius:4px;border:1px solid rgba(255,255,255,.2)}.theme-name{font-size:10px;color:#fff;font-weight:500}.theme-option.active .theme-name{font-weight:600}.timeline-selector{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:20px;padding:24px;margin-bottom:24px;display:flex;align-items:center;gap:20px}.timeline-label{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:#ffffff80;font-weight:600;margin-bottom:16px;display:block}.timeline-presets{display:flex;gap:12px;flex-wrap:wrap;align-items:center;flex:1}.total-tickets-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 24px;border-radius:12px;background:linear-gradient(135deg,rgba(99,102,241,.2),rgba(168,85,247,.2));border:2px solid rgba(99,102,241,.5);gap:4px;min-width:140px;position:relative;overflow:hidden;margin-left:auto;box-shadow:0 4px 20px #6366f133,inset 0 1px #ffffff1a}.total-tickets-badge:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);animation:shimmer 3s infinite}.total-tickets-badge:after{content:"";position:absolute;left:-20px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,transparent,rgba(99,102,241,.6),transparent)}@keyframes shimmer{0%{left:-100%}to{left:100%}}.total-tickets-count{font-size:28px;font-weight:700;color:#fffffff2;font-family:Inter,sans-serif;line-height:1;text-shadow:0 2px 10px rgba(99,102,241,.4)}.total-tickets-label{font-size:11px;font-weight:600;color:#ffffffbf;letter-spacing:.5px;font-family:Inter,sans-serif}.timeline-preset-btn{padding:12px 24px;border-radius:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);color:#fffc;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease;font-family:Inter,sans-serif}.timeline-preset-btn:hover{background:rgba(255,255,255,.12);border-color:#ffffff40;transform:translateY(-2px)}.timeline-preset-btn.active{background:linear-gradient(135deg,var(--accent-2),var(--accent-1));border-color:transparent;color:#fff;box-shadow:0 4px 15px #0003}.timeline-custom{display:flex;align-items:flex-end;gap:8px;padding:0;background:transparent;border:none;margin:0}.custom-inputs{display:flex;gap:8px;margin:0;align-items:flex-end}.input-group{display:flex;flex-direction:column;gap:4px}.input-group label{font-size:8px;text-transform:uppercase;letter-spacing:.5px;color:#ffffff80;font-weight:600;line-height:1}.timeline-date-input{padding:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.15);border-radius:12px;color:#fff;font-size:11px;font-family:Inter,sans-serif;transition:all .3s ease;outline:none;width:130px;height:46px;box-sizing:border-box}.timeline-date-input:hover{background:rgba(255,255,255,.08);border-color:#ffffff40}.timeline-date-input:focus{background:rgba(255,255,255,.1);border-color:var(--accent-1);box-shadow:0 0 0 2px #7b68ee1a}.timeline-date-input[readonly]{cursor:default;opacity:.9}.input-group:first-child .timeline-date-input{border-left:3px solid #22c55e;background:rgba(34,197,94,.05)}.input-group:first-child .timeline-date-input:hover{background:rgba(34,197,94,.1);border-left-color:#22c55e}.input-group:first-child .timeline-date-input:focus{background:rgba(34,197,94,.15);border-left-color:#22c55e;box-shadow:0 0 0 2px #22c55e1a}.input-group:last-child .timeline-date-input{border-left:3px solid #ef4444;background:rgba(239,68,68,.05)}.input-group:last-child .timeline-date-input:hover{background:rgba(239,68,68,.1);border-left-color:#ef4444}.input-group:last-child .timeline-date-input:focus{background:rgba(239,68,68,.15);border-left-color:#ef4444;box-shadow:0 0 0 2px #ef44441a}.input-group:first-child label{color:#22c55ecc}.input-group:last-child label{color:#ef4444cc}.timeline-date-input::-webkit-calendar-picker-indicator{filter:invert(1);cursor:pointer;opacity:.7;transition:opacity .3s ease;width:12px;height:12px}.timeline-date-input::-webkit-calendar-picker-indicator:hover{opacity:1}.timeline-apply-btn{padding:12px 20px;background:linear-gradient(135deg,var(--accent-2),var(--accent-1));border:none;border-radius:12px;color:#fff;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .3s ease;font-family:Inter,sans-serif;box-shadow:0 4px 15px #0003;white-space:nowrap;height:46px;box-sizing:border-box}.timeline-apply-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.timeline-apply-btn:disabled{opacity:.5;cursor:not-allowed;background:rgba(255,255,255,.1)}.timeline-refresh-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;height:46px;border-radius:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);color:#ffffffe6;font-size:12px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:Inter,sans-serif;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;flex-shrink:0}.timeline-actions{display:flex;align-items:center;gap:12px;margin-top:16px}.timeline-actions .report-generator{margin:0}.timeline-refresh-btn svg{transition:transform .6s ease}.timeline-refresh-btn:hover{background:rgba(255,255,255,.15);border-color:#ffffff40;transform:translateY(-1px);box-shadow:0 4px 15px #0003}.timeline-refresh-btn:hover svg{transform:rotate(180deg)}.timeline-refresh-btn:active{transform:translateY(0)}.timeline-refresh-btn:active svg{transform:rotate(360deg)}.main-content{display:grid;grid-template-columns:280px 1fr;gap:24px}.sidebar{position:sticky;top:24px;height:fit-content}.filter-section{margin-bottom:32px}.filter-section:last-child{margin-bottom:0}.filter-title{font-size:14px;font-weight:600;color:#fff;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.filter-list{display:flex;flex-direction:column;gap:8px}.filter-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;cursor:pointer;transition:all .2s ease;font-size:14px;color:#ffffffb3;background:transparent;border:1px solid transparent}.filter-item:hover{background:rgba(255,255,255,.05)}.filter-item.active{background:rgba(255,255,255,.1);border-color:#fff3;color:#fff;font-weight:500}.filter-checkbox{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-radius:4px;flex-shrink:0;position:relative;transition:all .2s ease}.filter-item.active .filter-checkbox{background:linear-gradient(135deg,var(--accent-2),var(--accent-1));border-color:transparent}.filter-item.active .filter-checkbox:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;font-weight:700}.tickets-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:20px;margin-top:24px}.board{display:flex;gap:20px;overflow-x:auto;padding-bottom:20px}.column{min-width:340px;flex-shrink:0}.column-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.1)}.column-title{font-size:16px;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.5px}.column-count{background:rgba(255,255,255,.1);color:#fffc;padding:4px 12px;border-radius:12px;font-size:13px;font-weight:600}.column-items{display:flex;flex-direction:column;gap:16px;max-height:calc(100vh - 500px);overflow-y:auto;padding-right:8px}.column-items::-webkit-scrollbar{width:6px}.column-items::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:3px}.column-items::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:3px}.column-items::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}.issue-card{background:rgba(0,0,0,.25);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:20px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.issue-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-1),var(--accent-2));opacity:0;transition:opacity .3s ease}.issue-card:hover{background:rgba(0,0,0,.35);border-color:#fff3;transform:translateY(-4px);box-shadow:0 10px 30px #0000004d}.issue-card:hover:before{opacity:1}.issue-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.issue-key{font-size:12px;font-weight:600;color:var(--accent-1);letter-spacing:.5px}.issue-summary{font-size:15px;font-weight:500;color:#fff;line-height:1.5;margin-bottom:16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.issue-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.issue-priority{font-size:10px;font-weight:600;padding:4px 10px;border-radius:8px;text-transform:uppercase;letter-spacing:.5px}.issue-priority.high{background:rgba(239,68,68,.2);color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.issue-priority.medium{background:rgba(245,158,11,.2);color:#fcd34d;border:1px solid rgba(245,158,11,.3)}.issue-priority.low{background:rgba(34,197,94,.2);color:#86efac;border:1px solid rgba(34,197,94,.3)}.issue-assignee{font-size:12px;color:#fff9}.issue-date{font-size:11px;color:#fff6;margin-top:8px}.loading{display:flex;justify-content:center;align-items:center;min-height:400px;color:#fff;font-size:18px;font-weight:500}.empty-state{text-align:center;padding:60px 20px;color:#ffffff80}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:rgba(0,0,0,.4);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.15);border-radius:24px;padding:40px;max-width:700px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.modal-header{margin-bottom:24px}.modal-title{font-size:28px;font-weight:700;color:#fff;margin-bottom:8px}.modal-close{float:right;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);font-size:24px;cursor:pointer;color:#fff;padding:8px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:12px;transition:all .2s ease}.modal-close:hover{background:rgba(255,255,255,.15)}.toasts{position:fixed;top:24px;right:24px;z-index:2000;display:flex;flex-direction:column;gap:12px}.toast{background:rgba(0,0,0,.4);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:16px 24px;box-shadow:0 8px 32px #0006;display:flex;align-items:center;gap:12px;min-width:300px;animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.toast.info{border-left:3px solid var(--accent-5)}.toast.error{border-left:3px solid #ef4444}.toast-message{flex:1;font-size:14px;color:#fff;font-weight:500}@media (max-width: 1024px){.main-content{grid-template-columns:1fr}.sidebar{position:static}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (max-width: 768px){.app{padding:20px}.app-title{font-size:28px}.metric-value{font-size:36px}.board{flex-direction:column}.column{min-width:100%}}.bar-charts-section{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}.bar-chart-card{background:rgba(255,255,255,.05);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:20px;box-shadow:0 8px 32px #0000004d;transition:all .3s ease}.bar-chart-card:hover{background:rgba(255,255,255,.08);border-color:#ffffff26;transform:translateY(-2px);box-shadow:0 12px 40px #0006}.bar-chart-title{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#ffffffb3;margin-bottom:16px;text-align:center}.bar-chart-container{display:flex;flex-direction:column;gap:12px}.bar-chart-row{display:flex;flex-direction:column;gap:6px}.bar-chart-label{font-size:10px;font-weight:600;color:#fffc;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:6px;transition:all .3s ease;-webkit-user-select:none;user-select:none}.bar-chart-label:hover{color:#fff}.bar-chart-label.hidden{color:#ffffff4d;text-decoration:line-through}.bar-chart-toggle{font-size:12px;color:var(--accent-3);transition:all .3s ease}.bar-chart-label.hidden .bar-chart-toggle{color:#ffffff4d}.bar-chart-bar-container{position:relative;width:100%;height:28px;background:rgba(255,255,255,.05);border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.bar-chart-bar{height:100%;display:flex;align-items:center;justify-content:flex-end;padding-right:10px;border-radius:8px;transition:width .6s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 2px 4px #ffffff1a;position:relative}.bar-chart-bar:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,rgba(255,255,255,.2) 0%,transparent 100%);border-radius:8px}.bar-chart-value{font-size:12px;font-weight:700;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.3);position:relative;z-index:1}.bar-chart-empty{text-align:center;padding:40px 20px;color:#fff6;font-size:12px;font-style:italic}.bar-chart-footer{margin-top:16px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:center}.bar-chart-expand-btn{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:8px 16px;color:#ffffffe6;font-size:11px;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.bar-chart-expand-btn:hover{background:rgba(255,255,255,.15);border-color:#ffffff40;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.bar-chart-count{color:#ffffff80;font-size:10px;font-weight:500}.bar-chart-expandable .bar-chart-container{transition:max-height .3s ease}@media (max-width: 1200px){.bar-charts-section{grid-template-columns:1fr}}.line-chart-card{min-height:350px}.line-chart-container{display:flex;flex-direction:column;gap:20px}.line-chart-svg{width:100%;height:200px;overflow:visible}.line-chart-line{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.line-chart-area{opacity:.2}.line-chart-point{stroke:#fffc;stroke-width:2;transition:all .3s ease;cursor:pointer}.line-chart-point:hover{r:6;stroke-width:3}.line-chart-labels{display:flex;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.line-chart-label-item{flex:1;text-align:center;display:flex;flex-direction:column;gap:4px}.line-chart-label{font-size:9px;font-weight:600;color:#ffffffb3;text-transform:uppercase;letter-spacing:.3px}.line-chart-value{font-size:16px;font-weight:700;color:#fff}.calendar-heatmap{display:flex;flex-direction:column;gap:20px;padding:16px 0}.calendar-grid{display:flex;gap:12px}.calendar-days-labels{display:flex;flex-direction:column;gap:6px;padding-top:30px}.calendar-day-label{height:22px;font-size:11px;font-weight:600;color:#ffffffb3;text-transform:uppercase;display:flex;align-items:center;letter-spacing:.5px;width:50px}.calendar-weeks-container{flex:1;position:relative}.calendar-months{position:relative;height:24px;margin-bottom:6px}.calendar-month-label{position:absolute;top:0;font-size:12px;font-weight:700;color:#fffc;text-transform:uppercase;letter-spacing:.8px;white-space:nowrap}.calendar-weeks{display:flex;gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.calendar-weeks::-webkit-scrollbar{height:6px}.calendar-weeks::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:3px}.calendar-weeks::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:3px}.calendar-weeks::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}.calendar-week{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.calendar-day{width:22px;height:22px;border-radius:4px;border:1px solid rgba(0,0,0,.2);cursor:pointer;transition:all .2s ease;position:relative;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #0003}.calendar-day:hover{transform:scale(1.3);border-color:#ffffff80;box-shadow:0 4px 12px #0006;z-index:10}.calendar-day.today{border:2px solid white;box-shadow:0 0 0 2px #fff3}.calendar-day-count{font-size:9px;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.7);opacity:0;transition:opacity .2s ease}.calendar-day:hover .calendar-day-count{opacity:1}.calendar-legend{display:flex;align-items:center;gap:6px;justify-content:flex-end;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.calendar-legend-label{font-size:11px;color:#ffffffb3;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.calendar-legend-item{width:22px;height:22px;border-radius:4px;border:1px solid rgba(0,0,0,.2);box-shadow:0 1px 3px #0003}@media (max-width: 1400px){.calendar-heatmap-card{grid-column:span 3}}.ticket-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:40px;animation:modalFadeIn .2s ease-out}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.ticket-modal-container{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:24px;box-shadow:0 25px 50px -12px #00000080,inset 0 1px 1px #ffffff1a;max-width:1200px;width:100%;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;animation:modalSlideUp .3s ease-out}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.ticket-modal-header{padding:32px 40px 24px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:16px;position:relative;background:rgba(255,255,255,.02)}.ticket-modal-header h2{font-size:24px;font-weight:700;color:#fff;margin:0;flex:1;letter-spacing:-.5px}.ticket-modal-count{font-size:14px;color:#ffffff80;font-weight:500;padding:6px 14px;background:rgba(255,255,255,.05);border-radius:12px;border:1px solid rgba(255,255,255,.1)}.ticket-modal-close{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#ffffffb3;transition:all .2s ease}.ticket-modal-close:hover{background:rgba(255,255,255,.1);color:#fff;transform:scale(1.05)}.ticket-modal-close:active{transform:scale(.95)}.ticket-modal-body{flex:1;overflow-y:auto;padding:32px 40px}.ticket-modal-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;color:#ffffff4d;gap:20px}.ticket-modal-empty svg{opacity:.4}.ticket-modal-empty p{font-size:18px;font-weight:500;margin:0}.ticket-modal-list{display:flex;flex-direction:column;gap:20px}.ticket-modal-item{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:24px;transition:all .2s ease}.ticket-modal-item:hover{background:rgba(255,255,255,.05);border-color:#ffffff1f;transform:translateY(-2px);box-shadow:0 8px 16px #0003}.ticket-modal-item-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.ticket-modal-item-id{font-size:13px;font-weight:700;color:var(--accent-1, #8b5cf6);letter-spacing:.3px;text-transform:uppercase}.ticket-modal-item-status{font-size:11px;font-weight:600;padding:4px 10px;border-radius:8px;text-transform:uppercase;letter-spacing:.5px;background:rgba(255,255,255,.1);color:#fffc;border:1px solid rgba(255,255,255,.15)}.ticket-modal-item-status.status-open{background:rgba(59,130,246,.15);color:#60a5fa;border-color:#3b82f64d}.ticket-modal-item-status.status-in-progress,.ticket-modal-item-status.status-in-review{background:rgba(251,191,36,.15);color:#fbbf24;border-color:#fbbf244d}.ticket-modal-item-status.status-closed,.ticket-modal-item-status.status-done,.ticket-modal-item-status.status-resolved{background:rgba(34,197,94,.15);color:#4ade80;border-color:#22c55e4d}.ticket-modal-item-title{font-size:16px;font-weight:600;color:#fff;margin:0 0 16px;line-height:1.4}.ticket-modal-description{margin-bottom:20px;padding:16px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.06);border-radius:12px}.ticket-modal-description-label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--accent-1, #8b5cf6);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.ticket-modal-description-label svg{opacity:.8}.ticket-modal-description-content{color:#ffffffd9;font-size:14px;line-height:1.7}.ticket-modal-attachments{margin-bottom:20px;padding:16px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.06);border-radius:12px}.ticket-modal-attachments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:12px}.ticket-attachment{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);transition:all .2s ease}.ticket-attachment:hover{border-color:#ffffff26;transform:translateY(-2px);box-shadow:0 8px 16px #0000004d}.ticket-attachment-image-link{display:block;width:100%;height:100%;position:relative}.ticket-attachment-image{width:100%;height:100%;object-fit:cover;display:block}.ticket-attachment-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;opacity:0;transition:opacity .2s ease;color:#fff;padding:12px}.ticket-attachment-image-link:hover .ticket-attachment-overlay{opacity:1}.ticket-attachment-filename{font-size:11px;text-align:center;word-break:break-word;line-height:1.3;max-height:60%;overflow:hidden}.ticket-attachment-file{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;height:100%;padding:16px;text-decoration:none;color:#ffffffb3;transition:all .2s ease}.ticket-attachment-file:hover{color:#fff;background:rgba(255,255,255,.05)}.ticket-attachment-file span{font-size:11px;text-align:center;word-break:break-word;line-height:1.3}.ticket-modal-item-meta{display:flex;flex-direction:column;gap:12px}.ticket-modal-meta-row{display:flex;flex-wrap:wrap;gap:20px}.ticket-modal-meta-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#ffffff80}.ticket-modal-meta-item svg{opacity:.6;flex-shrink:0}.ticket-modal-meta-item strong{color:#ffffffe6;font-weight:600}.ticket-modal-meta-dates .ticket-modal-meta-item{color:#fff6;font-size:12px}.ticket-modal-body::-webkit-scrollbar{width:10px}.ticket-modal-body::-webkit-scrollbar-track{background:rgba(255,255,255,.03);border-radius:10px;margin:8px 0}.ticket-modal-body::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:10px;border:2px solid transparent;background-clip:padding-box}.ticket-modal-body::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.25);background-clip:padding-box}.bar-chart-bar{transition:all .2s ease}.bar-chart-bar:hover{filter:brightness(1.2);transform:scaleY(1.02);box-shadow:0 4px 12px #0003}.ticket-modal-expand-btn{margin-top:16px;width:100%;padding:10px 16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#ffffffb3;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all .2s ease}.ticket-modal-expand-btn:hover{background:rgba(255,255,255,.08);color:#fff;border-color:#ffffff26}.ticket-modal-expand-btn svg{transition:transform .2s ease}.ticket-modal-comments{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08)}.ticket-modal-comments-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px;color:#fff6}.spinner{width:24px;height:24px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--accent-1, #8b5cf6);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.ticket-modal-comments-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px;color:#ffffff4d}.ticket-modal-comments-empty p{margin:0;font-size:14px}.ticket-modal-comments-list{display:flex;flex-direction:column;gap:16px}.ticket-comment{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:16px;transition:all .2s ease}.ticket-comment:hover{background:rgba(255,255,255,.04);border-color:#ffffff1a}.ticket-comment-header{margin-bottom:12px}.ticket-comment-author{display:flex;align-items:center;gap:12px}.ticket-comment-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--accent-1, #8b5cf6),var(--accent-2, #ec4899));display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff;flex-shrink:0}.ticket-comment-author-info{flex:1}.ticket-comment-author-name{font-size:14px;font-weight:600;color:#fff;margin-bottom:2px}.ticket-comment-date{font-size:12px;color:#fff6}.ticket-comment-body{color:#fffc;font-size:14px;line-height:1.6}.ticket-comment-body p,.comment-paragraph{margin:0 0 8px}.ticket-comment-body p:last-child,.comment-paragraph:last-child{margin-bottom:0}.ticket-comment-body strong{color:#fff;font-weight:600}.ticket-comment-body em{font-style:italic;color:#ffffffe6}.ticket-comment-body code{background:rgba(255,255,255,.1);padding:2px 6px;border-radius:4px;font-family:Monaco,Menlo,Consolas,monospace;font-size:13px;color:var(--accent-1, #8b5cf6)}.comment-code-block{background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px;margin:8px 0;overflow-x:auto;font-family:Monaco,Menlo,Consolas,monospace;font-size:13px;color:#ffffffe6;line-height:1.5}.ticket-comment-body ul{margin:8px 0;padding-left:24px}.ticket-comment-body li{margin:4px 0;color:#fffc}.ticket-modal-description-content ul,.ticket-modal-description-content ol,.comment-list{margin:12px 0;padding-left:24px}.ticket-modal-description-content li,.comment-list li{margin:6px 0;color:#ffffffd9;line-height:1.6}.ticket-modal-description-content ol{list-style-type:decimal}.ticket-modal-description-content ul{list-style-type:disc}.comment-heading{color:#fff;font-weight:600;margin:16px 0 8px}.comment-blockquote{border-left:3px solid var(--accent-1, #8b5cf6);padding-left:16px;margin:12px 0;color:#ffffffb3;font-style:italic}.comment-media{margin:12px 0;padding:16px;background:rgba(255,255,255,.05);border:1px dashed rgba(255,255,255,.2);border-radius:8px;text-align:center}.comment-media-placeholder{font-size:13px;color:#ffffff80}.ticket-modal-description-content a,.ticket-comment-body a{color:var(--accent-1, #8b5cf6);text-decoration:none;border-bottom:1px solid rgba(139,92,246,.3);transition:all .2s ease}.ticket-modal-description-content a:hover,.ticket-comment-body a:hover{color:var(--accent-2, #ec4899);border-bottom-color:#ec489980}.report-generator{position:relative}.report-preview-btn{padding:10px 20px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:14px;font-weight:600;display:flex;align-items:center;gap:10px;cursor:pointer;transition:all .2s ease}.report-preview-btn:hover{background:rgba(255,255,255,.08);border-color:#ffffff26;transform:translateY(-1px)}.report-preview-btn svg{flex-shrink:0}.report-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:100000;padding:40px;animation:modalFadeIn .2s ease-out;pointer-events:auto}.report-modal-container{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:24px;box-shadow:0 25px 50px -12px #00000080,inset 0 1px 1px #ffffff1a;max-width:1400px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:modalSlideUp .3s ease-out;position:relative;z-index:100001;pointer-events:auto}.report-modal-header{padding:24px 32px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.02)}.report-modal-header h2{font-size:20px;font-weight:700;color:#fff;margin:0}.report-modal-actions{display:flex;align-items:center;gap:12px}.report-download-btn{padding:10px 18px;background:linear-gradient(135deg,var(--accent-1, #8b5cf6),var(--accent-2, #ec4899));border:none;border-radius:10px;color:#fff;font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #8b5cf64d}.report-download-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf666}.report-download-btn:disabled{opacity:.6;cursor:not-allowed}.report-download-csv{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b9814d}.report-download-csv:hover:not(:disabled){box-shadow:0 6px 16px #10b98166}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.report-modal-close{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:10px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#ffffffb3;transition:all .2s ease}.report-modal-close:hover{background:rgba(255,255,255,.1);color:#fff}.report-modal-body{flex:1;overflow-y:auto;padding:32px}.report-content{max-width:900px;margin:0 auto;background:#ffffff;border-radius:16px;padding:40px;box-shadow:0 4px 6px #0000001a}.report-header{text-align:center;margin-bottom:40px;padding-bottom:32px;border-bottom:2px solid #e5e7eb}.report-header h1{font-size:32px;font-weight:800;color:#111827;margin:0 0 16px;letter-spacing:-1px}.report-period{font-size:18px;color:#3b82f6;font-weight:600;margin-bottom:8px}.report-date{font-size:14px;color:#6b7280}.report-section{margin-bottom:40px}.report-section h2{font-size:20px;font-weight:700;color:#1f2937;margin:0 0 20px;display:flex;align-items:center;gap:8px}.report-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px}.report-stat-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:24px;text-align:center}.report-stat-card-open{background:#fef2f2;border:2px solid #fca5a5}.report-stat-value{font-size:48px;font-weight:800;color:#3b82f6;margin-bottom:8px;line-height:1}.report-stat-value-open{color:#dc2626}.report-stat-label{font-size:14px;color:#4b5563;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.report-chart{display:flex;flex-direction:column;gap:12px}.report-chart-row{display:flex;align-items:center;gap:16px}.report-chart-label{min-width:200px;max-width:200px;font-size:14px;font-weight:600;color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-chart-bar-container{flex:1;display:flex;align-items:center;gap:12px;position:relative}.report-chart-bar{height:32px;background:linear-gradient(90deg,#3b82f6,#2563eb);border-radius:6px;display:flex;align-items:center;padding:0 12px;min-width:50px;position:relative;transition:all .3s ease;box-shadow:0 2px 4px #3b82f633}.report-chart-value{font-size:13px;font-weight:700;color:#fff;position:relative;z-index:1}.report-chart-percentage{font-size:13px;color:#6b7280;font-weight:600;min-width:50px;text-align:right}.report-chart-bar-open{background:linear-gradient(90deg,#dc2626,#b91c1c)!important;box-shadow:0 2px 4px #dc262633!important}.report-divider{margin:48px 0 32px;padding:24px;background:#fef2f2;border:2px solid #fca5a5;border-radius:12px;text-align:center}.report-divider h2{font-size:24px;font-weight:800;color:#dc2626;margin:0 0 8px}.report-divider-subtitle{font-size:14px;color:#6b7280;margin:0}.report-footer{margin-top:40px;padding-top:24px;border-top:1px solid #e5e7eb;text-align:center}.report-footer p{margin:0;font-size:13px;color:#9ca3af}.report-modal-body::-webkit-scrollbar{width:10px}.report-modal-body::-webkit-scrollbar-track{background:rgba(255,255,255,.03);border-radius:10px;margin:8px 0}.report-modal-body::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:10px;border:2px solid transparent;background-clip:padding-box}.report-modal-body::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.25);background-clip:padding-box}.shortcuts-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.85);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:100002;animation:fadeIn .2s ease-out}.shortcuts-container{background:linear-gradient(135deg,rgba(var(--glass-bg-rgb),.95) 0%,rgba(var(--glass-bg-rgb),.85) 100%);border:2px solid var(--border-accent);border-radius:var(--radius-lg);padding:var(--space-4);max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #00000080,inset 0 1px #ffffff1a}.shortcuts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-accent)}.shortcuts-header h2{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.05em}.shortcuts-close{background:rgba(255,255,255,.1);border:1px solid var(--border-accent);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-xl);width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.shortcuts-close:hover{background:var(--accent-red);border-color:var(--accent-red);transform:scale(1.1)}.shortcuts-grid{display:grid;gap:var(--space-2)}.shortcut-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:rgba(var(--glass-bg-rgb),.4);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:all .2s ease}.shortcut-item:hover{background:rgba(var(--glass-bg-rgb),.6);border-color:var(--border-accent);transform:translate(4px)}.shortcut-item.special{border-color:var(--accent-cyan);background:rgba(var(--accent-cyan-rgb),.1)}.shortcut-keys{display:flex;gap:var(--space-1);min-width:80px}.key-badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 var(--space-2);background:linear-gradient(135deg,rgba(255,255,255,.15),rgba(255,255,255,.05));border:1px solid var(--border-accent);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-bold);color:var(--text-primary);box-shadow:0 2px 4px #0003,inset 0 1px #ffffff1a;text-transform:uppercase}.shortcut-description{font-family:var(--font-body);font-size:var(--text-base);color:var(--text-secondary);flex:1}.shortcuts-footer{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-subtle);text-align:center}.shortcuts-footer p{font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-tertiary);margin:0}.shortcuts-footer kbd{display:inline-flex;align-items:center;padding:2px 6px;background:rgba(255,255,255,.1);border:1px solid var(--border-subtle);border-radius:3px;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary);margin:0 4px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.keyboard-hint-btn{display:flex;align-items:center;gap:8px;padding:12px 16px;background:linear-gradient(135deg,rgba(var(--glass-bg-rgb),.8),rgba(var(--glass-bg-rgb),.6));border:1px solid var(--border-accent);border-radius:var(--radius-lg);color:var(--text-primary);font-family:var(--font-display);font-size:14px;font-weight:600;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #0000004d,inset 0 1px #ffffff1a;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em}.keyboard-hint-btn:hover{background:linear-gradient(135deg,rgba(var(--accent-1-rgb),.4),rgba(var(--accent-2-rgb),.4));border-color:var(--accent-1);transform:translateY(-2px);box-shadow:0 8px 20px rgba(var(--accent-1-rgb),.3),inset 0 1px #fff3}.keyboard-hint-btn svg{opacity:.8}.keyboard-hint-btn span{font-size:18px;font-weight:700;color:var(--accent-1)}.keyboard-hint-btn:active{transform:translateY(0)}
