settings-stack.css

12.0 KB · raw

1/* Settings Stack — layered category deck for the full settings surface. */23.stk-shell {4  flex: 1;5  min-height: 0;6  position: relative;7  overflow: hidden;8  padding: 10px 12px 28px;9}1011.stk-mast {12  display: flex;13  align-items: center;14  justify-content: space-between;15  gap: 10px;16  padding: 0 0 8px;17}1819.stk-back {20  width: 28px;21  height: 28px;22  display: inline-flex;23  align-items: center;24  justify-content: center;25  flex: 0 0 auto;26  border: 1px solid var(--peach-border);27  border-radius: 999px;28  background: color-mix(in srgb, var(--peach-t0) 4%, transparent);29  color: var(--peach-t1);30  cursor: pointer;31}3233.stk-back:hover {34  color: var(--peach-t0);35  border-color: color-mix(in srgb, var(--peach-accent) 34%, transparent);36  background: color-mix(in srgb, var(--peach-accent) 10%, transparent);37}3839.stk-mast-title {40  flex: 1;41  font-family: var(--font-display);42  font-style: italic;43  font-weight: 400;44  font-size: 22px;45  line-height: 1;46  color: var(--peach-t0);47}4849.stk-mast-meta {50  display: flex;51  align-items: baseline;52  gap: 6px;53  font-family: var(--font-mono);54  font-size: 9px;55  letter-spacing: 0.22em;56  text-transform: uppercase;57  color: var(--peach-t2);58}5960.stk-mast-version {61  color: color-mix(in srgb, var(--peach-t2) 55%, transparent);62  letter-spacing: 0.06em;63  text-transform: lowercase;64}6566.stk-deck {67  position: relative;68  height: min(462px, calc(100% - 36px));69  min-height: 462px;70  margin-top: 0;71}7273.stk-card {74  position: absolute;75  left: 0;76  right: 0;77  border-radius: var(--stack-card-radius);78  padding: 18px 18px 16px;79  overflow: hidden;80  cursor: pointer;81  transition:82    transform 380ms var(--stack-spring),83    height 380ms var(--stack-spring),84    box-shadow 280ms ease,85    opacity 220ms ease;86  box-shadow:87    0 1px 0 color-mix(in srgb, var(--peach-t0) 5%, transparent) inset,88    0 8px 20px rgba(0, 0, 0, 0.25);89  border: 1px solid color-mix(in srgb, var(--peach-t0) 6%, transparent);90  will-change: transform;91}9293.stk-card::after {94  content: "";95  position: absolute;96  inset: 0;97  border-radius: inherit;98  pointer-events: none;99  background:100    radial-gradient(101      120% 80% at 0% 0%,102      color-mix(in srgb, #fff 12%, transparent),103      transparent 50%104    );105}106107.stk-card.is-active {108  box-shadow:109    0 1px 0 color-mix(in srgb, var(--peach-t0) 8%, transparent) inset,110    0 18px 36px rgba(0, 0, 0, 0.42);111  cursor: default;112}113114.stk-card.is-focused {115  cursor: default;116}117118.stk-card.is-tab:hover {119  transform: translateY(calc(var(--stk-card-top) - 7px));120  box-shadow:121    0 1px 0 color-mix(in srgb, var(--peach-t0) 7%, transparent) inset,122    0 16px 32px rgba(0, 0, 0, 0.42),123    0 0 28px color-mix(in srgb, currentColor 28%, transparent);124  transition:125    transform 90ms ease-out,126    box-shadow 90ms ease-out;127}128129.stk-card.is-concealed {130  opacity: 0;131  pointer-events: none;132}133134.stk-card-top {135  display: flex;136  justify-content: space-between;137  align-items: center;138  margin-bottom: 12px;139  position: relative;140  z-index: 1;141}142143.stk-card-num {144  font-family: var(--font-mono);145  font-size: 8.5px;146  letter-spacing: 0.26em;147  text-transform: uppercase;148  opacity: 0.7;149}150151.stk-card-icon {152  opacity: 0.85;153}154155.stk-card-title {156  position: relative;157  z-index: 1;158  margin: 6px 0 0;159  font-family: var(--font-display);160  font-style: italic;161  font-weight: 400;162  font-size: 26px;163  line-height: 1.2;164}165166.stk-card-lede {167  position: relative;168  z-index: 1;169  margin: 4px 0 0;170  font-family: var(--font-display);171  font-style: italic;172  font-size: 12.5px;173  line-height: 1.4;174  opacity: 0.72;175}176177.stk-card-body {178  position: relative;179  z-index: 1;180  height: calc(100% - 76px);181  margin-top: 14px;182  overflow-y: auto;183  overflow-x: hidden;184  opacity: 0;185  scrollbar-width: thin;186  scrollbar-color: color-mix(in srgb, currentColor 28%, transparent) transparent;187  transition: opacity 200ms 100ms ease;188}189190.stk-card.is-active .stk-card-body {191  opacity: 1;192}193194.stk-card.is-tab .stk-card-top {195  display: none;196}197198.stk-card.is-tab {199  padding: 10px 16px 8px;200}201202.stk-card.is-tab .stk-card-title {203  font-size: 19px;204  line-height: 1;205  white-space: nowrap;206  overflow: hidden;207  text-overflow: ellipsis;208}209210.stk-card.is-tab .stk-card-lede,211.stk-card.is-tab .stk-card-body {212  display: none;213}214215.stk-card *:focus-visible {216  outline: 1px solid currentColor;217  outline-offset: 2px;218}219220.stk-tray-handle {221  position: absolute;222  left: 50%;223  bottom: 8px;224  z-index: 120;225  transform: translateX(-50%);226  height: 30px;227  min-width: 112px;228  display: inline-flex;229  align-items: center;230  justify-content: center;231  border: 1px solid color-mix(in srgb, var(--peach-accent) 32%, transparent);232  border-radius: 999px;233  background:234    linear-gradient(180deg, color-mix(in srgb, var(--peach-bg) 88%, transparent), color-mix(in srgb, var(--peach-bg) 72%, transparent)),235    color-mix(in srgb, var(--peach-accent) 10%, transparent);236  color: var(--peach-t1);237  font-family: var(--font-mono);238  font-size: 9px;239  letter-spacing: 0.2em;240  text-transform: uppercase;241  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);242  cursor: pointer;243}244245.stk-tray-handle::before {246  content: "";247  position: absolute;248  top: 5px;249  width: 26px;250  height: 2px;251  border-radius: 999px;252  background: color-mix(in srgb, currentColor 45%, transparent);253}254255.stk-tray-handle span {256  transform: translateY(4px);257}258259.stk-row {260  display: flex;261  align-items: center;262  justify-content: space-between;263  gap: 12px;264  padding: 10px 0;265  border-bottom: 1px solid color-mix(in srgb, currentColor 12%, transparent);266}267268.stk-row:last-child {269  border-bottom: none;270}271272.stk-row-name {273  font-size: 13px;274}275276.stk-row-sub {277  margin-top: 2px;278  font-family: var(--font-display);279  font-style: italic;280  font-size: 11px;281  opacity: 0.7;282}283284.stk-pill {285  display: inline-flex;286  align-items: center;287  justify-content: center;288  min-height: 24px;289  padding: 3px 10px;290  font-family: var(--font-mono);291  font-size: 10px;292  letter-spacing: 0.08em;293  text-transform: lowercase;294  background: transparent;295  color: currentColor;296  border: 1px solid color-mix(in srgb, currentColor 35%, transparent);297  border-radius: 999px;298  cursor: pointer;299  transition: background 140ms ease, border-color 140ms ease;300}301302.stk-pill:hover,303.stk-pill.is-accent {304  background: color-mix(in srgb, currentColor 18%, transparent);305  border-color: color-mix(in srgb, currentColor 55%, transparent);306}307308.stk-pip {309  display: inline-block;310  width: 18px;311  height: 18px;312  border-radius: 50%;313  background: rgba(0, 0, 0, 0.18);314  border: 1px solid color-mix(in srgb, currentColor 24%, transparent);315}316317.stk-pip.is-on {318  background: var(--peach-health-ok);319  box-shadow: 0 0 6px color-mix(in srgb, var(--peach-health-ok) 55%, transparent);320}321322.stk-sync-actions,323.stk-fb-chips,324.stk-inline-actions {325  display: flex;326  flex-wrap: wrap;327  gap: 6px;328}329330.stk-key {331  font-family: var(--font-mono);332  font-size: 10px;333  letter-spacing: 0.06em;334  padding: 2px 7px;335  border: 1px solid color-mix(in srgb, currentColor 32%, transparent);336  border-radius: 4px;337  background: color-mix(in srgb, currentColor 6%, transparent);338}339340.stk-pro-headline {341  padding: 6px 0 14px;342  border-bottom: 1px solid color-mix(in srgb, currentColor 14%, transparent);343}344345.stk-pro-title,346.stk-pro-price {347  font-family: var(--font-display);348  font-style: italic;349  line-height: 1;350}351352.stk-pro-title {353  font-size: 22px;354}355356.stk-pro-price {357  font-size: 28px;358}359360.stk-pro-meta {361  margin-top: 4px;362  font-family: var(--font-mono);363  font-size: 9.5px;364  letter-spacing: 0.18em;365  text-transform: uppercase;366  opacity: 0.7;367}368369.stk-card .peach-settings-body {370  display: block;371  flex: none;372  min-height: 0;373  overflow: visible;374  padding: 0;375  background: transparent;376}377378.stk-card .peach-settings-group {379  margin: 0;380  padding: 0;381  border: 0;382  border-radius: 0;383  background: transparent;384  box-shadow: none;385  backdrop-filter: none;386  -webkit-backdrop-filter: none;387}388389.stk-card .peach-settings-group + .peach-settings-group {390  margin-top: 0;391}392393.stk-card .peach-settings-sub-label,394.stk-card .peach-settings-label {395  margin: 12px 0 4px;396  color: color-mix(in srgb, currentColor 58%, transparent);397}398399.stk-card .peach-settings-sub-label:first-child,400.stk-card .peach-settings-label:first-child {401  margin-top: 0;402}403404.stk-card .peach-settings-row,405.stk-card .peach-shortcut-row,406.stk-card .peach-history-row {407  border-bottom: 1px solid color-mix(in srgb, currentColor 12%, transparent);408  color: currentColor;409}410411.stk-card .peach-settings-row--meta,412.stk-card .peach-settings-value,413.stk-card .peach-hint,414.stk-card .peach-settings-hint,415.stk-card .peach-feedback-meta,416.stk-card .peach-feedback-anon,417.stk-card .peach-feedback-intro,418.stk-card .peach-history-sub,419.stk-card .peach-history-footer,420.stk-card .peach-danger-card-copy {421  color: color-mix(in srgb, currentColor 70%, transparent);422}423424.stk-card .peach-toggle {425  --peach-accent: currentColor;426  border-color: color-mix(in srgb, currentColor 32%, transparent);427  background: color-mix(in srgb, currentColor 8%, transparent);428}429430.stk-card .peach-toggle.is-on {431  background: color-mix(in srgb, currentColor 28%, transparent);432  border-color: color-mix(in srgb, currentColor 50%, transparent);433}434435.stk-card .peach-toggle-knob {436  background: color-mix(in srgb, currentColor 58%, transparent);437}438439.stk-card .peach-toggle.is-on .peach-toggle-knob {440  background: currentColor;441}442443.stk-card .peach-btn--subtle,444.stk-card .peach-btn--ghost,445.stk-card .peach-btn--accent,446.stk-card .peach-shortcut-chip,447.stk-card .peach-shortcut-reset,448.stk-card .peach-feedback-chip,449.stk-card .peach-settings-license-copy,450.stk-card .peach-settings-license-toggle {451  color: currentColor;452  border-color: color-mix(in srgb, currentColor 28%, transparent);453  background: color-mix(in srgb, currentColor 8%, transparent);454}455456.stk-card .peach-btn--subtle:hover,457.stk-card .peach-btn--ghost:hover,458.stk-card .peach-btn--accent:hover,459.stk-card .peach-shortcut-chip:hover,460.stk-card .peach-feedback-chip:hover,461.stk-card .peach-feedback-chip.is-active {462  background: color-mix(in srgb, currentColor 16%, transparent);463}464465.stk-card .peach-settings-input,466.stk-card .peach-settings-select,467.stk-card .peach-pro-key-inline-input,468.stk-card .peach-feedback-textarea {469  color: currentColor;470  border-color: color-mix(in srgb, currentColor 22%, transparent);471  background: rgba(0, 0, 0, 0.18);472}473474.stk-card .peach-settings-input::placeholder,475.stk-card .peach-pro-key-inline-input::placeholder,476.stk-card .peach-feedback-textarea::placeholder {477  color: color-mix(in srgb, currentColor 42%, transparent);478}479480.stk-card .peach-accent-picker {481  justify-content: flex-end;482  max-width: 160px;483}484485.stk-card .peach-accent-swatch {486  width: 20px;487  height: 20px;488}489490.stk-card .peach-accent-swatch.is-active {491  border-color: currentColor;492}493494.stk-card .peach-history-list {495  border-color: color-mix(in srgb, currentColor 18%, transparent);496}497498.stk-card .peach-danger-card {499  background: rgba(0, 0, 0, 0.18);500  border-color: color-mix(in srgb, currentColor 20%, transparent);501}502503.stk-card .peach-pro-upgrade,504.stk-card .peach-pro-active,505.stk-card .peach-pro-active-hero,506.stk-card .peach-pro-grid-item {507  background: transparent;508  border-color: color-mix(in srgb, currentColor 14%, transparent);509  box-shadow: none;510}511512.stk-card .peach-pro-grid {513  gap: 6px;514}515516.stk-card .peach-pro-grid-item {517  padding: 7px 0;518}519520.stk-card .peach-pro-headline,521.stk-card .peach-pro-active-title {522  color: currentColor;523}524525.stk-card .peach-feedback-textarea {526  min-height: 116px;527}528529.light .stk-shell,530[data-theme="light"] .stk-shell {531  background: var(--peach-bg);532}533534.light .stk-card,535[data-theme="light"] .stk-card {536  box-shadow:537    0 1px 0 color-mix(in srgb, var(--peach-t0) 5%, transparent) inset,538    0 8px 20px rgba(78, 56, 36, 0.18);539}540541.light .stk-card.is-active,542[data-theme="light"] .stk-card.is-active {543  box-shadow:544    0 1px 0 color-mix(in srgb, var(--peach-t0) 8%, transparent) inset,545    0 18px 36px rgba(78, 56, 36, 0.35);546}547548:root[data-native="true"] {549  --stack-tab-h: 64px;550  --stack-tab-overlap: 16px;551}552553:root[data-native="true"] .stk-deck {554  height: calc(100dvh - 126px);555  min-height: 520px;556}557558[data-motion="reduce"] .stk-card,559[data-motion="reduce"] .stk-card-body {560  transition: none !important;561}