+ >
);
};
@@ -589,20 +612,15 @@ const V2SettingsPage: React.FC = () => {
-
-
- Plan
-
-
+
-
-
- Connectors
- Manage connected services
- ›
+
+ Connectors
+ Manage connected services
+
{developerAppsEnabled() && (
@@ -612,7 +630,7 @@ const V2SettingsPage: React.FC = () => {
)}
-
+
{isAdmin && (
)}
diff --git a/frontend/src/v2/v2.css b/frontend/src/v2/v2.css
index ca97177bf..0da91ff46 100644
--- a/frontend/src/v2/v2.css
+++ b/frontend/src/v2/v2.css
@@ -7682,839 +7682,6 @@ body.modern-ui.v2-canvas {
color: var(--v2-text-tertiary);
}
-/* ---------- Billing panel (/v2/settings) ---------- */
-/* `.v2-root button.` prefix throughout keeps each billing action's visual
- * treatment explicit. The global button reset is a low-specificity default,
- * so ordinary component rules can now override it without a specificity hack. */
-.v2-billing {
- border: 1px solid var(--v2-border);
- border-radius: var(--v2-radius-md);
- padding: 16px;
- margin-bottom: 16px;
- background: var(--v2-bg);
-}
-.v2-billing__head {
- display: flex;
- align-items: center;
- gap: 10px;
-}
-.v2-billing__title {
- margin: 0;
- font-size: 15px;
- font-weight: 700;
- color: var(--v2-text-primary);
-}
-.v2-billing__badge {
- font-size: 11px;
- font-weight: 600;
- letter-spacing: 0.04em;
- text-transform: uppercase;
- padding: 2px 8px;
- border-radius: 999px;
- background: var(--v2-surface);
- border: 1px solid var(--v2-border);
- color: var(--v2-text-secondary);
-}
-.v2-billing__badge--pro {
- background: var(--v2-accent-soft);
- border-color: var(--v2-accent);
- color: var(--v2-accent-text);
-}
-.v2-billing__note {
- margin: 8px 0 0;
- font-size: 13px;
- line-height: 1.5;
- color: var(--v2-text-secondary);
-}
-.v2-billing__warn {
- margin: 8px 0 0;
- font-size: 12px;
- color: var(--v2-text-secondary);
-}
-.v2-billing__error {
- margin: 8px 0 0;
- font-size: 12px;
- color: var(--v2-danger, #c0392b);
-}
-.v2-billing__actions {
- margin-top: 14px;
- display: flex;
- gap: 8px;
-}
-.v2-root button.v2-billing__btn {
- height: 34px;
- padding: 0 14px;
- border-radius: var(--v2-radius-sm);
- border: 1px solid var(--v2-border);
- background: var(--v2-bg);
- color: var(--v2-text-primary);
- font-size: 13px;
- font-weight: 600;
- cursor: pointer;
- transition: background 80ms ease, border-color 80ms ease;
-}
-.v2-root button.v2-billing__btn:hover:not(:disabled) {
- border-color: var(--v2-border-strong);
-}
-.v2-root button.v2-billing__btn--primary {
- background: var(--v2-ink);
- border-color: var(--v2-ink);
- color: var(--v2-on-ink);
-}
-.v2-root button.v2-billing__btn--primary:hover:not(:disabled) {
- background: var(--v2-ink-hover);
- border-color: var(--v2-ink-hover);
-}
-.v2-root button.v2-billing__btn:disabled {
- opacity: 0.7;
- cursor: default;
-}
-
-/* ---------- Settings (/v2/settings) ---------- */
-.v2-settings {
- width: min(100%, 1040px);
- margin: 0 auto;
- color: var(--v2-text-primary);
-}
-
-.v2-settings__layout {
- display: flex;
- flex-direction: column;
- gap: 24px;
- padding-top: 40px;
-}
-
-
-.v2-settings__section { min-width: 0; }
-
-.v2-settings__label {
- margin: 0 0 8px;
- color: var(--v2-text-tertiary);
- font-family: var(--v2-font-mono);
- font-size: 12px;
- font-weight: 500;
- line-height: 16px;
-}
-
-/* One bordered card per group; rows are separated by hairlines. */
-.v2-settings__group,
-.v2-settings__fold {
- min-width: 0;
- overflow: hidden;
- border: 1px solid var(--v2-border);
- border-radius: var(--v2-radius-lg);
- background: var(--v2-surface);
-}
-.v2-settings__group > * + *,
-.v2-settings__group .v2-settings__fold { border-top: 1px solid var(--v2-border-soft); }
-.v2-settings__group .v2-settings__fold { border-width: 0; border-radius: 0; border-top: 1px solid var(--v2-border-soft); }
-.v2-settings__group > .v2-settings__fold:first-child { border-top: 0; }
-.v2-settings__group > .v2-settings__account { border-top: 0; }
-.v2-settings__account > .v2-settings__row + .v2-settings__row,
-.v2-settings__account > .v2-settings__edit { border-top: 1px solid var(--v2-border-soft); }
-.v2-settings__row {
- display: flex;
- min-height: 48px;
- align-items: center;
- gap: 12px;
- padding: 8px 14px;
- color: var(--v2-text-primary);
- text-decoration: none;
-}
-.v2-settings__row > .v2-settings__row-label { flex: 0 0 auto; min-width: 84px; font: 600 13px/18px var(--v2-font); }
-.v2-settings__row > .v2-settings__row-value { flex: 1 1 auto; min-width: 0; color: var(--v2-text-muted); font-size: 12px; }
-.v2-settings__row-value--mono { font-family: var(--v2-font-mono); }
-.v2-settings__row-actions { display: inline-flex; gap: 8px; margin-left: auto; }
-.v2-settings__row > .v2-settings__secondary,
-.v2-settings__row > .v2-settings__icon-btn,
-.v2-settings__row > .v2-settings__row-actions { margin-left: auto; }
-.v2-settings__icon { flex: 0 0 auto; color: var(--v2-text-tertiary); }
-.v2-settings__summary { cursor: pointer; list-style: none; }
-.v2-settings__summary::-webkit-details-marker { display: none; }
-.v2-settings__summary > .v2-settings__icon:last-child { margin-left: auto; transition: transform .15s; }
-details[open] > .v2-settings__summary > .v2-settings__icon:last-child { transform: rotate(180deg); }
-.v2-settings__fold-body { padding: 12px 14px 14px; border-top: 1px solid var(--v2-border-soft); }
-.v2-settings__fold--actions .v2-settings__fold-body { display: flex; flex-direction: column; gap: 12px; }
-.v2-settings__row--link:hover { background: var(--v2-surface-hover); }
-.v2-settings__row--link:focus-visible { outline: 2px solid var(--v2-accent); outline-offset: -2px; }
-.v2-settings__row-arrow { margin-left: auto; color: var(--v2-text-tertiary); font-size: 18px; line-height: 18px; }
-.v2-settings__row--plan > .v2-billing { display: flex; flex: 1 1 auto; align-items: center; justify-content: space-between; gap: 12px; }
-.v2-settings__row--plan .v2-billing__head { margin: 0; }
-.v2-settings__row--plan .v2-billing__badge,
-.v2-settings__row--plan .v2-billing__btn { white-space: nowrap; }
-.v2-settings__row--plan .v2-billing__actions { margin: 0; }
-.v2-root .v2-settings button.v2-settings__icon-btn {
- display: inline-flex; align-items: center; justify-content: center;
- width: 32px; height: 32px; padding: 0; border: 0; border-radius: var(--v2-radius-sm);
- background: transparent; color: var(--v2-text-tertiary); cursor: pointer;
-}
-.v2-root .v2-settings button.v2-settings__icon-btn:hover { background: var(--v2-surface-hover); color: var(--v2-text-primary); }
-.v2-settings__edit { padding: 12px 14px 14px; }
-.v2-settings__edit--closed { display: none; }
-.v2-settings__group .v2-settings__developer-disclosure { margin: 0; padding: 12px 14px; }
-.v2-settings__token-detail { padding: 0 14px 12px; }
-@media (max-width: 560px) {
- .v2-settings__layout { padding-top: 20px; gap: 16px; }
- .v2-settings__row > .v2-settings__row-label { min-width: 0; }
- .v2-settings__token > .v2-settings__row { flex-wrap: wrap; }
- .v2-settings__row-actions { flex: 1 0 100%; justify-content: flex-end; }
- .v2-settings__row--plan > .v2-billing { flex-wrap: wrap; justify-content: flex-start; }
- .v2-settings__row--plan .v2-billing__actions { margin-left: auto; }
-}
-
-.v2-settings__developer-disclosure {
- margin-top: 20px;
- border-top: 1px solid var(--v2-border-soft);
- padding-top: 16px;
-}
-.v2-settings__developer-disclosure > summary {
- color: var(--v2-text-primary);
- cursor: pointer;
- font: 600 13px/18px var(--v2-font);
-}
-.v2-settings__developer-disclosure[open] > summary { margin-bottom: 16px; }
-
-.v2-settings__content {
- display: flex;
- flex-direction: column;
- gap: 20px;
- width: min(100%, 760px);
- min-width: 0;
- margin: 0 auto;
-}
-
-.v2-settings__account-row { min-height: 64px; }
-
-.v2-settings__avatar {
- width: 44px;
- height: 44px;
- flex: 0 0 44px;
- border: 0;
- border-radius: var(--v2-radius-sm);
- font-size: 12px;
-}
-
-.v2-settings__avatar img {
- width: 64px;
- height: 64px;
- border-radius: var(--v2-radius-sm);
-}
-
-.v2-settings__account-copy {
- min-width: 0;
-}
-
-.v2-settings__account {
- min-width: 0;
-}
-
-.v2-settings__avatar-file-input {
- display: none;
-}
-
-.v2-settings__avatar-actions {
- display: flex;
- gap: 8px;
- margin-top: 12px;
-}
-
-.v2-settings__avatar-description {
- margin: 12px 0 0;
- color: var(--v2-text-secondary);
- font-size: var(--v2-fs-body);
- line-height: var(--v2-lh-body);
-}
-
-.v2-settings__avatar-overlay {
- z-index: 1000;
- background: rgba(16, 24, 40, 0.55);
-}
-
-.v2-settings__avatar-dialog {
- width: min(560px, 100%);
-}
-
-.v2-settings__avatar-crop-stage {
- position: relative;
- width: 100%;
- aspect-ratio: 392 / 260;
- overflow: hidden;
- border-radius: var(--v2-radius-sm);
- background: var(--v2-surface-tint);
-}
-
-.v2-settings__avatar-crop {
- display: block;
- position: relative;
- z-index: 0;
- width: 100%;
- height: 100%;
- border: 0;
- background: transparent;
- cursor: grab;
- touch-action: none;
-}
-
-.v2-settings__avatar-crop:active {
- cursor: grabbing;
-}
-
-.v2-settings__avatar-crop-dim {
- position: absolute;
- z-index: 1;
- inset: 0;
- pointer-events: none;
-}
-
-.v2-settings__avatar-crop-dim span {
- position: absolute;
- display: block;
- background: rgba(16, 24, 40, 0.55);
-}
-
-.v2-settings__avatar-crop-dim-top {
- inset: 0 0 auto;
- height: 21%;
-}
-
-.v2-settings__avatar-crop-dim-right {
- inset: 21% 0 21% auto;
- width: 30.765%;
-}
-
-.v2-settings__avatar-crop-dim-bottom {
- inset: auto 0 0;
- height: 21%;
-}
-
-.v2-settings__avatar-crop-dim-left {
- inset: 21% auto 21% 0;
- width: 30.765%;
-}
-
-.v2-settings__avatar-crop-frame {
- position: absolute;
- z-index: 2;
- top: 50%;
- left: 50%;
- width: 38.47%;
- aspect-ratio: 1;
- transform: translate(-50%, -50%);
- border: 1px solid var(--v2-surface);
- pointer-events: none;
-}
-
-.v2-settings__avatar-crop-loading {
- margin: -8px 0 0;
- color: var(--v2-text-tertiary);
- font-size: var(--v2-fs-meta);
-}
-
-.v2-settings__avatar-zoom {
- display: flex;
- align-items: center;
- gap: 12px;
- width: 100%;
- color: var(--v2-text-secondary);
- font-family: var(--v2-font-mono);
- font-size: var(--v2-fs-label);
- line-height: var(--v2-lh-label);
- text-transform: uppercase;
-}
-
-.v2-root .v2-settings__avatar-zoom input[type="range"] {
- flex: 1;
- min-width: 0;
- height: 16px;
- margin: 0;
- padding: 0;
- appearance: none;
- -webkit-appearance: none;
- border: 0;
- background: transparent;
- cursor: pointer;
-}
-
-.v2-root .v2-settings__avatar-zoom input[type="range"]::-webkit-slider-runnable-track {
- height: 2px;
- background: linear-gradient(
- 90deg,
- var(--v2-ink) 0 var(--avatar-zoom-progress),
- var(--v2-border-soft) var(--avatar-zoom-progress) 100%
- );
-}
-
-.v2-root .v2-settings__avatar-zoom input[type="range"]::-moz-range-track {
- height: 2px;
- border: 0;
- background: var(--v2-border-soft);
-}
-
-.v2-root .v2-settings__avatar-zoom input[type="range"]::-moz-range-progress {
- height: 2px;
- background: var(--v2-ink);
-}
-
-.v2-root .v2-settings__avatar-zoom input[type="range"]::-webkit-slider-thumb {
- width: 16px;
- height: 16px;
- margin-top: -7px;
- appearance: none;
- -webkit-appearance: none;
- border: 0;
- border-radius: var(--v2-radius-sm);
- background: var(--v2-ink);
-}
-
-.v2-root .v2-settings__avatar-zoom input[type="range"]::-moz-range-thumb {
- width: 16px;
- height: 16px;
- border: 0;
- border-radius: var(--v2-radius-sm);
- background: var(--v2-ink);
-}
-
-.v2-root .v2-settings__avatar-zoom input[type="range"]:focus-visible {
- outline: 2px solid var(--v2-accent);
- outline-offset: 4px;
-}
-
-.v2-settings__avatar-footer {
- display: flex;
- align-items: flex-end;
- justify-content: space-between;
- gap: 12px;
- width: 100%;
-}
-
-.v2-settings__avatar-previews {
- display: flex;
- align-items: flex-end;
- justify-content: flex-start;
- gap: 12px;
-}
-
-.v2-settings__avatar-preview {
- display: flex;
- flex-direction: column;
- align-items: center;
- gap: 6px;
- color: var(--v2-text-tertiary);
- font-size: 12px;
- line-height: var(--v2-lh-label);
-}
-
-.v2-settings__avatar-preview-image {
- display: block;
- max-width: 64px;
- max-height: 64px;
- object-fit: cover;
- border-radius: var(--v2-radius-sm);
-}
-
-.v2-settings__avatar-preview-image--64 { width: 64px; height: 64px; }
-.v2-settings__avatar-preview-image--32 { width: 32px; height: 32px; }
-.v2-settings__avatar-preview-image--22 { width: 22px; height: 22px; }
-
-.v2-settings__avatar-dialog-actions {
- display: flex;
- justify-content: flex-end;
- gap: 12px;
-}
-
-.v2-root .v2-settings__avatar-dialog-actions button {
- min-width: 112px;
-}
-
-/* Neutralize App.css's bare auth-form shell: Settings owns this form's
- * surface and spacing, so it must stay flat inside its section. */
-.v2-settings form.v2-settings__account {
- max-width: none;
- margin: 0;
- padding: 0;
- border-radius: 0;
- background: transparent;
- box-shadow: none;
-}
-
-.v2-settings__account-name {
- overflow: hidden;
- color: var(--v2-text-primary);
- font-family: var(--v2-font-display);
- font-size: 14px;
- font-weight: 700;
- letter-spacing: -0.01em;
- text-overflow: ellipsis;
- white-space: nowrap;
-}
-
-.v2-settings__account-type,
-.v2-settings__meta {
- color: var(--v2-text-tertiary);
- font-family: var(--v2-font-mono);
- font-size: var(--v2-fs-meta);
- line-height: var(--v2-lh-meta);
-}
-
-/* Administration (admin-only): two bordered link rows, ink label + muted detail. */
-.v2-settings__admin-links { display: flex; flex-direction: column; gap: 8px; }
-.v2-settings__admin-link {
- display: flex;
- align-items: baseline;
- justify-content: space-between;
- gap: 12px;
- padding: 10px 12px;
- border: 1px solid var(--v2-border);
- border-radius: 4px;
- color: var(--v2-text-primary);
- text-decoration: none;
-}
-.v2-settings__admin-link:hover { background: var(--v2-surface-hover); }
-.v2-settings__admin-link-label { font: 600 13px/18px var(--v2-font); }
-.v2-settings__admin-link-detail { font-size: 12px; color: var(--v2-text-muted); text-align: right; }
-
-.v2-settings__account-type {
- margin-left: auto;
- text-transform: lowercase;
-}
-
-.v2-settings__account-fields {
- display: grid;
- grid-template-columns: repeat(2, minmax(0, 1fr));
- gap: 12px;
- margin-top: 16px;
-}
-
-.v2-settings__account-fields label,
-.v2-settings__account-email {
- display: grid;
- gap: 6px;
- min-width: 0;
- color: var(--v2-text-tertiary);
- font-family: var(--v2-font-mono);
- font-size: var(--v2-fs-meta);
- line-height: var(--v2-lh-meta);
-}
-
-.v2-settings__account-fields > label {
- align-content: start;
-}
-
-.v2-settings__account-fields > .v2-settings__account-email {
- grid-column: 1 / -1;
-}
-
-.v2-settings__account-fields input {
- box-sizing: border-box;
- width: 100%;
- min-height: 36px;
- padding: 7px 10px;
- border: 1px solid var(--v2-border);
- border-radius: var(--v2-radius-sm);
- background: var(--v2-surface);
- color: var(--v2-text-primary);
- font: 400 14px/20px var(--v2-font);
-}
-
-.v2-settings__account-fields input:focus {
- outline: none;
- border-color: var(--v2-accent);
- box-shadow: var(--v2-focus-ring);
-}
-
-.v2-settings__account-fields input[readonly] {
- color: var(--v2-text-secondary);
- cursor: default;
-}
-
-.v2-settings__email-control {
- display: flex;
- align-items: center;
- gap: 8px;
-}
-
-.v2-settings__email-control input {
- min-width: 0;
-}
-
-.v2-settings__email-control .v2-settings__secondary {
- align-self: stretch;
- flex: 0 0 auto;
- white-space: nowrap;
-}
-
-.v2-settings__username-control {
- display: flex;
- align-items: center;
- gap: 8px;
-}
-
-.v2-settings__username-control input {
- min-width: 0;
-}
-
-.v2-settings__username-control .v2-settings__secondary {
- align-self: stretch;
- flex: 0 0 auto;
- white-space: nowrap;
-}
-
-.v2-settings__field-help {
- color: var(--v2-text-muted);
- font: 400 11px/16px var(--v2-font-mono);
-}
-
-.v2-settings__section .v2-billing,
-.v2-settings__section .v2-devices {
- margin: 0;
- padding: 0;
- border: 0;
- border-radius: 0;
- background: transparent;
-}
-
-.v2-settings__section .v2-billing__badge {
- /* The artboard reads the plan as plain text in the row's value, not a chip. */
- padding: 0;
- border: 0;
- border-radius: 0;
- background: transparent;
- color: var(--v2-text-primary);
- font-family: var(--v2-font);
- font-size: 13.5px;
- font-weight: 600;
- letter-spacing: 0;
- line-height: 18px;
- text-transform: none;
-}
-
-.v2-settings__section .v2-billing__badge--pro {
- background: transparent;
- border-color: transparent;
- color: var(--v2-text-primary);
-}
-
-.v2-settings__section .v2-devices__item {
- border-radius: var(--v2-radius-sm);
-}
-
-.v2-settings__section .v2-devices__empty {
- padding: 0;
- background: transparent;
-}
-
-.v2-settings__token-value {
- display: grid;
- grid-template-columns: minmax(0, 1fr) auto auto;
- gap: 8px;
- align-items: center;
-}
-
-.v2-settings__token-value code {
- overflow: hidden;
- min-height: 40px;
- padding: 10px 12px;
- border: 1px solid var(--v2-border);
- border-radius: var(--v2-radius-sm);
- color: var(--v2-text-primary);
- font-family: var(--v2-font-mono);
- font-size: 12px;
- line-height: 18px;
- text-overflow: ellipsis;
- white-space: nowrap;
-}
-
-.v2-settings__token-meta {
- margin: 8px 0 0;
- color: var(--v2-text-tertiary);
- font-family: var(--v2-font);
- font-size: var(--v2-fs-body);
- line-height: var(--v2-lh-body);
-}
-
-.v2-settings__actions {
- display: flex;
- flex-wrap: wrap;
- gap: 8px;
- margin-top: 12px;
-}
-
-.v2-root button.v2-settings__primary,
-.v2-root button.v2-settings__secondary {
- min-height: 36px;
- padding: 0 12px;
- border: 1px solid var(--v2-border);
- border-radius: var(--v2-radius-sm);
- background: var(--v2-bg);
- color: var(--v2-text-primary);
- font: 600 13px/20px var(--v2-font);
- cursor: pointer;
-}
-
-.v2-root button.v2-settings__primary {
- border-color: var(--v2-ink);
- background: var(--v2-ink);
- color: var(--v2-on-ink);
-}
-
-.v2-root button.v2-settings__primary:hover:not(:disabled):not([aria-disabled="true"]) {
- border-color: var(--v2-ink-hover);
- background: var(--v2-ink-hover);
-}
-
-.v2-root button.v2-settings__secondary:hover:not(:disabled):not([aria-disabled="true"]) {
- border-color: var(--v2-border-strong);
-}
-
-.v2-root button.v2-settings__primary:focus-visible,
-.v2-root button.v2-settings__secondary:focus-visible {
- outline: none;
- border-color: var(--v2-accent);
- box-shadow: var(--v2-focus-ring);
-}
-
-.v2-root button.v2-settings__primary:disabled,
-.v2-root button.v2-settings__secondary:disabled,
-.v2-root button.v2-settings__primary[aria-disabled="true"],
-.v2-root button.v2-settings__secondary[aria-disabled="true"] {
- cursor: default;
- opacity: 0.55;
-}
-
-.v2-settings__message {
- margin: 0 0 12px;
- color: var(--v2-text-secondary);
- font-size: 13px;
- line-height: 20px;
-}
-
-.v2-settings__message--error {
- color: var(--v2-text-primary);
-}
-
-/* D215 Settings › Look: a label and a segment per row. Language moved here
- from the rail (TASK-691). */
-.v2-settings__look { display: flex; flex-direction: column; }
-.v2-settings__look .v2-settings__row { justify-content: flex-start; }
-.v2-settings__look .v2-settings__row > :last-child { margin-left: auto; }
-.v2-settings__look .v2-settings__row + .v2-settings__row { border-top: 1px solid var(--v2-border-soft); }
-
-
-/* Settings owns the connected-apps controls without inheriting the legacy
- * page chrome: its section label is the only page-level heading. */
-.v2-settings .apps-management--settings {
- color: var(--v2-text-primary);
- font-family: var(--v2-font);
-}
-
-.v2-settings .apps-management--settings .MuiCardContent-root {
- padding: 0;
-}
-
-.v2-settings .apps-management--settings .MuiCardActions-root {
- padding: 8px 0 0;
-}
-
-.v2-settings .apps-management--settings .apps-management__section + .apps-management__section {
- margin-top: 24px;
- padding-top: 24px;
- border-top: 1px solid var(--v2-border-soft);
-}
-
-.v2-settings .apps-management--settings .apps-management__integration {
- height: 100%;
- padding: 12px;
- border: 1px solid var(--v2-border);
-}
-
-.v2-settings .apps-management--settings .apps-management__developer-tips {
- margin: 14px 0 0;
- color: var(--v2-text-tertiary);
- font-family: var(--v2-font-mono);
- font-size: var(--v2-fs-meta);
- line-height: var(--v2-lh-meta);
-}
-
-.v2-settings .apps-management--settings .MuiTypography-root,
-.v2-settings .apps-management--settings .MuiInputBase-input,
-.v2-settings .apps-management--settings .MuiInputLabel-root,
-.v2-settings .apps-management--settings .MuiButton-root {
- font-family: inherit;
-}
-
-.v2-settings .apps-management--settings .MuiSvgIcon-colorPrimary,
-.v2-settings .apps-management--settings .MuiButton-textPrimary {
- color: var(--v2-ink);
-}
-
-/* Cobalt remains a mark; buttons that commit a change are ink. */
-.v2-settings .apps-management--settings .MuiButton-containedPrimary {
- border: 1px solid var(--v2-ink);
- border-radius: var(--v2-radius-sm);
- background: var(--v2-ink);
- color: var(--v2-on-ink);
-}
-
-.v2-settings .apps-management--settings .MuiButton-containedPrimary:hover {
- border-color: var(--v2-ink-hover);
- background: var(--v2-ink-hover);
-}
-
-@media (max-width: 560px) {
- .v2-settings .v2-devices__heading {
- display: flex;
- align-items: flex-start;
- }
-
- .v2-settings .v2-devices__heading > button {
- margin-left: auto;
- }
-}
-
-@media (max-width: 680px) {
- .v2-settings__layout {
- display: block;
- padding-top: 24px;
- }
-
- .v2-settings__token-value {
- grid-template-columns: 1fr 1fr;
- }
-
- .v2-settings__account-fields {
- grid-template-columns: 1fr;
- }
-
- .v2-settings__avatar-actions {
- display: grid;
- grid-template-columns: repeat(2, minmax(0, 1fr));
- }
-
- .v2-root .v2-settings__avatar-actions button.v2-settings__secondary {
- min-height: 44px;
- }
-
- .v2-settings__avatar-footer {
- flex-direction: column;
- align-items: stretch;
- }
-
- .v2-settings__avatar-dialog-actions {
- width: 100%;
- gap: 8px;
- }
-
- .v2-root .v2-settings__avatar-dialog-actions button {
- flex: 1;
- min-width: 0;
- min-height: 44px;
- }
-
- .v2-settings__token-value code {
- grid-column: 1 / -1;
- }
-}
-
/* ── V2 Pod Board — /v2/pods/:podId/board ──────────────────────────────── */
.v2-board {
@@ -10866,10 +10033,6 @@ details[open] > .v2-settings__summary > .v2-settings__icon:last-child { transfor
.v2-root:lang(zh) .v2-feature__header .v2-feature__title,
.v2-root:lang(zh) .v2-agent-settings > .v2-page-head h1,
.v2-root:lang(zh) .v2-agent-settings > .v2-agent-memory__head .v2-agent-memory__ident h1,
-.v2-root:lang(zh) .v2-settings__label,
-.v2-root:lang(zh) .v2-settings__account-name,
-.v2-root:lang(zh) .v2-settings__section .v2-billing__title,
-.v2-root:lang(zh) .v2-settings__section .v2-devices h2,
.v2-root:lang(zh) .v2-connector-row__name,
.v2-root:lang(zh) .v2-connector-aside__card h2,
.v2-root:lang(zh) .v2-feature__legacy .MuiTypography-h1,
@@ -10940,7 +10103,6 @@ details[open] > .v2-settings__summary > .v2-settings__icon:last-child { transfor
.v2-root:lang(zh) .v2-modal__hint,
.v2-root:lang(zh) .v2-invite-card__description,
.v2-root:lang(zh) .v2-login__field-hint,
-.v2-root:lang(zh) .v2-billing__note,
.v2-root:lang(zh) .v2-approval__summary,
.v2-root:lang(zh) .v2-approval__action {
line-height: 1.6;
@@ -14056,13 +13218,4 @@ details[open] > .v2-settings__summary > .v2-settings__icon:last-child { transfor
}
.v2-feature__header .v2-page-head__meta { min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.v2-feature__body { padding: 12px 12px 16px; }
- .v2-settings__layout { padding-top: 0; }
}
-
-/* D223 (TASK-688): the artboard's 64px head spans the pane edge to edge and only the
- body below it scrolls, so the settings route drops the feature body padding and the
- legacy wrapper's max-width, the same way connectors does. */
-.v2-feature--settings > .v2-feature__body { padding: 0; display: flex; flex-direction: column; overflow: hidden; }
-.v2-feature--settings .v2-feature__legacy { flex: 1 1 auto; width: 100%; max-width: none; min-height: 0; margin: 0; display: flex; flex-direction: column; }
-.v2-feature--settings .v2-settings { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; width: 100%; }
-.v2-feature--settings .v2-settings__layout { flex: 1 1 auto; min-height: 0; overflow-y: auto; padding-top: 24px; }