:root{--bg:#f4f5f7;--surface:#fff;--border:#e2e4e9;--text:#1f2430;--text-muted:#6b7280;--primary:#3b3fd1;--primary-hover:#2f32ab;--danger:#dc2626;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}button{cursor:pointer;font-family:inherit}input,select,textarea{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:6px;padding:.45rem .6rem;font-family:inherit;font-size:.9rem}input:disabled,select:disabled,textarea:disabled{background:var(--bg);color:var(--text-muted)}label{color:var(--text-muted);margin-bottom:.25rem;font-size:.78rem;font-weight:600;display:block}.primary-button{background:var(--primary);color:#fff;border:none;border-radius:6px;padding:.55rem 1rem;font-weight:600}.primary-button:hover{background:var(--primary-hover)}.primary-button:disabled{opacity:.6;cursor:not-allowed}.secondary-button{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:.45rem .85rem;font-weight:600}.secondary-button:hover{background:var(--bg)}.danger-button{border:1px solid var(--danger);color:var(--danger);background:0 0;border-radius:6px;margin-top:1.5rem;padding:.5rem 1rem;font-weight:600}.danger-button:hover{background:#fef2f2}.link-button{color:var(--primary);background:0 0;border:none;padding:0;font-size:.85rem;font-weight:600}.login-page{background:linear-gradient(135deg,#3b3fd1,#1f2430);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--surface);border-radius:12px;flex-direction:column;gap:.35rem;width:340px;padding:2.5rem;display:flex;box-shadow:0 20px 60px #00000040}.login-card h1{margin:0 0 .25rem;font-size:1.3rem}.login-subtitle{color:var(--text-muted);margin:0 0 1rem;font-size:.85rem}.login-card input{margin-bottom:.75rem}.login-card button{margin-top:.5rem}.login-error{color:var(--danger);margin:.25rem 0;font-size:.85rem}.app-shell{min-height:100vh;display:flex}.sidebar{color:#fff;background:#1f2430;flex-direction:column;flex-shrink:0;width:220px;padding:1.25rem 1rem;display:flex}.sidebar-brand{letter-spacing:.05em;margin-bottom:2rem;font-size:1.1rem;font-weight:800}.sidebar nav{flex-direction:column;flex:1;gap:.25rem;display:flex}.sidebar nav a{color:#c4c7d4;border-radius:6px;padding:.6rem .75rem;font-size:.9rem;font-weight:500;text-decoration:none}.sidebar nav a:hover{color:#fff;background:#ffffff0f}.sidebar nav a.active{background:var(--primary);color:#fff}.sidebar-footer{border-top:1px solid #ffffff1a;flex-direction:column;gap:.4rem;padding-top:1rem;display:flex}.sidebar-user{color:#c4c7d4;font-size:.85rem}.sidebar-footer .link-button{color:#f4a3a3}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.5rem;display:flex}.topbar-filters{flex-wrap:wrap;gap:.6rem;display:flex}.content{flex:1;padding:1.5rem;overflow:auto}.loading-text{color:var(--text-muted)}.kanban-board{align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex;overflow-x:auto}.kanban-column{background:#eceef2;border-radius:10px;flex-direction:column;flex-shrink:0;width:260px;min-height:200px;display:flex}.kanban-column-over{outline:2px dashed var(--primary)}.kanban-column-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;justify-content:space-between;padding:.75rem .9rem;font-size:.85rem;font-weight:700;display:flex}.kanban-column-count{background:#d8dae2;border-radius:999px;padding:0 .5rem;font-size:.75rem}.kanban-column-body{flex-direction:column;flex:1;gap:.6rem;padding:0 .6rem .6rem;display:flex}.task-card{background:var(--surface);cursor:grab;touch-action:none;border-radius:8px;padding:.75rem;box-shadow:0 1px 2px #0000000f}.task-card:hover{box-shadow:0 2px 8px #0000001a}.task-card h4{margin:.4rem 0 .5rem;font-size:.9rem}.task-card-priority{color:#fff;text-transform:uppercase;border-radius:999px;padding:.1rem .45rem;font-size:.65rem;font-weight:700;display:inline-block}.task-card-meta{color:var(--text-muted);flex-direction:column;gap:.2rem;font-size:.78rem;display:flex}.task-card-due{border-radius:4px;margin-top:.5rem;padding:.15rem .4rem;font-size:.72rem;font-weight:700;display:inline-block}.due-overdue{color:#b91c1c;background:#fee2e2}.due-today{color:#c2410c;background:#ffedd5}.due-soon{color:#a16207;background:#fef9c3}.task-table,.admin-table{border-collapse:collapse;background:var(--surface);border-radius:8px;width:100%;overflow:hidden}.task-table th,.task-table td,.admin-table th,.admin-table td{border-bottom:1px solid var(--border);text-align:left;padding:.6rem .9rem;font-size:.87rem}.task-table tbody tr:hover{background:var(--bg);cursor:pointer}.empty-row{text-align:center;color:var(--text-muted);padding:2rem!important}.priority-dot{border-radius:50%;width:8px;height:8px;margin-right:.4rem;display:inline-block}.quickview-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;display:grid}.quickview-section{background:var(--surface);border-radius:10px;padding:1rem 1.25rem}.quickview-section h2{align-items:center;gap:.5rem;font-size:1rem;display:flex}.quickview-count{background:var(--bg);color:var(--text-muted);border-radius:999px;padding:.1rem .55rem;font-size:.75rem}.quickview-list{margin:.5rem 0 0;padding:0;list-style:none}.quickview-list li{border-bottom:1px solid var(--border);cursor:pointer;align-items:center;padding:.55rem .25rem;font-size:.87rem;display:flex}.quickview-list li:hover{background:var(--bg)}.quickview-title{flex:1}.quickview-meta{color:var(--text-muted);font-size:.78rem}.modal-backdrop,.panel-backdrop{z-index:50;background:#0f111a73;justify-content:center;align-items:flex-start;padding:3rem 1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.panel-backdrop{justify-content:flex-end;align-items:stretch;padding:0}.modal-card{background:var(--surface);border-radius:10px;flex-direction:column;gap:.3rem;width:480px;max-width:100%;padding:1.5rem;display:flex}.modal-card h2{margin:0 0 .5rem}.modal-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.modal-actions{justify-content:flex-end;gap:.6rem;margin-top:1rem;display:flex}.panel-card{background:var(--surface);width:460px;max-width:100%;height:100%;padding:2rem 1.5rem;position:relative;overflow-y:auto}.panel-close{color:var(--text-muted);background:0 0;border:none;font-size:1.5rem;line-height:1;position:absolute;top:1rem;right:1rem}.panel-title-input{border:none;width:100%;margin-bottom:.25rem;padding:.25rem 0;font-size:1.2rem;font-weight:700}.panel-title-input:focus{border-bottom:1px solid var(--primary);outline:none}.panel-description-input{resize:vertical;width:100%;color:var(--text-muted);border:none;margin-bottom:1rem;padding:.25rem 0}.panel-description-input:focus{outline:none}.panel-grid{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.25rem;display:grid}.panel-grid select,.panel-grid input{width:100%}.panel-section{border-top:1px solid var(--border);margin-top:1.25rem;padding-top:1rem}.panel-section h3{text-transform:uppercase;color:var(--text-muted);margin:0 0 .6rem;font-size:.85rem}.chip-list{flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem;display:flex}.chip{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:.25rem .7rem;font-size:.78rem}.chip-active{color:#fff}.inline-form{gap:.5rem;display:flex}.inline-form input{flex:1}.subtask-list{margin:0 0 .6rem;padding:0;list-style:none}.subtask-list li{padding:.3rem 0;font-size:.87rem}.subtask-list label{color:var(--text);align-items:center;gap:.5rem;font-weight:400;display:flex}.subtask-done{color:var(--text-muted);text-decoration:line-through}.comment-list{flex-direction:column;gap:.75rem;margin:0 0 .6rem;padding:0;list-style:none;display:flex}.comment-header{color:var(--text-muted);justify-content:space-between;font-size:.75rem;display:flex}.comment-list p{margin:.2rem 0 0;font-size:.87rem}.admin-tabs{gap:1rem;margin-bottom:1.25rem;display:flex}.admin-tabs a{color:var(--text-muted);border-bottom:2px solid #0000;padding:.4rem 0;font-weight:600;text-decoration:none}.admin-tabs a.active{color:var(--primary);border-color:var(--primary)}.admin-form{flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.75rem;display:flex}.admin-page h3{margin-top:2rem}.field-hint{color:var(--text-muted);margin:.5rem 0 0;font-size:.8rem}.badge-pending,.badge-ok{white-space:nowrap;border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:700}.badge-pending{color:#a16207;background:#fef9c3}.badge-ok{color:#15803d;background:#dcfce7}
