fix a bunch of issues
This commit is contained in:
parent
91f88dc9ef
commit
2c3df28c48
66 changed files with 1546 additions and 542 deletions
|
|
@ -10,6 +10,10 @@
|
|||
margin-bottom: 16px;
|
||||
}
|
||||
|
||||
.macro-toolbar .app-select-field {
|
||||
min-width: min(260px, 100%);
|
||||
}
|
||||
|
||||
.field.inline.compact {
|
||||
grid-template-columns: 72px 140px;
|
||||
}
|
||||
|
|
@ -27,26 +31,26 @@
|
|||
overflow: hidden;
|
||||
border-radius: 6px;
|
||||
margin: 16px 0 10px;
|
||||
background: #d8e0dc;
|
||||
background: var(--color-border-subtle);
|
||||
}
|
||||
|
||||
.flash-segment.used {
|
||||
background: #a64545;
|
||||
background: var(--color-danger);
|
||||
}
|
||||
|
||||
.flash-segment.available {
|
||||
background: #60d394;
|
||||
background: var(--color-primary);
|
||||
}
|
||||
|
||||
.flash-segment.recycled {
|
||||
background: #d4b25f;
|
||||
background: var(--color-warning);
|
||||
}
|
||||
|
||||
.flash-summary {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
gap: 12px;
|
||||
color: #66736f;
|
||||
color: var(--color-small-text);
|
||||
font-size: 0.78rem;
|
||||
font-weight: 700;
|
||||
margin-bottom: 12px;
|
||||
|
|
@ -56,10 +60,10 @@
|
|||
min-height: 220px;
|
||||
max-height: 320px;
|
||||
overflow: auto;
|
||||
border: 1px solid #d8e0dc;
|
||||
border: 1px solid var(--color-border-subtle);
|
||||
border-radius: 6px;
|
||||
padding: 10px;
|
||||
background: #f4f7f5;
|
||||
background: var(--color-panel-subtle);
|
||||
white-space: pre-wrap;
|
||||
font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
|
||||
font-size: 0.82rem;
|
||||
|
|
@ -90,10 +94,10 @@
|
|||
|
||||
.macro-help pre {
|
||||
overflow: auto;
|
||||
border: 1px solid #d8e0dc;
|
||||
border: 1px solid var(--color-border-subtle);
|
||||
border-radius: 6px;
|
||||
padding: 10px;
|
||||
background: #f4f7f5;
|
||||
background: var(--color-panel-subtle);
|
||||
font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
|
||||
font-size: 0.82rem;
|
||||
}
|
||||
|
|
@ -106,8 +110,8 @@
|
|||
height: 18px;
|
||||
margin-left: 6px;
|
||||
border-radius: 999px;
|
||||
color: #1f5c4c;
|
||||
background: #dfe7e2;
|
||||
color: var(--color-metric);
|
||||
background: var(--color-secondary-bg);
|
||||
font-size: 0.75rem;
|
||||
font-weight: 700;
|
||||
cursor: help;
|
||||
|
|
@ -115,7 +119,7 @@
|
|||
|
||||
.field-error {
|
||||
margin: 0;
|
||||
color: #a64545;
|
||||
color: var(--color-danger);
|
||||
font-size: 0.82rem;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,49 +2,185 @@
|
|||
|
||||
.metric {
|
||||
margin-top: 12px;
|
||||
color: #1f5c4c;
|
||||
color: var(--color-metric);
|
||||
font-size: 1.45rem;
|
||||
font-weight: 800;
|
||||
}
|
||||
|
||||
.dpi-editor {
|
||||
.polling-options {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||||
gap: 16px;
|
||||
align-items: end;
|
||||
grid-template-columns: repeat(auto-fit, minmax(88px, 1fr));
|
||||
gap: 8px;
|
||||
margin-top: 14px;
|
||||
}
|
||||
|
||||
.dpi-controls {
|
||||
.polling-options button,
|
||||
.led-effect-grid button {
|
||||
min-height: 42px;
|
||||
border-radius: 6px;
|
||||
padding: 8px 12px;
|
||||
color: var(--color-secondary-text);
|
||||
background: var(--color-secondary-bg);
|
||||
cursor: pointer;
|
||||
font-weight: 700;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.polling-options button:hover,
|
||||
.polling-options button.active,
|
||||
.led-effect-grid button:hover,
|
||||
.led-effect-grid button.active {
|
||||
color: var(--color-active-text);
|
||||
background: var(--color-active);
|
||||
}
|
||||
|
||||
.dpi-panel {
|
||||
display: grid;
|
||||
gap: 18px;
|
||||
}
|
||||
|
||||
.dpi-card-header {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 12px;
|
||||
align-items: end;
|
||||
margin-top: 16px;
|
||||
gap: 16px;
|
||||
align-items: flex-start;
|
||||
}
|
||||
|
||||
.dpi-controls .field.inline {
|
||||
grid-template-columns: 72px 110px;
|
||||
.dpi-card-header h3 {
|
||||
margin-bottom: 6px;
|
||||
}
|
||||
|
||||
.stage-list {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
|
||||
grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
|
||||
gap: 8px;
|
||||
margin-top: 18px;
|
||||
}
|
||||
|
||||
.stage-list div {
|
||||
.dpi-stage-card {
|
||||
display: grid;
|
||||
gap: 4px;
|
||||
border: 1px solid #d8e0dc;
|
||||
gap: 10px;
|
||||
align-content: start;
|
||||
border: 1px solid var(--color-border-subtle);
|
||||
border-radius: 6px;
|
||||
padding: 10px;
|
||||
background: #f4f7f5;
|
||||
padding: 12px;
|
||||
background: var(--color-panel-subtle);
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.stage-list div.active {
|
||||
border-color: #226957;
|
||||
background: #e3f3ec;
|
||||
.dpi-add-stage {
|
||||
display: grid;
|
||||
min-height: 156px;
|
||||
place-items: center;
|
||||
align-content: center;
|
||||
gap: 6px;
|
||||
border: 1px dashed var(--color-border-subtle);
|
||||
border-radius: 6px;
|
||||
padding: 12px;
|
||||
color: var(--color-secondary-text);
|
||||
background: transparent;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.dpi-add-stage:disabled {
|
||||
cursor: not-allowed;
|
||||
opacity: 0.55;
|
||||
}
|
||||
|
||||
.dpi-add-stage span {
|
||||
display: grid;
|
||||
place-items: center;
|
||||
width: 44px;
|
||||
height: 44px;
|
||||
border-radius: 999px;
|
||||
color: var(--color-primary-text);
|
||||
background: var(--color-primary);
|
||||
font-size: 2rem;
|
||||
font-weight: 700;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.dpi-add-stage strong {
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
|
||||
.dpi-stage-card:hover,
|
||||
.dpi-stage-card:focus-visible,
|
||||
.dpi-add-stage:hover,
|
||||
.dpi-add-stage:focus-visible {
|
||||
border-color: var(--color-active);
|
||||
}
|
||||
|
||||
.dpi-stage-card.active {
|
||||
border-color: var(--color-active);
|
||||
background: var(--color-active-surface);
|
||||
}
|
||||
|
||||
.dpi-stage-card-header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
gap: 12px;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.dpi-stage-card-header span {
|
||||
color: var(--color-small-text);
|
||||
font-size: 0.78rem;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.dpi-stage-card-header strong {
|
||||
color: var(--color-metric);
|
||||
font-size: 0.95rem;
|
||||
}
|
||||
|
||||
.stage-delete {
|
||||
display: inline-grid;
|
||||
place-items: center;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
margin-left: auto;
|
||||
border-radius: 6px;
|
||||
color: var(--color-danger);
|
||||
background: transparent;
|
||||
cursor: pointer;
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
.dpi-stage-card:hover .stage-delete,
|
||||
.dpi-stage-card:focus-within .stage-delete {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.stage-delete:hover,
|
||||
.stage-delete:focus-visible {
|
||||
color: var(--color-danger-text);
|
||||
background: var(--color-danger);
|
||||
}
|
||||
|
||||
.stage-delete svg {
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
fill: none;
|
||||
stroke: currentColor;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-width: 2;
|
||||
}
|
||||
|
||||
.stage-advanced {
|
||||
display: grid;
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
.stage-advanced summary {
|
||||
color: var(--color-small-text);
|
||||
cursor: pointer;
|
||||
font-size: 0.78rem;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.stage-advanced .inline-pair {
|
||||
margin-top: 8px;
|
||||
}
|
||||
|
||||
.stage-list input {
|
||||
|
|
@ -62,19 +198,19 @@
|
|||
display: grid;
|
||||
gap: 6px;
|
||||
align-content: start;
|
||||
border: 1px solid #d8e0dc;
|
||||
border: 1px solid var(--color-border-subtle);
|
||||
border-radius: 6px;
|
||||
padding: 12px;
|
||||
background: #f4f7f5;
|
||||
background: var(--color-panel-subtle);
|
||||
}
|
||||
|
||||
.profile-admin-list div.active {
|
||||
border-color: #226957;
|
||||
background: #e3f3ec;
|
||||
border-color: var(--color-active);
|
||||
background: var(--color-active-surface);
|
||||
}
|
||||
|
||||
.profile-admin-list span {
|
||||
color: #66736f;
|
||||
color: var(--color-small-text);
|
||||
font-size: 0.78rem;
|
||||
}
|
||||
|
||||
|
|
@ -106,13 +242,13 @@
|
|||
gap: 4px;
|
||||
align-content: start;
|
||||
padding: 12px;
|
||||
border: 1px solid #d8e0dc;
|
||||
border: 1px solid var(--color-border-subtle);
|
||||
text-align: left;
|
||||
background: #f4f7f5;
|
||||
background: var(--color-panel-subtle);
|
||||
}
|
||||
|
||||
.button-tile span {
|
||||
color: #66736f;
|
||||
color: var(--color-small-text);
|
||||
font-size: 0.78rem;
|
||||
}
|
||||
|
||||
|
|
@ -125,8 +261,8 @@
|
|||
}
|
||||
|
||||
.button-tile.active {
|
||||
border-color: #226957;
|
||||
background: #e3f3ec;
|
||||
border-color: var(--color-active);
|
||||
background: var(--color-active-surface);
|
||||
}
|
||||
|
||||
.button-hypershift-toggle {
|
||||
|
|
@ -140,13 +276,13 @@
|
|||
|
||||
.category-grid button {
|
||||
padding: 0 12px;
|
||||
color: #25322f;
|
||||
background: #dfe7e2;
|
||||
color: var(--color-secondary-text);
|
||||
background: var(--color-secondary-bg);
|
||||
}
|
||||
|
||||
.category-grid button.active {
|
||||
color: #f8fbf9;
|
||||
background: #226957;
|
||||
color: var(--color-active-text);
|
||||
background: var(--color-active);
|
||||
}
|
||||
|
||||
.button-editor-grid {
|
||||
|
|
@ -192,71 +328,150 @@
|
|||
min-height: 18px;
|
||||
}
|
||||
|
||||
.led-region-tabs {
|
||||
.led-panel {
|
||||
display: grid;
|
||||
gap: 18px;
|
||||
}
|
||||
|
||||
.led-panel-header {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 12px;
|
||||
align-items: flex-start;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.led-panel-header h3 {
|
||||
margin-bottom: 4px;
|
||||
}
|
||||
|
||||
.led-region-tabs {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
|
||||
gap: 8px;
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
|
||||
.led-region-tabs button {
|
||||
min-height: 38px;
|
||||
padding: 8px 14px;
|
||||
border-radius: 6px;
|
||||
color: #25322f;
|
||||
background: #dfe7e2;
|
||||
cursor: pointer;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
display: grid;
|
||||
grid-template-columns: 16px minmax(0, 1fr);
|
||||
gap: 10px;
|
||||
align-items: center;
|
||||
white-space: nowrap;
|
||||
text-align: center;
|
||||
min-height: 42px;
|
||||
border: 1px solid var(--color-border-subtle);
|
||||
border-radius: 6px;
|
||||
padding: 8px 10px;
|
||||
color: var(--color-secondary-text);
|
||||
background: var(--color-panel-subtle);
|
||||
cursor: pointer;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.led-region-tabs button.active {
|
||||
color: #f8fbf9;
|
||||
background: #226957;
|
||||
border-color: var(--color-active);
|
||||
background: var(--color-active-surface);
|
||||
}
|
||||
|
||||
.led-options {
|
||||
display: grid;
|
||||
gap: 10px;
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
|
||||
.led-option {
|
||||
display: grid;
|
||||
grid-template-columns: max-content minmax(0, max-content) max-content;
|
||||
gap: 10px;
|
||||
align-items: center;
|
||||
justify-content: start;
|
||||
}
|
||||
|
||||
.led-option span {
|
||||
.led-region-tabs strong {
|
||||
min-width: 0;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
|
||||
.led-option input[type="color"] {
|
||||
width: 52px;
|
||||
min-width: 52px;
|
||||
.led-region-swatch {
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
border: 1px solid var(--color-input-border);
|
||||
border-radius: 999px;
|
||||
}
|
||||
|
||||
.led-section h4,
|
||||
.led-slider-label span,
|
||||
.led-color-control span {
|
||||
color: var(--color-small-text);
|
||||
font-size: 0.78rem;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.led-slider-label strong {
|
||||
font-size: 0.95rem;
|
||||
}
|
||||
|
||||
.led-section {
|
||||
display: grid;
|
||||
gap: 10px;
|
||||
}
|
||||
|
||||
.led-section h4 {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.led-effect-grid {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
.led-effect-grid button {
|
||||
min-height: 44px;
|
||||
}
|
||||
|
||||
.led-effect-grid button:disabled {
|
||||
cursor: default;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.led-controls {
|
||||
display: grid;
|
||||
gap: 12px;
|
||||
}
|
||||
|
||||
.led-color-control {
|
||||
display: grid;
|
||||
grid-template-columns: 120px 72px minmax(92px, 1fr);
|
||||
gap: 12px;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.led-color-control input[type="color"] {
|
||||
width: 64px;
|
||||
min-width: 64px;
|
||||
height: 42px;
|
||||
min-height: 42px;
|
||||
padding: 3px;
|
||||
}
|
||||
|
||||
.slider-row {
|
||||
display: grid;
|
||||
grid-template-columns: 90px 110px minmax(0, 1fr);
|
||||
gap: 12px;
|
||||
align-items: center;
|
||||
margin-bottom: 12px;
|
||||
.led-color-control strong {
|
||||
color: var(--color-small-text);
|
||||
font-size: 0.82rem;
|
||||
}
|
||||
|
||||
.slider-row input[type="range"] {
|
||||
.led-slider-row {
|
||||
display: grid;
|
||||
grid-template-columns: 120px minmax(180px, 1fr) 92px;
|
||||
gap: 12px;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.led-slider-label {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
gap: 8px;
|
||||
align-items: baseline;
|
||||
}
|
||||
|
||||
.led-slider-row input[type="range"] {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.led-slider-row input[type="number"] {
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
.stage-list span,
|
||||
.info-list dt {
|
||||
color: #66736f;
|
||||
color: var(--color-small-text);
|
||||
font-size: 0.78rem;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
|
@ -285,14 +500,16 @@
|
|||
@media (max-width: 760px) {
|
||||
.app-shell,
|
||||
.panel-grid,
|
||||
.dpi-editor,
|
||||
.field.inline,
|
||||
.info-list,
|
||||
.inline-pair {
|
||||
.inline-pair,
|
||||
.led-color-control,
|
||||
.led-slider-row {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
|
||||
.topbar,
|
||||
.led-panel-header,
|
||||
.profile-row {
|
||||
align-items: stretch;
|
||||
flex-direction: column;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,39 @@
|
|||
:root {
|
||||
color: #18201f;
|
||||
background: #eef1ee;
|
||||
color-scheme: light;
|
||||
--color-text: #18201f;
|
||||
--color-page: #eef1ee;
|
||||
--color-sidebar-text: #f4f7f5;
|
||||
--color-sidebar-bg: #12201d;
|
||||
--color-muted: #6f7f7a;
|
||||
--color-sidebar-muted: #9baca6;
|
||||
--color-primary-text: #09201a;
|
||||
--color-primary: #60d394;
|
||||
--color-secondary-text: #25322f;
|
||||
--color-secondary-bg: #dfe7e2;
|
||||
--color-danger-text: #fff8f8;
|
||||
--color-danger: #a64545;
|
||||
--color-nav-text: #dfe9e4;
|
||||
--color-nav-hover: #223b36;
|
||||
--color-status-border: #cbd5d0;
|
||||
--color-status-text: #33413d;
|
||||
--color-surface: #fbfdfb;
|
||||
--color-warning: #d4b25f;
|
||||
--color-warning-bg: #fff7de;
|
||||
--color-label: #52605c;
|
||||
--color-input-border: #bec9c4;
|
||||
--color-input-bg: #ffffff;
|
||||
--color-sidebar-input-text: #10201c;
|
||||
--color-active-text: #f8fbf9;
|
||||
--color-active: #226957;
|
||||
--color-panel-border: #d5ddd8;
|
||||
--color-border-subtle: #d8e0dc;
|
||||
--color-panel-subtle: #f4f7f5;
|
||||
--color-active-surface: #e3f3ec;
|
||||
--color-metric: #1f5c4c;
|
||||
--color-small-text: #66736f;
|
||||
color: var(--color-text);
|
||||
background: var(--color-page);
|
||||
accent-color: var(--color-primary);
|
||||
font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
||||
font-size: 16px;
|
||||
font-synthesis: none;
|
||||
|
|
@ -10,6 +43,43 @@
|
|||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
color-scheme: dark;
|
||||
--color-text: #e4ece8;
|
||||
--color-page: #0f1514;
|
||||
--color-sidebar-text: #f3faf6;
|
||||
--color-sidebar-bg: #0b1715;
|
||||
--color-muted: #9fb2ab;
|
||||
--color-sidebar-muted: #9eb2ab;
|
||||
--color-primary-text: #06130f;
|
||||
--color-primary: #69e6a2;
|
||||
--color-secondary-text: #dce7e2;
|
||||
--color-secondary-bg: #22302d;
|
||||
--color-danger-text: #fff8f8;
|
||||
--color-danger: #d05a5a;
|
||||
--color-nav-text: #d8e7e1;
|
||||
--color-nav-hover: #1b332f;
|
||||
--color-status-border: #37504a;
|
||||
--color-status-text: #d8e7e1;
|
||||
--color-surface: #161f1d;
|
||||
--color-warning: #e1bd66;
|
||||
--color-warning-bg: #3a2f14;
|
||||
--color-label: #b3c2bd;
|
||||
--color-input-border: #435750;
|
||||
--color-input-bg: #101917;
|
||||
--color-sidebar-input-text: #e6f0ec;
|
||||
--color-active-text: #f8fbf9;
|
||||
--color-active: #2f967c;
|
||||
--color-panel-border: #2a3a36;
|
||||
--color-border-subtle: #344942;
|
||||
--color-panel-subtle: #1b2925;
|
||||
--color-active-surface: #17392f;
|
||||
--color-metric: #7ce3b4;
|
||||
--color-small-text: #9badb0;
|
||||
}
|
||||
}
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
|
@ -42,8 +112,8 @@ button {
|
|||
flex-direction: column;
|
||||
gap: 18px;
|
||||
padding: 24px;
|
||||
color: #f4f7f5;
|
||||
background: #12201d;
|
||||
color: var(--color-sidebar-text);
|
||||
background: var(--color-sidebar-bg);
|
||||
}
|
||||
|
||||
.brand {
|
||||
|
|
@ -76,12 +146,12 @@ button {
|
|||
.brand p,
|
||||
.eyebrow,
|
||||
.subtle {
|
||||
color: #6f7f7a;
|
||||
color: var(--color-muted);
|
||||
font-size: 0.82rem;
|
||||
}
|
||||
|
||||
.sidebar .brand p {
|
||||
color: #9baca6;
|
||||
color: var(--color-sidebar-muted);
|
||||
}
|
||||
|
||||
.primary-action,
|
||||
|
|
@ -94,24 +164,25 @@ nav button,
|
|||
}
|
||||
|
||||
.primary-action {
|
||||
color: #09201a;
|
||||
background: #60d394;
|
||||
color: var(--color-primary-text);
|
||||
background: var(--color-primary);
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.secondary-action {
|
||||
padding: 0 14px;
|
||||
color: #25322f;
|
||||
background: #dfe7e2;
|
||||
color: var(--color-secondary-text);
|
||||
background: var(--color-secondary-bg);
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.secondary-action.danger {
|
||||
color: #fff8f8;
|
||||
background: #a64545;
|
||||
color: var(--color-danger-text);
|
||||
background: var(--color-danger);
|
||||
}
|
||||
|
||||
.primary-action:disabled,
|
||||
.secondary-action:disabled,
|
||||
nav button:disabled,
|
||||
select:disabled {
|
||||
cursor: not-allowed;
|
||||
|
|
@ -125,7 +196,7 @@ nav {
|
|||
}
|
||||
|
||||
nav button {
|
||||
color: #dfe9e4;
|
||||
color: var(--color-nav-text);
|
||||
background: transparent;
|
||||
text-align: left;
|
||||
padding: 0 12px;
|
||||
|
|
@ -133,10 +204,11 @@ nav button {
|
|||
|
||||
nav button:hover,
|
||||
nav button.active {
|
||||
background: #223b36;
|
||||
background: var(--color-nav-hover);
|
||||
}
|
||||
|
||||
.workspace {
|
||||
position: relative;
|
||||
min-width: 0;
|
||||
padding: 28px;
|
||||
overflow-x: hidden;
|
||||
|
|
@ -159,19 +231,50 @@ nav button.active {
|
|||
line-height: 1.15;
|
||||
}
|
||||
|
||||
.status {
|
||||
max-width: 420px;
|
||||
border: 1px solid #cbd5d0;
|
||||
border-radius: 6px;
|
||||
padding: 10px 12px;
|
||||
color: #33413d;
|
||||
background: #fbfdfb;
|
||||
overflow-wrap: anywhere;
|
||||
.toast-region {
|
||||
position: fixed;
|
||||
top: 20px;
|
||||
right: 24px;
|
||||
z-index: 20;
|
||||
display: grid;
|
||||
width: min(420px, calc(100vw - 48px));
|
||||
gap: 10px;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.status.busy {
|
||||
border-color: #d4b25f;
|
||||
background: #fff7de;
|
||||
.toast {
|
||||
display: grid;
|
||||
grid-template-columns: minmax(0, 1fr) 28px;
|
||||
gap: 12px;
|
||||
align-items: start;
|
||||
border: 1px solid var(--color-status-border);
|
||||
border-radius: 6px;
|
||||
padding: 10px 12px;
|
||||
color: var(--color-status-text);
|
||||
background: var(--color-surface);
|
||||
box-shadow: 0 12px 32px rgb(0 0 0 / 18%);
|
||||
overflow-wrap: anywhere;
|
||||
pointer-events: auto;
|
||||
}
|
||||
|
||||
.toast.busy {
|
||||
border-color: var(--color-warning);
|
||||
background: var(--color-warning-bg);
|
||||
}
|
||||
|
||||
.toast button {
|
||||
display: inline-grid;
|
||||
place-items: center;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
border-radius: 6px;
|
||||
color: inherit;
|
||||
background: transparent;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.toast button:hover {
|
||||
background: var(--color-secondary-bg);
|
||||
}
|
||||
|
||||
.field {
|
||||
|
|
@ -186,7 +289,7 @@ nav button.active {
|
|||
|
||||
.field span,
|
||||
.profile-row > span {
|
||||
color: #52605c;
|
||||
color: var(--color-label);
|
||||
font-size: 0.85rem;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
|
@ -196,11 +299,121 @@ textarea,
|
|||
select {
|
||||
width: 100%;
|
||||
min-height: 38px;
|
||||
border: 1px solid #bec9c4;
|
||||
border: 1px solid var(--color-input-border);
|
||||
border-radius: 6px;
|
||||
padding: 0 10px;
|
||||
color: #18201f;
|
||||
background: #ffffff;
|
||||
color: var(--color-text);
|
||||
background: var(--color-input-bg);
|
||||
}
|
||||
|
||||
.app-select-field {
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
.app-select {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.app-select-click-away {
|
||||
position: fixed;
|
||||
inset: 0;
|
||||
z-index: 29;
|
||||
border-radius: 0;
|
||||
padding: 0;
|
||||
background: transparent;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.app-select-trigger {
|
||||
display: grid;
|
||||
grid-template-columns: minmax(0, 1fr) 18px;
|
||||
gap: 10px;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
min-height: 38px;
|
||||
border: 1px solid var(--color-input-border);
|
||||
border-radius: 6px;
|
||||
padding: 0 10px;
|
||||
color: var(--color-text);
|
||||
background: var(--color-input-bg);
|
||||
cursor: pointer;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.app-select.open .app-select-trigger {
|
||||
position: relative;
|
||||
z-index: 31;
|
||||
}
|
||||
|
||||
.sidebar .app-select-trigger {
|
||||
color: var(--color-sidebar-input-text);
|
||||
}
|
||||
|
||||
.app-select-trigger:disabled {
|
||||
cursor: not-allowed;
|
||||
opacity: 0.55;
|
||||
}
|
||||
|
||||
.app-select-trigger span {
|
||||
min-width: 0;
|
||||
overflow: hidden;
|
||||
color: inherit;
|
||||
font-size: 0.9rem;
|
||||
font-weight: 600;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.app-select-trigger .app-select-arrow {
|
||||
color: var(--color-label);
|
||||
font-size: 0.75rem;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.app-select-menu {
|
||||
position: absolute;
|
||||
z-index: 30;
|
||||
top: calc(100% + 4px);
|
||||
right: 0;
|
||||
left: 0;
|
||||
display: grid;
|
||||
max-height: 260px;
|
||||
overflow: auto;
|
||||
border: 1px solid var(--color-input-border);
|
||||
border-radius: 6px;
|
||||
padding: 4px;
|
||||
background: var(--color-input-bg);
|
||||
box-shadow: 0 16px 32px rgb(0 0 0 / 24%);
|
||||
}
|
||||
|
||||
.app-select-menu button {
|
||||
min-height: 36px;
|
||||
border-radius: 4px;
|
||||
padding: 8px 10px;
|
||||
color: var(--color-text);
|
||||
background: transparent;
|
||||
cursor: pointer;
|
||||
overflow-wrap: anywhere;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.app-select-menu button:hover,
|
||||
.app-select-menu button.active {
|
||||
color: var(--color-active-text);
|
||||
background: var(--color-active);
|
||||
}
|
||||
|
||||
select,
|
||||
option,
|
||||
optgroup {
|
||||
color-scheme: light dark;
|
||||
}
|
||||
|
||||
option,
|
||||
optgroup {
|
||||
color: var(--color-text);
|
||||
background: var(--color-input-bg);
|
||||
}
|
||||
|
||||
textarea {
|
||||
|
|
@ -210,7 +423,15 @@ textarea {
|
|||
}
|
||||
|
||||
.sidebar select {
|
||||
color: #10201c;
|
||||
color: var(--color-sidebar-input-text);
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
select,
|
||||
option,
|
||||
optgroup {
|
||||
color-scheme: dark;
|
||||
}
|
||||
}
|
||||
|
||||
.profile-row {
|
||||
|
|
@ -228,13 +449,13 @@ textarea {
|
|||
|
||||
.segments button {
|
||||
padding: 0 14px;
|
||||
color: #25322f;
|
||||
background: #dfe7e2;
|
||||
color: var(--color-secondary-text);
|
||||
background: var(--color-secondary-bg);
|
||||
}
|
||||
|
||||
.segments button.active {
|
||||
color: #f8fbf9;
|
||||
background: #226957;
|
||||
color: var(--color-active-text);
|
||||
background: var(--color-active);
|
||||
}
|
||||
|
||||
.panel-grid {
|
||||
|
|
@ -245,10 +466,10 @@ textarea {
|
|||
|
||||
.panel,
|
||||
.empty-state {
|
||||
border: 1px solid #d5ddd8;
|
||||
border: 1px solid var(--color-panel-border);
|
||||
border-radius: 8px;
|
||||
padding: 20px;
|
||||
background: #fbfdfb;
|
||||
background: var(--color-surface);
|
||||
}
|
||||
|
||||
.panel.wide,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue