:root{--color-bg: #f8f9fa;--color-text: #2c3e50;--color-primary: #2c3e50;--color-secondary: #ecf0f1;--color-accent: #e74c3c;--color-highlight: #f1c40f;--color-white: #ffffff;--color-border: #bdc3c7;--font-family: "Inter", system-ui, Avenir, Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--color-bg);color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased}button{cursor:pointer;font-family:inherit}a{text-decoration:none;color:inherit}.container{max-width:1200px;margin:0 auto;padding:20px}.btn{padding:10px 20px;border:none;border-radius:4px;font-weight:600;transition:opacity .2s}.btn:hover{opacity:.9}.btn-primary{background-color:var(--color-primary);color:var(--color-white)}.btn-secondary{background-color:var(--color-secondary);color:var(--color-text)}.app-header{background-color:var(--color-white);border-bottom:1px solid var(--color-border);padding:1rem 0;margin-bottom:2rem}.header-content{display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.8rem;font-weight:800;background:linear-gradient(135deg,#2c3e50,#3498db);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:flex;align-items:center;gap:.5rem;transition:transform .3s ease,text-shadow .3s ease;letter-spacing:-.5px}.logo:hover{transform:scale(1.05);text-shadow:2px 2px 4px rgba(0,0,0,.1)}.main-nav{display:flex;gap:1.5rem}.nav-link{display:flex;align-items:center;gap:.5rem;color:var(--color-text);font-weight:500;padding:.5rem 1rem;border-radius:4px;transition:all .2s}.nav-link:hover,.nav-link.active{background-color:var(--color-secondary);color:var(--color-primary)}.matrix-page-container{display:flex;gap:2rem;height:calc(100vh - 150px)}.matrix-content{flex:1;min-width:0}.matrix-grid{position:relative;height:100%;padding:2rem;background-color:var(--color-white);border-radius:8px;box-shadow:0 4px 6px #0000000d;overflow:hidden}.matrix-background{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;z-index:0}.matrix-overlay{position:absolute;inset:2rem;z-index:1}.axis-label{position:absolute;font-weight:800;color:var(--color-white);text-transform:uppercase;font-size:.9rem;letter-spacing:1px;background:#2c3e50f2;padding:.5rem 1rem;border-radius:20px;box-shadow:0 4px 6px #0000001a;border:1px solid rgba(255,255,255,.2);transition:transform .2s ease,box-shadow .2s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;transform:translateZ(0)}.axis-label:hover{transform:scale(1.02) translateZ(0);box-shadow:0 5px 7px #0000001f;z-index:10!important}.y-axis-top{top:1rem;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#e74c3c,#c0392b)}.y-axis-bottom{bottom:1rem;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#95a5a6,#7f8c8d)}.x-axis-left{top:50%;left:1rem;transform:translateY(-50%) rotate(-90deg) translateZ(0);transform-origin:center;background:linear-gradient(135deg,#2980b9,#2c3e50);text-shadow:0 1px 2px rgba(0,0,0,.2)}.x-axis-right{top:50%;right:1rem;transform:translateY(-50%) rotate(90deg) translateZ(0);transform-origin:center;background:linear-gradient(135deg,#f39c12,#d35400);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.quadrant{width:100%;height:100%}.q1{grid-column:2;grid-row:1;background-color:#ffebee;border-left:1px dashed #ef9a9a;border-bottom:1px dashed #ef9a9a}.q2{grid-column:1;grid-row:1;background-color:#e3f2fd;border-right:1px dashed #90caf9;border-bottom:1px dashed #90caf9}.q3{grid-column:2;grid-row:2;background-color:#e8f5e9;border-left:1px dashed #a5d6a7;border-top:1px dashed #a5d6a7}.q4{grid-column:1;grid-row:2;background-color:#f5f5f5;border-right:1px dashed #e0e0e0;border-top:1px dashed #e0e0e0}.quadrant-header,.task-list{display:none}.task-card{position:absolute;width:120px;height:auto;min-height:40px;padding:.5rem;background-color:var(--color-white);border-radius:4px;box-shadow:0 2px 4px #0000001a;cursor:pointer;transition:transform .2s,z-index .2s;font-size:.8rem;z-index:10;border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;text-align:center}.task-card:hover{transform:scale(1.1);z-index:100;box-shadow:0 4px 12px #0003}.q1 .task-card{border-left-color:var(--color-accent)}.q2 .task-card{border-left-color:var(--color-highlight)}.task-title{font-weight:600;font-size:.9rem;margin-bottom:.25rem}.task-deadline{font-size:.8rem;color:#7f8c8d}.urgent-sidebar{width:300px;background-color:var(--color-white);border-radius:8px;box-shadow:0 4px 6px #0000000d;padding:1.5rem;border-top:4px solid var(--color-accent);height:fit-content;max-height:100%;overflow-y:auto}.sidebar-title{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;color:var(--color-accent);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-secondary)}.sidebar-list{display:flex;flex-direction:column;gap:.75rem}.sidebar-task{padding:.75rem;border-radius:4px;background-color:#fff5f5;cursor:pointer;transition:background-color .2s}.sidebar-task:hover{background-color:#ffecec}.sidebar-task.overdue{border:1px solid var(--color-accent)}.sidebar-task-header{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--color-accent);margin-bottom:.25rem}.sidebar-task-title{font-weight:600;font-size:.9rem}.page-container{max-width:800px;margin:0 auto}.back-btn{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:var(--color-primary);font-weight:600;margin-bottom:1rem;padding:0}.back-btn:hover{text-decoration:underline}.page-title{font-size:1.8rem;font-weight:700;margin-bottom:2rem;color:var(--color-primary)}.form-card{background-color:var(--color-white);padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000000d}.task-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem;flex:1}.form-row{display:flex;gap:1.5rem}label{font-weight:600;font-size:.9rem;color:var(--color-text)}input,textarea,select{padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-family:inherit;font-size:1rem;transition:border-color .2s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary)}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}.detail-card{background-color:var(--color-white);padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000000d}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--color-secondary)}.detail-title-section{display:flex;flex-direction:column;gap:.5rem}.detail-title{font-size:1.8rem;font-weight:700;color:var(--color-primary)}.detail-title.completed{text-decoration:line-through;color:#95a5a6}.priority-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;width:fit-content}.priority-badge.high{background-color:#fff5f5;color:var(--color-accent);border:1px solid var(--color-accent)}.priority-badge.low{background-color:#f0f9ff;color:#2980b9;border:1px solid #2980b9}.detail-actions{display:flex;gap:.5rem}.btn-danger{background-color:#fff5f5;color:var(--color-accent);border:1px solid var(--color-accent);padding:10px}.btn-danger:hover{background-color:var(--color-accent);color:var(--color-white)}.detail-content{display:flex;flex-direction:column;gap:1.5rem}.detail-section h3{font-size:.9rem;font-weight:700;color:#7f8c8d;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.description-text{white-space:pre-wrap;line-height:1.6}.sidebar-column{display:flex;flex-direction:column;gap:1.5rem;width:260px;flex-shrink:0}.completed-sidebar{width:100%;background:#ffffff80;padding:1rem;border-radius:8px;border:1px solid var(--color-border)}.sidebar-title{font-size:.85rem;color:#7f8c8d;margin-bottom:.8rem;font-weight:600;border-bottom:1px solid #eee;padding-bottom:.5rem}.completed-list{list-style:none;padding:0;margin:0}.completed-item{margin-bottom:.5rem}.completed-link{display:flex;align-items:center;gap:.5rem;color:#95a5a6;font-size:.85rem;text-decoration:none;transition:color .2s}.completed-link:hover{color:var(--color-primary)}.completed-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.completed-icon{flex-shrink:0;color:#2ecc71}@media(max-width:768px){.container{padding:1rem}.header-content{flex-direction:column;gap:1rem}.main-nav{width:100%;justify-content:center;gap:.5rem;flex-wrap:wrap}.nav-link{font-size:.85rem;padding:.4rem .8rem}.nav-link span{display:inline}.matrix-page-container{flex-direction:column;height:auto;gap:1.5rem}.matrix-content{height:70vh;min-height:400px}.matrix-grid{padding:.5rem}.axis-label{font-size:.7rem;padding:.25rem .5rem}.x-axis-left{left:.25rem}.x-axis-right{right:.25rem}.y-axis-top{top:.25rem}.y-axis-bottom{bottom:.25rem}.matrix-overlay{inset:1.5rem}.sidebar-column{width:100%;flex-direction:row;flex-wrap:wrap}.urgent-sidebar{width:100%;max-height:300px}.completed-sidebar{width:100%;display:block}.detail-header{flex-direction:column;gap:1rem}.detail-actions{width:100%;justify-content:flex-end}}.subtask-grid{display:flex;flex-direction:column;border:1px solid #ddd;border-radius:4px;overflow:hidden;background-color:#fff}.subtask-header{display:flex;background-color:#f8f9fa;border-bottom:2px solid #eee;font-weight:600;font-size:.85rem;color:#555}.subtask-body{display:flex;flex-direction:column}.subtask-row{display:flex;border-bottom:1px solid #eee;background-color:#fff;align-items:center}.subtask-row:last-child{border-bottom:none}.subtask-th,.subtask-cell{padding:8px;display:flex;align-items:center}.subtask-cell input{width:100%;border:1px solid #ddd;padding:6px;font-size:.9rem;border-radius:4px}.subtask-cell input:focus{border-color:var(--color-primary);outline:none}.th-check,.cell-check{width:50px;justify-content:center;flex-shrink:0}.th-title,.cell-title,.th-goal,.cell-goal{flex:1;min-width:150px}.th-est,.cell-est,.th-act,.cell-act{width:100px;flex-shrink:0}.th-prog,.cell-prog{width:80px;flex-shrink:0}@media(max-width:768px){.subtask-header{display:none}.subtask-row{flex-wrap:wrap;padding:1rem;gap:.5rem;border-bottom:6px solid #f0f0f0;align-items:stretch}.subtask-cell{padding:0}.cell-title{width:100%;order:1;margin-bottom:.25rem}.cell-title input{font-weight:700;font-size:1rem;border:none;border-bottom:1px solid #ddd;border-radius:0;padding-left:0}.cell-title input:focus{border-bottom-color:var(--color-primary)}.cell-goal{width:100%;order:2;margin-bottom:.5rem}.cell-goal input{font-size:.9rem;color:#666}.cell-check{order:3;width:auto;margin-right:.5rem;justify-content:flex-start}.cell-est{order:4;flex:1;margin-right:.5rem}.cell-act{order:5;flex:1;margin-right:.5rem}.cell-prog{order:6;width:70px}}
