:root{--cal-hour-height:60px;--cal-grid-line:#ffffff26;--cal-even-bg:#ffffff08;--cal-week-col-border:var(--border);--cal-sidebar-bg:transparent;--cal-picker-bg:var(--bg2,#1e1e23);--cal-picker-border:var(--border,#ffffff1a);--cal-picker-shadow:0 8px 32px #00000080;--cal-cell-bg:#ffffff08;--cal-cell-border:#ffffff0d;--cal-cell-hover-bg:#ffffff0f;--cal-cell-hover-border:#ffffff1f;--cal-other-day-num:#3a3a3e;--cal-yp-color:var(--text,#e8e8ec);--cal-yp-nav-bg:#ffffff0f;--cal-yp-nav-border:#ffffff1a;--cal-yp-nav-color:var(--text,#e8e8ec);--cal-yp-nav-hover-bg:#ffffff1f;--cal-yp-month-bg:#ffffff0a;--cal-yp-month-color:var(--text,#d0d0d4);--cal-yp-month-hover-bg:#ffffff14;--cal-yp-month-hover-border:transparent;--cal-yp-current-bg:#3b82f626;--cal-yp-current-border:#3b82f64d;--cal-yp-current-color:var(--blue,#3b82f6)}.cal-page{-webkit-user-select:none;user-select:none;flex-direction:column;height:100%;padding:20px;display:flex;position:relative}.cal-toast{z-index:9999;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:12px;padding:10px 24px;font-size:14px;font-weight:600;animation:.3s cal-slide-down;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #0006}.cal-toast.success{color:#10b981;background:#10b98133;border:1px solid #10b98166}.cal-toast.error{color:#ef4444;background:#ef444433;border:1px solid #ef444466}@keyframes cal-slide-down{0%{opacity:0;transform:translate(-50%)translateY(-20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.cal-topbar{flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.cal-nav-left{align-items:center;gap:8px;display:flex}.cal-nav-right{align-items:center;gap:12px;display:flex}.cal-nav-btn{color:#e8e8ec;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;transition:all .15s;display:flex}.cal-nav-btn:hover{background:#ffffff1f;border-color:#fff3}.cal-title{letter-spacing:-.3px;text-align:center;color:#fff;min-width:200px;font-size:20px;font-weight:700}.cal-today-btn{color:#3b82f6;cursor:pointer;background:#3b82f626;border:1px solid #3b82f64d;border-radius:8px;padding:4px 14px;font-size:12px;font-weight:600;transition:all .15s}.cal-today-btn:hover{background:#3b82f640}.cal-view-switcher{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff14;border-radius:10px;gap:1px;padding:3px;display:flex}.cal-view-btn{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:4px;padding:6px 12px;font-size:11px;font-weight:600;transition:all .2s;display:flex}.cal-view-btn.active{color:#3b82f6;background:#3b82f633}.cal-view-btn:hover:not(.active){color:#a0a0a8}.cal-add-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:10px;padding:7px 16px;font-size:12px;font-weight:600;transition:all .2s}.cal-add-btn:hover{transform:translateY(-1px);box-shadow:0 4px 15px #3b82f64d}.cal-legend{flex-wrap:wrap;flex-shrink:0;gap:16px;margin-bottom:12px;display:flex}.cal-legend-item{color:#a0a0a8;align-items:center;gap:5px;font-size:11px;display:flex}.cal-legend-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.cal-viewport{flex:1;min-height:0;overflow:auto}.cal-loading{color:#6b7280;justify-content:center;align-items:center;height:100%;font-size:14px;display:flex}.cal-month-grid{flex-direction:column;height:100%;display:flex}.cal-month-header-row{grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:2px;display:grid}.cal-month-day-header{text-align:center;color:#6b7280;letter-spacing:.5px;text-transform:uppercase;padding:6px 0;font-size:11px;font-weight:600}.cal-month-body{flex:1;grid-template-columns:repeat(7,1fr);align-content:start;gap:2px;display:grid}.cal-day-cell{background:var(--cal-cell-bg);border:1px solid var(--cal-cell-border);cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:10px;flex-direction:column;min-height:90px;padding:4px;transition:all .15s;display:flex}.cal-day-other{background:#ffffff03;border-color:#ffffff05}.cal-day-other .cal-day-num{color:var(--cal-other-day-num)}.cal-day-other:hover{background:#ffffff08}.cal-day-today{background:#3b82f60f;border-color:#3b82f666}.cal-day-empty{visibility:hidden;background:0 0;border-color:#0000;margin:0;padding:0;overflow:hidden}.cal-day-num{color:#e8e8ec;flex-shrink:0;margin-bottom:1px;font-size:13px;font-weight:600}.cal-day-events{flex-direction:column;flex:1;gap:1px;min-height:0;display:flex;overflow:hidden}.cal-day-event-pill{color:#e8e8ec;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;flex-shrink:0;max-height:18px;padding:1px 4px;font-size:10px;line-height:1.3;overflow:hidden}.cal-day-more{color:#6b7280;cursor:pointer;padding:1px 4px;font-size:10px}.cal-day-view{flex-direction:column;height:100%;display:flex}.cal-day-view-header{text-align:center;background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;margin-bottom:8px;padding:12px}.cal-day-view-header.cal-day-today{background:#3b82f614;border-color:#3b82f640}.cal-day-view-date{color:#fff;font-size:22px;font-weight:700;display:block}.cal-day-view-dayname{color:#a0a0a8;margin-top:3px;font-size:13px;font-weight:500;display:block}.cal-day-allday{background:#ffffff08;border:1px solid #ffffff0f;border-radius:10px;margin-bottom:8px;padding:8px 12px}.cal-day-allday-label{color:#6b7280;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.cal-day-timeline{flex:1;overflow:auto}.cal-day-hour{cursor:pointer;min-height:48px;transition:background .1s;display:flex}.cal-day-hour:hover,.cal-day-hour-now{background:#3b82f608}.cal-day-hour-label{color:#6b7280;border-top:1px solid #ffffff0d;flex-shrink:0;width:60px;padding:4px 8px;font-size:11px}.cal-day-hour-content{border-top:1px solid #ffffff0d;flex:1;padding:2px 4px}.cal-day-event-block{cursor:pointer;border-radius:8px;margin-bottom:4px;padding:6px 10px;transition:all .15s}.cal-day-event-block:hover{transform:translate(2px)}.cal-day-event-header{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.cal-day-event-del{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px;font-size:12px;transition:all .15s}.cal-day-event-del:hover{color:#ef4444;background:#ef44441a}.cal-day-event-title-lg{color:#e8e8ec;font-size:14px;font-weight:600;display:block}.cal-day-event-desc{color:#a0a0a8;margin-top:2px;font-size:11px;display:block}.cal-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#0009;justify-content:center;align-items:center;animation:.2s cal-fade-in;display:flex;position:fixed;inset:0}@keyframes cal-fade-in{0%{opacity:0}to{opacity:1}}.cal-modal{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);background:#1e1e23f2;border:1px solid #ffffff1a;border-radius:20px;width:90%;max-width:480px;padding:24px;animation:.25s cal-modal-in;box-shadow:0 24px 80px #0009}@keyframes cal-modal-in{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.cal-modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.cal-modal-header h2{color:#fff;font-size:18px;font-weight:700}.cal-modal-close{color:#6b7280;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:8px;width:28px;height:28px;font-size:14px;transition:all .15s}.cal-modal-close:hover{color:#fff;background:#ffffff1f}.cal-modal-hint{color:#6b7280;margin-bottom:12px;font-size:12px;line-height:1.5}.cal-modal-hint em{color:#a0a0a8;font-style:italic}.cal-natural-input{color:#e8e8ec;resize:vertical;box-sizing:border-box;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;outline:none;width:100%;min-height:60px;padding:12px;font-family:inherit;font-size:14px;transition:border-color .2s}.cal-natural-input:focus{border-color:#3b82f666}.cal-natural-input::placeholder{color:#4a4a4e}.cal-modal-prefill{color:#60a5fa;background:#3b82f614;border:1px solid #3b82f626;border-radius:8px;margin-top:8px;padding:6px 10px;font-size:11px}.cal-submit-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:12px;width:100%;margin-top:12px;padding:10px;font-size:14px;font-weight:600;transition:all .2s}.cal-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 20px #3b82f64d}.cal-submit-btn:disabled{opacity:.5;cursor:not-allowed}.cal-confirm-modal-overlay{z-index:1001}.cal-confirm-modal p{text-align:center;color:#a0a0a8;margin-bottom:16px;font-size:14px}.cal-confirm-btns{justify-content:center;gap:8px;display:flex}.cal-confirm-cancel{color:#a0a0a8;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;padding:8px 20px;font-size:13px}.cal-confirm-delete{color:#ef4444;cursor:pointer;background:#ef444426;border:1px solid #ef44444d;border-radius:10px;padding:8px 20px;font-size:13px;font-weight:600}.cal-detail-modal{max-width:420px}.cal-detail-dayname{color:#6b7280;margin-left:8px;font-size:11px;font-weight:400;display:inline-block}.cal-detail-empty{text-align:center;color:#6b7280;padding:20px 0;font-size:14px}.cal-add-small-btn{color:#3b82f6;cursor:pointer;background:#3b82f61a;border:1px solid #3b82f64d;border-radius:8px;margin-top:12px;padding:6px 16px;font-size:12px;font-weight:600}.cal-detail-list{flex-direction:column;gap:8px;max-height:400px;display:flex;overflow-y:auto}.cal-detail-event{background:#ffffff08;border-radius:10px;padding:12px}.cal-detail-event-header{justify-content:space-between;align-items:flex-start;margin-bottom:4px;display:flex}.cal-detail-event-left{align-items:center;gap:8px;display:flex}.cal-detail-event-time{font-size:12px;font-weight:700}.cal-detail-event-cat{color:#6b7280;font-size:10px}.cal-detail-event-title{color:#e8e8ec;font-size:15px;font-weight:600}.cal-detail-event-desc{color:#6b7280;margin-top:4px;font-size:11px}.cal-detail-event-meta{color:#8b8b92;align-items:center;gap:4px;margin-top:3px;font-size:11px;display:flex}.cal-detail-event-url{color:#60a5fa;text-overflow:ellipsis;white-space:nowrap;max-width:280px;text-decoration:none;display:inline-block;overflow:hidden}.cal-detail-event-url:hover{text-decoration:underline}.cal-detail-event-cancelled{color:#ef4444;margin-top:3px;font-size:11px}.cal-detail-event-private{color:#8b5cf6;margin-top:3px;font-size:11px}.cal-detail-event-recur{color:#10b981;margin-top:3px;font-size:11px}.cal-detail-event-actions{align-items:center;gap:4px;display:flex}.cal-day-event-edit{color:#a0a0a8;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:11px;line-height:1;transition:all .15s;display:flex}.cal-day-event-edit:hover{color:#60a5fa;background:#3b82f61a}.cal-edit-modal{max-width:520px;max-height:80vh;overflow-y:auto}.cal-edit-form{flex-direction:column;gap:10px;display:flex}.cal-edit-label{color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;font-size:11px;font-weight:600;display:block}.cal-edit-input{color:#e8e8ec;box-sizing:border-box;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;outline:none;width:100%;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .2s}.cal-edit-input:focus{border-color:#3b82f666}.cal-edit-input::placeholder{color:#4a4a4e}.cal-edit-textarea{color:#e8e8ec;resize:vertical;box-sizing:border-box;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;outline:none;width:100%;min-height:60px;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .2s}.cal-edit-textarea:focus{border-color:#3b82f666}.cal-edit-select{color:#e8e8ec;box-sizing:border-box;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;outline:none;width:100%;padding:10px 12px;font-family:inherit;font-size:14px}.cal-edit-select:focus{border-color:#3b82f666}.cal-edit-select option{color:#e8e8ec;background:#1e1e23}.cal-edit-row{gap:10px;display:flex}.cal-edit-field{flex:1}.cal-datetime-group{gap:6px;display:flex}.cal-date-input{flex:3;min-width:0}.cal-time-input{flex:2;min-width:0}.cal-edit-check{color:#a0a0a8;cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.cal-edit-check input{cursor:pointer;accent-color:#3b82f6;width:16px;height:16px}.cal-edit-categories{flex-wrap:wrap;gap:6px;display:flex}.cal-edit-cat-btn{color:#a0a0a8;cursor:pointer;background:#ffffff08;border:1px solid #ffffff1a;border-radius:8px;padding:6px 12px;font-family:inherit;font-size:12px;transition:all .15s}.cal-edit-cat-btn:hover{background:#ffffff14}.cal-edit-cat-btn.active{font-weight:600}.cal-edit-actions{border-top:1px solid #ffffff0f;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:12px;display:flex}.cal-edit-actions .cal-submit-btn{width:auto;margin-top:0;padding:10px 24px}.cal-location-search{position:relative}.cal-location-spinner{pointer-events:none;font-size:14px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.cal-location-results{z-index:10;background:#1e1e23fa;border:1px solid #ffffff1a;border-radius:10px;max-height:200px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 32px #0006}.cal-location-result{cursor:pointer;border-bottom:1px solid #ffffff0d;padding:10px 12px;transition:background .1s}.cal-location-result:last-child{border-bottom:none}.cal-location-result:hover{background:#3b82f61a}.cal-location-result-name{color:#e8e8ec;font-size:13px;font-weight:600;display:block}.cal-location-result-detail{color:#6b7280;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:10px;display:block;overflow:hidden}.cal-fab{color:#fff;cursor:pointer;z-index:100;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:16px;justify-content:center;align-items:center;width:48px;height:48px;transition:all .2s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 32px #3b82f666}.cal-fab:hover{transform:scale(1.1)rotate(90deg);box-shadow:0 12px 40px #3b82f680}.cal-week-header-info{color:#e8e8ec;justify-content:space-between;align-items:center;margin-bottom:8px;padding:4px 2px;font-size:14px;font-weight:600;display:flex}.cal-week-number{color:#60a5fa;letter-spacing:.3px;background:#3b82f626;border:1px solid #3b82f640;border-radius:8px;padding:4px 14px;font-size:13px;font-weight:800}.cal-week-header-row{gap:3px;margin-bottom:3px;display:flex}.cal-week-header-spacer{flex-shrink:0;width:50px}.cal-week-col-header{text-align:center;cursor:pointer;background:#ffffff08;border:1px solid #ffffff0d;border-radius:10px;flex:1;padding:8px 4px;transition:all .15s}.cal-week-col-header:hover{background:#ffffff14}.cal-week-col-header.cal-day-today{background:#3b82f61a;border-color:#3b82f64d}.cal-week-col-dayname{color:#6b7280;text-transform:uppercase;letter-spacing:.3px;font-size:10px;font-weight:600;display:block}.cal-week-col-daynum{color:#e8e8ec;margin-top:2px;font-size:20px;font-weight:700;display:block}.cal-week-scroll{flex:1;min-height:0;overflow:auto}.cal-week-body{gap:3px;display:flex;position:relative}.cal-week-hours{flex-shrink:0;width:50px}.cal-week-hour-spacer{height:0}.cal-week-event{cursor:pointer;z-index:2;border-radius:6px;padding:2px 6px;font-size:10px;transition:all .1s;position:absolute;left:2px;right:2px;overflow:hidden}.cal-week-event:hover{opacity:.8}.cal-week-event-time{font-size:9px;font-weight:700;display:block}.cal-week-event-title{color:#e8e8ec;text-overflow:ellipsis;white-space:nowrap;font-size:9px;display:block;overflow:hidden}.cal-month-body{flex:1;grid-template-columns:repeat(7,1fr);grid-auto-rows:1fr;gap:3px;display:grid}.cal-day-cell{background:var(--cal-cell-bg);border:1px solid var(--cal-cell-border);cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:10px;flex-direction:column;min-height:0;padding:4px;transition:all .15s;display:flex;overflow:hidden}.cal-day-cell:hover{background:var(--cal-cell-hover-bg);border-color:var(--cal-cell-hover-border);transform:translateY(-1px)}.cal-day-empty{background:0 0;border-color:#0000;height:0;min-height:0;margin:0;padding:0}.cal-cal-switcher{position:relative}.cal-cal-switcher-btn{color:#e8e8ec;cursor:pointer;white-space:nowrap;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;padding:8px 14px;font-family:inherit;font-size:13px;transition:background .15s}.cal-cal-switcher-btn:hover{background:#ffffff1a}.cal-cal-dropdown{z-index:50;background:#1e1e23fa;border:1px solid #ffffff1a;border-radius:10px;min-width:220px;margin-top:4px;padding:6px;position:absolute;top:100%;left:0;box-shadow:0 8px 32px #0006}.cal-cal-item{cursor:pointer;color:#d0d0d4;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;transition:background .1s;display:flex}.cal-cal-item:hover{background:#ffffff0f}.cal-cal-item.active{color:#fff;background:#3b82f61f}.cal-cal-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.cal-cal-del{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:auto;padding:2px 4px;font-size:12px}.cal-cal-del:hover{color:#ef4444;background:#ef44441a}.cal-cal-add-row{border-top:1px solid #ffffff0f;margin-top:4px;padding:6px 4px 0}.cal-cal-add-input{color:#e8e8ec;box-sizing:border-box;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;outline:none;width:100%;padding:8px 10px;font-family:inherit;font-size:13px}.cal-cal-add-input:focus{border-color:#3b82f666}.cal-cal-add-input::placeholder{color:#4a4a4e}.cal-search-container{position:relative}.cal-search-input-top{border:1px solid var(--border);background:var(--bg2);color:var(--text);border-radius:8px;outline:none;width:200px;padding:6px 12px;font-family:inherit;font-size:13px;transition:all .2s}.cal-search-input-top:focus{border-color:var(--blue);width:260px;box-shadow:0 0 0 2px #3b82f626}.cal-search-input-top::placeholder{color:var(--text3)}.cal-search-dropdown{z-index:50;background:#1e1e23fa;border:1px solid #ffffff1a;border-radius:12px;min-width:320px;max-height:400px;margin-top:4px;padding:8px;position:absolute;top:100%;right:0;overflow-y:auto;box-shadow:0 8px 32px #0006}.cal-search-reason{color:#6b7280;border-bottom:1px solid #ffffff0d;margin-bottom:4px;padding:4px 8px 8px;font-size:11px;font-style:italic}.cal-search-result{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;transition:background .1s;display:flex}.cal-search-result:hover{background:#ffffff0f}.cal-search-dot{border-radius:10px;flex-shrink:0;width:8px;height:8px}.cal-search-info{flex-direction:column;gap:2px;min-width:0;display:flex}.cal-search-title{color:#e8e8ec;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.cal-search-date{color:#6b7280;font-size:11px}.cal-search-loading,.cal-search-empty{text-align:center;color:#6b7280;padding:12px;font-size:13px}.cal-tags-container{flex-direction:column;gap:6px;display:flex}.cal-tags-list{flex-wrap:wrap;gap:4px;display:flex}.cal-tag{color:#60a5fa;background:#3b82f626;border:1px solid #3b82f640;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:500;display:inline-flex}.cal-tag-remove{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:10px;line-height:1}.cal-tag-remove:hover{color:#ef4444}.cal-tag-add-row{display:flex}.cal-tag-input{color:#a0a0a8;background:#ffffff0a;border:1px dashed #ffffff1f;border-radius:6px;outline:none;flex:1;padding:6px 10px;font-family:inherit;font-size:12px}.cal-tag-input:focus{color:#e8e8ec;border-style:solid;border-color:#3b82f64d}.cal-tag-input::placeholder{color:#4a4a4e}.cal-event-tag-row{flex-wrap:wrap;gap:3px;margin-top:4px;display:flex}.cal-event-tag-sm{color:#60a5fa;background:#3b82f61f;border-radius:4px;padding:1px 6px;font-size:10px}.cal-detail-tags{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.cal-detail-tag{color:#60a5fa;background:#3b82f61f;border-radius:6px;padding:2px 8px;font-size:11px}.cal-detail-export-btn{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:14px;transition:color .15s}.cal-detail-export-btn:hover{color:#10b981;background:#10b9811a}.cal-day-event-bubble{cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;margin-bottom:2px;padding:2px 6px;font-size:11px;transition:opacity .15s;overflow:hidden}.cal-day-event-bubble:hover{opacity:.8}@keyframes cal-skeleton-pulse{0%{opacity:.4}50%{opacity:.7}to{opacity:.4}}.cal-skeleton-grid{grid-template-columns:repeat(7,1fr);gap:2px;padding:8px;display:grid}.cal-skeleton-col{flex-direction:column;gap:8px;display:flex}.cal-skeleton-header{background:#ffffff0d;border-radius:6px;height:24px;animation:1.5s ease-in-out infinite cal-skeleton-pulse}.cal-skeleton-line{background:#ffffff0a;border-radius:4px;height:16px;animation:1.8s ease-in-out infinite cal-skeleton-pulse}.cal-weekend-toggle{color:#6b7280;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff14;border-radius:6px;margin-left:4px;padding:2px 6px;font-size:12px;transition:all .15s}.cal-weekend-toggle:hover{color:#e8e8ec;background:#ffffff1a}.cal-weekend-toggle.collapsed{color:#60a5fa;border-color:#3b82f64d}.cal-weekend-col{background:#ffffff05}.cal-weekend-header{opacity:.6}.cal-edit-recur-info{color:#60a5fa;background:#3b82f60f;border:1px solid #3b82f626;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;display:flex}.cal-edit-delete-series-btn{color:#ef4444;cursor:pointer;background:#ef44441a;border:1px solid #ef444433;border-radius:6px;padding:4px 10px;font-family:inherit;font-size:11px;transition:all .15s}.cal-edit-delete-series-btn:hover{background:#ef444433}.cal-detail-event-actions{gap:4px;margin-left:auto;display:flex}.cal-detail-edit-btn{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:14px}.cal-detail-edit-btn:hover{color:#ef4444;background:#ef44441a}.cal-detail-add-bar{border-bottom:1px solid #ffffff0f;padding:8px 16px}.cal-detail-add-btn{color:#60a5fa;cursor:pointer;background:#3b82f614;border:1px dashed #3b82f640;border-radius:8px;width:100%;padding:8px;font-family:inherit;font-size:13px;transition:all .15s}.cal-detail-add-btn:hover{background:#3b82f626;border-style:solid}.cal-natural-toggle-btn{color:#6b7280;cursor:pointer;text-align:center;background:0 0;border:1px dashed #ffffff1f;border-radius:8px;padding:6px 12px;font-family:inherit;font-size:12px;transition:all .15s}.cal-natural-toggle-btn:hover{color:#60a5fa;border-color:#3b82f64d}.cal-natural-inline{background:#ffffff08;border:1px solid #ffffff0f;border-radius:8px;padding:8px}.cal-natural-inline .cal-natural-input{margin-bottom:4px}.cal-natural-inline .cal-submit-btn{width:100%;margin-top:4px;font-size:12px}.cal-edit-field-with-emoji{flex-direction:column;gap:4px;display:flex}.cal-edit-input-row{align-items:flex-start;gap:6px;display:flex}.cal-edit-input-row input,.cal-edit-input-row textarea{flex:1}.cal-emoji-picker{flex-shrink:0;position:relative}.cal-emoji-btn{cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:18px;line-height:1;transition:all .15s;display:flex}.cal-emoji-btn:hover{background:#ffffff1a;border-color:#3b82f64d}.cal-emoji-popup{z-index:60;background:#1a1a1efa;border:1px solid #ffffff1a;border-radius:12px;width:280px;margin-top:4px;padding:8px;position:absolute;top:100%;right:0;box-shadow:0 8px 32px #00000080}.cal-emoji-cats{border-bottom:1px solid #ffffff0f;gap:4px;margin-bottom:8px;padding-bottom:6px;display:flex;overflow-x:auto}.cal-emoji-cat{cursor:pointer;opacity:.5;background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:18px;transition:all .15s}.cal-emoji-cat:hover{opacity:.8}.cal-emoji-cat.active{opacity:1;background:#ffffff14}.cal-emoji-grid{grid-template-columns:repeat(8,1fr);gap:2px;max-height:200px;display:grid;overflow-y:auto}.cal-emoji-item{cursor:pointer;text-align:center;background:0 0;border:none;border-radius:6px;padding:4px;font-size:22px;line-height:1;transition:background .1s}.cal-emoji-item:hover{background:#ffffff14}.cal-timepicker{flex:2;min-width:0;position:relative}.cal-timepicker-display{color:#e8e8ec;cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;justify-content:center;align-items:center;gap:2px;padding:10px 8px;font-family:inherit;font-size:14px;transition:border-color .2s;display:flex}.cal-timepicker-display:hover{border-color:#3b82f64d}.cal-timepicker-sep{opacity:.4;margin:0 1px}.cal-timepicker-chev{opacity:.5;margin-left:4px;font-size:8px}.cal-timepicker-popup{z-index:60;background:#1a1a1efa;border:1px solid #ffffff1f;border-radius:12px;align-items:center;gap:8px;margin-top:4px;padding:12px;display:flex;position:absolute;top:100%;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #00000080}.cal-timepicker-col{flex-direction:column;align-items:center;gap:4px;display:flex}.cal-timepicker-arrow{color:#a0a0a8;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff14;border-radius:6px;justify-content:center;align-items:center;width:32px;height:24px;padding:0;font-size:10px;transition:all .15s;display:flex}.cal-timepicker-arrow:hover{color:#60a5fa;background:#3b82f626;border-color:#3b82f64d}.cal-timepicker-val{color:#e8e8ec;text-align:center;min-width:40px;padding:4px 8px;font-size:20px;font-weight:600}.cal-timepicker-colon{color:#6b7280;font-size:20px;font-weight:600}.cal-timepicker-presets{border-left:1px solid #ffffff0f;flex-direction:column;gap:3px;margin-left:4px;padding-left:8px;display:flex}.cal-timepicker-preset{color:#6b7280;cursor:pointer;font-variant-numeric:tabular-nums;text-align:center;background:0 0;border:1px solid #ffffff0f;border-radius:4px;padding:2px 8px;font-family:inherit;font-size:11px;transition:all .15s}.cal-timepicker-preset:hover{color:#60a5fa;border-color:#3b82f64d}.cal-timepicker-preset.active{color:#60a5fa;background:#3b82f61f;border-color:#3b82f64d}.cal-notify-btns{flex-wrap:wrap;gap:4px;display:flex}.cal-notify-btn{color:#6b7280;cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;border-radius:8px;padding:6px 12px;font-family:inherit;font-size:12px;transition:all .15s}.cal-notify-btn:hover{color:#a0a0a8;background:#ffffff14}.cal-notify-btn.active{color:#60a5fa;background:#3b82f61f;border-color:#3b82f64d;font-weight:500}[data-theme=light]{--cal-grid-line:#0000001f;--cal-even-bg:#00000005;--cal-week-col-border:#e0e0e0;--cal-sidebar-bg:#f8f9fa;--cal-picker-bg:#fff;--cal-picker-border:#e2e8f0;--cal-picker-shadow:0 8px 32px #0000001f;--cal-yp-color:#1a1a2e;--cal-yp-nav-bg:#f1f5f9;--cal-yp-nav-border:#e2e8f0;--cal-yp-nav-color:#1a1a2e;--cal-yp-nav-hover-bg:#e2e8f0;--cal-yp-month-bg:#f8fafc;--cal-yp-month-color:#334155;--cal-yp-month-hover-bg:#f1f5f9;--cal-yp-month-hover-border:#e2e8f0;--cal-yp-current-bg:#3b82f61a;--cal-yp-current-border:#3b82f64d;--cal-yp-current-color:#2563eb;--cal-cell-bg:#00000005;--cal-cell-border:#00000014;--cal-cell-hover-bg:#0000000a;--cal-cell-hover-border:#00000026;--cal-other-day-num:#bbb}.cal-week-view{display:flex;position:relative;overflow:hidden}.cal-week-body{flex:1;max-height:calc(100vh - 180px);display:flex;position:relative;overflow:hidden auto}.cal-week-time-labels{flex-shrink:0;width:60px;padding-top:40px;position:relative}.cal-week-time-label{height:var(--cal-hour-height);color:var(--text3);text-align:right;border-top:1px solid var(--cal-grid-line);padding-right:8px;font-size:11px;line-height:1;position:relative;top:-6px}.cal-week-day-columns{flex:1;display:flex;position:relative;overflow:hidden}.cal-week-day-col{min-height:calc(24 * var(--cal-hour-height));border-left:1px solid var(--cal-week-col-border);flex:1;position:relative}.cal-week-day-header{text-align:center;color:var(--text2);background:var(--bg);z-index:5;border-bottom:1px solid var(--border);white-space:nowrap;padding:8px 4px;font-size:12px;font-weight:500;position:sticky;top:0}.cal-week-day-header .cal-week-day-num{color:var(--text);margin-top:2px;font-size:16px;font-weight:700;display:block}.cal-week-day-header.cal-week-day-header-today .cal-week-day-num{color:var(--blue)}.cal-week-hour-row{border-bottom:1px solid var(--cal-grid-line);pointer-events:none;z-index:1}.cal-week-hour-row:nth-child(2n){background:var(--cal-even-bg)}.cal-week-current-time{background:var(--red);z-index:3;pointer-events:none;height:2px;position:absolute;left:0;right:0}.cal-week-current-time:before{content:"";background:var(--red);border:2px solid var(--bg);border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;left:-5px}.cal-week-event{cursor:pointer;z-index:2;border-radius:6px;min-height:20px;padding:4px 6px;font-size:11px;line-height:1.3;transition:box-shadow .15s,transform .1s;position:absolute;left:2px;right:2px;overflow:hidden}.cal-week-event:hover{z-index:4;transform:translateY(-1px);box-shadow:0 2px 8px #0003}.cal-week-event-title{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.cal-week-event-time{opacity:.8;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.cal-day-view{gap:12px;display:flex;position:relative}.cal-day-body{flex:1;min-width:0;position:relative}.cal-day-column{min-height:calc(24 * var(--cal-hour-height));position:relative}.cal-day-event{cursor:pointer;z-index:2;border-radius:8px;padding:8px 10px;font-size:13px;line-height:1.4;transition:box-shadow .15s;position:absolute;left:60px;right:8px;overflow:hidden}.cal-day-event:hover{z-index:4;box-shadow:0 3px 12px #00000040}.cal-day-event-title{margin-bottom:2px;font-size:14px;font-weight:600}.cal-day-event-time{opacity:.8;font-size:12px}.cal-day-event-desc{opacity:.7;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:4px;font-size:12px;display:-webkit-box;overflow:hidden}.cal-day-sidebar{background:var(--cal-sidebar-bg);flex-shrink:0;width:300px;max-height:calc(100vh - 180px);padding:0 4px;overflow-y:auto}.cal-day-sidebar-title{color:var(--text2);border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:8px;font-size:14px;font-weight:600}.cal-day-sidebar-event{background:var(--bg2);border:1px solid var(--border);cursor:pointer;border-radius:8px;margin-bottom:8px;padding:10px 12px;transition:background .15s}.cal-day-sidebar-event:hover{background:var(--card-hover)}.cal-day-sidebar-event-time{color:var(--text3);margin-bottom:4px;font-size:11px}.cal-day-sidebar-event-title{color:var(--text);font-size:13px;font-weight:500}.cal-day-sidebar-event-desc{color:var(--text2);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11px;overflow:hidden}.cal-day-view .cal-week-day-col{position:relative}.cal-year-view{grid-template-columns:repeat(4,1fr);gap:16px;padding:8px 0;display:grid}.cal-year-month{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:8px}.cal-year-month-title{text-align:center;cursor:pointer;border-radius:4px;margin-bottom:8px;padding:4px;font-size:14px;font-weight:600;transition:color .15s}.cal-year-month-title:hover{color:var(--blue)}.cal-year-grid{grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.cal-year-weekday-label,.cal-year-month-day-header{text-align:center;color:var(--text3);text-transform:uppercase;padding:2px 0;font-size:9px;font-weight:500}.cal-year-day{text-align:center;cursor:pointer;color:var(--text);border-radius:3px;padding:2px;font-size:10px;transition:background .1s}.cal-year-day:hover{background:var(--bg3)}.cal-year-day-today{background:var(--blue);color:#fff;border-radius:50%;font-weight:700}.cal-year-day-today:hover{background:var(--blue);opacity:.9}.cal-year-day-other{color:var(--text3)}.cal-year-event-dots{justify-content:center;gap:2px;margin-top:1px;display:flex}.cal-year-event-dot{border-radius:50%;width:5px;height:5px;margin:0 1px;display:inline-block}.cal-year-month-day-header{text-align:center;color:var(--text3);text-transform:uppercase;padding:2px 0;font-size:9px;font-weight:500}.cal-year-month-picker{z-index:50;background:var(--cal-picker-bg);border:1px solid var(--cal-picker-border);min-width:200px;box-shadow:var(--cal-picker-shadow);border-radius:12px;margin-top:6px;padding:12px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.cal-yp-year-row{justify-content:center;align-items:center;gap:12px;margin-bottom:10px;display:flex}.cal-yp-year{color:var(--cal-yp-color);text-align:center;min-width:60px;font-size:16px;font-weight:600}.cal-yp-nav{background:var(--cal-yp-nav-bg);border:1px solid var(--cal-yp-nav-border);color:var(--cal-yp-nav-color);cursor:pointer;border-radius:6px;padding:4px 10px;font-size:16px;line-height:1;transition:background .15s}.cal-yp-nav:hover{background:var(--cal-yp-nav-hover-bg)}.cal-yp-month-grid{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.cal-yp-month-btn{background:var(--cal-yp-month-bg);color:var(--cal-yp-month-color);cursor:pointer;text-align:center;border:1px solid #0000;border-radius:6px;padding:6px 4px;font-family:inherit;font-size:12px;transition:all .12s}.cal-yp-month-btn:hover{background:var(--cal-yp-month-hover-bg);border-color:var(--cal-yp-month-hover-border)}.cal-yp-current{background:var(--cal-yp-current-bg);border-color:var(--cal-yp-current-border);color:var(--cal-yp-current-color);font-weight:600}.cal-dragging{opacity:.5;cursor:grabbing}.cal-drag-over{opacity:.1;background:var(--blue)!important}[draggable=true]{cursor:grab}[draggable=true]:active{cursor:grabbing}.cal-drop-zone{min-height:20px;transition:background .2s}.cal-drop-indicator{background:var(--blue);pointer-events:none;border-radius:2px;height:3px;margin:2px 0}.cal-weekend-collapsed .cal-month-body .cal-day-cell:nth-child(7n),.cal-weekend-collapsed .cal-month-body .cal-day-cell:nth-child(7n-1),.cal-weekend-collapsed .cal-month-day-header:nth-child(7),.cal-weekend-collapsed .cal-month-day-header:nth-child(6){opacity:0!important;border:none!important;flex:0!important;width:0!important;min-width:0!important;max-width:0!important;padding:0!important;overflow:hidden!important}.cal-weekend-toggle-btn{background:var(--bg3);cursor:pointer;border:1px solid var(--border);color:var(--text2);white-space:nowrap;border-radius:4px;padding:2px 8px;font-family:inherit;font-size:11px;transition:all .2s}.cal-weekend-toggle-btn:hover{background:var(--card-hover)}.cal-weekend-toggle-btn .cal-weekend-toggle-icon{transition:transform .3s;display:inline-block}.cal-weekend-toggle-btn.cal-weekend-collapsed .cal-weekend-toggle-icon{transform:rotate(180deg)}.cal-stats-modal{width:700px;max-width:90vw;max-height:80vh;overflow-y:auto}.cal-stats-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.cal-stats-card{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:16px}.cal-stats-card-full{grid-column:1/-1}.cal-stats-card-title{color:var(--text2);margin-bottom:12px;font-size:14px;font-weight:600}.cal-pie-chart{width:200px;height:200px;margin:0 auto;position:relative}.cal-pie-chart-svg{width:100%;height:100%;transform:rotate(-90deg)}.cal-pie-segment{cursor:pointer;transition:opacity .2s}.cal-pie-segment:hover{opacity:.8}.cal-pie-center-text{text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cal-pie-center-value{color:var(--text);font-size:24px;font-weight:700;line-height:1}.cal-pie-center-label{color:var(--text3);margin-top:2px;font-size:10px}.cal-bar-chart{align-items:flex-end;gap:4px;height:150px;padding:0 8px;display:flex}.cal-bar-wrapper{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:12px;height:100%;display:flex}.cal-bar{cursor:pointer;border-radius:4px 4px 0 0;width:100%;min-width:12px;transition:height .5s;position:relative}.cal-bar:hover{opacity:.85}.cal-bar-label{text-align:center;color:var(--text3);white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin-top:4px;font-size:10px;overflow:hidden}.cal-bar-value{text-align:center;color:var(--text2);margin-bottom:2px;font-size:10px;font-weight:500}.cal-stats-total{text-align:center;color:var(--text);font-size:24px;font-weight:700}.cal-stats-total-label{color:var(--text3);text-align:center;margin-top:2px;font-size:12px}.cal-stats-row{border-bottom:1px solid var(--border);justify-content:space-between;padding:8px 0;font-size:13px;display:flex}.cal-stats-row:last-child{border-bottom:none}.cal-stats-row-label{color:var(--text2);align-items:center;gap:6px;display:flex}.cal-stats-row-value{color:var(--text);font-weight:500}.cal-stats-color-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.cal-heatmap{grid-template-columns:repeat(53,1fr);gap:2px;display:grid}.cal-heatmap-day{cursor:pointer;border-radius:2px;width:10px;height:10px;transition:opacity .15s}.cal-heatmap-day:hover{opacity:.8}.cal-heatmap-label{color:var(--text3);margin-bottom:4px;font-size:9px}.cal-stats-legend{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.cal-stats-legend-item{color:var(--text2);align-items:center;gap:4px;font-size:11px;display:flex}.cal-weather-badge{background:var(--bg3);color:var(--text2);white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-size:11px;transition:background .15s;display:inline-flex}.cal-event-block:hover .cal-weather-badge,.cal-day-event:hover .cal-weather-badge,.cal-week-event:hover .cal-weather-badge{background:var(--card-hover)}.cal-weather-icon{font-size:14px;line-height:1}.cal-weather-temp{font-weight:500}.cal-weather-condition{color:var(--text3);font-size:10px}.cal-weather-detail{color:var(--text3);padding:2px 0;font-size:10px}.cal-countdown{white-space:nowrap;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:500;display:inline-block}.cal-countdown-today{color:var(--red);background:#ef444426}.cal-countdown-tomorrow{color:var(--amber);background:#f59e0b26}.cal-countdown-soon{color:var(--blue);background:#3b82f626}.cal-countdown-later{color:var(--text3)}.cal-countdown-this-week{color:var(--green);background:#22c55e26}.cal-countdown-next-week{color:var(--purple);background:#8b5cf626}.cal-view-switcher{background:var(--bg3);border-radius:8px;gap:4px;padding:3px;display:flex}.cal-view-btn{cursor:pointer;color:var(--text2);white-space:nowrap;background:0 0;border:none;border-radius:6px;padding:6px 12px;font-family:inherit;font-size:12px;transition:all .2s}.cal-view-btn:hover{color:var(--text)}.cal-view-btn.active{background:var(--bg);color:var(--text);font-weight:600;box-shadow:0 1px 3px #0000001a}.cal-view-container{min-height:300px;position:relative}.cal-view-fade-enter{opacity:0;transform:translateY(8px)}.cal-view-fade-enter-active{opacity:1;transition:opacity .2s,transform .2s;transform:translateY(0)}.cal-no-events{text-align:center;color:var(--text3);padding:40px 20px;font-size:14px}.cal-no-events-icon{opacity:.5;margin-bottom:12px;font-size:32px}:root{--bg:#0d0d0d;--bg2:#1a1a1a;--bg3:#242424;--card:#1e1e1e;--card-hover:#2a2a2a;--border:#2a2a2a;--text:#e8e8ec;--text2:#a0a0a8;--text3:#6b7280;--blue:#3b82f6;--purple:#8b5cf6;--green:#10b981;--amber:#f59e0b;--red:#ef4444;--cyan:#06b6d4;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);min-height:100vh}#root{flex-direction:column;min-height:100vh;display:flex}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#333;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#444}.app{flex-direction:row;min-height:100vh;display:flex}.top-nav{background:var(--bg2);border-right:1px solid var(--border);-webkit-user-select:none;user-select:none;flex-direction:column;flex-shrink:0;gap:0;width:180px;min-width:180px;padding:0;display:flex;overflow-y:auto}.nav-brand{cursor:pointer;border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:8px;padding:16px;display:flex}.nav-brand-icon{font-size:22px}.nav-brand-text{letter-spacing:-.3px;font-size:15px;font-weight:700}.nav-tabs{flex-direction:column;flex:1;gap:1px;padding:8px;display:flex;overflow-y:auto}.nav-tab{color:var(--text2);cursor:pointer;letter-spacing:.3px;white-space:nowrap;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:11px;font-weight:600;transition:all .15s;display:flex}.nav-tab:hover{color:var(--text);background:var(--bg3)}.nav-tab.active{color:#fff;background:var(--blue)}.nav-status{color:var(--text3);letter-spacing:.3px;border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:8px;padding:12px 16px;font-size:10px;display:flex}.nav-status-row{align-items:center;gap:5px;display:flex}.nav-status-text{white-space:nowrap}.nav-user{border-top:1px solid var(--border);align-items:center;gap:6px;padding-top:6px;display:flex}.nav-user-avatar{color:#fff;background:#6366f1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;display:flex}.nav-user-name{color:#9ca3af;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:11px;overflow:hidden}.nav-user-logout{color:#6b7280;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:2px 4px;font-size:14px}.nav-user-logout:hover{color:#ef4444}.status-dot{background:#555;border-radius:50%;width:7px;height:7px;display:inline-block}.status-dot.online{background:var(--green);box-shadow:0 0 5px var(--green)}.status-dot.idle{background:var(--amber)}.main-content{flex:1;padding:24px 28px;overflow-y:auto}.section-top{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.section-title{letter-spacing:-.4px;font-size:22px;font-weight:700}.section-sub{color:var(--text2);margin-top:2px;font-size:13px}.sync-badge{background:var(--bg3);border:1px solid var(--border);cursor:pointer;color:var(--text2);border-radius:6px;padding:4px 10px;font-size:10px;transition:all .15s}.sync-badge:hover{background:var(--card-hover);color:var(--text)}.metrics-row{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px;display:grid}.metric-card{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:14px 16px}.metric-val{font-size:26px;font-weight:700}.metric-lbl{color:var(--text2);margin-top:3px;font-size:11px}.metric-sub{color:var(--text3);margin-top:1px;font-size:10px}.infra-row{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px;display:grid}.infra-card{background:var(--bg3);border:1px solid var(--border);border-top:2px solid #0000;border-radius:8px;flex-direction:column;padding:10px 14px;display:flex}.infra-val{font-size:18px;font-weight:700}.infra-lbl{color:var(--text2);font-size:10px}.infra-sub{color:var(--text3);font-size:9px}.dashboard-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.panel{background:var(--card);border:1px solid var(--border);border-radius:8px;overflow:hidden}.panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.panel-header h3{font-size:12px;font-weight:700}.panel-badge{color:var(--text3);background:var(--bg3);border-radius:10px;padding:2px 8px;font-size:10px}.team-list{padding:6px 8px}.team-row{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:6px;transition:background .15s;display:flex}.team-row:hover{background:var(--bg3)}.team-icon{border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;display:flex}.team-info{flex:1;min-width:0}.team-name{font-size:12px;font-weight:600;display:block}.team-role{color:var(--text3);font-size:10px;display:block}.status-badge-sm{background:#444;border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-badge-sm.online{background:var(--green)}.status-badge-sm.idle{background:var(--amber)}.activity-list{padding:8px}.activity-item{border-radius:6px;gap:8px;margin-bottom:4px;padding:6px;font-size:12px;display:flex}.activity-item:hover{background:var(--bg3)}.activity-avatar{text-align:center;width:22px;font-size:14px}.activity-text{color:var(--text2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.status-bars{flex-direction:column;gap:10px;padding:10px 14px;display:flex}.status-bar-labels{color:var(--text2);justify-content:space-between;margin-bottom:3px;font-size:11px;display:flex}.status-bar-track{background:var(--bg3);border-radius:3px;height:6px;overflow:hidden}.status-bar-fill{border-radius:3px;height:100%;transition:width .3s}.high-prio-list{padding:8px}.high-prio-item{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;font-size:12px;transition:background .15s;display:flex}.high-prio-item:hover{background:var(--bg3)}.high-prio-title{flex:1}.high-prio-status{font-size:11px}.priority-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.priority-dot.high{background:var(--red)}.priority-dot.medium{background:var(--amber)}.priority-dot.low{background:var(--text3)}.empty-state{color:var(--text3);text-align:center;padding:16px;font-size:12px}.tasks-view{max-width:1100px}.filter-row{flex-wrap:wrap;gap:4px;margin-bottom:16px;display:flex}.filter-btn{background:var(--bg3);border:1px solid var(--border);color:var(--text2);cursor:pointer;border-radius:6px;padding:4px 10px;font-size:11px;transition:all .15s}.filter-btn:hover{border-color:#444}.filter-btn.active{background:var(--card);border-color:var(--blue);color:#fff}.kanban{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.kanban-col{background:var(--card);border:1px solid var(--border);border-radius:8px;overflow:hidden}.kanban-col-header{border-bottom:1px solid var(--border);align-items:center;gap:6px;padding:10px 12px;font-size:12px;font-weight:700;display:flex}.kanban-dot{border-radius:50%;width:8px;height:8px}.kanban-count{background:var(--bg3);color:var(--text2);border-radius:10px;margin-left:auto;padding:1px 7px;font-size:10px}.kanban-card{border-bottom:1px solid var(--border);cursor:pointer;padding:10px 12px;transition:background .15s}.kanban-card:last-child{border-bottom:none}.kanban-card:hover{background:var(--bg3)}.kanban-card-title{align-items:flex-start;gap:6px;font-size:12px;font-weight:600;display:flex}.kanban-card-desc{color:var(--text2);margin:3px 0;font-size:10px}.kanban-card-meta{color:var(--text3);gap:8px;font-size:10px;display:flex}.empty-col{text-align:center;color:var(--text3);padding:20px;font-size:12px}.chat-view-panel{flex-direction:column;height:calc(100vh - 120px);display:flex}.chat-layout{flex:1;gap:12px;min-height:0;display:flex;overflow:hidden}.chat-sidebar-panel{background:var(--card);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:6px;width:200px;min-width:200px;padding:12px;display:flex}.chat-sidebar-panel h4{color:var(--text3);letter-spacing:1px;margin-bottom:6px;font-size:9px;font-weight:700}.sidebar-member{border-radius:5px;align-items:center;gap:6px;padding:4px 6px;font-size:11px;display:flex}.sidebar-member:hover{background:var(--bg3)}.sidebar-member-name{flex:1}.status-indicator{background:#444;border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-indicator.online{background:var(--green)}.status-indicator.idle{background:var(--amber)}.chat-main{background:var(--card);border:1px solid var(--border);border-radius:8px;flex-direction:column;flex:1;display:flex;overflow:hidden}.chat-msgs{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex;overflow-y:auto}.chat-welcome{text-align:center;padding:30px 20px}.chat-welcome-icon{margin-bottom:8px;font-size:36px}.chat-welcome h2{margin-bottom:4px;font-size:18px}.chat-welcome p{color:var(--text2);margin-bottom:16px;font-size:13px}.suggestion-grid{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.suggestion-btn{background:var(--bg3);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:6px;padding:6px 14px;font-size:12px;transition:all .15s}.suggestion-btn:hover{background:var(--card-hover);border-color:var(--blue)}.chat-bubble{gap:8px;max-width:85%;animation:.2s fadeIn;display:flex}.chat-bubble.user{flex-direction:row-reverse;align-self:flex-end}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat-avatar{background:var(--bg3);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;display:flex}.chat-text{background:var(--bg3);border:1px solid var(--border);word-break:break-word;border-radius:8px;min-width:0;padding:8px 12px;font-size:13px;line-height:1.5}.chat-bubble.user .chat-text{background:var(--blue);border-color:var(--blue);color:#fff}.chat-text p{margin-bottom:4px}.chat-text p:last-child{margin-bottom:0}.chat-text ul,.chat-text ol{margin:4px 0;padding-left:16px}.chat-text code{background:var(--bg);border-radius:3px;padding:1px 4px;font-size:11px}.loading-dots{color:var(--text3);letter-spacing:2px;font-size:18px;animation:1.4s infinite pulse}@keyframes pulse{0%,to{opacity:.3}50%{opacity:1}}.chat-bar{border-top:1px solid var(--border);gap:6px;padding:10px 12px;display:flex}.chat-field{background:var(--bg3);border:1px solid var(--border);color:var(--text);border-radius:8px;outline:none;flex:1;padding:8px 10px;font-size:13px;transition:border-color .15s}.chat-field:focus{border-color:var(--blue)}.chat-field::placeholder{color:var(--text3)}.chat-send{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;transition:opacity .15s;display:flex}.chat-send:disabled{opacity:.4;cursor:default}.chat-send:not(:disabled):hover{opacity:.85}.org-view-panel{max-width:900px;margin:0 auto}.org-metrics{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px;display:grid}.metric-card-sm{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:12px 14px}.metric-val-sm{font-size:20px;font-weight:700}.metric-lbl-sm{color:var(--text2);margin-top:2px;font-size:10px}.metric-sub-sm{color:var(--text3);font-size:9px}.org-center{justify-content:center;margin-bottom:8px;display:flex}.org-ceo{text-align:center;background:var(--card);border:1px solid var(--border);border-radius:10px;width:180px;padding:14px 24px}.org-ceo-icon{margin-bottom:4px;font-size:28px}.org-ceo-name{font-size:13px;font-weight:700}.org-ceo-role{color:var(--text2);font-size:10px}.org-ceo-status{color:var(--green);margin-top:3px;font-size:10px}.org-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.org-card{background:var(--card);border:1px solid var(--border);border-radius:8px;overflow:hidden}.org-card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.org-card-header h3{font-size:12px;font-weight:700}.org-count-badge{color:var(--text3);background:var(--bg3);border-radius:10px;padding:1px 7px;font-size:10px}.org-member{cursor:pointer;align-items:center;gap:8px;padding:7px 10px;transition:background .15s;display:flex}.org-member:hover{background:var(--bg3)}.org-member-avatar{border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;display:flex}.org-member-info{flex:1;min-width:0}.org-member-name{font-size:12px;font-weight:600}.org-member-role-text{color:var(--text2);font-size:10px}.org-footer{background:var(--card);border:1px solid var(--border);border-radius:8px;gap:16px;margin-top:16px;padding:10px 14px;display:flex}.org-footer-item{color:var(--text2);align-items:center;gap:5px;font-size:11px;display:flex}.tools-view{max-width:900px}.tools-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px;display:grid}.tool-card{background:var(--card);border:1px solid var(--border);text-align:center;cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:14px 12px;transition:all .15s;display:flex}.tool-card:hover{background:var(--card-hover);border-color:#444}.tool-card.active{border-color:var(--blue)}.tool-icon{font-size:24px}.tool-name{font-size:12px;font-weight:600}.tool-desc{color:var(--text3);font-size:10px}.tool-panel{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:16px;animation:.2s fadeIn}.tool-panel h3{margin-bottom:12px;font-size:14px}.tool-textarea{background:var(--bg3);border:1px solid var(--border);width:100%;color:var(--text);resize:vertical;border-radius:6px;outline:none;padding:8px 10px;font-size:13px}.tool-textarea:focus{border-color:var(--blue)}.note-actions{color:var(--text3);justify-content:space-between;align-items:center;margin-top:8px;font-size:11px;display:flex}.tool-btn{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:5px 12px;font-size:11px}.tool-btn:hover{opacity:.85}.link-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:6px 0;font-size:12px;display:flex}.link-row:last-child{border-bottom:none}.link-row a{color:var(--blue);margin-left:auto;font-size:11px}.platforms-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.platform-card-sm{background:var(--bg3);border:1px solid var(--border);border-radius:6px;padding:10px}.platform-header-sm{margin-bottom:6px;font-size:13px;font-weight:600}.platform-stats-sm{gap:12px;margin-bottom:6px;display:flex}.platform-stat-val{font-size:16px;font-weight:700}.platform-stat-lbl{color:var(--text3);font-size:9px}.platform-bar{background:var(--bg);border-radius:2px;height:4px;overflow:hidden}.platform-bar-fill{border-radius:2px;height:100%}.cost-cards{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.cost-card{background:var(--bg3);border:1px solid var(--border);border-top:2px solid #0000;border-radius:6px;padding:12px}.cost-value{font-size:18px;font-weight:700}.cost-name{color:var(--text2);margin-top:3px;font-size:11px}.cost-sub{color:var(--text3);margin-top:2px;font-size:10px}.modal-overlay{z-index:100;background:#0009;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--card);border:1px solid var(--border);border-radius:10px;width:500px;max-width:90vw;max-height:80vh;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.modal-header h2{font-size:15px}.modal-close{color:var(--text2);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;font-size:16px}.modal-close:hover{background:var(--bg3);color:var(--text)}.modal-body{padding:16px}.modal-desc{color:var(--text2);margin-bottom:12px;font-size:13px}.modal-meta{flex-wrap:wrap;gap:10px;margin-bottom:16px;font-size:11px;display:flex}.modal-status,.modal-priority{text-transform:uppercase;border-radius:4px;padding:2px 8px;font-size:10px}.modal-status.progress{background:var(--amber)+"22";color:var(--amber)}.modal-status.done{background:var(--green)+"22";color:var(--green)}.modal-status.plan{background:var(--text3)+"22";color:var(--text3)}.modal-priority.high{color:var(--red)}.modal-priority.medium{color:var(--amber)}.modal-priority.low{color:var(--text3)}.modal-comments h3{margin-bottom:8px;font-size:12px}.modal-comment{background:var(--bg3);border-radius:6px;margin-bottom:4px;padding:6px 8px;font-size:12px}.modal-comment-time{color:var(--text3);margin-left:4px;font-size:10px}.add-comment{gap:6px;margin-top:10px;display:flex}.add-comment-input{background:var(--bg3);border:1px solid var(--border);color:var(--text);border-radius:6px;outline:none;flex:1;padding:6px 8px;font-size:12px}.add-comment-input:focus{border-color:var(--blue)}.add-comment-btn{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:4px 10px;font-size:11px}.add-comment-btn:disabled{opacity:.4;cursor:default}@media (width<=900px){.main-content{padding:16px}.metrics-row,.infra-row,.org-metrics,.tools-grid,.cost-cards{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.kanban{grid-template-columns:1fr}.org-grid,.platforms-grid{grid-template-columns:repeat(2,1fr)}.nav-tabs{overflow-x:auto}}.settings-page{max-width:960px;margin:0 auto;padding:32px;animation:.2s fadeIn}.settings-header{margin-bottom:28px}.settings-header h1{margin-bottom:6px;font-size:28px;font-weight:700}.settings-subtitle{color:var(--text2);font-size:14px}.settings-error{color:var(--red);cursor:pointer;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:12px 16px;font-size:13px;display:flex}.error-close{color:var(--red);cursor:pointer;background:0 0;border:none;font-size:16px}.settings-loading{color:var(--text2);align-items:center;gap:12px;padding:40px 0;font-size:14px;display:flex}.spinner{border:2px solid var(--border);border-top:2px solid var(--blue);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.settings-tabs{background:var(--bg2);border-radius:10px;gap:4px;margin-bottom:24px;padding:4px;display:flex}.settings-tab{color:var(--text2);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:10px 16px;font-size:14px;font-weight:500;transition:all .15s}.settings-tab:hover{color:var(--text);background:#ffffff0d}.settings-tab.active{background:var(--card);color:var(--text);box-shadow:0 1px 3px #0000004d}.settings-section{margin-bottom:32px}.agent-card{background:var(--card);border:1px solid var(--border);border-radius:10px;margin-bottom:12px;padding:20px;transition:border-color .15s}.agent-card:hover{border-color:#333}.agent-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.agent-name{font-size:16px;font-weight:600}.agent-id{color:var(--text3);margin-top:2px;font-size:12px}.agent-edit-btn{color:var(--blue);cursor:pointer;background:#3b82f61a;border:1px solid #3b82f64d;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s}.agent-edit-btn:hover{background:#3b82f633}.agent-edit-form{flex-direction:column;gap:12px;display:flex}.field-label{color:var(--text2);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:12px;font-weight:600;display:block}.model-select{background:var(--bg2);border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;border-radius:8px;outline:none;padding:10px 12px;font-family:SF Mono,Fira Code,monospace;font-size:13px;transition:border-color .15s}.model-select:focus{border-color:var(--blue)}.model-select option{background:var(--bg2);color:var(--text)}.fallback-list{margin-top:4px}.fallback-item{color:var(--text2);padding:4px 0;font-family:SF Mono,Fira Code,monospace;font-size:13px}.agent-model-info{flex-direction:column;gap:8px;display:flex}.model-row{align-items:baseline;gap:12px;display:flex}.model-label{color:var(--text3);min-width:70px;font-size:12px;font-weight:500}.model-value{color:var(--text);font-family:SF Mono,Fira Code,monospace;font-size:13px}.api-keys-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.api-keys-header h2{font-size:16px;font-weight:600}.add-key-btn{color:var(--green);cursor:pointer;background:#10b9811a;border:1px solid #10b9814d;border-radius:6px;padding:7px 14px;font-size:13px;font-weight:500;transition:all .15s}.add-key-btn:hover{background:#10b98133}.add-key-card{background:var(--card);border:1px solid #10b98133;border-radius:10px;margin-bottom:16px;padding:20px}.key-form-row{grid-template-columns:1fr 2fr;gap:16px;margin-bottom:16px;display:grid}.key-form-field{flex-direction:column;gap:6px;display:flex}.key-input{background:var(--bg2);border:1px solid var(--border);color:var(--text);border-radius:8px;outline:none;padding:10px 12px;font-family:SF Mono,Fira Code,monospace;font-size:14px;transition:border-color .15s}.key-input:focus{border-color:var(--green)}.key-input::placeholder{color:var(--text3)}.save-key-btn{background:var(--green);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:10px;font-size:14px;font-weight:600;transition:opacity .15s}.save-key-btn:hover{opacity:.9}.save-key-btn:disabled{opacity:.4;cursor:default}.empty-keys{text-align:center;background:var(--card);border:1px dashed var(--border);border-radius:10px;padding:48px 24px}.empty-keys span{margin-bottom:12px;font-size:36px;display:block}.empty-keys p{color:var(--text2);margin-bottom:16px;font-size:14px}.key-list{flex-direction:column;gap:8px;display:flex}.key-card{background:var(--card);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;padding:16px 20px;transition:border-color .15s;display:flex}.key-card:hover{border-color:#333}.key-provider{border-left:3px solid #555;padding-left:12px}.key-provider-name{margin-bottom:2px;font-size:14px;font-weight:600}.key-preview{color:var(--text3);font-family:SF Mono,Fira Code,monospace;font-size:12px}.key-last-used{color:var(--text3);margin-top:4px;font-size:11px}.key-card-right{align-items:center;gap:12px;display:flex}.key-status{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:3px 8px;font-size:11px;font-weight:600}.key-status.active{color:var(--green);background:#10b98126}.key-status.inactive{color:var(--red);background:#ef444426}.key-delete-btn{cursor:pointer;background:#ef44441a;border:1px solid #ef444433;border-radius:6px;padding:6px 8px;font-size:14px;transition:all .15s}.key-delete-btn:hover{background:#ef444433;border-color:#ef444466}@media (width<=600px){.metrics-row,.infra-row,.org-metrics,.tools-grid,.cost-cards,.org-grid,.platforms-grid{grid-template-columns:1fr}.chat-layout{flex-direction:column}.chat-sidebar-panel{flex-flow:wrap;width:100%;min-width:0}}.projektek-page{max-width:1200px}.projektek-section{margin-bottom:28px}.projektek-section-header{border-bottom:1px solid var(--border);align-items:center;gap:10px;margin-bottom:14px;padding-bottom:8px;display:flex}.projektek-section-icon{font-size:20px}.projektek-section-label{color:var(--text);font-size:16px;font-weight:700}.projektek-section-count{color:var(--text3);background:var(--bg3);border-radius:10px;margin-left:auto;padding:2px 10px;font-size:11px}.projektek-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px;display:grid}.projekt-card{background:var(--card);border:1px solid var(--border);cursor:pointer;border-radius:12px;padding:16px;transition:all .2s}.projekt-card:hover{background:var(--card-hover);border-color:#555;transform:translateY(-2px)}.projekt-card-header{align-items:center;gap:10px;margin-bottom:12px;display:flex}.projekt-icon{background:var(--bg3);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.projekt-name{font-size:14px;font-weight:700}.projekt-desc{color:var(--text2);margin-top:1px;font-size:11px}.projekt-costs{gap:8px;margin-bottom:12px;display:flex}.projekt-cost-item{background:var(--bg3);border-radius:8px;flex:1;padding:8px 12px}.projekt-cost-lbl{color:var(--text3);text-transform:uppercase;letter-spacing:.5px;font-size:9px;display:block}.projekt-cost-val{margin-top:2px;font-size:16px;font-weight:700;display:block}.projekt-cost-val.dev{color:#f59e0b}.projekt-cost-val.run{color:#10b981}.projekt-stats-row{gap:12px;display:flex}.projekt-stat{flex-direction:column;align-items:center;gap:1px;display:flex}.projekt-stat-val{font-size:13px;font-weight:700}.projekt-stat-lbl{color:var(--text3);text-transform:uppercase;font-size:9px}.projekt-modal{max-width:540px}.projekt-modal-full{width:90vw;max-width:1000px;max-height:90vh;overflow-y:auto}.projekt-modal-full .modal-body{padding:20px 24px}.projekt-full-section{margin-bottom:24px}.projekt-full-section:last-child{margin-bottom:0}.projekt-full-section-title{color:var(--text);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);margin-bottom:10px;padding-bottom:6px;font-size:13px;font-weight:700}.projekt-full-cash-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.projekt-full-cash-card{background:var(--bg3);border-radius:8px;padding:12px}.projekt-full-cash-card.real{background:linear-gradient(135deg,#60a5fa08,#2dd4bf08);border:1px solid #60a5fa22}.projekt-full-cash-lbl{color:var(--text3);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:9px}.projekt-full-cash-val{font-family:JetBrains Mono,monospace;font-size:18px;font-weight:700}.projekt-full-cash-sub{color:var(--text3);margin-top:2px;font-size:9px;line-height:1.3}.projekt-full-dash-wrap{flex-direction:column;gap:14px;display:flex}.projekt-full-dash-section-title{color:var(--text2);margin-bottom:6px;font-size:11px;font-weight:700}.projekt-full-dash-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:6px;display:grid}.projekt-full-dash-card{background:var(--bg3);border-radius:6px;padding:10px 12px}.projekt-full-dash-val{color:var(--text);font-family:JetBrains Mono,monospace;font-size:16px;font-weight:700}.projekt-full-dash-lbl{color:var(--text2);margin-top:2px;font-size:10px}.projekt-full-dash-sub{color:var(--text3);margin-top:1px;font-size:9px}.projekt-full-links-wrap{flex-direction:column;gap:6px;display:flex}.projekt-full-link-row{background:var(--bg3);border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;text-decoration:none;transition:all .12s;display:flex}.projekt-full-link-row:hover{background:var(--border)}.projekt-full-link-icon{text-align:center;width:24px;font-size:16px}.projekt-full-link-label{color:var(--text);min-width:100px;font-weight:600}.projekt-full-link-url{color:var(--text3);text-overflow:ellipsis;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:11px;overflow:hidden}@media (width<=768px){.projekt-full-cash-grid{grid-template-columns:repeat(2,1fr)}.projekt-modal-full{width:95vw;max-height:85vh}}.projekt-modal-tabs{border-bottom:1px solid var(--border);gap:4px;padding:0 16px;display:flex}.projekt-modal-tab{color:var(--text2);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-size:12px;font-weight:600;transition:all .15s}.projekt-modal-tab:hover{color:var(--text);background:var(--bg3)}.projekt-modal-tab.active{color:#fff;border-bottom-color:var(--blue)}.projekt-dash-section{margin-bottom:16px}.projekt-dash-section:last-child{margin-bottom:0}.projekt-dash-section-title{color:var(--text3);text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px;font-size:11px;font-weight:700}.projekt-dash-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:6px;display:grid}.projekt-dash-card{background:var(--bg3);border:1px solid var(--border);text-align:center;border-radius:8px;padding:10px}.projekt-dash-val{color:var(--blue);font-size:18px;font-weight:700}.projekt-dash-lbl{color:var(--text2);margin-top:2px;font-size:10px}.projekt-dash-sub{color:var(--text3);margin-top:1px;font-size:9px}.projekt-link-row{background:var(--bg3);border:1px solid var(--border);color:var(--text);border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;text-decoration:none;transition:all .15s;display:flex}.projekt-link-row:hover{background:var(--card-hover);border-color:var(--blue)}.projekt-link-url{color:var(--text3);margin-left:auto;font-size:11px}.projekt-cost-detail-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.projekt-cost-detail-card{background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:12px 16px}.projekt-cost-detail-lbl{color:var(--text3);margin-bottom:4px;font-size:11px}.projekt-cost-detail-val{font-size:20px;font-weight:700}.projekt-cost-detail-val.dev{color:#f59e0b}.projekt-cost-detail-val.run{color:#10b981}.projekt-cost-detail-sub{color:var(--text3);margin-top:2px;font-size:10px}.projekt-cost-note{color:var(--text2);background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:10px 14px;font-size:11px;line-height:1.5}.finance-page{max-width:1200px}.dash-grid2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.dash-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:16px}.dash-card-title{margin-bottom:12px;font-size:13px;font-weight:700}.dash-chart-v{justify-content:space-between;align-items:flex-end;gap:6px;height:160px;display:flex}.dash-col-wrap{flex-direction:column;flex:1;align-items:center;gap:4px;height:100%;display:flex}.dash-col-val{color:var(--text2);font-size:9px}.dash-col-track{background:var(--bg3);border-radius:4px;flex:1;align-items:flex-end;width:100%;max-width:36px;display:flex;overflow:hidden}.dash-col-fill{background:var(--blue);border-radius:4px;width:100%;min-height:4px;transition:height .3s}.dash-col-fill.active{background:var(--amber)}.dash-col-label{color:var(--text3);font-size:9px}.dash-col-label.active{color:var(--text);font-weight:600}.dash-platforms{flex-direction:column;gap:8px;display:flex}.dash-plat-row{align-items:center;gap:8px;display:flex}.nav-quick-btn{background:var(--bg3);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;padding:8px 14px;font-size:13px;transition:all .15s}.nav-quick-btn:hover{background:var(--card-hover);border-color:var(--blue);color:#fff}@keyframes twinkle{0%,to{opacity:.2}50%{opacity:.9}}.save-float{cursor:pointer;z-index:999;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;transition:all .2s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 16px #8b5cf666}.save-float:hover{transform:scale(1.1);box-shadow:0 6px 24px #8b5cf699}.save-float:active{transform:scale(.95)}[data-theme=light]{--bg:#f8f9fa;--bg2:#fff;--bg3:#f0f0f0;--card:#fff;--card-hover:#f5f5f5;--border:#e0e0e0;--text:#1a1a1a;--text2:#555;--text3:#999;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=light] input,[data-theme=light] select,[data-theme=light] textarea{color:#1a1a1a;background:#fff;border-color:#d0d0d0}.agency-summary{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:24px;display:grid}.agency-summary-item{background:var(--card);border-left:3px solid;border-radius:8px;padding:16px}.agency-summary-value{color:var(--text);font-size:24px;font-weight:700}.agency-summary-label{color:var(--text3);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:11px;font-weight:600}.agency-pillars{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px;display:grid}@media (width<=1100px){.agency-pillars{grid-template-columns:1fr}}.agency-pillar{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:16px}.agency-pillar-header{border-bottom:2px solid;align-items:center;gap:8px;margin-bottom:16px;padding-bottom:12px;display:flex}.agency-pillar-emoji{font-size:24px}.agency-pillar-title{color:var(--text);font-size:18px;font-weight:700}.agency-pillar-count{color:var(--text3);text-transform:uppercase;letter-spacing:.3px;margin-left:auto;font-size:11px;font-weight:600}.agency-pillar-projects{flex-direction:column;gap:12px;display:flex}.agency-project-card{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:12px;transition:border-color .2s}.agency-project-card:hover{border-color:var(--text3)}.agency-project-header{align-items:flex-start;gap:8px;margin-bottom:8px;display:flex}.agency-project-emoji{font-size:20px;line-height:1}.agency-project-info{flex:1;min-width:0}.agency-project-name{color:var(--text);font-size:14px;font-weight:600}.agency-project-version{color:var(--text3);margin-top:1px;font-size:11px}.agency-project-desc{color:var(--text2);margin-bottom:8px;font-size:12px;line-height:1.4}.agency-project-metrics{flex-wrap:wrap;gap:4px 12px;margin-bottom:6px;display:flex}.agency-metric{gap:4px;font-size:11px;line-height:1.5;display:flex}.agency-metric-label{color:var(--text3);white-space:nowrap}.agency-metric-value{color:var(--text);font-weight:500}.agency-project-links{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.agency-link{color:var(--blue);background:#3b82f614;border-radius:4px;padding:2px 8px;font-size:11px;text-decoration:none;transition:background .2s}.agency-link:hover{background:#3b82f626;text-decoration:none}.agency-footer{background:var(--card);color:var(--text2);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;padding:12px 16px;font-size:12px;display:flex}.nav-category{letter-spacing:1px;color:var(--text3);text-transform:uppercase;-webkit-user-select:none;user-select:none;padding:12px 12px 4px;font-size:9px;font-weight:700}.project-page{max-width:1100px;margin:0 auto;padding:24px 32px}.project-page-header{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:18px;display:flex}.project-page-back{background:var(--bg3,#16171b);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;padding:8px 14px;font-size:12px;font-weight:600;transition:all .15s}.project-page-back:hover{background:var(--card-hover,#1e1f23);border-color:var(--blue,#00acff)}.project-page-title{color:var(--text);align-items:center;margin:0;font-size:22px;font-weight:700;display:flex}.project-page-tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:18px;padding:0 0 0 4px;display:flex}.project-page-tab{color:var(--text2);cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-size:13px;font-weight:600;transition:all .15s}.project-page-tab:hover{color:var(--text);background:var(--bg3,#16171b)}.project-page-tab.active{color:var(--text,#fff);border-bottom-color:var(--blue,#00acff)}.project-page-content{min-height:400px}
