feat: refine short landscape access workspace

This commit is contained in:
lingniu
2026-07-19 04:08:39 +08:00
parent 8168acc107
commit 712721bc73
2 changed files with 600 additions and 0 deletions

View File

@@ -19431,3 +19431,596 @@
grid-template-columns: repeat(4, minmax(0, 1fr));
}
}
/*
* Short landscape access governance.
* Turn the stacked mobile summary into a compact evidence workspace: discovery
* shares one row, status scopes become a left rail, and the vehicle list keeps
* the majority of the first viewport. Detail and governance sheets use the
* landscape width for parallel context instead of forcing portrait stacking.
*/
@media (max-width: 900px) and (max-height: 480px) and (orientation: landscape) {
.v2-access-page-v3 {
gap: 5px;
padding: 5px 6px 6px;
}
.v2-access-discovery-shell {
display: grid;
grid-template-columns: minmax(260px, 1.08fr) minmax(220px, .92fr);
align-items: stretch;
gap: 5px;
border: 0;
background: transparent;
box-shadow: none;
}
.v2-access-discovery-shell > .v2-workspace-command-bar,
.v2-access-mobile-discovery > .v2-mobile-filter-toggle.semi-button {
height: 46px;
min-height: 46px;
margin: 0;
}
.v2-access-discovery-shell > .v2-workspace-command-bar {
border: 1px solid #dce6f2;
border-radius: 9px;
padding: 5px 6px 5px 10px;
}
.v2-access-command-bar .v2-workspace-command-copy {
gap: 1px;
}
.v2-access-command-bar .v2-workspace-command-copy > .semi-typography:first-child {
font-size: 12px;
}
.v2-access-command-bar .v2-workspace-command-copy > .semi-typography:last-child,
.v2-access-command-bar .v2-workspace-command-status,
.v2-access-command-bar .v2-workspace-command-meta {
display: none;
}
.v2-access-command-bar .v2-workspace-command-actions {
gap: 4px;
}
.v2-access-command-bar .v2-workspace-command-actions > .semi-button {
min-height: 34px;
height: 34px;
padding-inline: 8px !important;
}
.v2-access-mobile-discovery {
display: block;
}
.v2-access-mobile-discovery > .v2-mobile-filter-toggle.semi-button {
width: 100%;
border-radius: 9px;
padding: 5px 9px;
}
.v2-access-workspace-v3,
.v2-access-table-v3.semi-card,
.v2-access-table-v3 > .semi-card-body {
height: 100%;
min-height: 0;
}
.v2-access-table-v3 > .semi-card-body {
display: grid;
grid-template-columns: 112px minmax(0, 1fr);
grid-template-rows: minmax(0, 1fr) 38px;
}
.v2-access-table-v3 > .semi-card-body > .v2-workspace-panel-header {
display: none;
}
.v2-access-status-tabs {
min-height: 0;
grid-column: 1;
grid-row: 1;
grid-template-columns: minmax(0, 1fr);
grid-template-rows: repeat(4, minmax(0, 1fr));
border-right: 1px solid #e4eaf2;
border-bottom: 0;
}
.v2-access-status-tabs .v2-metric-action.semi-button {
height: auto;
min-height: 0;
padding: 3px 8px;
}
.v2-access-status-tabs .v2-metric-action + .v2-metric-action::before {
inset: 0 8px auto;
width: auto;
height: 1px;
}
.v2-access-status-tabs .v2-metric-action-content {
justify-content: flex-start;
gap: 5px;
}
.v2-access-status-tabs small {
font-size: 8px;
}
.v2-access-status-tabs strong {
margin-left: auto;
font-size: 12px;
}
.v2-access-table-scroll-v3.is-mobile-scroll {
min-height: 0;
grid-column: 2;
grid-row: 1;
overflow-y: auto;
}
.v2-access-mobile-list {
gap: 4px;
padding: 4px;
}
.v2-access-mobile-card.semi-card {
border-radius: 8px;
contain-intrinsic-size: auto 62px;
}
.v2-access-mobile-card-content {
display: grid;
grid-template-columns: minmax(142px, .72fr) minmax(0, 1.28fr);
grid-template-rows: auto auto;
align-items: center;
gap: 2px 7px;
padding: 5px 7px;
}
.v2-access-mobile-card-content > header {
min-width: 0;
grid-column: 1;
grid-row: 1;
gap: 4px;
}
.v2-access-mobile-card-content > header > span:first-child {
min-width: 0;
}
.v2-access-mobile-card-content > header strong {
font-size: 12px;
line-height: 1.15;
}
.v2-access-mobile-card-content > header small {
margin-top: 1px;
font-size: 7px;
line-height: 1.15;
}
.v2-access-mobile-card-content > header .v2-access-connection-tag.semi-tag {
min-height: 18px;
padding-inline: 4px;
font-size: 7px;
}
.v2-access-mobile-card-content > p {
min-width: 0;
grid-column: 1;
grid-row: 2;
font-size: 8px;
line-height: 11px;
}
.v2-access-mobile-protocols {
min-width: 0;
grid-column: 2;
grid-row: 1 / 3;
grid-template-columns: repeat(3, minmax(0, 1fr));
align-self: stretch;
gap: 3px;
padding-top: 0;
}
.v2-access-mobile-list .v2-access-protocol-cell {
align-content: center;
gap: 1px 3px;
border-radius: 5px;
padding: 3px 4px;
}
.v2-access-mobile-list .v2-access-protocol-label,
.v2-access-mobile-list .v2-access-protocol-cell > span,
.v2-access-mobile-list .v2-access-protocol-cell > strong {
font-size: 7px;
line-height: 9px;
}
.v2-access-mobile-list .v2-access-protocol-cell > span i {
width: 4px;
height: 4px;
}
.v2-access-table-v3 > .semi-card-body > footer:has(.v2-table-pagination-controls) {
min-height: 38px;
grid-column: 1 / -1;
grid-row: 2;
padding: 2px 6px;
}
.v2-access-table-v3 > .semi-card-body > footer .v2-table-pagination-button.semi-button,
.v2-access-table-v3 > .semi-card-body > footer .v2-table-pagination-current {
height: 30px;
min-height: 30px;
}
.v2-access-detail-sidesheet.semi-sidesheet-bottom .semi-sidesheet-inner,
.v2-access-governance-sidesheet.semi-sidesheet-bottom .semi-sidesheet-inner,
.v2-access-mobile-filter-sidesheet.semi-sidesheet-bottom .semi-sidesheet-inner {
height: 100dvh !important;
max-height: 100dvh;
border-radius: 0;
}
:is(
.v2-access-detail-sidesheet,
.v2-access-governance-sidesheet,
.v2-access-mobile-filter-sidesheet
).semi-sidesheet-bottom .semi-sidesheet-header {
min-height: 54px;
padding: 7px 12px;
}
.v2-access-detail-sidesheet.semi-sidesheet-bottom .semi-sidesheet-body {
overflow: hidden;
padding: 0;
}
.v2-access-detail-sidesheet .v2-access-inspector-v3.is-sheet.semi-card,
.v2-access-detail-sidesheet .v2-access-inspector-v3.is-sheet > .semi-card-body {
height: 100%;
min-height: 0;
}
.v2-access-detail-sidesheet .v2-access-inspector-v3.is-sheet > .semi-card-body {
display: grid;
grid-template-columns: minmax(220px, .75fr) minmax(0, 1.25fr);
grid-template-rows: auto auto minmax(0, 1fr) auto;
overflow: hidden;
background: #f5f8fc;
}
.v2-access-detail-sidesheet .v2-access-inspector-focus.semi-card {
min-width: 0;
grid-column: 1;
grid-row: 1;
margin: 6px 5px 0 6px;
}
.v2-access-detail-sidesheet .v2-access-inspector-focus > .semi-card-body {
min-height: 76px;
gap: 7px;
padding: 8px 9px !important;
}
.v2-access-detail-sidesheet .v2-access-inspector-focus strong {
font-size: 11px;
line-height: 1.3;
}
.v2-access-detail-sidesheet .v2-access-inspector-focus span,
.v2-access-detail-sidesheet .v2-access-inspector-focus b {
font-size: 8px;
line-height: 1.3;
}
.v2-access-detail-sidesheet .v2-access-health-strip {
min-width: 0;
grid-column: 1;
grid-row: 2;
margin: 5px 5px 0 6px;
}
.v2-access-detail-sidesheet .v2-access-health-strip > span {
gap: 2px;
padding: 6px 4px;
}
.v2-access-detail-sidesheet .v2-access-health-strip small {
font-size: 7px;
}
.v2-access-detail-sidesheet .v2-access-health-strip strong {
font-size: 10px;
}
.v2-access-detail-sidesheet .v2-access-mobile-profile {
min-width: 0;
min-height: 32px;
grid-column: 1;
grid-row: 3;
align-self: start;
margin: 5px 5px 0 6px;
border: 1px solid #e0e7ef;
border-radius: 8px;
padding: 5px 7px;
}
.v2-access-detail-sidesheet .v2-access-mobile-profile small,
.v2-access-detail-sidesheet .v2-access-mobile-profile strong {
font-size: 8px;
}
.v2-access-detail-sidesheet .v2-access-protocol-heading {
min-height: 38px;
grid-column: 2;
grid-row: 1;
border-left: 1px solid #dfe7f0;
padding: 5px 7px;
}
.v2-access-detail-sidesheet .v2-access-protocol-heading strong {
font-size: 11px;
}
.v2-access-detail-sidesheet .v2-access-protocol-heading small {
font-size: 7px;
}
.v2-access-detail-sidesheet .v2-access-protocol-heading .semi-tag {
min-height: 19px;
padding-inline: 5px;
font-size: 7px;
}
.v2-access-detail-sidesheet .v2-access-protocol-details.semi-card-group {
min-height: 0;
grid-column: 2;
grid-row: 2 / 5;
grid-template-columns: repeat(2, minmax(0, 1fr));
align-content: start;
overflow-y: auto;
gap: 5px;
border-left: 1px solid #dfe7f0;
padding: 5px;
}
.v2-access-detail-sidesheet .v2-access-protocol-detail.semi-card {
min-width: 0;
border-radius: 7px;
}
.v2-access-detail-sidesheet .v2-access-protocol-detail.is-expanded {
grid-column: 1 / -1;
}
.v2-access-detail-sidesheet .v2-access-protocol-detail > .semi-card-header {
min-height: 32px;
padding-inline: 7px;
}
.v2-access-detail-sidesheet .v2-access-protocol-detail > .semi-card-header .semi-card-header-wrapper-title strong {
font-size: 9px;
}
.v2-access-detail-sidesheet .v2-access-protocol-detail .v2-access-protocol-tag.semi-tag {
min-height: 18px;
padding-inline: 4px;
font-size: 7px;
}
.v2-access-detail-sidesheet .v2-access-protocol-glance {
grid-template-columns: repeat(4, minmax(0, 1fr));
}
.v2-access-detail-sidesheet .v2-access-protocol-glance > span {
gap: 2px;
padding: 5px 6px;
}
.v2-access-detail-sidesheet .v2-access-protocol-glance small {
font-size: 7px;
}
.v2-access-detail-sidesheet .v2-access-protocol-glance strong {
font-size: 8px;
}
.v2-access-detail-sidesheet .v2-access-protocol-toggle.semi-button {
min-height: 27px;
height: 27px;
font-size: 8px;
}
.v2-access-detail-sidesheet .v2-access-protocol-missing {
min-height: 52px;
gap: 2px;
padding: 7px;
}
.v2-access-detail-sidesheet .v2-access-protocol-missing span,
.v2-access-detail-sidesheet .v2-access-protocol-missing small {
font-size: 8px;
}
.v2-access-detail-sidesheet .v2-access-inspector-v3.is-sheet > .semi-card-body > footer {
min-width: 0;
grid-column: 1;
grid-row: 4;
padding: 5px 7px;
font-size: 7px;
}
.v2-access-governance-sidesheet.semi-sidesheet-bottom .semi-sidesheet-body {
overflow: hidden;
padding: 5px;
}
.v2-access-governance-sidesheet.semi-sidesheet-bottom .semi-sidesheet-footer {
min-height: 48px;
padding: 5px 8px;
}
.v2-access-governance-sidesheet.semi-sidesheet-bottom .semi-sidesheet-footer .semi-button {
width: min(180px, 100%);
min-height: 36px;
margin-left: auto;
}
.v2-access-governance {
height: 100%;
min-height: 0;
grid-template-columns: minmax(150px, .35fr) minmax(0, 1fr);
grid-template-rows: minmax(0, 1fr) auto;
gap: 5px;
}
.v2-access-governance .v2-access-governance-summary.semi-card {
height: 100%;
min-height: 0;
grid-column: 1;
grid-row: 1 / 3;
}
.v2-access-governance .v2-access-governance-summary > .semi-card-body {
height: 100%;
grid-template-columns: minmax(0, 1fr);
grid-template-rows: repeat(3, minmax(0, 1fr));
}
.v2-access-governance .v2-access-governance-summary > .semi-card-body > div {
align-content: center;
gap: 3px;
padding: 7px 9px;
}
.v2-access-governance .v2-access-governance-summary > .semi-card-body > div + div {
border-top: 1px solid var(--v2-border);
border-left: 0;
}
.v2-access-governance .v2-access-governance-summary strong {
font-size: 14px;
}
.v2-access-governance .v2-access-identity-queue-v3 {
min-height: 0;
grid-column: 2;
grid-row: 1;
overflow: auto;
}
.v2-access-governance .v2-access-settings {
min-height: 0;
grid-column: 2;
grid-row: 2;
}
.v2-access-governance .v2-access-identity-queue-v3 .semi-collapse-header,
.v2-access-governance .v2-access-settings .semi-collapse-header {
min-height: 44px;
padding: 5px 8px;
}
.v2-access-governance .v2-access-collapse-title {
gap: 5px;
}
.v2-access-governance .v2-access-collapse-title small {
display: none;
}
.v2-access-governance .v2-access-collapse-title strong {
font-size: 10px;
}
.v2-access-governance .v2-access-collapse-title > .semi-tag {
min-height: 18px;
padding-inline: 5px;
font-size: 7px;
}
.v2-access-governance .v2-access-identity-grid {
gap: 4px;
padding: 4px;
}
.v2-access-governance .v2-access-identity-card > .semi-card-body {
display: grid;
grid-template-columns: minmax(110px, .55fr) minmax(130px, .7fr) minmax(0, 1fr);
align-items: stretch;
}
.v2-access-governance .v2-access-identity-card header,
.v2-access-governance .v2-access-identity-facts,
.v2-access-governance .v2-access-identity-card footer {
min-width: 0;
border: 0;
border-radius: 0;
padding: 6px 7px;
}
.v2-access-governance .v2-access-identity-facts,
.v2-access-governance .v2-access-identity-card footer {
border-left: 1px solid #e7edf4;
}
.v2-access-governance .v2-access-identity-facts {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.v2-access-governance .v2-access-identity-facts > span {
padding: 0 4px;
}
.v2-access-governance .v2-access-identity-card footer strong {
font-size: 8px;
line-height: 1.3;
}
.v2-access-mobile-filter-sidesheet.semi-sidesheet-bottom .semi-sidesheet-body {
padding: 7px;
}
.v2-access-mobile-filter-sidesheet.semi-sidesheet-bottom .semi-sidesheet-footer {
padding: 6px 9px;
}
.v2-access-mobile-filter-form {
gap: 7px;
padding: 8px;
}
.v2-access-mobile-filter-form > header {
display: none;
}
.v2-access-mobile-filter-form > div {
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 7px;
}
.v2-access-mobile-filter-form > div > label.is-search,
.v2-access-mobile-filter-form > div > label:last-child {
grid-column: auto;
}
.v2-access-mobile-filter-form > div > label {
gap: 4px;
font-size: 9px;
}
.v2-access-mobile-filter-form > div > label > .semi-input-wrapper,
.v2-access-mobile-filter-form > div > label > .semi-select {
min-height: 38px;
}
.v2-access-mobile-filter-footer > .semi-button {
min-height: 36px;
}
}