@fasl-work/caos-app-shell 0.16.0 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/styles.css CHANGED
@@ -507,11 +507,28 @@ svg.lucide { flex: none; }
507
507
  .cs-reset { border: none; background: transparent; color: var(--color-accent); font-size: 0.8rem; font-weight: 600; padding: 0.1rem 0.2rem; text-decoration: underline; text-underline-offset: 2px; }
508
508
  /* The compact one-of-N case picker (ADR-0071 rule 7): ten cases in four categories cost a 308px chip block, 21% of a
509
509
  2560x1440 viewport, and one row as a dropdown. */
510
- .cs-select { width: 100%; max-width: 460px; }
511
- /* the select and a control beside it (the workbench's Focus button): one row, the select shrinks, the control keeps its size */
510
+ /* The case select shows the selected name whole, at any length, in a display (as many lines as the longest name of the list needs, measured in the DOM by CaseSelector; no clamp, no ellipsis), the native select on top of it, transparent by colour (shell 0.17.0; BL-074). */
511
+ .cs-select-wrap { position: relative; width: 100%; max-width: 460px; min-width: 0; }
512
+ .cs-select-display { box-sizing: border-box; display: flex; align-items: center; position: relative; min-width: 0; background: var(--color-surface-2); color: var(--color-fg); border: 1px solid var(--color-border); border-radius: var(--radius-md); padding: 0.35rem 1.7rem 0.35rem 0.5rem; font-size: 0.85rem; line-height: 1.25; }
513
+ .cs-select-text { display: block; max-width: 100%; min-width: 0; overflow-wrap: anywhere; }
514
+ .cs-select-display::after { content: ''; position: absolute; right: 0.65rem; top: 50%; width: 0.4rem; height: 0.4rem; margin-top: -0.3rem; border-right: 2px solid var(--color-fg-subtle); border-bottom: 2px solid var(--color-fg-subtle); transform: rotate(45deg); }
515
+ .cs-select-wrap > .cs-select-native { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; margin: 0; padding: 0 0.5rem; box-sizing: border-box; background: transparent; color: transparent; border-color: transparent; cursor: pointer; appearance: none; -webkit-appearance: none; }
516
+ .cs-select-native option, .cs-select-native optgroup { color: var(--color-fg); background: var(--color-surface-2); }
517
+ .cs-select-wrap > .cs-select-native:focus { outline: none; }
518
+ .cs-select-wrap:focus-within > .cs-select-display { outline: 2px solid var(--color-accent); outline-offset: 2px; }
519
+ @supports selector(:has(*)) {
520
+ .cs-select-wrap:focus-within > .cs-select-display { outline: none; }
521
+ .cs-select-wrap:has(> .cs-select-native:focus-visible) > .cs-select-display { outline: 2px solid var(--color-accent); outline-offset: 2px; }
522
+ }
523
+ /* Windows High Contrast forces a select's text back to CanvasText, which would paint its one cut line over the display's lines (the re-review of 0.17.0, B1) */
524
+ @media (forced-colors: active) {
525
+ .cs-select-wrap > .cs-select-native { forced-color-adjust: none; }
526
+ .cs-select-native option, .cs-select-native optgroup { forced-color-adjust: auto; }
527
+ }
528
+ /* the select and a control beside it (a product's accessory): one row, the select shrinks, the control keeps its size */
512
529
  .cs-select-row { display: flex; align-items: center; gap: 0.5rem; min-width: 0; }
513
- .cs-select-row > .cs-select { flex: 1 1 auto; min-width: 0; }
514
- .cs-select-row > :not(.cs-select) { flex: none; }
530
+ .cs-select-row > .cs-select-wrap { flex: 1 1 auto; min-width: 0; }
531
+ .cs-select-row > :not(.cs-select-wrap) { flex: none; }
515
532
 
516
533
  /* == 9 workbench ================================================================================================ */
517
534
 
@@ -858,3 +875,7 @@ svg.lucide { flex: none; }
858
875
  .tabs-has-slot > .tabs-slot { grid-column: 2; grid-row: 1; align-self: stretch; display: flex; align-items: center; padding-bottom: 0.4rem; margin-bottom: 0.9rem; border-bottom: 1px solid var(--color-border); }
859
876
  .tabs-has-slot > .tabs-slot > .caos-focus-enter { align-self: center; padding-block: 0.2rem; }
860
877
  .tabs-has-slot > .tabpanel { grid-column: 1 / -1; grid-row: 2; }
878
+ /* The same slot in the workbench's group tab row (shell 0.17.0, BL-074): the Focus control of the App ends the row, so the case select keeps
879
+ the rail head's whole width. The tab row's own spacing (a tighter rule than the surface's) is repeated under the slot. */
880
+ .caos-cw > .tabs.tabs-has-slot { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto minmax(0, 1fr); column-gap: 0.5rem; }
881
+ .caos-cw > .tabs-has-slot > .tabs-slot { margin-bottom: 0.5rem; padding-bottom: var(--space-1); }