Split remaining large Sass files by responsibility
All checks were successful
Deploy Sokko G / deploy (push) Successful in 16s

This commit is contained in:
Shinuwa 2026-08-25 09:45:59 +02:00
parent a0d7e80a1a
commit fcabbe8029
37 changed files with 3248 additions and 3103 deletions

View file

@ -0,0 +1,148 @@
// Rôle : stylise la carte de noeud, ses états et ses actions au survol.
.goal-tree-node {
position: relative;
display: flex;
--goal-tree-card-color: var(--color-accent-gold);
min-width: 104px;
flex-direction: column;
align-items: center;
}
.goal-tree-canvas.is-horizontal .goal-tree-node {
flex-direction: row;
align-items: center;
}
.goal-tree-node.is-text {
--goal-tree-card-color: var(--color-accent-cyan);
}
.goal-tree-node.is-checklist {
--goal-tree-card-color: #34d399;
}
.goal-tree-node-card {
position: relative;
z-index: 1;
display: grid;
width: 104px;
grid-template-columns: minmax(0, 1fr);
grid-template-rows: minmax(0, 1fr);
grid-template-areas:
"main";
gap: 6px;
align-items: stretch;
align-content: stretch;
min-width: 0;
min-height: 104px;
padding: 7px;
border: 1px solid color-mix(in srgb, var(--goal-tree-card-color) 38%, rgba(150, 165, 205, 0.16));
border-radius: var(--radius-lg);
background:
linear-gradient(135deg, color-mix(in srgb, var(--goal-tree-card-color) 10%, transparent), transparent 44%),
linear-gradient(160deg, rgba(139, 92, 246, 0.12), rgba(16, 20, 38, 0.72));
cursor: pointer;
box-shadow:
0 12px 22px rgba(0, 0, 0, 0.18),
inset 0 1px 0 rgba(255, 255, 255, 0.04);
transition:
border-color var(--duration-fast) var(--ease-standard),
background var(--duration-fast) var(--ease-standard),
box-shadow var(--duration-fast) var(--ease-standard);
}
.goal-tree-node-card.has-actions {
grid-template-rows: minmax(0, 1fr) 22px;
grid-template-areas:
"main"
"actions";
}
.goal-tree-node-hover-actions {
position: absolute;
z-index: 3;
right: 6px;
bottom: 7px;
left: 6px;
display: flex;
justify-content: space-between;
gap: 4px;
opacity: 0;
pointer-events: none;
transition: opacity var(--duration-fast) var(--ease-standard);
}
.goal-tree-node-card:hover .goal-tree-node-hover-actions,
.goal-tree-node-card:focus-within .goal-tree-node-hover-actions {
opacity: 1;
}
.goal-tree-node-hover-actions button {
width: 24px;
min-width: 24px;
min-height: 24px;
padding: 0;
border-color: rgba(165, 180, 252, 0.14);
background: rgba(7, 10, 24, 0.78);
pointer-events: none;
}
.goal-tree-node-card:hover .goal-tree-node-hover-actions button,
.goal-tree-node-card:focus-within .goal-tree-node-hover-actions button {
pointer-events: auto;
}
.goal-tree-node-hover-actions .ui-icon {
width: 13px;
height: 13px;
}
.goal-tree-node.is-text,
.goal-tree-node.is-checklist {
min-width: 184px;
}
.goal-tree-node.is-text > .goal-tree-node-card,
.goal-tree-node.is-checklist > .goal-tree-node-card {
width: 184px;
}
.goal-tree-node-card.is-viewing {
grid-template-columns: minmax(0, 1fr);
}
.goal-tree-node.is-selected > .goal-tree-node-card {
border-color: color-mix(in srgb, var(--goal-tree-card-color) 72%, rgba(246, 196, 83, 0.24));
box-shadow:
0 0 0 1px color-mix(in srgb, var(--goal-tree-card-color) 22%, transparent),
0 12px 22px rgba(0, 0, 0, 0.18);
}
.goal-tree-node.is-selected > .goal-tree-node-card.is-editing {
border-color: color-mix(in srgb, var(--goal-tree-card-color) 86%, var(--color-accent-gold));
background:
linear-gradient(135deg, color-mix(in srgb, var(--goal-tree-card-color) 20%, transparent), transparent 48%),
linear-gradient(160deg, rgba(139, 92, 246, 0.18), rgba(16, 20, 38, 0.82));
box-shadow:
0 0 0 2px color-mix(in srgb, var(--goal-tree-card-color) 36%, transparent),
0 0 22px color-mix(in srgb, var(--goal-tree-card-color) 18%, transparent),
0 16px 28px rgba(0, 0, 0, 0.22);
}
.goal-tree-node.is-complete > .goal-tree-node-card {
border-color: color-mix(in srgb, var(--goal-tree-card-color) 54%, rgba(34, 211, 238, 0.3));
background:
linear-gradient(135deg, color-mix(in srgb, var(--goal-tree-card-color) 12%, transparent), transparent 44%),
linear-gradient(160deg, rgba(139, 92, 246, 0.1), rgba(16, 20, 38, 0.72));
}
.goal-tree-node-card:hover,
.goal-tree-node-card:focus-within {
border-color: color-mix(in srgb, var(--goal-tree-card-color) 68%, rgba(246, 196, 83, 0.24));
background:
linear-gradient(135deg, color-mix(in srgb, var(--goal-tree-card-color) 16%, transparent), transparent 48%),
linear-gradient(160deg, rgba(139, 92, 246, 0.14), rgba(16, 20, 38, 0.78));
box-shadow:
0 0 0 1px color-mix(in srgb, var(--goal-tree-card-color) 16%, transparent),
0 14px 26px rgba(0, 0, 0, 0.2);
}