@import "https://fonts.googleapis.com/css2?family=Fira+Code:wght@400;500;600;700&family=Fira+Sans:wght@300;400;500;600;700&display=swap";:root{--bg:#04091a;--surface:#ffffff09;--surface-2:#ffffff0f;--surface-hover:#fff1;--border:#ffffff14;--border-hover:#ffffff2e;--text-1:#f1f5f9;--text-2:#94a3b8;--text-3:#64748b;--primary:#3b82f6;--primary-dim:#3b82f626;--primary-glow:#3b82f659;--radius:14px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:14px}body{background:var(--bg);color:var(--text-1);min-height:100vh;font-family:Fira Sans,system-ui,sans-serif;line-height:1.5}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff38}.header{z-index:200;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#081428 0%,#04091af7 100%);padding:16px 28px 0;position:sticky;top:0}.header-row1{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-logo{color:#fff;letter-spacing:-.5px;background:linear-gradient(135deg,#2563eb,#7c3aed);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-family:Fira Code,monospace;font-size:13px;font-weight:700;display:flex;box-shadow:0 4px 20px #6366f166}.brand-title{color:var(--text-1);font-family:Fira Code,monospace;font-size:16px;font-weight:700;line-height:1.2}.brand-sub{color:var(--text-2);margin-top:2px;font-size:11px}.header-actions{align-items:center;gap:8px;display:flex}.stats-bar{gap:12px;margin-bottom:14px;display:flex}.stat{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex:1;align-items:center;gap:10px;padding:10px 14px;display:flex}.stat-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.stat-val{color:var(--text-1);font-family:Fira Code,monospace;font-size:20px;font-weight:700;line-height:1}.stat-label{color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;margin-top:2px;font-size:10px}.tabs{gap:2px;display:flex}.tab{cursor:pointer;color:var(--text-2);background:0 0;border:1px solid #0000;border-bottom:none;border-radius:8px 8px 0 0;align-items:center;gap:7px;padding:9px 20px;font-family:Fira Sans,sans-serif;font-size:13px;font-weight:500;transition:all .18s;display:flex}.tab.active{color:var(--primary);background:#3b82f61f;border-color:#3b82f640}.tab:hover:not(.active){background:var(--surface);color:var(--text-1)}.main{padding:24px 28px}.view{display:none}.view.active{display:block}.btn{cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-family:Fira Sans,sans-serif;font-size:12px;font-weight:500;transition:all .18s;display:inline-flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{box-shadow:0 4px 14px var(--primary-glow);background:#2563eb;transform:translateY(-1px)}.btn-ghost{background:var(--surface-2);color:var(--text-2);border:1px solid var(--border)}.btn-ghost:hover{background:var(--surface-hover);color:var(--text-1);border-color:var(--border-hover)}.btn-sm{border-radius:6px;padding:5px 11px;font-size:11px}.gantt-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.gantt-shell{min-height:200px;display:flex}.gantt-left-col{border-right:1px solid var(--border);z-index:10;background:#04091ae6;flex-shrink:0;width:220px;min-width:220px}.gantt-left-header{border-bottom:1px solid var(--border);align-items:center;height:64px;padding:0 16px;display:flex}.gantt-left-header span{text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);font-size:10px;font-weight:700}.gantt-left-row{border-bottom:1px solid var(--border);cursor:pointer;align-items:center;height:68px;padding:0 16px;transition:background .15s;display:flex}.gantt-left-row:hover{background:var(--surface-hover)}.gantt-left-row:last-child{border-bottom:none}.row-label .client{text-transform:uppercase;letter-spacing:.09em;margin-bottom:3px;font-size:9.5px;font-weight:700}.row-label .solution{color:var(--text-1);font-size:12.5px;font-weight:500}.gantt-right-col{flex:1;position:relative;overflow-x:auto}.gantt-timeline-inner{position:relative}.gantt-year-bar{border-bottom:1px solid var(--border);height:26px;display:flex}.year-cell{color:var(--primary);text-transform:uppercase;letter-spacing:.1em;background:#3b82f60a;border-right:1px solid #3b82f640;flex-shrink:0;justify-content:center;align-items:center;font-family:Fira Code,monospace;font-size:10px;font-weight:700;display:flex}.gantt-month-bar{border-bottom:1px solid var(--border);height:38px;display:flex}.month-cell{color:var(--text-2);border-right:1px solid var(--border);flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:600;transition:background .15s;display:flex;position:relative}.month-cell.now{color:#f59e0b;background:#f59e0b0f}.month-cell span{pointer-events:none}.gantt-row{border-bottom:1px solid var(--border);align-items:center;height:68px;display:flex;position:relative}.gantt-row:last-child{border-bottom:none}.grid-lines{pointer-events:none;display:flex;position:absolute;inset:0}.grid-line{border-right:1px solid var(--border);flex-shrink:0;height:100%}.g-bar{cursor:pointer;z-index:5;border-radius:8px;align-items:center;height:40px;padding:0 10px;transition:filter .15s,transform .15s;display:flex;position:absolute;overflow:hidden;box-shadow:0 2px 12px #00000040}.g-bar:before{content:"";pointer-events:none;background:linear-gradient(#ffffff1f 0%,#0000 100%);position:absolute;inset:0}.g-bar:hover{filter:brightness(1.18);z-index:8;transform:scaleY(1.08)}.g-bar-name{color:#fffffff2;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:11px;font-weight:600;overflow:hidden}.g-bar-badge{color:#ffffffe6;background:#00000047;border-radius:10px;flex-shrink:0;margin-left:6px;padding:1px 7px;font-family:Fira Code,monospace;font-size:9px;font-weight:700}.today-line{z-index:20;pointer-events:none;background:#f59e0b;width:2px;position:absolute;top:0;bottom:0}.today-marker{color:#000;white-space:nowrap;background:#f59e0b;border-radius:3px;padding:1px 5px;font-family:Fira Code,monospace;font-size:8px;font-weight:800;position:absolute;top:4px;left:4px}.gantt-legend{border-top:1px solid var(--border);flex-wrap:wrap;gap:10px 18px;padding:14px 20px;display:flex}.legend-item{color:var(--text-2);align-items:center;gap:6px;font-size:11px;display:flex}.legend-dot{border-radius:3px;flex-shrink:0;width:10px;height:10px}.tooltip{z-index:999;pointer-events:none;opacity:0;background:#0f1f38;border:1px solid #ffffff21;border-radius:12px;width:260px;padding:14px 16px;transition:opacity .12s;position:fixed;top:0;left:0;box-shadow:0 20px 50px #0009}.tooltip.show{opacity:1}.tt-title{align-items:center;gap:8px;margin-bottom:6px;font-size:13px;font-weight:700;display:flex}.tt-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.tt-dates{color:var(--text-2);margin-bottom:10px;font-family:Fira Code,monospace;font-size:10.5px}.tt-res-wrap{flex-wrap:wrap;gap:4px;display:flex}.tt-res{color:var(--text-2);background:#ffffff14;border-radius:10px;padding:2px 7px;font-size:9.5px}.pool-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:22px;padding:18px}.pool-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.pool-head-left{align-items:center;gap:8px;display:flex}.pool-head-title{color:var(--text-1);font-size:13px;font-weight:600}.pool-count-badge{background:var(--surface-2);border:1px solid var(--border);color:var(--text-2);border-radius:10px;padding:1px 9px;font-family:Fira Code,monospace;font-size:10px}.pool-drop-zone{border:2px dashed var(--border);border-radius:10px;flex-wrap:wrap;gap:8px;min-height:52px;padding:8px;transition:all .18s;display:flex}.pool-drop-zone.dragover{background:#3b82f60a;border-color:#3b82f680}.pool-empty{color:var(--text-3);padding:0 8px;font-size:11px;line-height:52px}.proj-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}@media (width<=1200px){.proj-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.proj-grid{grid-template-columns:1fr}}.proj-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex;overflow:hidden}.proj-card:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:0 10px 40px #0000004d}.proj-card.dragover{border-color:#3b82f680;box-shadow:0 0 0 2px #3b82f633}.cust-slot.dragover{box-shadow:0 0 0 2px #3b82f633;border-color:#3b82f680!important}.card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:14px 16px;display:flex;position:relative}.card-head-stripe{height:3px;position:absolute;top:0;left:0;right:0}.card-client{text-transform:uppercase;letter-spacing:.1em;margin-top:2px;margin-bottom:3px;font-size:9.5px;font-weight:700}.card-solution{color:var(--text-1);font-size:14px;font-weight:600;line-height:1.3}.card-dates{color:var(--text-3);margin-top:5px;font-family:Fira Code,monospace;font-size:10px}.card-add-btn{background:var(--primary-dim);width:28px;height:28px;color:var(--primary);cursor:pointer;border:1px solid #3b82f64d;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;transition:all .18s;display:flex}.card-add-btn:hover{background:#3b82f640;transform:scale(1.08)}.card-body{flex:1;padding:14px 16px}.chip-drop-zone{border-radius:8px;flex-wrap:wrap;gap:8px;min-height:60px;padding:2px;transition:all .18s;display:flex}.chip-drop-zone.dragover{background:#3b82f60d;outline:1px dashed #3b82f666}.no-resources{color:var(--text-3);padding:10px 4px;font-size:11px}.card-progress{padding:0 16px 12px}.prog-bar-bg{background:#ffffff12;border-radius:4px;height:4px;overflow:hidden}.prog-bar-fill{border-radius:4px;height:100%;transition:width .4s}.prog-label{color:var(--text-3);justify-content:space-between;margin-top:5px;font-family:Fira Code,monospace;font-size:9px;display:flex}.r-chip{cursor:grab;-webkit-user-select:none;user-select:none;border:1px solid #ffffff1a;border-radius:20px;align-items:center;gap:5px;padding:4px 9px 4px 5px;transition:transform .15s,box-shadow .15s,opacity .15s;display:inline-flex;position:relative}.r-chip:hover{transform:translateY(-1px);box-shadow:0 4px 14px #00000059}.r-chip:active{cursor:grabbing;transform:scale(.94)}.r-chip.is-dragging{opacity:.25}.chip-rm{color:#fff;cursor:pointer;z-index:5;background:#ef4444;border:1.5px solid #07112b;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:11px;line-height:1;transition:transform .12s,background .12s;display:none;position:absolute;top:-6px;right:-6px}.chip-rm:hover{background:#dc2626;transform:scale(1.15)}.r-chip:hover .chip-rm{display:flex}.rp-chip-wrap .chip-rm{display:none!important}.r-chip.shared:after{content:"";border:1.5px solid var(--bg);background:#f59e0b;border-radius:50%;width:9px;height:9px;position:absolute;top:-3px;right:8px}.chip-av{color:#000000bf;text-transform:uppercase;background:#ffffff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:7.5px;font-weight:800;display:flex}.chip-text{flex-direction:column;line-height:1.2;display:flex}.chip-name{color:#fffffff2;white-space:nowrap;font-size:10.5px;font-weight:600}.chip-role{color:#ffffff8c;white-space:nowrap;font-size:8.5px}.modal-overlay{z-index:800;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000a6;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal-overlay.open{display:flex}.modal{background:#0b1426;border:1px solid #ffffff1f;border-radius:18px;width:440px;max-width:95vw;padding:28px;animation:.2s modalIn;box-shadow:0 40px 80px #0009}@keyframes modalIn{0%{opacity:0;transform:scale(.94)translateY(-8px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-head{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.modal-title{font-size:17px;font-weight:700}.modal-x{background:var(--surface-2);border:1px solid var(--border);width:30px;height:30px;color:var(--text-2);cursor:pointer;border-radius:7px;justify-content:center;align-items:center;font-size:15px;transition:all .15s;display:flex}.modal-x:hover{background:var(--surface-hover);color:var(--text-1)}.form-group{margin-bottom:16px}.form-label{color:var(--text-2);text-transform:uppercase;letter-spacing:.07em;margin-bottom:7px;font-size:11px;font-weight:700;display:block}.form-input,.form-select{border:1px solid var(--border);width:100%;color:var(--text-1);background:#ffffff0a;border-radius:9px;outline:none;padding:10px 13px;font-family:Fira Sans,sans-serif;font-size:13px;transition:border-color .15s,box-shadow .15s}.form-input:focus,.form-select:focus{border-color:var(--primary);background:#3b82f60d;box-shadow:0 0 0 3px #3b82f624}.form-select option{background:#0b1426}.modal-foot{gap:9px;margin-top:22px;display:flex}.modal-foot .btn{flex:1;justify-content:center;padding:11px;font-size:13px}.shared-note{color:#f59e0b;align-items:center;gap:5px;margin-top:4px;font-size:10px;display:flex}.lanes-wrap{border-top:1px solid var(--border)}.lanes-header{border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:11px 20px;transition:background .15s;display:flex}.lanes-header:hover{background:#ffffff05}.lanes-header-left{color:var(--text-2);align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.lanes-chevron{flex-shrink:0;transition:transform .2s}.lanes-chevron.open{transform:rotate(180deg)}.lanes-toggle{gap:4px;display:flex}.lane-tab{cursor:pointer;border:1px solid var(--border);color:var(--text-2);background:0 0;border-radius:6px;padding:4px 12px;font-family:Fira Sans,sans-serif;font-size:11px;font-weight:500;transition:all .15s}.lane-tab.active{background:var(--primary-dim);color:var(--primary);border-color:#3b82f64d}.lane-tab:hover:not(.active){background:var(--surface-2);color:var(--text-1)}.lanes-body{display:none}.lanes-body.open{display:block}.lane-group{border-bottom:1px solid var(--border)}.lane-group:last-child{border-bottom:none}.lane-group-header{height:30px;display:flex}.lane-group-label{border-right:1px solid var(--border);text-transform:uppercase;letter-spacing:.08em;background:#0003;flex-shrink:0;align-items:center;gap:6px;width:220px;min-width:220px;padding:0 14px;font-size:10px;font-weight:700;display:flex}.lane-group-tl{flex:1;height:30px;position:relative;overflow-x:hidden}.lane-row{border-bottom:1px solid #ffffff09;display:flex}.lane-row:hover{background:#ffffff05}.lane-row:last-child{border-bottom:none}.lane-label{border-right:1px solid var(--border);flex-shrink:0;align-items:center;gap:8px;width:220px;min-width:220px;height:40px;padding:0 14px;display:flex}.lane-av{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:8px;font-weight:800;display:flex}.lane-name{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:11px;font-weight:600;overflow:hidden}.lane-role-txt{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.lane-tl{flex:1;height:40px;position:relative;overflow-x:hidden}.lane-bar-area{height:40px;position:relative}.lane-bar{color:#ffffffe6;white-space:nowrap;border-radius:5px;align-items:center;height:24px;padding:0 7px;font-size:9px;font-weight:600;display:flex;position:absolute;top:8px;overflow:hidden;box-shadow:0 1px 5px #00000040}.lane-bar:before{content:"";pointer-events:none;background:linear-gradient(#ffffff24 0%,#0000 100%);border-radius:5px;position:absolute;inset:0}.lane-today-line{z-index:5;pointer-events:none;background:#f59e0bb3;width:1.5px;position:absolute;top:0;bottom:0}.lane-grid{pointer-events:none;background:#ffffff0a;width:1px;position:absolute;top:0;bottom:0}.res-panel{z-index:400;border-left:1px solid var(--border);background:#07112b;flex-direction:column;width:300px;transition:right .25s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;right:-308px;box-shadow:-12px 0 48px #0000008c}.res-panel.open{right:0}.rp-head{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.rp-head-left{align-items:center;gap:8px;display:flex}.rp-title{color:var(--text-1);font-size:14px;font-weight:700}.rp-badge{background:var(--primary-dim);color:var(--primary);border-radius:8px;padding:1px 8px;font-family:Fira Code,monospace;font-size:10px}.rp-search-wrap{border-bottom:1px solid var(--border);flex-shrink:0;padding:10px 12px}.rp-search-input{border:1px solid var(--border);width:100%;color:var(--text-1);background:#ffffff0d;border-radius:8px;outline:none;padding:7px 11px;font-family:Fira Sans,sans-serif;font-size:12px;transition:border-color .15s}.rp-search-input:focus{border-color:var(--primary)}.rp-body{flex:1;padding:8px;overflow-y:auto}.rp-group{margin-bottom:12px}.rp-group-hd{text-transform:uppercase;letter-spacing:.09em;color:var(--text-3);border-bottom:1px solid var(--border);align-items:center;gap:6px;margin-bottom:6px;padding:3px 4px 8px;font-size:9.5px;font-weight:700;display:flex}.rp-group-dot{border-radius:2px;flex-shrink:0;width:8px;height:8px}.rp-row{border-radius:9px;align-items:center;gap:4px;margin-bottom:3px;padding:3px 4px 3px 3px;transition:background .12s;display:flex}.rp-row:hover{background:#ffffff0b}.rp-row:hover .rp-acts{display:flex}.rp-chip-wrap{flex:1;min-width:0;overflow:hidden}.rp-chip-wrap .r-chip{cursor:grab;width:100%}.rp-acts{flex-shrink:0;align-items:center;gap:3px;display:none}.rp-act{cursor:pointer;border:none;border-radius:5px;justify-content:center;align-items:center;width:22px;height:22px;transition:all .15s;display:flex}.rp-act-edit{color:var(--primary);background:#3b82f61f}.rp-act-edit:hover{background:#3b82f647}.rp-act-del{color:#ef4444;background:#ef44441a}.rp-act-del:hover{background:#ef444447}.rp-proj-tag{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:4px;flex-shrink:0;padding:2px 5px;font-size:9px;font-weight:700}.rp-proj-unassigned{color:var(--text-3);background:#64748b2e;border-color:#64748b40}.rp-toggle{z-index:399;border:1px solid var(--border);cursor:pointer;background:#0e1c38;border-right:none;border-radius:10px 0 0 10px;flex-direction:column;align-items:center;gap:8px;padding:16px 9px;transition:right .25s cubic-bezier(.4,0,.2,1),background .15s;display:flex;position:fixed;top:50%;right:0;transform:translateY(-50%)}.rp-toggle:hover{background:#152445}.rp-toggle.panel-open{right:300px}.rp-toggle-lbl{writing-mode:vertical-rl;color:var(--text-2);text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-weight:700}.rp-toggle-cnt{color:var(--primary);font-family:Fira Code,monospace;font-size:12px;font-weight:700}.pods-container{flex-direction:column;gap:26px;display:flex}.pod-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;overflow:hidden}.pod-header{border-bottom:1px solid var(--border);background:linear-gradient(135deg,#ffffff06 0%,#0000 100%);align-items:center;gap:14px;padding:18px 22px;display:flex;position:relative}.pod-header:before{content:"";height:3px;position:absolute;top:0;left:0;right:0}.pod-icon{color:#fff;letter-spacing:-.5px;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;font-family:Fira Code,monospace;font-size:12px;font-weight:800;display:flex}.pod-name{color:var(--text-1);font-family:Fira Code,monospace;font-size:19px;font-weight:700;line-height:1.2}.pod-desc{color:var(--text-2);margin-top:3px;font-size:11px}.pod-header-right{flex-shrink:0;align-items:center;gap:10px;margin-left:auto;display:flex}.pod-badge{background:var(--surface-2);border:1px solid var(--border);color:var(--text-2);white-space:nowrap;border-radius:8px;padding:4px 10px;font-family:Fira Code,monospace;font-size:11px}.pod-section{border-bottom:1px solid var(--border);padding:14px 22px}.pod-section:last-child{border-bottom:none}.pod-sec-title{text-transform:uppercase;letter-spacing:.11em;color:var(--text-3);align-items:center;gap:8px;margin-bottom:11px;font-size:9.5px;font-weight:700;display:flex}.pod-sec-count{background:var(--surface-2);color:var(--text-2);border-radius:6px;padding:1px 7px;font-family:Fira Code,monospace;font-size:9px}.pod-core-zone{border:2px dashed var(--border);border-radius:10px;flex-wrap:wrap;gap:8px;min-height:48px;padding:8px;transition:all .18s;display:flex}.pod-core-zone.dragover{background:#3b82f60a;border-color:#3b82f680}.pod-core-empty{color:var(--text-3);align-self:center;padding:6px 4px;font-size:11px}.customer-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;display:grid}.cust-slot{border:1px solid var(--border);background:#ffffff06;border-radius:12px;transition:border-color .18s,box-shadow .18s;overflow:hidden}.cust-slot:hover{border-color:var(--border-hover)}.cust-slot.fde-dragover{border-color:#f59e0b;box-shadow:0 0 0 2px #f59e0b2e}.cust-slot-head{border-bottom:1px solid var(--border);padding:10px 14px;position:relative}.cust-slot-stripe{height:2px;position:absolute;top:0;left:0;right:0}.cust-client{text-transform:uppercase;letter-spacing:.1em;margin-top:1px;font-size:10px;font-weight:800}.cust-solution{color:var(--text-1);margin-top:2px;font-size:11.5px;font-weight:600;line-height:1.3}.cust-dates{color:var(--text-3);margin-top:4px;font-family:Fira Code,monospace;font-size:9.5px}.cust-slot-body{padding:12px 14px}.fde-zone{background:#f59e0b06;border:2px dashed #f59e0b4d;border-radius:10px;min-height:72px;padding:10px 12px;transition:all .18s}.fde-zone.has-fde{background:#f59e0b0a;border-style:solid;border-color:#f59e0b66}.fde-zone.dragover-fde{background:#f59e0b1a;border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b26}.fde-zone-label{text-transform:uppercase;letter-spacing:.12em;color:#f59e0b;opacity:.85;align-items:center;gap:5px;margin-bottom:8px;font-size:8.5px;font-weight:800;display:flex}.fde-empty-hint{color:var(--text-3);text-align:center;justify-content:center;align-items:center;gap:6px;padding:6px 0;font-size:10.5px;display:flex}.fde-chip{cursor:grab;-webkit-user-select:none;user-select:none;background:#f59e0b24;border:1px solid #f59e0b61;border-radius:10px;align-items:center;gap:9px;width:100%;padding:9px 13px 9px 9px;transition:all .18s;display:flex}.fde-chip:hover{background:#f59e0b38;transform:translateY(-1px);box-shadow:0 4px 16px #f59e0b2e}.fde-chip:active{cursor:grabbing}.fde-chip.is-dragging{opacity:.2}.fde-av{color:#f59e0b;text-transform:uppercase;background:#f59e0b47;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:flex}.fde-info{flex:1;min-width:0}.fde-name{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:700;overflow:hidden}.fde-role-tag{color:#f59e0bb3;margin-top:1px;font-size:9px}.fde-remove{cursor:pointer;color:#f59e0b99;background:#0003;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;transition:all .15s;display:flex}.fde-remove:hover{color:#ef4444;background:#ef44444d}.fde-shared-warn{color:#f97316;opacity:.85;align-items:center;gap:4px;margin-top:6px;font-size:9px;display:flex}.pod-avail{margin-top:10px}.pod-avail-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin-bottom:6px;font-size:9px;font-weight:700}.pod-avail-chips{flex-wrap:wrap;gap:6px;display:flex}.pod-avail-chip{cursor:grab;-webkit-user-select:none;user-select:none;border:1px solid #ffffff1a;border-radius:16px;align-items:center;gap:5px;padding:3px 9px 3px 5px;font-size:10px;transition:transform .15s,box-shadow .15s,opacity .15s;display:flex}.pod-avail-chip:hover{transform:translateY(-1px);box-shadow:0 3px 10px #0000004d}.pod-avail-chip:active{cursor:grabbing}.pod-avail-chip.is-dragging{opacity:.2}.pa-av{color:#000000b3;background:#fff3;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:6.5px;font-weight:800;display:flex}.pa-name{color:#ffffffe6;white-space:nowrap;font-weight:600}body.is-dragging .fde-zone:not(.has-fde){border-color:#f59e0b80;animation:1.4s ease-in-out infinite pulse-fde}@keyframes pulse-fde{0%,to{box-shadow:none}50%{box-shadow:0 0 0 4px #f59e0b1a}}
