:root[data-theme=light]{--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-primary-light:#dbeafe;--color-bg:var(--single-background);--color-bg-secondary:var(--single-surface);--color-bg-tertiary:var(--single-surface-hover);--color-card:#fff;--color-card-hover:var(--single-surface);--color-text:var(--single-text-primary);--color-text-secondary:var(--single-text-secondary);--color-text-tertiary:var(--single-text-disabled);--color-border:var(--single-border);--color-border-hover:var(--single-border-hover);--color-success:#16a34a;--color-success-bg:#dcfce7;--color-error:#dc2626;--color-error-bg:#fee2e2;--color-purple:#7c3aed;--color-purple-bg:#ede9fe;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;--single-primary:var(--color-primary);--single-primary-hover:var(--color-primary-hover);--single-primary-active:var(--color-primary-hover);--single-primary-light:var(--color-primary-light)}:root[data-theme=dark]{--color-primary:#60a5fa;--color-primary-hover:#3b82f6;--color-primary-light:#1e3a5f;--color-bg:var(--single-background);--color-bg-secondary:var(--single-surface);--color-bg-tertiary:var(--single-surface-hover);--color-card:var(--single-surface);--color-card-hover:var(--single-surface-hover);--color-text:var(--single-text-primary);--color-text-secondary:var(--single-text-secondary);--color-text-tertiary:var(--single-text-disabled);--color-border:var(--single-border);--color-border-hover:var(--single-border-hover);--color-success:#4ade80;--color-success-bg:#14532d;--color-error:#f87171;--color-error-bg:#7f1d1d;--color-purple:#a78bfa;--color-purple-bg:#3b2f63;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006, 0 2px 4px -1px #0000004d;--shadow-lg:0 10px 15px -3px #00000080, 0 4px 6px -2px #0006;--shadow-xl:0 20px 25px -5px #0009, 0 10px 10px -5px #00000080;--single-primary:var(--color-primary);--single-primary-hover:var(--color-primary-hover);--single-primary-active:var(--color-primary-hover);--single-primary-light:var(--color-primary-light)}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--color-bg);color:var(--color-text);font-family:Sora,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;transition:background-color .3s,color .3s}.disp-flex{display:flex}.disp-grid{display:grid}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.flex-2{flex:2}.flex-3{flex:3}.flex-center{justify-content:center;align-items:center}.flex-between{justify-content:space-between;align-items:center}.flex-end{justify-content:flex-end;align-items:center}.items-start{align-items:flex-start}.items-center{align-items:center}.items-stretch{align-items:stretch}.gap-xs{gap:.25rem}.gap-sm{gap:.5rem}.gap-md{gap:1rem}.gap-lg{gap:1.5rem}.z-1{z-index:1;position:relative}.z-2{z-index:2;position:relative}.z-3{z-index:3;position:relative}.form-grid-2{grid-template-columns:repeat(2,1fr);align-items:start;gap:1.25rem;display:grid}.form-grid-3{grid-template-columns:repeat(3,1fr);align-items:start;gap:1.25rem;display:grid}.form-grid-4{grid-template-columns:repeat(4,1fr);align-items:start;gap:1.25rem;display:grid}.form-grid-12{grid-template-columns:repeat(12,1fr);align-items:flex-end;gap:1rem;display:grid}.col-2{grid-column:span 2}.col-3{grid-column:span 3}.col-4{grid-column:span 4}.col-6{grid-column:span 6}.col-full{grid-column:1/-1}@media (max-width:768px){.form-grid-2,.form-grid-3,.form-grid-4,.form-grid-12{grid-template-columns:1fr}.col-2,.col-3,.col-4,.col-6,.col-full{grid-column:span 1}}.signin-container{justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex;position:relative;overflow:hidden}.signin-background{z-index:0;background:var(--color-bg);position:absolute;inset:0}.gradient-orb{filter:blur(80px);opacity:.3;border-radius:50%;animation:20s ease-in-out infinite float;position:absolute}.orb-1{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);width:400px;height:400px;animation-delay:0s;top:-10%;left:-5%}.orb-2{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);width:350px;height:350px;animation-delay:5s;bottom:-5%;right:-5%}.orb-3{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);width:300px;height:300px;animation-delay:10s;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes float{0%,to{transform:translate(0)scale(1)}25%{transform:translate(20px,-20px)scale(1.05)}50%{transform:translate(-15px,15px)scale(.95)}75%{transform:translate(15px,10px)scale(1.02)}}.signin-card{z-index:1;background:var(--color-card);border:1px solid var(--color-border);width:100%;max-width:440px;box-shadow:var(--shadow-xl);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:3rem;position:relative}.signin-header{text-align:center;margin-bottom:2rem}.signin-title{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-hover) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:2rem;font-weight:700}.signin-subtitle{color:var(--color-text-secondary);font-size:.95rem}.signin-form{flex-direction:column;gap:1.5rem;display:flex}.error-message{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error);border-radius:12px;align-items:center;gap:.75rem;padding:1rem;font-size:.9rem;animation:.3s slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-input,.form-textarea{border:1.5px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text);border-radius:12px;padding:.875rem 1rem;font-family:inherit;font-size:1rem;transition:all .2s}.form-input:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.form-textarea{resize:vertical;min-height:120px}.submit-btn{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-hover) 100%);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:1rem;font-family:inherit;font-size:1rem;font-weight:600;transition:all .2s}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #2563eb4d}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.btn-loading{justify-content:center;align-items:center;gap:.75rem;display:flex}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.signin-footer{text-align:center;margin-top:2rem}.footer-text{color:var(--color-text-tertiary);justify-content:center;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.app-shell{flex-direction:column;height:100vh;display:flex}.app-shell-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.navbar-theme-btn{width:34px;height:34px;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:background .15s;display:inline-flex}.navbar-theme-btn:hover{background:#ffffff1f}.main-content{background:var(--color-bg);flex-direction:column;flex:1;min-height:0;padding:1.25rem;display:flex;overflow-y:auto}.page-container{animation:.4s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hero-section{text-align:center;padding:3rem 0}.hero-badge{background:var(--color-primary-light);color:var(--color-primary);border-radius:20px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:500;display:inline-flex}.badge-dot{background:var(--color-primary);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.page-title{margin-bottom:1rem;font-size:3rem;font-weight:700;line-height:1.2}.highlight{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-hover) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.page-description{color:var(--color-text-secondary);margin:0 0 2rem;font-size:1.125rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:3rem;display:grid}.stat-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:16px;align-items:center;gap:1rem;padding:1.5rem;transition:all .2s;display:flex}.stat-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-primary);transform:translateY(-4px)}.stat-icon{background:var(--color-primary-light);width:48px;height:48px;color:var(--color-primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.stat-content{text-align:left;flex:1}.stat-label{color:var(--color-text-tertiary);margin-bottom:.25rem;font-size:.85rem}.stat-value{color:var(--color-text);font-size:1.125rem;font-weight:600}.content-section{padding:2rem 0}.content-card{background:var(--color-card);border:1px solid var(--color-border);text-align:center;border-radius:16px;margin:2rem 0;padding:2rem}.card-icon{background:var(--color-primary-light);width:64px;height:64px;color:var(--color-primary);border-radius:16px;justify-content:center;align-items:center;margin:0 auto 1.5rem;display:flex}.card-title{margin-bottom:1rem;font-size:1.75rem;font-weight:700}.card-text{color:var(--color-text-secondary);max-width:700px;margin:0 auto;font-size:1.05rem;line-height:1.7}.features-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:3rem;display:grid}.feature-item{text-align:center}.feature-icon{background:var(--color-primary-light);width:56px;height:56px;color:var(--color-primary);border-radius:14px;justify-content:center;align-items:center;margin:0 auto 1rem;display:flex}.feature-title{margin-bottom:.75rem;font-size:1.25rem;font-weight:600}.feature-text{color:var(--color-text-secondary);line-height:1.6}.contact-container{grid-template-columns:1fr 2fr;gap:3rem;margin-top:2rem;display:grid}.contact-info{background:var(--color-card);border:1px solid var(--color-border);border-radius:16px;height:fit-content;padding:2rem}.info-title{margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.info-item{border-bottom:1px solid var(--color-border);align-items:flex-start;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem;display:flex}.info-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.info-icon{background:var(--color-primary-light);width:40px;height:40px;color:var(--color-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.info-label{color:var(--color-text-tertiary);margin-bottom:.25rem;font-size:.85rem}.info-value{color:var(--color-text);font-size:1rem;font-weight:500}.contact-form-container{background:var(--color-card);border:1px solid var(--color-border);border-radius:16px;padding:2rem}.contact-form{flex-direction:column;gap:1.5rem;display:flex}.success-message{text-align:center;padding:3rem 2rem;animation:.4s fadeIn}.success-message svg{color:var(--color-success);margin-bottom:1rem}.success-message h3{color:var(--color-success);margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.success-message p{color:var(--color-text-secondary)}.loading-container{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.loading-spinner{border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:48px;height:48px;animation:1s linear infinite spin}@media (max-width:768px){.page-title{font-size:2rem}.stats-grid,.contact-container{grid-template-columns:1fr}.signin-card{padding:2rem}.hm-panel{flex-direction:column;height:auto;max-height:60vh}.hm-divider{width:100%;height:1px}.hm-right{max-height:200px;overflow-y:auto}}.demo-section{padding:1rem 0}.demo-form{flex-direction:column;gap:2rem;margin-top:2rem;display:flex}.form-section{background:var(--color-card);border:1px solid var(--color-border);border-radius:12px;flex-direction:column;gap:1rem;padding:1rem 1.25rem;display:flex}.form-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);font-size:.85rem;font-weight:600}.form-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;display:grid}.form-group{flex-direction:column;gap:.4rem;display:flex;position:relative}.form-label{color:var(--color-text-secondary);font-size:.8125rem;font-weight:500}.required{color:var(--color-error);margin-left:2px}.form-input{width:100%;color:var(--color-text);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;outline:none;padding:.5rem .75rem;font-family:inherit;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-input--error{border-color:var(--color-error)!important;box-shadow:0 0 0 3px var(--color-error-bg)!important}input[type=date]::-webkit-calendar-picker-indicator{filter:var(--date-icon-filter,none);cursor:pointer;opacity:.6}:root[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert()}.input-currency-wrapper{align-items:center;display:flex;position:relative}.input-currency-prefix{color:var(--color-text-secondary);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:.8125rem;font-weight:600;position:absolute;left:.75rem}.form-input--currency{text-align:right;padding-left:2.5rem}.autocomplete-wrapper{position:relative}.autocomplete-chevron{color:var(--color-text-tertiary);pointer-events:none;align-items:center;display:flex;position:absolute;top:50%;right:.625rem;transform:translateY(-50%)}.autocomplete-dropdown{z-index:100;background:var(--color-card);border:1px solid var(--color-border);box-shadow:var(--shadow-lg);border-radius:8px;max-height:220px;padding:.25rem;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.autocomplete-option{cursor:pointer;color:var(--color-text);border-radius:6px;justify-content:space-between;align-items:center;gap:.5rem;padding:.45rem .75rem;font-size:.875rem;transition:background .1s;display:flex}.autocomplete-option:hover{background:var(--color-bg-tertiary)}.autocomplete-option--selected{color:var(--color-primary);background:var(--color-primary-light);font-weight:500}.autocomplete-option--selected:hover{background:var(--color-primary-light)}.autocomplete-multi-input{cursor:text;flex-wrap:wrap;align-items:center;gap:.35rem;height:auto;min-height:2.375rem;padding:.3rem 2rem .3rem .5rem;display:flex}.autocomplete-multi-input--focused{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.autocomplete-multi-search{min-width:80px;color:var(--color-text);background:0 0;border:none;outline:none;flex:1;padding:0;font-family:inherit;font-size:.875rem}.multi-tag{background:var(--color-primary-light);color:var(--color-primary);white-space:nowrap;border-radius:999px;align-items:center;gap:.25rem;padding:.175rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.multi-tag-remove{cursor:pointer;color:var(--color-primary);opacity:.7;background:0 0;border:none;align-items:center;padding:0;font-size:1rem;line-height:1;transition:opacity .1s;display:flex}.multi-tag-remove:hover{opacity:1}.multi-checkbox{border:1.5px solid var(--color-border-hover);background:var(--color-bg);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:background .1s,border-color .1s;display:inline-flex}.autocomplete-option--selected .multi-checkbox{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.form-feedback{border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;display:flex}.form-feedback--error{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error)}.form-feedback--success{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success)}@media (max-width:600px){.form-grid{grid-template-columns:1fr}}.ic-group{flex-direction:column;gap:.4rem;display:flex}.ic-label{color:var(--color-text-secondary);font-size:.8125rem;font-weight:500}.proj-page{padding:.5rem 0;animation:.4s fadeIn}.proj-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.proj-header-actions{gap:.75rem;display:flex}.proj-title{color:var(--color-text);font-size:1.25rem;font-weight:700}.proj-title-sub{color:var(--color-text-secondary);margin-top:.15rem;font-size:.8125rem}.proj-filters{background:var(--color-card);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;gap:.75rem;margin-bottom:1rem;padding:.875rem 1rem;display:flex}.proj-filter-row{grid-template-columns:1fr 220px auto;align-items:flex-end;gap:1rem;display:grid}.proj-search-wrapper{align-items:center;display:flex;position:relative}.proj-search-icon{color:var(--color-text-tertiary);pointer-events:none;z-index:1;align-items:center;display:flex;position:absolute;left:.75rem}.proj-search-wrapper .single-input{padding-left:2.25rem}.proj-results-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.proj-results-info{color:var(--color-text-secondary);font-size:.8125rem}.proj-page-size{color:var(--color-text-secondary);align-items:center;gap:.5rem;font-size:.8125rem;display:flex}.proj-page-size select{color:var(--color-text);background:var(--color-bg-secondary);border:1px solid var(--color-border);cursor:pointer;border-radius:6px;outline:none;padding:.25rem .5rem;font-family:inherit;font-size:.8125rem;transition:border-color .15s}.proj-page-size select:focus{border-color:var(--color-primary)}.proj-table-wrapper{background:var(--color-card);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:12px;overflow:hidden}.proj-table-scroll{overflow-x:auto}.proj-table{border-collapse:collapse;width:100%;font-size:.875rem}.proj-table thead{background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border)}.proj-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);white-space:nowrap;padding:.75rem 1rem;font-size:.75rem;font-weight:600}.proj-table td{color:var(--color-text);border-bottom:1px solid var(--color-border);vertical-align:middle;padding:.75rem 1rem}.proj-table tbody tr:last-child td{border-bottom:none}.proj-table tbody tr{transition:background .1s}.proj-table tbody tr:hover{background:var(--color-bg-secondary)}.proj-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.proj-badge--active{background:var(--color-success-bg);color:var(--color-success)}.proj-badge--inactive{background:var(--color-error-bg);color:var(--color-error)}.proj-badge-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.proj-actions{align-items:center;gap:.4rem;display:flex}.proj-action-btn{border:1px solid var(--color-border);background:var(--color-bg-secondary);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;transition:all .15s;display:inline-flex}.proj-action-btn:hover{background:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary)}.proj-action-btn--delete:hover{background:var(--color-error-bg);color:var(--color-error);border-color:var(--color-error)}.proj-delete-confirm{white-space:nowrap;align-items:center;gap:.4rem;display:flex}.proj-delete-confirm span{color:var(--color-error);font-size:.8125rem;font-weight:500}.proj-state-row td{text-align:center;color:var(--color-text-secondary);padding:3rem 1rem}.proj-empty-icon{background:var(--color-bg-tertiary);width:48px;height:48px;color:var(--color-text-tertiary);border-radius:12px;justify-content:center;align-items:center;margin:0 auto .75rem;display:flex}.proj-loading-dots{align-items:center;gap:.3rem;display:inline-flex}.proj-loading-dots span{background:var(--color-primary);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite proj-dot-pulse}.proj-loading-dots span:nth-child(2){animation-delay:.2s}.proj-loading-dots span:nth-child(3){animation-delay:.4s}@keyframes proj-dot-pulse{0%,80%,to{opacity:.25;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.proj-pagination{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem;padding:1rem 1.25rem;display:flex}.proj-page-btn{border:1px solid var(--color-border);background:var(--color-bg-secondary);min-width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;padding:0 .5rem;font-family:inherit;font-size:.8125rem;font-weight:500;transition:all .15s;display:inline-flex}.proj-page-btn:hover:not(:disabled){background:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary)}.proj-page-btn:disabled{opacity:.4;cursor:not-allowed}.proj-page-btn--active{font-weight:600;background:var(--color-primary)!important;color:#fff!important;border-color:var(--color-primary)!important}.proj-page-ellipsis{color:var(--color-text-tertiary);padding:0 .2rem;font-size:.875rem}.proj-error{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error);border-radius:8px;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.proj-edit-grid{grid-template-columns:1fr 1fr 200px 140px;align-items:start;gap:1.25rem;display:grid}.proj-edit-switch{align-items:center;height:2.375rem;display:flex}.proj-edit-actions{justify-content:flex-end;gap:.75rem;margin-top:1.5rem;display:flex}.proj-edit-skeleton{grid-template-columns:1fr 1fr 200px 140px;gap:1.25rem;display:grid}.proj-edit-skeleton-field{flex-direction:column;gap:.4rem;display:flex}.proj-edit-skeleton-label{background:var(--color-bg-tertiary);border-radius:4px;width:60%;height:.8125rem;animation:1.5s ease-in-out infinite proj-skeleton-pulse}.proj-edit-skeleton-input{background:var(--color-bg-tertiary);border-radius:8px;height:2.375rem;animation:1.5s ease-in-out .1s infinite proj-skeleton-pulse}@keyframes proj-skeleton-pulse{0%,to{opacity:.6}50%{opacity:1}}@media (max-width:768px){.proj-filter-row{grid-template-columns:1fr}.proj-header,.proj-results-bar{flex-direction:column;align-items:flex-start}.proj-table th,.proj-table td{padding:.625rem .75rem}.proj-edit-grid,.proj-edit-skeleton{grid-template-columns:1fr}.proj-edit-actions{flex-direction:column-reverse}.proj-edit-actions .btn{justify-content:center;width:100%}}.te-topbar{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1rem;display:flex}.te-title-area{flex:1;min-width:0}.te-title-label-wrap{cursor:pointer;border-radius:8px;align-items:center;gap:.5rem;padding:.25rem 0;transition:background .15s;display:inline-flex}.te-title-label-wrap:hover{background:var(--color-bg-tertiary);padding-left:.5rem;padding-right:.5rem}.te-title-label{color:var(--color-text);word-break:break-word;font-size:1.375rem;font-weight:700;line-height:1.3}.te-title-action{border:1px solid var(--color-border);width:28px;height:28px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .15s;display:inline-flex}.te-title-action:hover{background:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary)}.te-title-input-wrap{align-items:center;gap:.375rem;display:flex}.te-title-input{color:var(--color-text);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;outline:none;flex:1;padding:.35rem .625rem;font-family:inherit;font-size:1.375rem;font-weight:700;transition:border-color .15s,box-shadow .15s}.te-title-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.te-title-input--error{border-color:var(--color-error)!important;box-shadow:0 0 0 3px var(--color-error-bg)!important}.te-title-error{color:var(--color-error);margin-top:.25rem;font-size:.75rem;display:block}.te-timer-area{background:var(--color-card);border:1px solid var(--color-border);border-radius:12px;flex-shrink:0;align-items:center;gap:.75rem;padding:.625rem 1rem;display:flex}.te-timer-display{color:var(--color-text-secondary);align-items:center;gap:.4rem;display:flex}.te-timer-value{font-variant-numeric:tabular-nums;color:var(--color-text);letter-spacing:.02em;font-size:1.375rem;font-weight:700}.te-timer-value--running{color:var(--color-primary)}.task-timer-btn{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:all .15s;display:inline-flex}.task-timer-btn--play{background:var(--color-success);color:#fff;border-color:var(--color-success)}.task-timer-btn--play:hover:not(:disabled){opacity:.9;box-shadow:var(--shadow-md)}.task-timer-btn--pause{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.task-timer-btn--pause:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:var(--shadow-md)}.task-timer-btn:disabled{opacity:.5;cursor:default}.te-form{flex-direction:column;flex:1;min-height:0;display:flex}.te-body{flex:1;align-items:stretch;gap:1.25rem;min-height:0;display:flex}.te-body-left{flex-direction:column;flex:3;min-width:0;display:flex}.te-description-wrap{flex-direction:column;flex:1;min-height:500px;display:flex}.te-description-wrap .richedit-wrapper,.te-description-wrap .richedit-editor-wrapper{flex-direction:column;flex:1;display:flex}.te-description-wrap .richedit-editor{flex:1;min-height:450px}.te-description-wrap .richedit-editor [data-lexical-editor]{min-height:450px}.te-body-right{flex-direction:column;flex:1;gap:.875rem;min-width:240px;display:flex}.task-edit-skeleton-layout{grid-template-columns:3fr 1fr;gap:1.25rem;display:grid}@media (max-width:768px){.te-topbar,.te-body{flex-direction:column}.te-body-right{min-width:100%}.te-description-wrap{min-height:200px}.task-edit-skeleton-layout{grid-template-columns:1fr}.te-timer-area{justify-content:space-between;width:100%}}.dash-totals-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.dash-stat-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:14px;align-items:center;gap:1rem;padding:1.25rem;transition:all .2s;display:flex}.dash-stat-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-primary);transform:translateY(-3px)}.dash-stat-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.dash-stat-icon--green{background:var(--color-success-bg);color:var(--color-success)}.dash-stat-icon--blue{background:var(--color-primary-light);color:var(--color-primary)}.dash-stat-content{flex:1;min-width:0}.dash-stat-label{color:var(--color-text-tertiary);margin-bottom:.15rem;font-size:.8rem}.dash-stat-value{color:var(--color-text);font-size:1.125rem;font-weight:600}.dash-stat-meta{color:var(--color-text-tertiary);margin-top:.15rem;font-size:.75rem}.dash-diff--positive{color:var(--color-success);font-weight:500}.dash-diff--negative{color:var(--color-error);font-weight:500}.dash-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);margin-bottom:1rem;font-size:.85rem;font-weight:600}.dash-projects-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.dash-project-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:14px;flex-direction:column;gap:.875rem;padding:1.25rem;transition:all .2s;display:flex}.dash-project-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-hover)}.dash-project-name{color:var(--color-text);font-size:1rem;font-weight:600}.dash-project-stats{flex-direction:column;gap:.625rem;display:flex}.dash-project-row{background:var(--color-bg-secondary);border-radius:10px;align-items:center;gap:.75rem;padding:.625rem .75rem;display:flex}.dash-project-row-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.dash-project-row-content{flex:1;min-width:0}.dash-project-row-label{color:var(--color-text-tertiary);font-size:.75rem}.dash-project-row-value{color:var(--color-text);font-size:.9375rem;font-weight:600}.dash-project-row-meta{color:var(--color-text-tertiary);margin-top:.1rem;font-size:.7rem}.dash-weeks-list{flex-direction:column;gap:1rem;margin-bottom:2rem;display:flex}.dash-week-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:14px;padding:1.25rem;transition:all .2s}.dash-week-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-hover)}.dash-week-header{color:var(--color-text);margin-bottom:.875rem;font-size:.9375rem;font-weight:600}.dash-week-totals{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.dash-week-mini{background:var(--color-bg-secondary);border-radius:10px;align-items:center;gap:.625rem;padding:.5rem .75rem;display:flex}.dash-week-mini-icon{border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.dash-week-mini-label{color:var(--color-text-tertiary);font-size:.7rem}.dash-week-mini-value{color:var(--color-text);font-size:.875rem;font-weight:600}.dash-week-projects{flex-direction:column;gap:.5rem;display:flex}.dash-week-project{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.625rem 0;display:flex}.dash-week-project-info{flex-direction:column;gap:.1rem;display:flex}.dash-week-project-name{color:var(--color-text);font-size:.875rem;font-weight:500}.dash-week-project-client{color:var(--color-text-tertiary);font-size:.75rem}.dash-week-project-values{text-align:right}.dash-week-project-amount{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:.875rem;font-weight:600}.dash-week-project-hours{color:var(--color-text-tertiary);font-size:.7rem}.dash-empty{text-align:center;color:var(--color-text-tertiary);padding:2rem 1rem;font-size:.875rem}.dash-loading{justify-content:center;align-items:center;padding:4rem 0;display:flex}.dash-loading-spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:36px;height:36px;animation:1s linear infinite spin}.dash-rate-input{width:180px}.dash-stat-card--highlight{border-left:3px solid var(--color-purple)}.dash-stat-card--border-green{border-left:3px solid var(--color-success)}.dash-stat-card--border-blue{border-left:3px solid var(--color-primary)}.dash-stat-icon--purple{background:var(--color-purple-bg);color:var(--color-purple)}.dash-charts-grid{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.dash-chart-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:14px;padding:1.25rem}.dash-chart-card-title{color:var(--color-text);margin-bottom:.25rem;font-size:.9rem;font-weight:600}.dash-chart-card-sub{color:var(--color-text-tertiary);margin-bottom:1rem;font-size:.75rem}.dash-chart-body{height:280px}.dash-chart-skeleton{background:var(--color-bg-tertiary);border-radius:8px;height:280px;animation:1.5s ease-in-out infinite proj-skeleton-pulse}.dash-heatmap-skeleton{background:var(--color-bg-tertiary);border-radius:8px;height:96px;animation:1.5s ease-in-out infinite proj-skeleton-pulse}.dash-chart-tooltip{background:var(--color-card);border:1px solid var(--color-border);box-shadow:var(--shadow-md);border-radius:8px;padding:.6rem .75rem;font-size:.75rem}.dash-chart-tooltip-title{color:var(--color-text);margin-bottom:.35rem;font-weight:600}.dash-chart-tooltip-row{color:var(--color-text-secondary);align-items:center;gap:.4rem;display:flex}.dash-chart-tooltip-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dash-heatmap-scroll{padding-bottom:.25rem;overflow-x:auto}.dash-heatmap-grid{grid-template-rows:repeat(7,12px);grid-auto-flow:column;gap:3px;width:max-content;display:grid}.dash-heat-cell{background:var(--color-bg-tertiary);border-radius:3px;width:12px;height:12px}.dash-heat-cell.level-1{background:var(--color-purple-bg)}.dash-heat-cell.level-2{background:var(--color-purple);opacity:.45}.dash-heat-cell.level-3{background:var(--color-purple);opacity:.7}.dash-heat-cell.level-4{background:var(--color-purple)}.dash-heatmap-legend{color:var(--color-text-tertiary);align-items:center;gap:.35rem;margin-top:.75rem;font-size:.7rem;display:flex}@media (max-width:768px){.dash-totals-grid,.dash-projects-grid,.dash-week-totals,.dash-charts-grid{grid-template-columns:1fr}}.richedit-wrapper{border:1px solid var(--color-border);background:var(--color-bg);border-radius:8px;transition:border-color .15s,box-shadow .15s;overflow:hidden}.richedit-wrapper:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.richedit-toolbar{border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary);flex-wrap:wrap;align-items:center;gap:.2rem;padding:.375rem .5rem;display:flex}.richedit-toolbar-btn{width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.richedit-toolbar-btn:hover{background:var(--color-bg-tertiary);color:var(--color-text)}.richedit-toolbar-btn:active{background:var(--color-primary-light);color:var(--color-primary)}.richedit-toolbar-separator{background:var(--color-border);flex-shrink:0;width:1px;height:20px;margin:0 .25rem}.richedit-editor-wrapper{min-height:200px;position:relative}.richedit-placeholder{color:var(--color-text-tertiary);pointer-events:none;-webkit-user-select:none;user-select:none;text-overflow:ellipsis;font-size:.875rem;position:absolute;top:.75rem;left:.875rem;overflow:hidden}.richedit-editor{min-height:200px;max-height:500px;color:var(--color-text);word-break:break-word;outline:none;padding:.75rem .875rem;font-family:inherit;font-size:.875rem;line-height:1.6;overflow-y:auto}.richedit-editor::-webkit-scrollbar{width:5px}.richedit-editor::-webkit-scrollbar-track{background:var(--color-bg-secondary)}.richedit-editor::-webkit-scrollbar-thumb{background:var(--color-border-hover);border-radius:3px}.richedit-paragraph{margin:0;padding:.125rem 0}.richedit-text-bold{font-weight:700}.richedit-text-italic{font-style:italic}.richedit-text-underline{text-decoration:underline}.richedit-text-strikethrough{text-decoration:line-through}.richedit-h1{margin:.5rem 0 .25rem;font-size:1.5rem;font-weight:700}.richedit-h2{margin:.4rem 0 .2rem;font-size:1.25rem;font-weight:600}.richedit-h3{margin:.3rem 0 .15rem;font-size:1.1rem;font-weight:600}.richedit-list-ul,.richedit-list-ol{margin:.25rem 0;padding-left:1.5rem}.richedit-list-item{margin:.15rem 0}.richedit-list-nested{margin:0}.richedit-list-item-checked,.richedit-list-item-unchecked{cursor:pointer;margin-top:.25rem;margin-bottom:.25rem;margin-left:-1.5rem;padding-left:1.75rem;line-height:1.6;list-style-type:none;position:relative}.richedit-list-item-checked:before,.richedit-list-item-unchecked:before{content:"";border:2px solid var(--color-border-hover);background:var(--color-bg);cursor:pointer;box-sizing:border-box;border-radius:4px;width:16px;height:16px;transition:all .15s;position:absolute;top:3px;left:0}.richedit-list-item-checked:before{background:var(--color-primary);border-color:var(--color-primary)}.richedit-list-item-checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:5px;left:5.5px;transform:rotate(45deg)}.richedit-list-item-checked{opacity:.55;text-decoration:line-through}.richedit-list-item-unchecked:hover:before{border-color:var(--color-primary)}.kanban-main-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden;padding:0!important}.kanban-page{flex-direction:column;flex:1;min-height:0;padding:.5rem;animation:.4s fadeIn;display:flex;overflow:hidden}.kanban-page .proj-header{margin-bottom:.375rem}.kanban-header-actions{align-items:center;gap:.5rem;display:flex;position:relative}.kanban-filter-clear-btn{border:1px solid var(--color-border);background:var(--color-bg-secondary);width:36px;height:36px;color:var(--color-text-secondary);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.kanban-filter-clear-btn:hover:not(:disabled){background:var(--color-error-bg);color:var(--color-error);border-color:var(--color-error)}.kanban-filter-clear-btn:disabled{opacity:.4;cursor:not-allowed}.kanban-filter-wrapper{position:relative}.kanban-filter-btn{border:1px solid var(--color-border);background:var(--color-bg-secondary);height:36px;color:var(--color-text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:0 .875rem;font-size:.8125rem;font-weight:500;transition:all .15s;display:inline-flex}.kanban-filter-btn:hover,.kanban-filter-btn--active{background:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary)}.kanban-filter-badge{background:var(--color-primary);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.6875rem;font-weight:700;line-height:1;display:inline-flex}.kanban-filter-menu{z-index:100;background:var(--color-card);border:1px solid var(--color-border);width:260px;box-shadow:var(--shadow-xl);border-radius:12px;flex-direction:column;gap:.875rem;padding:1rem;animation:.15s slideUp;display:flex;position:absolute;top:calc(100% + .5rem);right:0}.kanban-board{flex:1;align-items:stretch;gap:.875rem;min-height:0;padding-bottom:.5rem;display:flex;overflow:auto hidden}.kanban-board::-webkit-scrollbar{height:6px}.kanban-board::-webkit-scrollbar-track{background:var(--color-bg-secondary);border-radius:3px}.kanban-board::-webkit-scrollbar-thumb{background:var(--color-border-hover);border-radius:3px}.kanban-board::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.kanban-col{background:var(--color-card);border:1px solid var(--color-border);border-radius:12px;flex-direction:column;flex:1 1 0;min-width:240px;height:100%;transition:border-color .15s,background .15s;display:flex}.kanban-col--drag-over{border-color:var(--color-primary);background:var(--color-primary-light)}.kanban-col-header{border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary);border-radius:12px 12px 0 0;flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem .875rem;display:flex}.kanban-col-header-right{align-items:center;gap:.4rem;display:flex}.kanban-col-add-btn{width:22px;height:22px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.kanban-col-add-btn:hover{background:var(--color-bg-tertiary);color:var(--color-primary)}.kanban-col-title{color:var(--color-text);font-size:.8125rem;font-weight:600}.kanban-col-count{background:var(--color-bg-tertiary);min-width:20px;height:20px;color:var(--color-text-secondary);border-radius:999px;justify-content:center;align-items:center;padding:0 .35rem;font-size:.6875rem;font-weight:600;display:inline-flex}.kanban-cards{flex-direction:column;flex:1;gap:.5rem;min-height:60px;padding:.625rem;display:flex;overflow-y:auto}.kanban-cards::-webkit-scrollbar{width:4px}.kanban-cards::-webkit-scrollbar-track{background:var(--color-bg-secondary);border-radius:2px}.kanban-cards::-webkit-scrollbar-thumb{background:var(--color-border-hover);border-radius:2px}.kanban-cards::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.kanban-drop-indicator{background:var(--color-primary);opacity:.8;border-radius:2px;height:2px;margin:.1rem 0}.kanban-card{background:var(--color-bg);border:1px solid var(--color-border);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:10px;flex-direction:column;gap:.5rem;min-height:160px;padding:1rem 1rem .75rem;transition:box-shadow .15s,border-color .15s;display:flex;overflow:hidden}.kanban-card:hover{border-color:var(--color-border-hover);box-shadow:0 2px 8px #0000001a}.kanban-card:active{cursor:grabbing}.kanban-card--dragging{opacity:.35;cursor:grabbing}.kanban-card-title{color:var(--color-text);word-break:break-word;-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;font-size:.875rem;font-weight:500;line-height:1.45;display:-webkit-box;overflow:hidden}.kanban-card-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;margin-top:auto;padding-top:.5rem;display:flex}.kanban-card-timer-text{color:var(--color-text-tertiary);font-variant-numeric:tabular-nums;align-items:center;gap:.3rem;font-size:.8125rem;font-weight:500;display:inline-flex}.kanban-card-timer-text--running{color:var(--color-primary)}@keyframes timerPulse{0%,to{opacity:1}50%{opacity:.6}}.kanban-card-timer-text--running svg{animation:1.5s ease-in-out infinite timerPulse}.kanban-card-chips{flex-wrap:wrap;gap:.375rem;margin-top:.625rem;display:flex}.kanban-chip{white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;gap:.25rem;max-width:100%;padding:.2rem .5rem;font-size:.6875rem;font-weight:500;display:inline-flex;overflow:hidden}.kanban-chip--project{background:var(--color-primary-light);color:var(--color-primary)}.kanban-chip--client{background:var(--color-success-bg);color:var(--color-success)}.kanban-card-actions{flex-direction:row;flex-shrink:0;gap:.3rem;display:flex}.kanban-card-action-btn{border:1px solid var(--color-border);cursor:pointer;width:26px;height:26px;color:var(--color-text-tertiary);background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.kanban-card-action-btn:hover{color:var(--color-text);border-color:var(--color-border-hover);background:var(--color-bg-tertiary)}.kanban-card-action-btn:disabled{opacity:.4;cursor:default}.kanban-card-action-btn--play{color:var(--color-success)}.kanban-card-action-btn--play:hover{background:var(--color-success-bg);border-color:var(--color-success);color:var(--color-success)}.kanban-card-action-btn--pause{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-light)}.kanban-card-action-btn--pause:hover,.kanban-card-action-btn--edit:hover{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.kanban-card-action-btn--delete:hover{background:var(--color-error-bg);border-color:var(--color-error);color:var(--color-error)}.kanban-insert-form{flex-direction:column;gap:.5rem;display:flex}.kanban-card-skeleton{background:var(--color-bg-tertiary);border-radius:8px;height:64px;animation:1.5s ease-in-out infinite proj-skeleton-pulse}.kanban-card-skeleton:nth-child(2){height:48px;animation-delay:.15s}.kanban-empty{color:var(--color-text-tertiary);text-align:center;justify-content:center;align-items:center;padding:1.5rem 1rem;font-size:.8125rem;display:flex}.kanban-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.kanban-modal{background:var(--color-card);border:1px solid var(--color-border);width:calc(100% - 2rem);max-width:360px;box-shadow:var(--shadow-xl);text-align:center;border-radius:16px;padding:1.75rem;animation:.2s slideUp}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.kanban-modal-icon{background:var(--color-error-bg);width:48px;height:48px;color:var(--color-error);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1rem;display:flex}.kanban-modal-icon svg{width:22px;height:22px}.kanban-modal-title{color:var(--color-text);margin-bottom:.5rem;font-size:1.0625rem;font-weight:600}.kanban-modal-desc{color:var(--color-text-secondary);margin-bottom:1.5rem;font-size:.875rem;line-height:1.5}.kanban-modal-actions{gap:.75rem;display:flex}.kanban-modal-btn{cursor:pointer;border:1px solid #0000;border-radius:8px;flex:1;padding:.625rem 1rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .15s}.kanban-modal-btn--cancel{background:var(--color-bg-secondary);color:var(--color-text-secondary);border-color:var(--color-border)}.kanban-modal-btn--cancel:hover:not(:disabled){background:var(--color-bg-tertiary)}.kanban-modal-btn--delete{background:var(--color-error);color:#fff;border-color:var(--color-error)}.kanban-modal-btn--delete:hover:not(:disabled){opacity:.9}.kanban-modal-btn--confirm{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.kanban-modal-btn--confirm:hover:not(:disabled){background:var(--color-primary-hover)}.kanban-modal-btn:disabled{opacity:.5;cursor:default}.kanban-modal--insert{text-align:left;max-width:420px}.kanban-modal--insert .kanban-modal-title{text-align:left}.kanban-modal--insert .kanban-modal-desc{text-align:left;margin-bottom:1rem}.kanban-modal--insert .kanban-insert-form{flex-direction:column;gap:.75rem;display:flex}.kanban-modal--insert .kanban-modal-actions{margin-top:.5rem}
