opencode/packages/ui/src/components/tabs.css

96 lines
2.0 KiB
CSS
Raw Normal View History

2025-10-15 01:06:13 +08:00
[data-component="tabs"] {
2025-10-17 03:53:44 +08:00
width: 100%;
height: 100%;
2025-10-15 01:06:13 +08:00
display: flex;
flex-direction: column;
2025-10-17 03:53:44 +08:00
border-width: 1px;
border-style: solid;
border-radius: var(--radius-sm);
border-color: var(--border-weak-base);
2025-10-18 01:05:52 +08:00
background-color: var(--background-stronger);
2025-10-17 03:53:44 +08:00
overflow: clip;
2025-10-15 01:06:13 +08:00
2025-10-23 06:31:44 +08:00
[data-slot="list"] {
2025-10-17 03:53:44 +08:00
width: 100%;
2025-10-15 01:06:13 +08:00
position: relative;
display: flex;
align-items: center;
overflow-x: auto;
/* Hide scrollbar */
scrollbar-width: none;
-ms-overflow-style: none;
&::-webkit-scrollbar {
display: none;
}
/* After element to fill remaining space */
&::after {
content: "";
display: block;
flex-grow: 1;
2025-10-17 03:53:44 +08:00
height: 100%;
border-bottom: 1px solid var(--border-weak-base);
2025-10-18 01:05:52 +08:00
background-color: var(--background-base);
2025-10-17 03:53:44 +08:00
border-top-right-radius: var(--radius-sm);
2025-10-15 01:06:13 +08:00
}
&:empty::after {
2025-10-17 03:53:44 +08:00
display: none;
2025-10-15 01:06:13 +08:00
}
}
2025-10-23 06:31:44 +08:00
[data-slot="trigger"] {
2025-10-15 01:06:13 +08:00
position: relative;
2025-10-17 03:53:44 +08:00
height: 36px;
padding: 8px 12px;
2025-10-15 01:06:13 +08:00
display: flex;
align-items: center;
font-size: var(--text-sm);
font-weight: var(--font-weight-medium);
2025-10-17 03:53:44 +08:00
color: var(--text-weak);
2025-10-23 06:31:44 +08:00
2025-10-15 01:06:13 +08:00
white-space: nowrap;
flex-shrink: 0;
2025-10-17 03:53:44 +08:00
border-bottom: 1px solid var(--border-weak-base);
border-right: 1px solid var(--border-weak-base);
background-color: var(--background-weak);
2025-10-15 01:06:13 +08:00
transition:
background-color 0.15s ease,
color 0.15s ease;
&:disabled {
pointer-events: none;
2025-10-17 03:53:44 +08:00
color: var(--text-weaker);
2025-10-15 01:06:13 +08:00
}
&:focus-visible {
outline: none;
2025-10-17 03:53:44 +08:00
box-shadow: 0 0 0 2px var(--border-focus);
2025-10-15 01:06:13 +08:00
}
&[data-selected] {
2025-10-17 03:53:44 +08:00
color: var(--text-base);
background-color: transparent;
2025-10-15 01:06:13 +08:00
border-bottom-color: transparent;
}
&:hover:not(:disabled):not([data-selected]) {
2025-10-17 03:53:44 +08:00
color: var(--text-strong);
2025-10-15 01:06:13 +08:00
}
}
2025-10-23 06:31:44 +08:00
[data-slot="content"] {
2025-10-15 01:06:13 +08:00
overflow-y: auto;
flex: 1;
/* Hide scrollbar */
scrollbar-width: none;
-ms-overflow-style: none;
&::-webkit-scrollbar {
display: none;
}
&:focus-visible {
outline: none;
}
}
}