html,body,#root{-webkit-font-smoothing:antialiased;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden}.ctx-menu{z-index:9999;-webkit-user-select:none;user-select:none;background:#1a2636;border:1px solid #2d3f52;border-radius:8px;min-width:180px;padding:4px 0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;position:fixed;box-shadow:0 8px 24px #00000073,0 2px 8px #0000004d}.ctx-menu-item{text-align:left;color:#c8d8e8;cursor:pointer;background:0 0;border:none;border-radius:0;width:100%;padding:8px 14px;font-family:inherit;font-size:13px;transition:background .1s,color .1s;display:block}.ctx-menu-item:hover{color:#fff;background:#7eb8f724}.ctx-menu-item.danger{color:#f87171}.ctx-menu-item.danger:hover{color:#fca5a5;background:#ef444426}.timeline-container{background:#f8f9fa;flex-direction:column;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;display:flex;overflow:hidden}.timeline-scroll{flex:1;overflow:auto}.timeline-header{z-index:10;color:#fff;-webkit-user-select:none;user-select:none;background:#1e2a3a;border-bottom:2px solid #0d1b2a;min-width:max-content;position:sticky;top:0}.timeline-header-row,.timeline-header-spans{display:flex}.timeline-span-cell{box-sizing:border-box;border-right:1px solid #2d3f52;justify-content:center;align-items:center;height:28px;padding:0 8px;display:flex;overflow:hidden}.span-label{color:#7eb8f7;letter-spacing:.5px;white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:700;overflow:hidden}.span-gap{background:0 0;border-right:1px solid #1a2d3e}.span-range{background:#2563eb26;border-right:1px solid #2d4f6e}.span-range .span-label{color:#93c5fd}.timeline-header-weeks{display:flex}.timeline-week-cell{box-sizing:border-box;border-right:1px solid #2d3f52;flex-direction:column;justify-content:center;align-items:center;padding:5px 4px;display:flex}.week-label{color:#7eb8f7;letter-spacing:.5px;font-size:11px;font-weight:700}.week-date{color:#a0b4c8;margin-top:1px;font-size:10px}.timeline-day-row{border-top:1px solid #2d3f52}.timeline-header-days{display:flex}.timeline-day-cell{color:#6a8099;box-sizing:border-box;letter-spacing:.3px;border-right:1px solid #1e2d3d;justify-content:center;align-items:center;height:20px;font-size:9px;font-weight:600;display:flex}.timeline-day-cell.weekend{color:#4a6070;background:#0000001f}.timeline-header .timeline-lane-label{gap:6px}.save-btn{color:#7eb8f7;cursor:pointer;background:#1a2e42;border:1px solid #2d3f52;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:background .15s,color .15s,border-color .15s;display:flex}.save-btn:hover:not(:disabled){color:#b8d8f8;background:#1e4068;border-color:#5a90c0}.save-btn:disabled{color:#2d3f52;cursor:default;background:0 0;border-color:#1e2d3d}.swimlane-group-section{display:flex}.swimlane-group-section:not(:last-child){border-bottom:1px solid #dee2e8}.group-swimlanes .swimlane-row:last-child{border-bottom:none}.group-bar{z-index:6;cursor:pointer;-webkit-user-select:none;user-select:none;box-sizing:border-box;background:#111c2a;border-right:2px solid #0d1b2a;flex-shrink:0;justify-content:center;align-items:center;width:36px;min-width:36px;display:flex;position:sticky;left:0}.group-bar-label{writing-mode:vertical-rl;color:#7eb8f7;white-space:nowrap;text-overflow:ellipsis;max-height:120px;font-size:11px;font-weight:700;overflow:hidden;transform:rotate(180deg)}.group-bar:hover .group-bar-label{color:#b8d8fb}.group-bar-input{writing-mode:vertical-rl;color:#7eb8f7;cursor:text;background:0 0;border:none;border-left:1px solid #a0b4c880;outline:none;width:13px;height:80px;padding:0;font-family:inherit;font-size:11px;font-weight:700;transform:rotate(180deg)}.group-swimlanes{flex-direction:column;flex:1;min-width:0;display:flex}.timeline-lane-label{color:#fff;box-sizing:border-box;z-index:5;touch-action:none;background:#1e2a3a;border-right:2px solid #0d1b2a;flex-shrink:0;align-items:center;padding:0 14px;font-weight:600;display:flex;position:sticky;left:36px}.timeline-header .timeline-lane-label{left:0}.lane-label-input{color:#fff;cursor:text;background:0 0;border:none;border-bottom:1px solid #fff9;outline:none;width:100%;padding:0;font-family:inherit;font-size:13px;font-weight:600}.timeline-body{flex-direction:column;min-width:max-content;display:flex;position:relative}.swimlane-row{border-bottom:1px solid #dee2e8;min-height:64px;display:flex}.swimlane-row .timeline-lane-label{color:#fff;text-shadow:0 1px 2px #00000059;border-right:2px solid #00000040;font-size:13px}.swimlane-content{background-color:#fff;position:relative}.swimlane-row:nth-child(2n) .swimlane-content{background-color:#f1f4f8}.timeline-item{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;box-sizing:border-box;border-radius:6px;align-items:center;height:44px;padding:0 10px;transition:box-shadow .15s;display:flex;position:absolute;top:10px;overflow:visible;box-shadow:0 1px 4px #0000002e}.timeline-item:hover{box-shadow:0 3px 10px #00000040}.timeline-item.dragging{cursor:grabbing;opacity:.88;z-index:100;transition:none;transform:scale(1.02);box-shadow:0 6px 20px #0000004d}.timeline-item.selected{box-shadow:0 0 0 2px #fff,0 0 0 4px #2563eb,0 3px 10px #00000040}.timeline-item-title{color:#fff;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 2px #0000004d;flex:1;min-width:0;font-size:12px;font-weight:600;overflow:hidden}.timeline-item.editing{cursor:default;box-shadow:0 0 0 2px #fff9,0 4px 12px #00000040}.timeline-item-input{color:#fff;text-shadow:0 1px 2px #0000004d;cursor:text;background:0 0;border:none;border-bottom:1px solid #ffffffb3;outline:none;flex:1;min-width:0;padding:0;font-family:inherit;font-size:12px;font-weight:600}.resize-handle{cursor:ew-resize;z-index:20;touch-action:none;border-radius:6px;width:8px;height:100%;transition:background .12s;position:absolute;top:0}.resize-handle:hover{background:#00000040}.resize-handle-left{left:0}.resize-handle-right{right:0}.timeline-item.resizing{cursor:ew-resize;opacity:.88;transition:none}.timeline-item.ghost{opacity:.25;box-shadow:none;cursor:grabbing;pointer-events:none}.drag-clone{pointer-events:none;opacity:.92;z-index:150;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;height:44px;padding:0 10px;display:flex;position:absolute;transform:scale(1.02);box-shadow:0 8px 24px #00000059}.conn-handle{cursor:crosshair;z-index:10;touch-action:none;justify-content:center;align-items:center;width:20px;height:100%;display:flex;position:absolute;top:0}.conn-handle-right{right:-10px}.conn-handle-left{left:-10px}.conn-dot{opacity:0;pointer-events:none;background:#fff;border-radius:50%;width:10px;height:10px;transition:opacity .15s,transform .15s;transform:scale(.5);box-shadow:0 0 0 2px #7eb8f780,0 0 10px 4px #7eb8f7cc}.conn-handle-right:hover .conn-dot{opacity:1;transform:scale(1)}.conn-handle-left.hovered .conn-dot{opacity:1;transform:scale(1.2);box-shadow:0 0 0 3px #7eb8f7b3,0 0 16px 6px #7eb8f7}.timeline-item.conn-target{box-shadow:0 0 0 2px #7eb8f7cc,0 3px 12px #0003}.timeline-container.drawing-connection,.timeline-container.drawing-connection .timeline-item{cursor:crosshair}.swimlane-row .timeline-lane-label{cursor:grab}.swimlane-row.lane-dragging{opacity:.5;background:#1e2a3a66}.swimlane-row.drop-target .swimlane-content{outline-offset:-2px;background-color:#7eb8f714;outline:2px dashed #7eb8f780}.lane-drop-indicator{pointer-events:none;z-index:30;background:#7eb8f7;border-radius:2px;height:3px;position:absolute;left:0;right:0;box-shadow:0 0 8px 2px #7eb8f7b3}.confirm-overlay{z-index:1000;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-dialog{background:#1e2a3a;border:1px solid #2d3f52;border-radius:10px;flex-direction:column;gap:24px;min-width:320px;max-width:440px;padding:28px 32px 24px;display:flex;box-shadow:0 20px 60px #00000080}.confirm-message{color:#c8daf0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5}.confirm-actions{justify-content:flex-end;gap:10px;display:flex}.confirm-btn{cursor:pointer;border:1px solid #0000;border-radius:6px;padding:7px 18px;font-family:inherit;font-size:13px;font-weight:500;transition:background .15s,border-color .15s}.confirm-btn-cancel{color:#a0b4c8;background:0 0;border-color:#2d3f52}.confirm-btn-cancel:hover{color:#c8daf0;background:#253445;border-color:#4a6a8a}.confirm-btn-ok{color:#fff;background:#b91c1c;border-color:#b91c1c}.confirm-btn-ok:hover{background:#dc2626;border-color:#dc2626}.settings-overlay{z-index:1000;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-dialog{background:#1e2a3a;border:1px solid #2d3f52;border-radius:10px;flex-direction:column;width:520px;max-width:94vw;max-height:88vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex;box-shadow:0 20px 60px #00000080}.settings-header{border-bottom:1px solid #2d3f52;justify-content:space-between;align-items:center;padding:18px 24px 16px;display:flex}.settings-title{color:#e8f0fa;letter-spacing:-.2px;font-size:15px;font-weight:700}.settings-close-btn{color:#6a8099;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:background .12s,color .12s;display:flex}.settings-close-btn:hover{color:#c8daf0;background:#ffffff14}.settings-body{flex-direction:column;gap:20px;padding:20px 24px 24px;display:flex;overflow-y:auto}.settings-section-title{text-transform:uppercase;letter-spacing:.9px;color:#4a6080;margin-bottom:14px;font-size:10px;font-weight:700}.settings-options{flex-direction:column;gap:4px;display:flex}.settings-option{cursor:pointer;border-radius:7px;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;transition:background .12s;display:flex}.settings-option:hover{background:#7eb8f70d}.settings-option-text{flex-direction:column;gap:2px;display:flex}.settings-option-label{color:#c8daf0;font-size:13px;font-weight:600}.settings-option-desc{color:#4a6080;font-size:11px;line-height:1.4}.settings-date-row{gap:16px;display:flex}.settings-date-field{flex-direction:column;flex:1;gap:6px;display:flex}.settings-date-label{color:#6a8099;text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.settings-date-input{color:#c8daf0;cursor:pointer;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;box-sizing:border-box;background:#0d1b2a;border:1px solid #2d3f52;border-radius:6px;outline:none;width:100%;padding:8px 10px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .15s}.settings-date-input:hover{border-color:#4a6a8a}.settings-date-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33}.settings-toggle{cursor:pointer;background:#253445;border:1px solid #2d3f52;border-radius:10px;outline:none;flex-shrink:0;width:36px;height:20px;transition:background .2s,border-color .2s;position:relative}.settings-toggle:focus-visible{box-shadow:0 0 0 2px #7eb8f780}.settings-toggle.on{background:#2563eb;border-color:#2563eb}.settings-toggle-thumb{background:#4a6080;border-radius:50%;width:14px;height:14px;transition:transform .2s,background .2s;position:absolute;top:2px;left:2px}.settings-toggle.on .settings-toggle-thumb{background:#fff;transform:translate(16px)}.settings-section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.row-order-list{flex-direction:column;gap:4px;display:flex}.row-order-item{-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:7px;flex-direction:column;transition:border-color .12s,background .12s;display:flex}.row-order-item.drag-over{background:#2563eb12;border-color:#2563eb}.row-item-main{align-items:center;gap:8px;padding:8px 10px;display:flex}.row-order-item:not(.row-order-item--custom){flex-direction:row;align-items:center;gap:8px;padding:8px 10px}.row-drag-handle{cursor:grab;color:#3a5570;border-radius:3px;flex-shrink:0;align-items:center;padding:2px;transition:color .12s;display:flex}.row-drag-handle:hover{color:#7eb8f7}.row-drag-handle:active{cursor:grabbing}.row-item-label{color:#c8daf0;flex-shrink:0;font-size:13px;font-weight:600}.row-item-desc{color:#4a6080;flex:1;font-size:11px}.row-order-item--custom{background:#162030;border-color:#2d3f52;padding:0}.row-order-item--custom .row-item-main{box-sizing:border-box;width:100%}.ct-ranges-panel{border-top:1px solid #1e2d3e;flex-direction:column;gap:8px;margin-top:0;padding:10px 12px 12px 36px;display:flex}.ct-add-btn{color:#7eb8f7;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #2d3f52;border-radius:6px;align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:600;transition:background .12s,border-color .12s;display:flex}.ct-add-btn:hover{background:#7eb8f71a;border-color:#4a6a8a}.ct-empty{color:#4a6080;margin:0;padding:8px 0;font-size:12px}.ct-name-input{color:#c8daf0;background:#0d1b2a;border:1px solid #2d3f52;border-radius:6px;outline:none;flex:1;min-width:0;padding:6px 10px;font-family:inherit;font-size:13px;font-weight:600;transition:border-color .15s}.ct-name-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33}.ct-icon-btn{color:#4a6080;cursor:pointer;background:0 0;border:none;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:background .12s,color .12s;display:flex}.ct-expand-btn:hover{color:#7eb8f7;background:#7eb8f71f}.ct-delete-btn:hover:not(:disabled){color:#ef4444;background:#dc262626}.ct-delete-btn:disabled{opacity:.3;cursor:not-allowed}.ct-ranges{flex-direction:column;gap:8px;display:flex}.ct-range-row{align-items:center;gap:6px;display:flex}.ct-range-name{color:#c8daf0;background:#0d1b2a;border:1px solid #2d3f52;border-radius:6px;outline:none;flex:1;min-width:0;padding:6px 8px;font-family:inherit;font-size:12px;transition:border-color .15s}.ct-range-name:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33}.ct-range-date{width:118px;min-width:118px;padding:6px;font-size:12px}.ct-range-sep{color:#4a6080;flex-shrink:0;font-size:12px}.ct-add-range-btn{color:#4a6080;cursor:pointer;background:0 0;border:1px dashed #2d3f52;border-radius:6px;align-self:flex-start;align-items:center;gap:5px;padding:5px 8px;font-size:11px;font-weight:600;transition:background .12s,border-color .12s,color .12s;display:flex}.ct-add-range-btn:hover{color:#7eb8f7;background:#7eb8f712;border-color:#4a6a8a}.zoom-slider-track{cursor:pointer;touch-action:none;align-items:center;width:140px;height:20px;display:flex;position:relative}.zoom-slider-rail{pointer-events:none;background:#2d3f52;border-radius:2px;height:4px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.zoom-slider-marker{pointer-events:none;background:#c8daf0;border-radius:1px;width:2px;height:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.zoom-slider-thumb{cursor:grab;background:#7eb8f7;border:2px solid #0d1b2a;border-radius:50%;outline:none;width:14px;height:14px;position:absolute;top:50%;transform:translate(-50%,-50%)}.zoom-slider-thumb:active{cursor:grabbing}.zoom-slider-thumb:focus-visible{box-shadow:0 0 0 3px #7eb8f766}.login-page{box-sizing:border-box;background:#0d1b2a;justify-content:center;align-items:center;min-height:100vh;padding:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex}.login-card{background:#1e2a3a;border:1px solid #2d3f52;border-radius:14px;width:100%;max-width:400px;padding:40px 40px 36px;box-shadow:0 24px 64px #00000080}.login-logo{align-items:center;gap:10px;margin-bottom:32px;display:flex}.login-logo-text{color:#e8f0fa;letter-spacing:-.4px;font-size:20px;font-weight:800}.login-heading{color:#e8f0fa;letter-spacing:-.3px;margin:0 0 8px;font-size:22px;font-weight:700}.login-subheading{color:#6a8099;margin:0 0 28px;font-size:14px;line-height:1.5}.login-subheading strong{color:#a0b8d0;font-weight:600}.login-form{flex-direction:column;display:flex}.login-field{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.login-label{color:#6a8099;text-transform:uppercase;letter-spacing:.6px;font-size:12px;font-weight:600}.login-input{color:#e8f0fa;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0d1b2a;border:1px solid #2d3f52;border-radius:8px;outline:none;padding:12px 14px;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}.login-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb33}.login-input:disabled{opacity:.5}.login-input::placeholder{color:#3a5570}.login-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;margin-top:4px;padding:13px;font-family:inherit;font-size:15px;font-weight:600;transition:background .15s,opacity .15s}.login-btn:hover:not(:disabled){background:#1d4ed8}.login-btn:disabled{opacity:.55;cursor:not-allowed}.login-error{color:#f87171;background:#f8717114;border:1px solid #f8717133;border-radius:6px;margin:0 0 14px;padding:10px 14px;font-size:13px;line-height:1.4}.login-verifying{color:#6a8099;text-align:center;margin:0 0 14px;font-size:13px}.login-digits{justify-content:center;gap:10px;margin-bottom:20px;display:flex}.login-digit{color:#e8f0fa;text-align:center;caret-color:#0000;background:#0d1b2a;border:1.5px solid #2d3f52;border-radius:8px;outline:none;flex-shrink:0;width:48px;height:58px;font-family:inherit;font-size:24px;font-weight:700;transition:border-color .15s,box-shadow .15s}.login-digit:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb33}.login-digit.filled{color:#7eb8f7;border-color:#4a7abf}.login-digit:disabled{opacity:.5}.login-resend-row{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.login-back-btn,.login-resend-btn{cursor:pointer;background:0 0;border:none;padding:4px 0;font-family:inherit;font-size:13px;transition:color .12s}.login-back-btn{color:#4a6080}.login-back-btn:hover:not(:disabled){color:#7eb8f7}.login-resend-btn{color:#7eb8f7;font-weight:600}.login-resend-btn:hover:not(:disabled){color:#b8d8f8}.login-resend-btn:disabled,.login-back-btn:disabled{opacity:.5;cursor:not-allowed}@media (width<=480px){.login-card{padding:32px 24px 28px}.login-digit{width:42px;height:52px;font-size:22px}.login-digits{gap:8px}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;overflow:hidden}.app{background:#f0f2f5;flex-direction:column;height:100%;display:flex}.app-header{color:#fff;background:#0d1b2a;border-bottom:2px solid #7eb8f7;flex-shrink:0;align-items:center;gap:16px;padding:12px 24px;display:flex}.app-header-spacer{flex:1}.app-user-email{color:#4a6080;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;max-width:200px;font-size:12px;overflow:hidden}.settings-btn{color:#6a8099;cursor:pointer;background:0 0;border:1px solid #2d3f52;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:background .15s,color .15s,border-color .15s;display:flex}.settings-btn:hover{color:#a0c4e8;background:#1a2e42;border-color:#5a90c0}.app-header h1{letter-spacing:-.5px;color:#7eb8f7;font-size:22px;font-weight:700}.app-header-divider{background:#2d3f52;flex-shrink:0;width:1px;height:20px}.plan-title{color:#c8daf0;cursor:default;-webkit-user-select:none;user-select:none;font-size:18px;font-weight:500}.plan-title:hover{color:#e8f0fa}.plan-title-input{color:#c8daf0;background:0 0;border:none;border-bottom:1px solid #4a6a8a;outline:none;width:100ch;padding:0;font-family:inherit;font-size:18px;font-weight:500}.app-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.app-footer{color:#fff;background:#0d1b2a;border-top:2px solid #7eb8f7;flex-shrink:0;align-items:center;padding:8px 24px;display:flex}.zoom-control{align-items:center;gap:8px;margin-left:auto;display:flex}.zoom-btn{color:#a0c4e8;cursor:pointer;background:0 0;border:1px solid #2d3f52;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:14px;line-height:1;transition:background .15s,color .15s,border-color .15s;display:flex}.zoom-btn:hover:not(:disabled){color:#e8f0fa;background:#1a2e42;border-color:#5a90c0}.zoom-btn:disabled{color:#3d4f61;cursor:default}.zoom-value{color:#c8daf0;-webkit-user-select:none;user-select:none;text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;width:34px;font-size:11px;font-weight:500}
