@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-color: #0f172a;--surface-color: rgba(30, 41, 59, .7);--surface-border: rgba(255, 255, 255, .1);--text-primary: #f8fafc;--text-secondary: #94a3b8;--primary-color: #3b82f6;--primary-hover: #2563eb;--accent-color: #8b5cf6;--success-color: #10b981;--warning-color: #f59e0b;--danger-color: #ef4444;--glass-bg: rgba(15, 23, 42, .65);--glass-backdrop: blur(12px);--glass-border: 1px solid rgba(255, 255, 255, .08);--glass-shadow: 0 4px 30px rgba(0, 0, 0, .1);--sidebar-width: 260px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-color);background-image:radial-gradient(at 0% 0%,rgba(59,130,246,.15) 0px,transparent 50%),radial-gradient(at 100% 0%,rgba(139,92,246,.15) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(16,185,129,.1) 0px,transparent 50%);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}.glass-panel{background:var(--surface-color);backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);border:var(--glass-border);box-shadow:var(--glass-shadow);border-radius:16px}.text-gradient{background:linear-gradient(135deg,var(--primary-color),var(--accent-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:#fff;padding:.5rem 1rem;border-radius:8px;font-weight:500;transition:opacity .2s,transform .1s;box-shadow:0 4px 12px #3b82f64d}.btn-primary:hover{opacity:.9}.btn-primary:active{transform:scale(.98)}.layout{display:flex;height:100vh;overflow:hidden}.sidebar{width:var(--sidebar-width);height:100%;border-right:var(--glass-border);display:flex;flex-direction:column;padding:1.5rem;background:#0f172a66;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.main-content{flex:1;height:100%;overflow-y:auto;padding:2rem;position:relative}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.animate-fade-in{animation:fadeIn .4s ease-out forwards}.auth-gate{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.auth-form{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-backdrop);backdrop-filter:var(--glass-backdrop);border:var(--glass-border);box-shadow:var(--glass-shadow);border-radius:16px;padding:3rem;width:100%;max-width:400px;text-align:center}.auth-form h1{margin-bottom:.5rem;font-size:1.5rem}.auth-form p{color:var(--text-secondary);margin-bottom:1.5rem}.auth-form input[type=password]{width:100%;padding:.75rem 1rem;border:var(--glass-border);border-radius:8px;background:#0003;color:var(--text-primary);font-size:1rem;outline:none;transition:border-color .2s}.auth-form input[type=password]:focus{border-color:var(--primary-color)}.auth-error{display:block;color:var(--danger-color);font-size:.875rem;margin-top:.5rem}.auth-form button{width:100%;margin-top:1.5rem;padding:.75rem;background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:#fff;border-radius:8px;font-size:1rem;font-weight:600;transition:opacity .2s}.auth-form button:hover{opacity:.9}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--surface-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#fff3}.sidebar-header{margin-bottom:3rem;position:relative}.logo-container{display:flex;align-items:center;gap:12px;margin-bottom:.5rem}.logo-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.3rem}.logo-text{font-size:1.25rem;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.team-name{font-size:.85rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.sidebar-collapse-btn{position:absolute;top:0;right:0;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid rgba(147,197,253,.22);border-radius:8px;color:var(--text-secondary);background:#1e40af2e;transition:color .2s ease,background .2s ease,border-color .2s ease}.sidebar-collapse-btn:hover{color:var(--text-primary);background:#3b82f652;border-color:#93c5fd99}.sidebar-nav{display:flex;flex-direction:column;gap:.5rem;flex:1}.nav-item{display:flex;align-items:center;gap:12px;padding:.75rem 1rem;border-radius:10px;color:var(--text-secondary);font-weight:500;transition:all .2s ease}.nav-item:hover{background:#ffffff0d;color:var(--text-primary)}.nav-item.active{background:linear-gradient(to right,rgba(59,130,246,.2),transparent);color:var(--primary-color);border-left:3px solid var(--primary-color);border-radius:4px 10px 10px 4px}.sidebar-footer{margin-top:auto;border-top:1px solid var(--surface-border);padding-top:1rem}.sidebar{transition:width .25s ease,padding .25s ease;overflow:hidden;flex:0 0 var(--sidebar-width)}.sidebar.collapsed{width:72px;flex-basis:72px;padding-left:.75rem;padding-right:.75rem}.sidebar.collapsed .logo-container{justify-content:center}.sidebar.collapsed .logo-text,.sidebar.collapsed .team-name,.sidebar.collapsed .nav-item span{display:none}.sidebar.collapsed .sidebar-header{margin-bottom:2rem}.sidebar.collapsed .sidebar-collapse-btn{position:static;margin:.75rem auto 0}.sidebar.collapsed .nav-item{justify-content:center;padding-left:.7rem;padding-right:.7rem}.sidebar.collapsed .nav-item.active{border-left-width:0;border-bottom:3px solid var(--primary-color)}.task-card{padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s;cursor:pointer}.task-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0003}.task-card:hover .external-icon{opacity:1}.task-header{display:flex;justify-content:space-between;align-items:center}.task-header-right{display:flex;align-items:center;gap:8px}.external-icon{opacity:.3;color:var(--text-secondary);transition:opacity .2s;flex-shrink:0}.task-key{font-size:.8rem;font-weight:600;color:var(--text-secondary);letter-spacing:.5px}.task-status{font-size:.75rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;background:color-mix(in srgb,var(--status-color) 15%,transparent);color:var(--status-color);text-transform:uppercase;white-space:nowrap}.task-summary{font-size:.95rem;font-weight:500;line-height:1.4;color:var(--text-primary);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-footer{display:flex;justify-content:space-between;margin-top:.5rem}.task-meta{display:flex;align-items:center;gap:4px;font-size:.8rem;color:var(--text-secondary)}.meta-icon{opacity:.7}.priority-indicator{position:absolute;left:0;top:0;bottom:0;width:4px}.task-card-compact{display:flex;align-items:center;gap:8px;background:#0f172a80;padding:.6rem .75rem;border-radius:8px;font-size:.85rem;color:var(--text-primary);cursor:pointer;border:1px solid rgba(255,255,255,.05);transition:border-color .2s,background .2s,transform .15s}.task-card-compact:hover{border-color:var(--primary-color);background:#3b82f614;transform:translate(4px)}.task-card-compact:hover .external-icon{opacity:1}.task-card-compact .mini-status{width:8px;height:8px;border-radius:50%;flex-shrink:0}.compact-key{font-weight:700;color:var(--primary-color);white-space:nowrap;font-size:.8rem}.compact-summary{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weekly-container{display:flex;flex-direction:column;min-height:100%}.header-section{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:1.5rem;gap:1rem}.header-section h2{font-size:2rem;margin-bottom:.25rem;font-weight:700;letter-spacing:-.5px}.week-controls{display:flex;align-items:center;gap:.75rem}.nav-button{border:1px solid var(--surface-border);background:var(--surface-color);color:var(--text-primary);border-radius:999px;padding:.55rem;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,border-color .2s ease}.nav-button:hover{transform:translateY(-1px);border-color:var(--primary-color)}.manage-resources-btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--primary-color);color:#fff;padding:.45rem .8rem}.current-week{background:var(--surface-color);border:var(--glass-border);padding:.6rem 1rem;border-radius:999px;font-weight:600;color:var(--primary-color);white-space:nowrap}.validation-panel{margin-bottom:1.25rem;padding:1rem 1.1rem;transition:margin-bottom .3s ease}.validation-panel.collapsed,.validation-panel.collapsed .panel-header{margin-bottom:0}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.9rem;-webkit-user-select:none;user-select:none}.panel-header-right{display:flex;align-items:center;gap:.5rem}.collapse-chevron{transition:transform .3s ease;color:var(--text-secondary)}.collapse-chevron.rotated{transform:rotate(-90deg)}.panel-title{display:flex;align-items:center;gap:.5rem;font-weight:700;color:var(--text-primary)}.panel-count{background:#3b82f626;color:var(--primary-color);border-radius:999px;padding:.25rem .6rem;font-size:.8rem;font-weight:700}.weekly-board{display:grid;grid-template-columns:1fr;gap:1.25rem;flex:1;min-height:0;overflow:visible}.manage-resources-modal{position:relative;padding:1rem;margin-bottom:1rem;max-height:60vh;overflow:hidden;display:flex;flex-direction:column;background:var(--surface-color);border:1px solid var(--surface-border);box-shadow:0 8px 30px #02061766;z-index:40}.manage-resources-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#02061773;z-index:38;padding:1.25rem}.manage-resources-modal{width:840px;max-width:100%;max-height:80vh;border-radius:12px}.manage-resources-modal .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;flex:0 0 auto}.manage-resources-modal .close-modal{border:none;background:transparent;color:var(--text-secondary);cursor:pointer}.manage-resources-modal .modal-body{overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1 1 auto;padding-right:.5rem}.manage-resources-modal .team-members-list{max-height:calc(60vh - 160px);overflow-y:auto;padding-right:.25rem}.team-sidebar{padding:1rem;display:flex;flex-direction:column;gap:.9rem;overflow-y:auto}.team-add-form{display:flex;gap:.5rem}.team-add-form input,.member-filter{flex:1;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.6rem .7rem;background:#0f172a73;color:var(--text-primary)}.team-add-form button{border:none;border-radius:8px;padding:.6rem .8rem;background:var(--primary-color);color:#fff;cursor:pointer;font-weight:700}.team-members-list{display:flex;flex-direction:column;gap:.6rem}.team-member-card{display:flex;align-items:center;justify-content:space-between;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:.7rem .9rem;background:#0f172a59;transition:opacity .2s;gap:1rem}.team-member-card.excluded{opacity:.5}.member-info{display:flex;align-items:center;gap:.5rem;min-width:0}.member-info strong{color:var(--text-primary);font-size:.9rem}.member-badge{font-size:.65rem;background:#3b82f61f;color:var(--primary-color);padding:.15rem .5rem;border-radius:999px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.member-details{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.member-count{color:var(--text-secondary);font-size:.78rem;white-space:nowrap}.toggle-switch{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-switch input{display:none}.toggle-slider{position:relative;width:36px;height:20px;background:#ffffff1f;border-radius:999px;transition:background .25s}.toggle-slider:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;top:2px;left:2px;background:var(--text-secondary);transition:transform .25s,background .25s}.toggle-switch input:checked+.toggle-slider{background:#ef44444d}.toggle-switch input:checked+.toggle-slider:after{transform:translate(16px);background:var(--danger-color)}.toggle-label{font-size:.75rem;color:var(--text-secondary);min-width:3.5rem}.remove-member-btn{border:none;border-radius:6px;background:#ef44441a;color:var(--danger-color);width:26px;height:26px;font-size:.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;opacity:.6}.remove-member-btn:hover{background:#ef444440;opacity:1}.board-main{display:flex;flex-direction:row;gap:1.25rem;min-height:0;overflow:visible;align-items:flex-start}.validation-panel{padding:1rem 1.1rem;flex:0 0 340px;width:340px;max-height:calc(100vh - 120px);display:flex;flex-direction:column;margin-bottom:0;position:sticky;top:1.25rem;z-index:10;align-self:flex-start}.validation-list{display:flex;flex-direction:column;gap:.75rem;flex:1;overflow-y:auto;padding-right:.25rem}@media (max-width: 1200px){.board-main{flex-direction:column}.validation-panel{flex:0 0 auto;width:100%;max-height:none;margin-bottom:1.25rem}.validation-list{max-height:240px}}.validation-card{display:flex;flex-direction:column;gap:.6rem;padding:.7rem;border-radius:10px;background:#0f172a59;border:1px solid rgba(255,255,255,.05);cursor:grab}.validation-card:active{cursor:grabbing}.validation-task-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.25rem}.assigned-to{color:var(--text-secondary);font-size:.8rem}.task-status-badge{font-size:.65rem;padding:.2rem .5rem;border-radius:6px;background:#3b82f626;color:var(--primary-color);font-weight:700;text-transform:uppercase;letter-spacing:.5px}.week-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;flex:1;min-height:0}.day-column{background:#0f172a4d;border:1px solid var(--surface-border);border-radius:12px;display:flex;flex-direction:column;overflow:hidden}.day-header{padding:.9rem 1rem;background:#ffffff08;border-bottom:1px solid var(--surface-border);display:flex;justify-content:space-between;align-items:center}.day-name{font-weight:600;color:var(--text-secondary);text-transform:uppercase;font-size:.8rem;letter-spacing:.5px}.day-date{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.day-tasks{padding:.9rem;display:flex;flex-direction:column;gap:.8rem;overflow-y:auto;flex:1}.drop-hint{color:var(--text-secondary);font-size:.75rem;padding:.2rem 0 .4rem;border-bottom:1px dashed rgba(255,255,255,.08);margin-bottom:.4rem}.empty-day,.empty-validation{color:var(--text-secondary);font-size:.9rem;padding:.5rem 0}.empty-validation,.empty-day{color:var(--text-secondary);font-size:.9rem;padding:.75rem 0}@media (max-width: 1200px){.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.planning-grid{display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.06);border-radius:12px;overflow-x:auto;background:#0f172a40;flex:1 1 320px;min-height:320px}.planning-header-row,.planning-row{display:grid;grid-template-columns:170px 120px repeat(5,minmax(130px,1fr));min-width:960px}.planning-header-row{background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.06)}.planning-row{border-top:1px solid rgba(255,255,255,.04)}.planning-row.member-start{border-top-color:#ffffff1a}.planning-name-cell,.planning-slot-cell,.planning-day-cell{padding:.6rem;min-height:80px;border-right:1px solid rgba(255,255,255,.06)}.planning-name-cell:last-child,.planning-slot-cell:last-child,.planning-day-cell:last-child{border-right:none}.planning-name-cell{font-weight:700;color:var(--text-primary);display:flex;align-items:center}.planning-name-cell.secondary-slot{color:transparent}.planning-slot-cell{color:var(--text-secondary);font-size:.82rem;font-weight:700;display:flex;align-items:center;letter-spacing:.4px}.planning-day-cell{display:flex;flex-direction:column;gap:.4rem;color:var(--text-secondary);font-size:.85rem;min-width:0;max-width:100%;overflow:hidden;box-sizing:border-box}.planning-slot{background:#ffffff05}.planning-task-card{border:1px solid rgba(59,130,246,.16);border-radius:8px;padding:.4rem .5rem;background:#3b82f614;display:flex;flex-direction:column;gap:.15rem;cursor:grab;max-width:100%;box-sizing:border-box}.planning-task-card:active{cursor:grabbing}.planning-task-key{font-size:.75rem;font-weight:700;color:var(--primary-color)}.planning-task-summary{font-size:.78rem;color:var(--text-primary);line-height:1.2;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.planning-task-actions{display:flex;gap:3px;margin-top:4px;align-items:center;flex-wrap:wrap}.planning-slot-select{font-size:.65rem;padding:1px;border-radius:4px;border:1px solid rgba(59,130,246,.25);background:#00000059;color:var(--text-primary);cursor:pointer;max-width:72px;min-width:0;flex-shrink:1}.planning-task-action-btn{border:none;background:#00000040;color:#fff;width:20px;height:20px;border-radius:5px;font-size:11px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}.planning-task-action-btn.remove-btn:hover{background:#ef4444e6}.planning-task-action-btn.multiday-btn:hover{background:#3b82f6e6}.planning-task-action-btn.multiday-btn.active{background:#3b82f6b3}.planning-empty{color:var(--text-secondary);font-size:.8rem;opacity:.7;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.add-special-select{background:transparent;border:1px solid rgba(255,255,255,.06);color:var(--text-primary);padding:.25rem .4rem;border-radius:6px;font-size:.78rem;max-width:100%;box-sizing:border-box}.add-special-select:focus{outline:2px solid rgba(59,130,246,.18)}.add-special-select option{color:var(--text-primary);background:var(--surface-color)}.planning-empty-state{min-width:960px;padding:1rem;color:var(--text-secondary);font-size:.9rem}.planning-task-card.special-F{border-color:#ef444466;background:#ef44441f}.planning-task-card.special-F .planning-task-key{color:#ef4444}.planning-task-card.special-P{border-color:#f9731666;background:#f973161f}.planning-task-card.special-P .planning-task-key{color:#f97316}.planning-task-card.special-ASS{border-color:#3b82f666;background:#3b82f61f}.planning-task-card.special-ASS .planning-task-key{color:#3b82f6}.planning-task-card.special-PRE{border-color:#10b98166;background:#10b9811f}.planning-task-card.special-PRE .planning-task-key{color:#10b981}.planning-task-card.special-PROD{border-color:#8b5cf666;background:#8b5cf61f}.planning-task-card.special-PROD .planning-task-key{color:#8b5cf6}.planning-task-card.special-TEST{border-color:#06b6d466;background:#06b6d41f}.planning-task-card.special-TEST .planning-task-key{color:#06b6d4}.add-special-select option[value=F]{color:#ef4444;font-weight:600}.add-special-select option[value=P]{color:#f97316;font-weight:600}.add-special-select option[value=ASS]{color:#3b82f6;font-weight:600}.add-special-select option[value=PRE]{color:#10b981;font-weight:600}.add-special-select option[value=PROD]{color:#8b5cf6;font-weight:600}.add-special-select option[value=TEST]{color:#06b6d4;font-weight:600}.planning-day-header{cursor:pointer;transition:background .2s;-webkit-user-select:none;user-select:none;border-radius:6px 6px 0 0}.planning-day-header:hover{background:#3b82f614}.bulk-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#02061773;z-index:50;padding:1.25rem}.bulk-modal{width:380px;max-width:100%;border-radius:12px;padding:1.25rem;background:var(--surface-color);border:1px solid var(--surface-border);box-shadow:0 8px 30px #02061766}.bulk-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.bulk-modal-header h4{color:var(--text-primary);text-transform:capitalize;font-size:.95rem}.bulk-modal .close-modal{border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:1.1rem}.bulk-select{width:100%;padding:.6rem;font-size:.9rem;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#0f172a73;color:var(--text-primary)}.bulk-note{color:var(--text-secondary);font-size:.75rem;margin-top:.75rem;text-align:center}.board-filters{display:flex;gap:.5rem;margin-bottom:.75rem;align-items:center}.board-search-wrapper{position:relative;flex:1;display:flex;align-items:center}.board-search-icon{position:absolute;left:8px;color:var(--text-secondary);pointer-events:none}.board-search-input{width:100%;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.45rem .7rem .45rem 28px;background:#0f172a73;color:var(--text-primary);font-size:.8rem}.board-search-input::placeholder{color:var(--text-secondary);opacity:.6}.board-search-clear{position:absolute;right:6px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.75rem;padding:2px 4px}.show-assigned-toggle{display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(255,255,255,.08);background:#0f172a73;color:var(--text-secondary);border-radius:8px;padding:.45rem .6rem;cursor:pointer;font-size:.72rem;white-space:nowrap;transition:border-color .2s,color .2s;flex-shrink:0}.show-assigned-toggle.active{border-color:var(--primary-color);color:var(--primary-color);background:#3b82f61a}.show-assigned-toggle:hover{border-color:var(--primary-color)}.validation-card.assigning{opacity:.6;position:relative}.validation-card-spinner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.25rem;background:#0206174d;border-radius:10px;z-index:5;color:#dbeafe;font-size:.68rem;font-weight:600}.planning-task-card.loading{opacity:.5;pointer-events:none}.planning-task-spinner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#02061740;border-radius:8px;z-index:5;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:#dbeafe;font-size:.62rem;font-weight:600}.slot-spinner{display:flex;align-items:center;justify-content:center;padding:.25rem}.planning-task-multiday-indicator{display:inline-block;font-size:10px;font-weight:700;color:#8b5cf6;background:#8b5cf626;border-radius:4px;padding:1px 5px;margin-top:2px;align-self:flex-start}.planning-task-card.multi-day{border-color:#8b5cf64d;background:#8b5cf60f}.planning-task-action-btn.multiday-btn{background:#00000040;color:#fff}.planning-task-action-btn.multiday-btn:hover{background:#8b5cf6cc}.planning-task-action-btn.multiday-btn.active{background:#8b5cf699;color:#fff}.multiday-options{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}.multiday-btn{border:1px solid rgba(139,92,246,.3);background:#8b5cf61a;color:var(--text-primary);padding:.6rem 1.2rem;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;transition:background .2s,border-color .2s}.multiday-btn:hover{background:#8b5cf640;border-color:#8b5cf699}.add-ticket-modal{width:480px;max-width:100%;border-radius:12px;padding:1.25rem;background:var(--surface-color);border:1px solid var(--surface-border);box-shadow:0 8px 30px #02061766;max-height:80vh;display:flex;flex-direction:column}.add-ticket-search{width:100%;padding:.5rem .65rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#0f172a80;color:var(--text-primary);font-size:.82rem;outline:none;box-sizing:border-box;margin-bottom:.65rem;margin-top:.25rem;transition:border-color .2s}.add-ticket-search:focus{border-color:var(--primary-color)}.add-ticket-list{display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;flex:1;padding-right:.25rem}.add-ticket-item{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;border-radius:8px;background:#0f172a59;border:1px solid rgba(255,255,255,.05);cursor:pointer;transition:border-color .2s,background .2s;gap:.75rem}.add-ticket-item:hover{border-color:var(--primary-color);background:#3b82f614}.add-ticket-item.loading{opacity:.5;pointer-events:none}.add-ticket-info{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1}.add-ticket-key{font-size:.78rem;font-weight:700;color:var(--primary-color)}.add-ticket-summary{font-size:.82rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.add-ticket-assignee{font-size:.72rem;color:var(--text-secondary)}.add-ticket-assign-btn{border:none;background:var(--primary-color);color:#fff;padding:.35rem .7rem;border-radius:6px;font-size:.75rem;cursor:pointer;font-weight:600;white-space:nowrap;flex-shrink:0;transition:background .2s}.add-ticket-assign-btn:hover{background:var(--primary-hover)}@media (max-width: 760px){.header-section{flex-direction:column;align-items:flex-start}.week-controls{width:100%;justify-content:space-between;flex-wrap:wrap}.week-grid{grid-template-columns:1fr}.planning-name-cell,.planning-slot-cell,.planning-day-cell{min-height:70px;padding:.4rem;font-size:.78rem}}.validation-panel,.planning-grid{background:#0f172ac7;border-color:#94a3b833}.validation-card{background:#17233a;border-color:#94a3b838;box-shadow:0 4px 14px #02061729;transition:transform .2s ease,border-color .2s ease,background .2s ease}.validation-card:hover{transform:translateY(-1px);border-color:#60a5faa6;background:#1b2b47}.planning-grid{border:1px solid rgba(148,163,184,.2);border-radius:14px;overflow:auto;box-shadow:0 10px 28px #02061729;scrollbar-color:#41658e #101d31}.planning-header-row,.planning-row{grid-template-columns:170px 108px repeat(5,minmax(176px,1fr));min-width:1160px}.planning-header-row{position:sticky;top:0;z-index:12;min-height:62px;background:#142945;border-bottom:2px solid rgba(147,197,253,.35);box-shadow:0 5px 14px #0206173d}.planning-header-row>div{background:#142945}.planning-header-row .planning-name-cell,.planning-header-row .planning-slot-cell{z-index:15}.planning-day-header{background:#1e40af4d;color:#dbeafe;justify-content:center;text-align:center;gap:.15rem}.planning-day-header strong{color:#fff}.planning-slot{background:#0f172a7a;border-color:#94a3b81f}.planning-name-cell,.planning-slot-cell{position:sticky;z-index:4;background:#172b49;box-shadow:4px 0 12px #02061729}.planning-name-cell{left:0;padding-left:.85rem;color:#f8fafc}.planning-name-cell.secondary-slot{background:#12243d}.planning-name-cell.member-label{z-index:8;align-items:center;background:transparent;box-shadow:none;transform:translateY(50%);text-align:center;justify-content:center}.planning-slot-cell{left:170px;color:#bfdbfe;background:#12243d;justify-content:center;text-align:center;border-right:1px solid rgba(147,197,253,.22)}.planning-row.member-start .planning-name-cell,.planning-row.member-start .planning-slot-cell{border-top:2px solid rgba(147,197,253,.28)}.planning-row:not(.member-start) .planning-day-cell{background:#0a182ba8}.planning-day-cell{padding:.7rem;min-height:94px}.planning-slot:hover{background:#1e40af2e}.planning-task-card{border-color:#60a5fa7a;background:#203454;box-shadow:0 3px 10px #0206172e;transition:transform .18s ease,border-color .18s ease,background .18s ease}.planning-task-card:hover{transform:translateY(-1px);border-color:#93c5fd;background:#294369}.planning-task-key{color:#93c5fd;letter-spacing:.02em}.planning-task-summary{color:#f8fafc}.planning-task-meta{display:flex;gap:.35rem;color:#bfdbfe;font-size:.68rem;font-weight:600}.planning-slot-select,.planning-task-action-btn{background:#15243b;border-color:#93c5fd73;color:#f8fafc}.planning-slot-select:focus-visible,.planning-task-action-btn:focus-visible,.add-special-select:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}.planning-empty{color:#a9b8cc}.planning-task-card.special-F,.planning-task-card.special-P,.planning-task-card.special-ASS,.planning-task-card.special-PRE,.planning-task-card.special-PROD,.planning-task-card.special-TEST{color:#f8fafc}.planning-task-card.special-F{background:#5b2531;border-color:#fb7185}.planning-task-card.special-P{background:#5a351c;border-color:#fb923c}.planning-task-card.special-ASS{background:#1d4272;border-color:#60a5fa}.planning-task-card.special-PRE{background:#164b43;border-color:#34d399}.planning-task-card.special-PROD{background:#3e2b70;border-color:#a78bfa}.planning-task-card.special-TEST{background:#164e63;border-color:#22d3ee}.add-special-select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;color-scheme:dark;min-height:30px;padding:.3rem 1.8rem .3rem .55rem;border:1px solid rgba(147,197,253,.42);border-radius:8px;background:#172b49;color:#f8fafc;font-weight:600;box-shadow:0 2px 8px #0206172e}.add-special-select:hover{border-color:#93c5fd;background:#203b61}.add-special-select option,.add-special-select optgroup{background:#172b49;color:#f8fafc}.add-special-select option:disabled{color:#94a3b8}.planning-empty .add-special-select{max-width:100%}.jira-sync-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#020617b3;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);cursor:wait}.jira-sync-overlay-card{display:flex;flex-direction:column;align-items:center;gap:.45rem;min-width:220px;padding:1.5rem 1.75rem;border:1px solid rgba(147,197,253,.45);border-radius:16px;background:#142945;color:#f8fafc;box-shadow:0 18px 60px #0206178c;text-align:center}.jira-sync-overlay-spinner{width:60px;height:60px;object-fit:contain;image-rendering:auto}.jira-sync-overlay-card strong{font-size:.95rem}.jira-sync-overlay-card span{color:#bfdbfe;font-size:.78rem}@media (max-width: 1200px){.planning-header-row,.planning-row{grid-template-columns:132px 86px repeat(5,minmax(130px,1fr));min-width:868px}.planning-slot-cell{left:132px}.planning-name-cell,.planning-slot-cell,.planning-day-cell{padding:.55rem}.planning-task-card{padding:.35rem}}@media (max-width: 900px){.planning-header-row,.planning-row{grid-template-columns:108px 72px repeat(5,minmax(112px,1fr));min-width:740px}.planning-slot-cell{left:108px}.planning-task-summary{-webkit-line-clamp:1}.planning-task-meta{font-size:.62rem}}.planning-member-group{display:grid;grid-template-columns:170px 108px repeat(5,minmax(176px,1fr));grid-template-rows:auto auto;min-width:1160px;border-top:2px solid rgba(147,197,253,.28);background:#0f172a6b}.planning-member-group+.planning-member-group{border-top-color:#94a3b82e}.planning-member-group>.planning-name-cell.member-label{grid-column:1;grid-row:1 / 3;position:sticky;left:0;z-index:8;min-height:188px;align-self:stretch;transform:none;justify-content:center;align-items:center;padding:.75rem;background:#172b49;color:#f8fafc;text-align:center;overflow-wrap:anywhere;box-shadow:4px 0 12px #0206172e}.planning-member-group .planning-row{grid-column:2 / -1;display:grid;grid-template-columns:108px repeat(5,minmax(176px,1fr));min-width:0;border-top:0}.planning-member-group .planning-row .planning-slot-cell{position:sticky;left:0;z-index:6;background:#12243d;box-shadow:4px 0 10px #02061724}.planning-member-group .planning-row:first-of-type .planning-slot-cell{border-top:0}@media (max-width: 1200px){.planning-member-group{grid-template-columns:132px 86px repeat(5,minmax(130px,1fr));min-width:868px}.planning-member-group>.planning-name-cell.member-label{min-height:188px}.planning-member-group .planning-row{grid-template-columns:86px repeat(5,minmax(130px,1fr))}}@media (max-width: 900px){.planning-member-group{grid-template-columns:108px 72px repeat(5,minmax(112px,1fr));min-width:740px}.planning-member-group>.planning-name-cell.member-label{min-height:176px;padding:.45rem;font-size:.82rem}.planning-member-group .planning-row{grid-template-columns:72px repeat(5,minmax(112px,1fr))}}.monthly-container{display:flex;flex-direction:column;height:100%}.current-month{background:linear-gradient(135deg,#3b82f633,#8b5cf633);border:var(--glass-border);padding:.5rem 1rem;border-radius:8px;font-weight:600;color:var(--text-primary);text-transform:capitalize;min-width:180px;text-align:center}.month-nav{display:flex;align-items:center;gap:.5rem}.month-nav-btn{background:#ffffff0d;border:1px solid var(--surface-border);color:var(--text-primary);width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.month-nav-btn:hover{background:#ffffff1a;border-color:var(--primary-color)}.calendar-card{flex:1;display:flex;flex-direction:column;overflow:hidden}.calendar-header{display:grid;grid-template-columns:repeat(7,1fr);background:#0003;border-bottom:1px solid var(--surface-border)}.calendar-day-name{padding:1rem;text-align:center;font-weight:600;color:var(--text-secondary);font-size:.85rem;text-transform:uppercase;letter-spacing:1px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(120px,1fr);flex:1;overflow-y:auto}.calendar-cell{border-right:1px solid var(--surface-border);border-bottom:1px solid var(--surface-border);padding:.5rem;display:flex;flex-direction:column;gap:.5rem;transition:background-color .2s}.calendar-cell:nth-child(7n){border-right:none}.calendar-cell.empty{background:#0000001a}.calendar-cell:hover:not(.empty){background:#ffffff05}.calendar-cell.today{background:#3b82f61a}.calendar-cell.has-tasks{cursor:pointer}.calendar-cell.has-tasks:hover:not(.empty){background:#ffffff0d}.cell-header{display:flex;justify-content:flex-end}.date-number{font-weight:500;color:var(--text-secondary);width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%}.today .date-number{background:var(--primary-color);color:#fff;font-weight:700}.cell-tasks{display:flex;flex-direction:column;gap:4px;overflow-y:auto;max-height:80px}.cell-tasks::-webkit-scrollbar{width:4px}.mini-task{display:flex;align-items:center;gap:6px;background:#0f172a99;padding:4px 6px;border-radius:4px;font-size:.75rem;color:var(--text-primary);border:1px solid rgba(255,255,255,.05);transition:border-color .2s}.mini-task:hover{border-color:var(--primary-color)}.mini-status{width:6px;height:6px;border-radius:50%;flex-shrink:0}.mini-key{font-weight:600;color:var(--text-secondary);flex-shrink:0}.mini-special-F{border-left:3px solid var(--danger-color)!important;background:#ef444414!important}.mini-special-P{border-left:3px solid var(--warning-color)!important;background:#f59e0b14!important}.mini-special-ASS{border-left:3px solid var(--primary-color)!important;background:#3b82f614!important}.mini-special-PRE{border-left:3px solid var(--success-color)!important;background:#10b98114!important}.mini-special-PROD{border-left:3px solid #8b5cf6!important;background:#8b5cf614!important}.mini-special-TEST{border-left:3px solid #06b6d4!important;background:#06b6d414!important}.mini-assignee{color:var(--text-secondary);opacity:.7;font-size:.7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.mini-more{font-size:.7rem;color:var(--primary-color);font-weight:600;text-align:center;padding:2px 0}.day-detail-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#02061780;z-index:50;padding:1.25rem}.day-detail-modal{width:520px;max-width:100%;max-height:80vh;border-radius:12px;padding:1.25rem;background:var(--surface-color);border:1px solid var(--surface-border);box-shadow:0 8px 30px #02061766;display:flex;flex-direction:column;overflow:hidden}.day-detail-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex:0 0 auto}.day-detail-header h3{color:var(--text-primary);text-transform:capitalize;font-size:1rem;flex:1}.day-detail-count{font-size:.75rem;background:#3b82f61f;color:var(--primary-color);padding:.2rem .6rem;border-radius:999px;font-weight:600}.day-detail-header .close-modal{border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:1.1rem}.day-detail-list{overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;flex:1}.day-detail-card{display:flex;align-items:center;justify-content:space-between;background:#0f172a66;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:.65rem .8rem;transition:border-color .2s,background .2s}.day-detail-card:hover{border-color:#3b82f64d;background:#0f172a99}.detail-card-left{display:flex;align-items:center;gap:.6rem;min-width:0;flex:1}.detail-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.detail-card-info{display:flex;flex-direction:column;gap:1px;min-width:0}.detail-card-key{font-weight:700;font-size:.82rem;color:var(--text-primary)}.detail-card-summary{font-size:.75rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-card-assignee{font-size:.7rem;color:var(--text-secondary);opacity:.7}.detail-card-status{font-size:.7rem;color:var(--text-secondary);background:#ffffff0a;padding:.2rem .5rem;border-radius:4px;flex-shrink:0;margin-left:.5rem}.detail-special{border-left:3px solid transparent}.detail-special.detail-special-F{border-left-color:#ef4444}.detail-special.detail-special-P{border-left-color:#f97316}.detail-special.detail-special-ASS{border-left-color:#3b82f6}.detail-special.detail-special-PRE{border-left-color:#10b981}.detail-special.detail-special-PROD{border-left-color:#8b5cf6}.detail-special.detail-special-TEST{border-left-color:#06b6d4}.day-detail-empty{text-align:center;color:var(--text-secondary);padding:2rem;font-size:.9rem}.team-container{display:flex;flex-direction:column;height:100%}.team-layout{display:grid;grid-template-columns:360px 1fr;gap:1.5rem;flex:1;min-height:0}.member-list{display:flex;flex-direction:column;overflow-y:auto;padding:0}.member-list-header{display:flex;align-items:center;gap:8px;padding:1.25rem 1.5rem;border-bottom:1px solid var(--surface-border);font-weight:600;color:var(--text-secondary);text-transform:uppercase;font-size:.85rem;letter-spacing:.5px;position:sticky;top:0;background:var(--surface-color);-webkit-backdrop-filter:var(--glass-backdrop);backdrop-filter:var(--glass-backdrop);z-index:1}.header-spacer{flex:1}.status-filters{display:flex;gap:.4rem;padding:.6rem 1.5rem 1rem;align-items:center;flex-wrap:wrap}.filter-chip{border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:.3rem .7rem;font-size:.78rem;font-weight:600;background:#ffffff0a;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;white-space:nowrap;-webkit-user-select:none;user-select:none}.filter-chip:hover{border-color:#3b82f64d;color:var(--text-primary)}.filter-chip.active{background:#3b82f626;border-color:#3b82f666;color:var(--primary-color)}.filter-chip.label-chip{border-color:#10b98133}.filter-chip.label-chip:hover{border-color:#10b98166}.filter-chip.label-chip.active{background:#10b9811f;border-color:#10b98166;color:#10b981}.filter-chip.clear{border-color:transparent;font-size:.72rem;color:var(--text-secondary);opacity:.6}.filter-chip.clear:hover{opacity:1;color:var(--danger-color)}.filter-label{font-size:.75rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;margin-right:.2rem}.filter-toggle{border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:.3rem .7rem;font-size:.75rem;font-weight:600;background:#ffffff0a;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.filter-toggle:hover{border-color:#3b82f64d;color:var(--text-primary)}.filter-toggle.open{background:#3b82f61a;border-color:#3b82f64d;color:var(--primary-color)}.filter-toggle.has-active{background:#3b82f626;border-color:#3b82f666;color:var(--primary-color)}.bug-toggle{border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:.3rem .7rem;font-size:.75rem;font-weight:600;background:#ffffff0a;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.bug-toggle:hover{border-color:#ef44444d;color:var(--text-primary)}.bug-toggle.active{background:#ef44441f;border-color:#ef444459;color:var(--danger-color)}.member-search{display:flex;align-items:center;gap:.4rem;padding:.5rem 1.5rem;position:relative}.search-input{flex:1;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.5rem 2rem .5rem .7rem;font-size:.82rem;background:#0f172a66;color:var(--text-primary);outline:none;transition:border-color .2s}.search-input::placeholder{color:var(--text-secondary);opacity:.6}.search-input:focus{border-color:#3b82f666}.search-clear{position:absolute;right:1.8rem;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.85rem;padding:.25rem;opacity:.6;transition:opacity .2s}.search-clear:hover{opacity:1;color:var(--text-primary)}.member-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;cursor:pointer;transition:all .2s;border-bottom:1px solid rgba(255,255,255,.03)}.member-card:hover{background:#ffffff08}.member-card.selected{background:#3b82f61a;border-left:3px solid var(--primary-color)}.member-avatar{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:#fff;flex-shrink:0;box-shadow:0 2px 8px #0003}.member-info{flex:1;min-width:0}.member-name{font-weight:600;font-size:.95rem;color:var(--text-primary);display:block;margin-bottom:4px}.member-stats{display:flex;gap:6px;flex-wrap:wrap}.stat-badge{font-size:.7rem;font-weight:600;padding:2px 6px;border-radius:4px;letter-spacing:.3px;background:#3b82f61f;color:var(--primary-color);white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}.chevron{color:var(--text-secondary);opacity:.4;transition:opacity .2s,transform .2s}.member-card:hover .chevron,.member-card.selected .chevron{opacity:1}.member-card.selected .chevron{transform:translate(2px);color:var(--primary-color)}.member-detail{display:flex;flex-direction:column;gap:1.25rem;overflow-y:auto}.detail-header{display:flex;align-items:center;gap:1.25rem;padding:1.5rem}.detail-avatar{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;color:#fff;box-shadow:0 4px 12px #0000004d}.detail-info h3{font-size:1.25rem;font-weight:700;margin-bottom:4px}.detail-info p{color:var(--text-secondary);font-size:.9rem}.detail-tasks{display:flex;flex-direction:column;gap:1rem}.no-selection{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;flex:1}.no-selection-icon{color:var(--text-secondary);opacity:.3;margin-bottom:1rem}.no-selection h3{font-size:1.15rem;margin-bottom:.5rem;color:var(--text-secondary)}.no-selection p{color:var(--text-secondary);opacity:.7;font-size:.9rem}.settings-container{max-width:800px;margin:0 auto}.header{margin-bottom:2rem}.header h2{font-size:2rem;margin-bottom:.5rem;font-weight:700;letter-spacing:-.5px}.text-secondary{color:var(--text-secondary)}.settings-card{padding:2rem}.settings-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:500;font-size:.95rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password]{background:#0f172a80;border:1px solid var(--surface-border);border-radius:8px;padding:.75rem 1rem;color:var(--text-primary);font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f633}.form-group input:disabled{opacity:.5;cursor:not-allowed}.checkbox-group{flex-direction:row;align-items:center;gap:.75rem}.checkbox-group input[type=checkbox]{width:1.25rem;height:1.25rem;cursor:pointer;accent-color:var(--primary-color)}.checkbox-group label{cursor:pointer}.api-settings{padding:1.5rem;background:#ffffff05;border:1px solid var(--surface-border);border-radius:12px;display:flex;flex-direction:column;gap:1.5rem;transition:opacity .3s}.api-settings.disabled{opacity:.5;pointer-events:none}.api-settings h3{font-size:1.1rem;color:var(--accent-color);margin-bottom:-.5rem}.helper-text{font-size:.85rem;color:var(--warning-color)}.save-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:1rem;margin-top:1rem;font-size:1.05rem}
