Files
Taskweaver/styles.css

418 lines
9.0 KiB
CSS

.taskweaver-container {
padding: var(--size-4-3);
height: 100%;
overflow-y: auto;
}
.taskweaver-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: var(--size-4-3);
padding-bottom: var(--size-4-2);
border-bottom: 1px solid var(--background-modifier-border);
}
.taskweaver-header h4 {
margin: 0;
color: var(--text-normal);
}
.taskweaver-button-group {
display: flex;
gap: var(--size-4-1);
}
.taskweaver-btn {
padding: var(--size-4-1) var(--size-4-2);
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: var(--radius-s);
cursor: pointer;
font-size: var(--font-ui-small);
transition: background-color 0.2s;
}
.taskweaver-btn:hover {
background-color: var(--interactive-accent-hover);
}
.taskweaver-btn-small {
padding: var(--size-2-1) var(--size-4-1);
background-color: var(--background-modifier-error);
color: var(--text-on-accent);
border: none;
border-radius: var(--radius-s);
cursor: pointer;
font-size: var(--font-ui-smaller);
transition: background-color 0.2s;
}
.taskweaver-btn-small:hover {
background-color: var(--background-modifier-error-hover);
}
.taskweaver-active-timer {
background: linear-gradient(135deg, var(--background-secondary) 0%, var(--background-primary-alt) 100%);
border: 2px solid var(--interactive-accent);
border-radius: var(--radius-l);
padding: var(--size-4-4);
margin-bottom: var(--size-4-4);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.taskweaver-active-timer-header {
text-align: center;
margin-bottom: var(--size-4-2);
}
.taskweaver-active-timer-label {
font-size: var(--font-ui-smaller);
text-transform: uppercase;
letter-spacing: 1px;
color: var(--text-muted);
font-weight: var(--font-semibold);
}
.taskweaver-active-timer-title {
text-align: center;
font-size: var(--font-ui-large);
font-weight: var(--font-semibold);
color: var(--text-normal);
margin-bottom: var(--size-4-3);
}
.taskweaver-active-timer-display {
text-align: center;
font-size: 48px;
font-family: var(--font-monospace);
font-weight: var(--font-bold);
color: var(--interactive-accent);
margin: var(--size-4-4) 0;
letter-spacing: 2px;
}
.taskweaver-active-timer-controls {
display: flex;
gap: var(--size-4-2);
justify-content: center;
margin-top: var(--size-4-3);
}
.taskweaver-timer-control-btn {
padding: var(--size-4-2) var(--size-4-4);
border: none;
border-radius: var(--radius-m);
cursor: pointer;
font-size: var(--font-ui-medium);
font-weight: var(--font-semibold);
transition: all 0.2s;
flex: 1;
max-width: 120px;
}
.taskweaver-timer-control-btn.pause {
background-color: var(--color-orange);
color: white;
}
.taskweaver-timer-control-btn.pause:hover {
background-color: var(--color-orange);
opacity: 0.8;
transform: translateY(-2px);
}
.taskweaver-timer-control-btn.stop {
background-color: var(--background-modifier-error);
color: white;
}
.taskweaver-timer-control-btn.stop:hover {
background-color: var(--background-modifier-error);
opacity: 0.8;
transform: translateY(-2px);
}
.taskweaver-timer-control-btn.complete {
background-color: var(--color-green);
color: white;
}
.taskweaver-timer-control-btn.complete:hover {
background-color: var(--color-green);
opacity: 0.8;
transform: translateY(-2px);
}
.taskweaver-category {
margin-bottom: var(--size-4-3);
background-color: var(--background-secondary);
border-radius: var(--radius-m);
padding: var(--size-4-2);
}
.taskweaver-category-header {
padding: var(--size-4-2);
margin-bottom: var(--size-4-2);
border-left: 3px solid var(--interactive-accent);
background-color: var(--background-primary);
border-radius: var(--radius-s);
}
.taskweaver-category-name {
font-weight: var(--font-semibold);
color: var(--text-normal);
font-size: var(--font-ui-medium);
}
.taskweaver-emoji {
font-size: var(--font-ui-medium);
}
.taskweaver-task {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--size-4-2);
margin-bottom: var(--size-2-2);
background-color: var(--background-primary);
border-radius: var(--radius-s);
border: 1px solid var(--background-modifier-border);
transition: background-color 0.2s;
}
.taskweaver-task:hover {
background-color: var(--background-primary-alt);
}
.taskweaver-task-info {
display: flex;
align-items: center;
gap: var(--size-4-2);
flex: 1;
}
.taskweaver-checkbox {
cursor: pointer;
width: 16px;
height: 16px;
}
.taskweaver-task-title {
color: var(--text-normal);
font-size: var(--font-ui-small);
}
.taskweaver-task-completed {
text-decoration: line-through;
color: var(--text-muted);
}
.taskweaver-task-controls {
display: flex;
align-items: center;
gap: var(--size-4-1);
}
.taskweaver-task-running {
opacity: 0.6;
background-color: var(--background-primary-alt) !important;
}
.taskweaver-timer-small {
font-family: var(--font-monospace);
color: var(--text-muted);
font-size: var(--font-ui-smaller);
min-width: 60px;
text-align: right;
}
.taskweaver-start-btn {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: var(--radius-s);
padding: var(--size-2-1) var(--size-4-2);
cursor: pointer;
font-size: var(--font-ui-small);
transition: all 0.2s;
font-weight: var(--font-semibold);
}
.taskweaver-start-btn:hover {
background-color: var(--interactive-accent-hover);
transform: translateY(-1px);
}
.taskweaver-delete-btn {
background: transparent;
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
padding: var(--size-2-1) var(--size-2-3);
cursor: pointer;
font-size: var(--font-ui-smaller);
color: var(--text-muted);
transition: all 0.2s;
}
.taskweaver-delete-btn:hover {
background-color: var(--background-modifier-error);
color: var(--text-on-accent);
border-color: var(--background-modifier-error);
}
.taskweaver-warning {
color: var(--text-error);
font-size: var(--font-ui-small);
margin: var(--size-4-2) 0;
}
.taskweaver-categories-list {
margin-bottom: var(--size-4-4);
}
.taskweaver-category-item {
display: flex;
align-items: center;
gap: var(--size-4-2);
padding: var(--size-4-2);
margin-bottom: var(--size-2-2);
background-color: var(--background-secondary);
border-radius: var(--radius-s);
border: 1px solid var(--background-modifier-border);
}
.taskweaver-color-preview {
width: 24px;
height: 24px;
border-radius: var(--radius-s);
border: 1px solid var(--background-modifier-border);
}
.taskweaver-category-info {
flex: 1;
color: var(--text-normal);
font-size: var(--font-ui-small);
}
.modal .taskweaver-warning {
padding: var(--size-4-2);
background-color: var(--background-secondary);
border-radius: var(--radius-s);
border-left: 3px solid var(--text-error);
}
.taskweaver-color-picker-container {
display: flex;
flex-direction: column;
gap: var(--size-4-3);
margin-top: var(--size-4-2);
}
.taskweaver-preset-colors {
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: var(--size-4-2);
}
.taskweaver-color-option {
width: 36px;
height: 36px;
border-radius: var(--radius-s);
cursor: pointer;
border: 2px solid transparent;
transition: all 0.2s;
position: relative;
}
.taskweaver-color-option:hover {
transform: scale(1.1);
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}
.taskweaver-color-option.selected {
border-color: var(--text-normal);
box-shadow: 0 0 0 2px var(--background-primary);
}
.taskweaver-custom-color {
display: flex;
align-items: center;
gap: var(--size-4-2);
}
.taskweaver-custom-color label {
color: var(--text-muted);
font-size: var(--font-ui-small);
}
.taskweaver-custom-color input[type="color"] {
width: 50px;
height: 36px;
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
cursor: pointer;
background: transparent;
}
.taskweaver-custom-color input[type="color"]::-webkit-color-swatch-wrapper {
padding: 2px;
}
.taskweaver-custom-color input[type="color"]::-webkit-color-swatch {
border: none;
border-radius: var(--radius-s);
}
.taskweaver-modal-section {
margin: var(--size-4-4) 0;
}
.taskweaver-modal-label {
display: block;
color: var(--text-normal);
font-weight: var(--font-semibold);
font-size: var(--font-ui-small);
margin-bottom: var(--size-4-2);
}
.taskweaver-categories-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
gap: var(--size-4-2);
margin-bottom: var(--size-4-3);
}
.taskweaver-category-btn {
display: flex;
align-items: center;
gap: var(--size-4-2);
padding: var(--size-4-3);
border: 2px solid var(--background-modifier-border);
border-radius: var(--radius-m);
background-color: var(--background-secondary);
cursor: pointer;
transition: all 0.2s;
}
.taskweaver-category-btn:hover {
transform: translateY(-2px);
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
.taskweaver-category-btn.selected {
border-width: 3px;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.taskweaver-category-btn-emoji {
font-size: var(--font-ui-large);
}
.taskweaver-category-btn-name {
color: var(--text-normal);
font-weight: var(--font-semibold);
font-size: var(--font-ui-small);
}