@flood-md/react 0.2.4 → 0.2.5

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.
@@ -376,6 +376,36 @@
376
376
  letter-spacing: var(--flood-sys-type-compact-tracking);
377
377
  font-weight: var(--flood-sys-type-compact-weight);
378
378
  }
379
+ .flood-root .flood-number-input > .flood-input { text-align: center; appearance: textfield; font-variant-numeric: tabular-nums; }
380
+ .flood-root .flood-number-input > .flood-input::-webkit-inner-spin-button,
381
+ .flood-root .flood-number-input > .flood-input::-webkit-outer-spin-button { appearance: none; margin: 0; }
382
+ .flood-root .flood-slider { --flood-slider-thumb: var(--flood-control-icon); min-inline-size: 0; inline-size: 100%; }
383
+ .flood-root .flood-slider > .flood-fieldset__body { gap: var(--flood-sys-space-1); }
384
+ .flood-root .flood-slider > .flood-legend { margin-block-end: var(--flood-sys-space-1); }
385
+ .flood-root .flood-slider__value { color: var(--flood-sys-color-content-subtle); font-size: var(--flood-control-text); font-variant-numeric: tabular-nums; line-height: var(--flood-control-line); }
386
+ .flood-root .flood-slider__rail { position: relative; block-size: var(--flood-control-height); margin-inline: calc(var(--flood-slider-thumb) / 2); touch-action: pan-y; }
387
+ .flood-root .flood-slider__track { position: absolute; inset-inline: 0; inset-block-start: calc(50% - var(--flood-sys-space-1) / 2); block-size: var(--flood-sys-space-1); border-radius: var(--flood-sys-radius-action); background: var(--flood-sys-color-field-border); }
388
+ .flood-root .flood-slider__fill { position: absolute; inset-block: 0; inset-inline-start: var(--flood-slider-start); inset-inline-end: var(--flood-slider-end); border-radius: inherit; background: var(--flood-sys-color-content-default); }
389
+ .flood-root .flood-slider__input { position: absolute; inset-block-start: 0; inset-inline-start: calc(var(--flood-slider-thumb) / -2); inline-size: calc(100% + var(--flood-slider-thumb)); block-size: 100%; margin: 0; padding: 0; border: 0; background: transparent; appearance: none; pointer-events: none; outline: none; }
390
+ .flood-root .flood-slider__input::-webkit-slider-runnable-track { background: transparent; border: 0; }
391
+ .flood-root .flood-slider__input::-moz-range-track { background: transparent; border: 0; }
392
+ .flood-root .flood-slider__input::-webkit-slider-thumb { appearance: none; box-sizing: border-box; inline-size: var(--flood-slider-thumb); block-size: var(--flood-slider-thumb); border: var(--flood-sys-stroke-width) solid var(--flood-sys-color-field-border); border-radius: 50%; background: var(--flood-sys-color-content-default); pointer-events: auto; cursor: grab; }
393
+ .flood-root .flood-slider__input::-moz-range-thumb { box-sizing: border-box; inline-size: var(--flood-slider-thumb); block-size: var(--flood-slider-thumb); border: var(--flood-sys-stroke-width) solid var(--flood-sys-color-field-border); border-radius: 50%; background: var(--flood-sys-color-content-default); pointer-events: auto; cursor: grab; }
394
+ .flood-root .flood-slider__input:focus-visible::-webkit-slider-thumb { border: var(--flood-sys-focus-width) solid var(--flood-sys-color-focus-ring); }
395
+ .flood-root .flood-slider__input:focus-visible::-moz-range-thumb { border: var(--flood-sys-focus-width) solid var(--flood-sys-color-focus-ring); }
396
+ .flood-root .flood-slider:disabled .flood-slider__fill { background: var(--flood-sys-color-field-disabled-content); }
397
+ .flood-root .flood-slider[data-readonly="true"] .flood-slider__track { border-block: var(--flood-sys-stroke-width) dashed var(--flood-sys-color-content-subtle); }
398
+ .flood-root .flood-slider[data-readonly="true"] .flood-slider__input::-webkit-slider-thumb { cursor: default; }
399
+ .flood-root .flood-slider[data-readonly="true"] .flood-slider__input::-moz-range-thumb { cursor: default; }
400
+ @media (pointer: coarse) { .flood-root .flood-slider__rail { block-size: max(var(--flood-control-height), var(--flood-sys-size-touch)); } .flood-root .flood-slider { --flood-slider-thumb: var(--flood-sys-space-6); } }
401
+ @media (forced-colors: active) {
402
+ .flood-root .flood-slider__track { forced-color-adjust: none; background: GrayText; }
403
+ .flood-root .flood-slider__fill { forced-color-adjust: none; background: Highlight; }
404
+ .flood-root .flood-slider__input::-webkit-slider-thumb { forced-color-adjust: none; background: Canvas; border-color: ButtonText; }
405
+ .flood-root .flood-slider__input::-moz-range-thumb { forced-color-adjust: none; background: Canvas; border-color: ButtonText; }
406
+ .flood-root .flood-slider__input:focus-visible::-webkit-slider-thumb { border-color: Highlight; }
407
+ .flood-root .flood-slider__input:focus-visible::-moz-range-thumb { border-color: Highlight; }
408
+ }
379
409
  .flood-root .flood-input::placeholder { color: var(--flood-sys-color-field-placeholder); opacity: 1; }
380
410
  .flood-root .flood-input[aria-invalid="true"] { border-color: var(--flood-sys-color-feedback-error); }
381
411
  .flood-root .flood-input[readonly] { cursor: text; }
@@ -781,3 +811,320 @@
781
811
  .flood-root .flood-connected-scroll .flood-button-group > .flood-icon-button { min-inline-size: var(--flood-control-height); }
782
812
  @media (pointer: coarse) { .flood-root .flood-connected-scroll .flood-button-group > .flood-icon-button { min-inline-size: max(var(--flood-control-height), var(--flood-sys-size-touch)); } }
783
813
  .flood-root .flood-input-group__addon--end:has(> .flood-button) { margin-inline-start: auto; }
814
+
815
+ .flood-root .flood-slider[data-status] .flood-slider__fill { background: var(--flood-field-feedback); }
816
+ .flood-root .flood-slider:disabled .flood-slider__input::-webkit-slider-thumb { background: var(--flood-sys-color-field-disabled-content); cursor: default; }
817
+ .flood-root .flood-slider:disabled .flood-slider__input::-moz-range-thumb { background: var(--flood-sys-color-field-disabled-content); cursor: default; }
818
+ .flood-root .flood-combobox { min-inline-size: 0; inline-size: 100%; }
819
+ .flood-root .flood-combobox__actions { display: inline-flex; flex: none; align-items: center; gap: var(--flood-sys-space-1); }
820
+ .flood-root .flood-combobox__control > .flood-input-group__addon--end { flex: none; max-inline-size: 100%; margin-inline-start: auto; }
821
+ .flood-root .flood-combobox__control:has(> .flood-input-group__addon--end .flood-combobox__actions) { padding-inline-end: calc(var(--flood-group-inset) - var(--flood-group-stroke)); }
822
+ .flood-root .flood-combobox__actions > .flood-button { --flood-control-height: calc(var(--flood-group-height) - 2 * var(--flood-group-inset)); border-radius: max(0px, calc(var(--flood-sys-radius-field) - var(--flood-group-inset))); }
823
+ .flood-root .flood-combobox__clear-empty { visibility: hidden; }
824
+ .flood-root .flood-combobox__option-text { display: grid; gap: var(--flood-sys-space-1); min-inline-size: 0; }
825
+ .flood-root .flood-combobox__description { color: var(--flood-sys-color-content-subtle); font-size: var(--flood-sys-type-helper-size); line-height: var(--flood-sys-type-helper-line-height); }
826
+ @media (forced-colors: active) { .flood-root .flood-combobox__description { color: inherit; } }
827
+ .flood-root .flood-tag { --flood-tag-height: var(--flood-sys-control-xs-height); display: inline-flex; align-items: center; gap: var(--flood-sys-space-1); box-sizing: border-box; min-inline-size: 0; max-inline-size: 100%; min-block-size: var(--flood-tag-height); padding: calc(var(--flood-sys-space-1) / 2) var(--flood-sys-space-2); border: var(--flood-sys-stroke-width) solid var(--flood-sys-color-border-decorative); border-radius: var(--flood-sys-radius-action); background: var(--flood-sys-color-surface-raised); color: var(--flood-sys-color-content-default); font-size: var(--flood-sys-type-compact-size); line-height: var(--flood-sys-type-compact-line-height); letter-spacing: var(--flood-sys-type-compact-tracking); vertical-align: middle; }
828
+ .flood-root .flood-tag[data-size="sm"] { --flood-tag-height: var(--flood-sys-control-2xs-height); font-size: var(--flood-sys-type-helper-size); }
829
+ .flood-root .flood-tag[data-size="lg"] { --flood-tag-height: var(--flood-sys-control-sm-height); font-size: var(--flood-sys-type-body-size); }
830
+ .flood-root .flood-tag__label { min-inline-size: 0; overflow-wrap: anywhere; }
831
+ .flood-root .flood-tag:has(> .flood-tag__remove) { padding-inline-end: calc(var(--flood-sys-space-1) / 2); }
832
+ .flood-root .flood-tag > .flood-tag__remove { --flood-control-height: calc(var(--flood-tag-height) - var(--flood-sys-space-1) - 2 * var(--flood-sys-stroke-width)); min-block-size: var(--flood-control-height); min-inline-size: var(--flood-control-height); flex: none; padding: 0; border-radius: var(--flood-sys-radius-action); }
833
+ .flood-root .flood-tag[data-disabled="true"] { color: var(--flood-sys-color-content-subtle); }
834
+ .flood-root .flood-tag[hidden] { display: none; }
835
+ .flood-root .flood-multi-select__control { padding: calc(var(--flood-group-inset) - var(--flood-group-stroke)); gap: var(--flood-sys-space-1); }
836
+ .flood-root .flood-multi-select__control > .flood-tag { --flood-tag-height: calc(var(--flood-group-height) - 2 * var(--flood-group-inset)); border-radius: max(0px, calc(var(--flood-sys-radius-field) - var(--flood-group-inset))); font-size: var(--flood-control-text); line-height: var(--flood-control-line); }
837
+ @media (pointer: coarse) {
838
+ .flood-root .flood-tag:has(> .flood-tag__remove) { padding-block: 0; }
839
+ .flood-root .flood-tag > .flood-tag__remove { min-block-size: var(--flood-sys-size-touch); min-inline-size: var(--flood-sys-size-touch); }
840
+ }
841
+ @media (forced-colors: active) { .flood-root .flood-tag { background: Canvas; color: CanvasText; border-color: CanvasText; } }
842
+ .flood-root .flood-multi-select__control:has(.flood-multi-select__editor > .flood-input:disabled) { background: var(--flood-sys-color-field-disabled); border-color: var(--flood-sys-color-field-border); }
843
+ .flood-root .flood-multi-select__control:has(.flood-multi-select__editor > .flood-input:disabled) > .flood-tag { color: var(--flood-sys-color-content-subtle); }
844
+
845
+ .flood-root .flood-multi-select__editor { display: flex; align-items: center; gap: var(--flood-sys-space-1); flex: 1 1 10rem; min-inline-size: min(100%, calc(var(--flood-group-height) + 4rem)); max-inline-size: 100%; }
846
+ .flood-root .flood-multi-select__editor > .flood-input { inline-size: 0; min-inline-size: 0; flex: 1 1 0; min-block-size: calc(var(--flood-group-height) - 2 * var(--flood-group-inset)); border: 0; border-radius: 0; background: transparent; padding: 0 var(--flood-sys-space-2); }
847
+ .flood-root .flood-multi-select__editor > .flood-input:focus-visible { outline: none; border: 0; padding: 0 var(--flood-sys-space-2); }
848
+ .flood-root .flood-multi-select__control:has(.flood-multi-select__editor > .flood-input:focus-visible) { --flood-group-stroke: var(--flood-sys-focus-width); border-color: var(--flood-sys-color-focus-ring); border-style: solid; }
849
+
850
+ /* Flood owns the single clear action; suppress duplicate browser decoration. */
851
+ .flood-root .flood-search-input input::-webkit-search-cancel-button,
852
+ .flood-root .flood-search-input input::-webkit-search-decoration { -webkit-appearance: none; }
853
+
854
+ .flood-root .flood-password-input input::-ms-reveal { display: none; }
855
+
856
+ /* Transparent native file control keeps browser activation, labels and validity. */
857
+ .flood-root .flood-file-input { flex-wrap: nowrap; }
858
+ .flood-root .flood-file-input__picker { position: relative; flex: 1 1 0; min-inline-size: 0; align-self: stretch; display: flex; align-items: center; min-block-size: calc(var(--flood-group-height) - 2 * var(--flood-group-inset)); }
859
+ .flood-root .flood-file-input__native { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; margin: 0; padding: 0; opacity: 0; cursor: pointer; font: inherit; }
860
+ .flood-root .flood-file-input__display { display: flex; align-items: center; gap: var(--flood-control-gap); min-inline-size: 0; inline-size: 100%; pointer-events: none; font-size: var(--flood-control-text); line-height: var(--flood-control-line); }
861
+ .flood-root .flood-file-input__display > .flood-icon { flex: none; color: var(--flood-sys-color-content-subtle); }
862
+ .flood-root .flood-file-input__display[data-empty] { color: var(--flood-sys-color-field-placeholder); }
863
+ .flood-root .flood-file-input__summary { min-inline-size: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
864
+ .flood-root .flood-file-input:has(.flood-file-input__native:focus-visible) { --flood-group-stroke: var(--flood-sys-focus-width); border-color: var(--flood-sys-color-focus-ring); }
865
+ .flood-root .flood-file-input:has(.flood-file-input__native:disabled) { background: var(--flood-sys-color-field-disabled); color: var(--flood-sys-color-field-disabled-content); border-color: var(--flood-sys-color-field-border); }
866
+ .flood-root .flood-file-input__native:disabled { cursor: not-allowed; }
867
+ .flood-root .flood-file-input:has(.flood-file-input__native:disabled) .flood-file-input__display { color: var(--flood-sys-color-field-disabled-content); }
868
+ @media (forced-colors: active) { .flood-root .flood-file-input:has(.flood-file-input__native:focus-visible) { border-color: Highlight; } }
869
+
870
+ .flood-root .flood-file-input-field { min-inline-size: 0; inline-size: 100%; }
871
+ .flood-root .flood-file-input__selection { margin-block-start: var(--flood-sys-space-2); }
872
+ .flood-root .flood-file-input__selection > summary { display: flex; align-items: center; gap: var(--flood-sys-space-2); inline-size: fit-content; max-inline-size: 100%; padding: var(--flood-sys-space-1) 0; cursor: pointer; color: var(--flood-sys-color-content-subtle); font-size: var(--flood-sys-type-helper-size); }
873
+ .flood-root .flood-file-input__selection > summary::before { content: "›"; display: inline-block; font-size: 1.25em; transform: rotate(0deg); }
874
+ .flood-root .flood-file-input__selection[open] > summary::before { transform: rotate(90deg); }
875
+ .flood-root .flood-file-input__selection > summary::-webkit-details-marker { display: none; }
876
+ .flood-root .flood-file-input__count { font-variant-numeric: tabular-nums; }
877
+ .flood-root .flood-file-input__list { list-style: none; padding: 0; margin: var(--flood-sys-space-1) 0 0; max-block-size: 12rem; overflow: auto; scrollbar-width: thin; scrollbar-color: var(--flood-sys-color-content-subtle) transparent; }
878
+ .flood-root .flood-file-input__file { display: flex; align-items: center; gap: var(--flood-sys-space-2); padding-block: var(--flood-sys-space-2); border-block-start: var(--flood-sys-stroke-width) solid var(--flood-sys-color-border-decorative); }
879
+ .flood-root .flood-file-input__metadata { display: grid; gap: var(--flood-sys-space-1); flex: 1 1 0; min-inline-size: 0; }
880
+ .flood-root .flood-file-input__name { font-size: var(--flood-sys-type-helper-size); overflow-wrap: anywhere; }
881
+ .flood-root .flood-file-input__size { font-size: var(--flood-sys-type-helper-size); color: var(--flood-sys-color-content-subtle); }
882
+ .flood-root .flood-file-input__file > .flood-icon-button { flex: none; }
883
+
884
+ .flood-root .flood-alert-dialog { inline-size: min(26rem, calc(100% - var(--flood-sys-space-8))); }
885
+ .flood-root .flood-alert-dialog__actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: var(--flood-sys-space-2); margin-block-start: var(--flood-sys-space-6); }
886
+ .flood-root .flood-alert-dialog__actions > .flood-button { max-inline-size: 100%; overflow-wrap: anywhere; }
887
+ @media (max-width: 32rem) {
888
+ .flood-root .flood-alert-dialog__actions > .flood-button { inline-size: 100%; }
889
+ }
890
+
891
+ /* Drawer keeps the modal runtime; only geometry and body containment differ. */
892
+ .flood-root .flood-drawer { --flood-drawer-size: 26rem; --flood-drawer-x: 0%; --flood-drawer-y: 0%; position: fixed; inset: 0; margin: 0; box-sizing: border-box; display: grid; grid-template-areas: "header" "description" "body" "footer"; grid-template-rows: auto auto minmax(0, 1fr) auto; inline-size: min(var(--flood-drawer-size), 100vw); max-inline-size: 100vw; block-size: 100dvh; max-block-size: 100dvh; border-radius: 0; overflow: hidden; padding-block-start: max(var(--flood-sys-space-4), env(safe-area-inset-top)); padding-block-end: max(var(--flood-sys-space-6), env(safe-area-inset-bottom)); }
893
+ .flood-root .flood-drawer[data-size="sm"] { --flood-drawer-size: 20rem; }
894
+ .flood-root .flood-drawer[data-size="lg"] { --flood-drawer-size: 34rem; }
895
+ .flood-root .flood-drawer[data-side="end"] { inset-inline-start: auto; inset-inline-end: 0; border-start-start-radius: var(--flood-sys-radius-block); border-end-start-radius: var(--flood-sys-radius-block); --flood-drawer-x: 100%; }
896
+ .flood-root .flood-drawer[data-side="start"] { inset-inline-start: 0; inset-inline-end: auto; border-start-end-radius: var(--flood-sys-radius-block); border-end-end-radius: var(--flood-sys-radius-block); --flood-drawer-x: -100%; }
897
+ .flood-root .flood-drawer[data-drawer-direction="rtl"][data-side="end"] { --flood-drawer-x: -100%; }
898
+ .flood-root .flood-drawer[data-drawer-direction="rtl"][data-side="start"] { --flood-drawer-x: 100%; }
899
+ .flood-root .flood-drawer:is([data-side="top"], [data-side="bottom"]) { left: 0; right: auto; inline-size: 100vw; block-size: min(var(--flood-drawer-size), 100dvh); }
900
+ .flood-root .flood-drawer[data-side="top"] { inset-block-start: 0; inset-block-end: auto; border-end-start-radius: var(--flood-sys-radius-block); border-end-end-radius: var(--flood-sys-radius-block); --flood-drawer-y: -100%; }
901
+ .flood-root .flood-drawer[data-side="bottom"] { inset-block-start: auto; inset-block-end: 0; border-start-start-radius: var(--flood-sys-radius-block); border-start-end-radius: var(--flood-sys-radius-block); --flood-drawer-y: 100%; }
902
+ .flood-root .flood-drawer > .flood-overlay-header { grid-area: header; }
903
+ .flood-root .flood-drawer > .flood-overlay-description { grid-area: description; }
904
+ .flood-root .flood-drawer__body { grid-area: body; min-block-size: 0; min-inline-size: 0; margin-block-start: var(--flood-sys-space-4); }
905
+ .flood-root .flood-drawer .flood-overlay-body { margin: 0; }
906
+ .flood-root .flood-drawer__footer { grid-area: footer; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: var(--flood-sys-space-2); margin-block-start: var(--flood-sys-space-4); padding-block-start: var(--flood-sys-space-4); border-block-start: var(--flood-sys-stroke-width) solid var(--flood-sys-color-border-decorative); }
907
+ .flood-root .flood-drawer__footer > * { max-inline-size: 100%; }
908
+ @keyframes flood-drawer-enter { from { transform: translate(var(--flood-drawer-x), var(--flood-drawer-y)); } to { transform: translate(0, 0); } }
909
+ @media (prefers-reduced-motion: no-preference) { .flood-root .flood-drawer[open] { animation: flood-drawer-enter var(--flood-sys-motion-duration-fast) var(--flood-sys-motion-easing); } }
910
+
911
+ .flood-root .flood-drawer__body > .flood-scroll-area { block-size: 100%; }
912
+ .flood-root .flood-drawer > .flood-overlay-header { position: relative; padding-inline-end: calc(max(var(--flood-sys-control-sm-height), var(--flood-sys-size-touch)) + var(--flood-sys-space-2)); align-items: flex-start; }
913
+ .flood-root .flood-drawer > .flood-overlay-header > .flood-overlay-close { position: absolute; inset-block-start: 0; inset-inline-end: 0; }
914
+ .flood-root .flood-drawer > .flood-overlay-description { margin-block-start: var(--flood-sys-space-1); padding-inline-end: calc(max(var(--flood-sys-control-sm-height), var(--flood-sys-size-touch)) + var(--flood-sys-space-2)); }
915
+
916
+ /* Floating surfaces use a distinct material; modal surfaces retain their fill. */
917
+ .flood-root :is(.flood-overlay-panel, .flood-select__menu) { background: var(--flood-sys-color-surface-floating); border-color: var(--flood-sys-color-border-floating); box-shadow: 0 var(--flood-sys-effect-floating-shadow-offset) var(--flood-sys-effect-floating-shadow-blur) var(--flood-sys-color-shadow-floating); }
918
+ .flood-root .flood-select__option[data-active="true"],
919
+ .flood-root .flood-menu .flood-menu__item:not([aria-disabled="true"]):is(:focus, :hover) { background: var(--flood-sys-color-selection-floating); }
920
+ @supports (backdrop-filter: blur(1px)) {
921
+ @media (prefers-reduced-transparency: no-preference) {
922
+ .flood-root :is(.flood-overlay-panel, .flood-select__menu) { background: var(--flood-sys-color-surface-floating-translucent); backdrop-filter: blur(var(--flood-sys-effect-floating-blur)) saturate(var(--flood-sys-effect-floating-saturation)); }
923
+ }
924
+ }
925
+ @media (forced-colors: active) {
926
+ .flood-root :is(.flood-overlay-panel, .flood-select__menu) { background: Canvas; border-color: CanvasText; box-shadow: none; backdrop-filter: none; }
927
+ .flood-root .flood-select__option[data-active="true"],
928
+ .flood-root .flood-menu .flood-menu__item:not([aria-disabled="true"]):is(:focus, :hover) { background: Highlight; color: HighlightText; forced-color-adjust: none; }
929
+ }
930
+
931
+ .flood-root .flood-avatar-group { display: flex; flex-wrap: wrap; align-items: center; padding: 0; margin: 0; list-style: none; gap: 0; }
932
+ .flood-root .flood-avatar-group > li { display: flex; min-inline-size: 0; }
933
+ .flood-root .flood-avatar-group > li + li { margin-inline-start: calc(-1 * var(--flood-sys-space-2)); }
934
+ .flood-root .flood-avatar-group .flood-avatar { border: var(--flood-sys-stroke-width) solid var(--flood-sys-color-border-decorative); box-shadow: 0 0 0 var(--flood-sys-stroke-width) var(--flood-sys-color-surface-canvas); }
935
+ .flood-root .flood-avatar-group__overflow { color: var(--flood-sys-color-content-default); background: var(--flood-sys-color-surface-raised); font-size: var(--flood-sys-type-helper-size); font-variant-numeric: tabular-nums; }
936
+ .flood-root .flood-status-indicator { --flood-status-color: var(--flood-sys-color-content-subtle); display: inline-flex; align-items: center; gap: var(--flood-sys-space-2); max-inline-size: 100%; min-inline-size: 0; font-size: var(--flood-sys-type-compact-size); line-height: var(--flood-sys-type-compact-line-height); overflow-wrap: anywhere; }
937
+ .flood-root .flood-status-indicator[data-size="sm"] { font-size: var(--flood-sys-type-helper-size); }
938
+ .flood-root .flood-status-indicator[data-size="lg"] { font-size: var(--flood-sys-type-body-size); }
939
+ .flood-root .flood-status-indicator[data-tone="accent"] { --flood-status-color: var(--flood-sys-color-accent-content); }
940
+ .flood-root .flood-status-indicator[data-tone="success"] { --flood-status-color: var(--flood-sys-color-feedback-success); }
941
+ .flood-root .flood-status-indicator[data-tone="warning"] { --flood-status-color: var(--flood-sys-color-feedback-warning); }
942
+ .flood-root .flood-status-indicator[data-tone="error"] { --flood-status-color: var(--flood-sys-color-feedback-error); }
943
+ .flood-root .flood-status-indicator[data-tone="info"] { --flood-status-color: var(--flood-sys-color-feedback-info); }
944
+ .flood-root .flood-status-indicator__dot { inline-size: .5em; block-size: .5em; flex: none; border-radius: var(--flood-sys-radius-action); background: var(--flood-status-color); }
945
+ .flood-root .flood-figure { display: grid; gap: var(--flood-sys-space-2); margin: 0; min-inline-size: 0; }
946
+ .flood-root .flood-figure > * { max-inline-size: 100%; min-inline-size: 0; }
947
+ .flood-root .flood-figure__caption { font-size: var(--flood-sys-type-helper-size); line-height: var(--flood-sys-type-helper-line-height); color: var(--flood-sys-color-content-subtle); overflow-wrap: anywhere; }
948
+ .flood-root .flood-blockquote { margin: 0; border-inline-start: calc(var(--flood-sys-stroke-width) * 2) solid var(--flood-sys-color-border-decorative); padding-inline-start: var(--flood-sys-space-4); min-inline-size: 0; }
949
+ .flood-root .flood-blockquote__quote { font-size: var(--flood-sys-type-body-size); line-height: var(--flood-sys-type-body-line-height); overflow-wrap: anywhere; }
950
+ .flood-root .flood-blockquote__quote > :first-child { margin-block-start: 0; }
951
+ .flood-root .flood-blockquote__quote > :last-child { margin-block-end: 0; }
952
+ .flood-root .flood-blockquote__attribution { margin-block-start: var(--flood-sys-space-2); color: var(--flood-sys-color-content-subtle); font-size: var(--flood-sys-type-helper-size); line-height: var(--flood-sys-type-helper-line-height); overflow-wrap: anywhere; }
953
+ .flood-root .flood-inline-code { border-radius: var(--flood-sys-radius-field); background: var(--flood-sys-color-surface-raised); color: var(--flood-sys-color-content-default); font-family: var(--flood-sys-font-mono); font-size: .875em; line-height: inherit; padding: .125em var(--flood-sys-space-2); box-decoration-break: clone; -webkit-box-decoration-break: clone; overflow-wrap: anywhere; white-space: break-spaces; }
954
+ .flood-root .flood-inline-code[data-size="sm"] { font-size: var(--flood-sys-type-helper-size); }
955
+ .flood-root .flood-inline-code[data-size="lg"] { font-size: var(--flood-sys-type-body-size); }
956
+ .flood-root .flood-inline-code[data-wrap="false"] { white-space: pre; overflow-wrap: normal; }
957
+ .flood-root .flood-metric { display: grid; gap: var(--flood-sys-space-1); min-inline-size: 0; margin: 0; }
958
+ .flood-root .flood-metric > dd { margin: 0; min-inline-size: 0; overflow-wrap: anywhere; }
959
+ .flood-root .flood-metric__label { color: var(--flood-sys-color-content-subtle); font-size: var(--flood-sys-type-label-size); line-height: var(--flood-sys-type-label-line-height); }
960
+ .flood-root .flood-metric__value { font-size: var(--flood-sys-type-large-size); line-height: var(--flood-sys-type-large-line-height); font-weight: var(--flood-sys-type-large-weight); letter-spacing: var(--flood-sys-type-large-tracking); font-variant-numeric: tabular-nums; }
961
+ .flood-root .flood-metric[data-size="sm"] .flood-metric__value { font-size: var(--flood-sys-type-page-size); line-height: var(--flood-sys-type-page-line-height); }
962
+ .flood-root .flood-metric[data-size="lg"] .flood-metric__value { font-size: var(--flood-sys-type-display-size); line-height: var(--flood-sys-type-display-line-height); }
963
+ .flood-root .flood-metric__trend { display: flex; align-items: baseline; gap: var(--flood-sys-space-1); font-size: var(--flood-sys-type-helper-size); line-height: var(--flood-sys-type-helper-line-height); color: var(--flood-sys-color-content-subtle); }
964
+ .flood-root .flood-metric__trend[data-tone="success"] { color: var(--flood-sys-color-feedback-success); }
965
+ .flood-root .flood-metric__trend[data-tone="warning"] { color: var(--flood-sys-color-feedback-warning); }
966
+ .flood-root .flood-metric__trend[data-tone="error"] { color: var(--flood-sys-color-feedback-error); }
967
+ .flood-root .flood-metric__trend[data-tone="info"] { color: var(--flood-sys-color-feedback-info); }
968
+ .flood-root .flood-metric__trend[data-tone="accent"] { color: var(--flood-sys-color-accent-content); }
969
+ .flood-root .flood-metric__hint { font-size: var(--flood-sys-type-helper-size); line-height: var(--flood-sys-type-helper-line-height); color: var(--flood-sys-color-content-subtle); }
970
+ .flood-root .flood-timeline { list-style: none; margin: 0; padding: 0; min-inline-size: 0; }
971
+ .flood-root .flood-timeline__item { position: relative; display: grid; grid-template-columns: 1.25rem minmax(0, 1fr); gap: var(--flood-sys-space-3); padding-block-end: var(--flood-sys-space-4); }
972
+ .flood-root .flood-timeline__item:last-child { padding-block-end: 0; }
973
+ .flood-root .flood-timeline__item:not(:last-child)::before { content: ""; position: absolute; inset-inline-start: calc(.625rem - var(--flood-sys-stroke-width) / 2); inset-block-start: 1.25rem; inset-block-end: 0; inline-size: var(--flood-sys-stroke-width); background: var(--flood-sys-color-border-decorative); }
974
+ .flood-root .flood-timeline__marker { z-index: 1; box-sizing: border-box; display: grid; place-items: center; inline-size: 1.25rem; block-size: 1.25rem; border: var(--flood-sys-stroke-width) solid var(--flood-sys-color-border-decorative); border-radius: var(--flood-sys-radius-action); color: var(--flood-sys-color-content-subtle); background: var(--flood-sys-color-surface-default); }
975
+ .flood-root .flood-timeline__marker > svg { inline-size: 100%; block-size: 100%; }
976
+ .flood-root .flood-timeline__item[data-state="current"] .flood-timeline__marker { color: var(--flood-sys-color-accent-content); }
977
+ .flood-root .flood-timeline__item[data-state="current"] .flood-timeline__marker > span { inline-size: .375rem; block-size: .375rem; background: currentColor; border-radius: var(--flood-sys-radius-action); }
978
+ .flood-root .flood-timeline__item[data-state="complete"] .flood-timeline__marker { color: var(--flood-sys-color-feedback-success); }
979
+ .flood-root .flood-timeline__content { display: grid; gap: var(--flood-sys-space-1); min-inline-size: 0; }
980
+ .flood-root .flood-timeline__title { font-size: var(--flood-sys-type-compact-size); line-height: var(--flood-sys-type-compact-line-height); font-weight: var(--flood-sys-type-label-weight); overflow-wrap: anywhere; }
981
+ .flood-root .flood-timeline__description { color: var(--flood-sys-color-content-subtle); font-size: var(--flood-sys-type-compact-size); line-height: var(--flood-sys-type-compact-line-height); overflow-wrap: anywhere; }
982
+ .flood-root .flood-timeline__time { color: var(--flood-sys-color-content-helper); font-size: var(--flood-sys-type-helper-size); line-height: var(--flood-sys-type-helper-line-height); }
983
+ .flood-root :is(.flood-avatar-group, .flood-status-indicator, .flood-figure, .flood-blockquote, .flood-inline-code, .flood-metric, .flood-timeline)[hidden] { display: none; }
984
+ @media (forced-colors: active) {
985
+ .flood-root .flood-status-indicator__dot { background: CanvasText; }
986
+ .flood-root .flood-avatar-group .flood-avatar { box-shadow: none; }
987
+ .flood-root .flood-inline-code { color: CanvasText; background: Canvas; border: var(--flood-sys-stroke-width) solid CanvasText; }
988
+ .flood-root .flood-timeline__marker { color: CanvasText; background: Canvas; border-color: CanvasText; }
989
+ }
990
+
991
+ .flood-root .flood-navigation-list { min-inline-size: 0; }
992
+ .flood-root .flood-navigation-list :is(ul, li) { padding: 0; margin: 0; list-style: none; }
993
+ .flood-root .flood-navigation-list__group + .flood-navigation-list__group { margin-block-start: var(--flood-sys-space-4); }
994
+ .flood-root .flood-navigation-list__group-title { margin: 0; padding: var(--flood-sys-space-2) var(--flood-sys-space-3); color: var(--flood-sys-color-content-subtle); font-size: var(--flood-sys-type-helper-size); line-height: var(--flood-sys-type-helper-line-height); }
995
+ .flood-root .flood-navigation-list__link { display: flex; align-items: center; gap: var(--flood-sys-space-2); box-sizing: border-box; min-inline-size: 0; min-block-size: var(--flood-sys-control-md-height); padding: var(--flood-sys-space-2) var(--flood-sys-space-3); border-radius: var(--flood-sys-radius-field); color: var(--flood-sys-color-content-default); text-decoration: none; font-size: var(--flood-sys-type-compact-size); line-height: var(--flood-sys-type-compact-line-height); }
996
+ .flood-root .flood-navigation-list[data-size="sm"] .flood-navigation-list__link { min-block-size: var(--flood-sys-control-sm-height); }
997
+ .flood-root .flood-navigation-list[data-size="lg"] .flood-navigation-list__link { min-block-size: var(--flood-sys-control-lg-height); }
998
+ .flood-root .flood-navigation-list__link:hover { background: var(--flood-sys-color-surface-raised); }
999
+ .flood-root .flood-navigation-list__link[aria-current="page"] { background: var(--flood-sys-color-selection-background); color: var(--flood-sys-color-selection-content); }
1000
+ .flood-root :is(.flood-navigation-list__text,.flood-steps__text) { display: grid; min-inline-size: 0; gap: var(--flood-sys-space-1); }
1001
+ .flood-root :is(.flood-navigation-list__label,.flood-steps__title) { overflow-wrap: anywhere; }
1002
+ .flood-root :is(.flood-navigation-list__description,.flood-steps__description) { color: var(--flood-sys-color-content-subtle); font-size: var(--flood-sys-type-helper-size); line-height: var(--flood-sys-type-helper-line-height); overflow-wrap: anywhere; }
1003
+ .flood-root .flood-navigation-list__link > .flood-icon { flex: none; }
1004
+ .flood-root :is(.flood-navigation-list__link,.flood-steps__action):focus-visible { outline: var(--flood-sys-focus-width) solid var(--flood-sys-color-focus-ring); outline-offset: var(--flood-sys-focus-offset); }
1005
+
1006
+ .flood-root .flood-steps { display: flex; align-items: flex-start; gap: var(--flood-sys-space-4); padding: 0; margin: 0; min-inline-size: 0; list-style: none; }
1007
+ .flood-root .flood-steps > li { flex: 1 1 0; min-inline-size: 0; }
1008
+ .flood-root .flood-steps__content { display: flex; gap: var(--flood-sys-space-2); align-items: flex-start; min-inline-size: 0; box-sizing: border-box; font: inherit; color: var(--flood-sys-color-content-default); text-align: start; }
1009
+ .flood-root .flood-steps__action { inline-size: 100%; min-block-size: var(--flood-sys-control-md-height); padding: var(--flood-sys-space-1); border: 0; border-radius: var(--flood-sys-radius-field); background: transparent; cursor: pointer; }
1010
+ .flood-root .flood-steps__action:hover:not(:disabled) { background: var(--flood-sys-color-surface-raised); }
1011
+ .flood-root .flood-steps__action:disabled { color: var(--flood-sys-color-field-disabled-content); cursor: not-allowed; }
1012
+ .flood-root .flood-steps__indicator { display: inline-grid; place-items: center; flex: none; inline-size: var(--flood-sys-control-xs-height); block-size: var(--flood-sys-control-xs-height); box-sizing: border-box; border: var(--flood-sys-stroke-width) solid var(--flood-sys-color-border-decorative); border-radius: var(--flood-sys-radius-action); font-size: var(--flood-sys-type-helper-size); font-weight: var(--flood-sys-type-label-weight); color: var(--flood-sys-color-content-subtle); }
1013
+ .flood-root .flood-steps__indicator > svg { inline-size: var(--flood-sys-control-xs-icon-size); block-size: var(--flood-sys-control-xs-icon-size); }
1014
+ .flood-root .flood-steps__text { padding-block-start: var(--flood-sys-space-1); font-size: var(--flood-sys-type-compact-size); line-height: var(--flood-sys-type-compact-line-height); }
1015
+ .flood-root .flood-steps > li[data-state="complete"] .flood-steps__indicator { background: var(--flood-sys-color-selection-background); color: var(--flood-sys-color-content-default); }
1016
+ .flood-root .flood-steps > li[aria-current="step"] .flood-steps__indicator { border: var(--flood-sys-focus-width) solid var(--flood-sys-color-selection-content); background: var(--flood-sys-color-selection-background); color: var(--flood-sys-color-selection-content); }
1017
+ .flood-root .flood-steps > li[data-state="error"] .flood-steps__indicator { border-color: var(--flood-sys-color-feedback-error); color: var(--flood-sys-color-feedback-error); }
1018
+ .flood-root .flood-steps[data-orientation="vertical"] { flex-direction: column; }
1019
+ .flood-root .flood-steps[data-orientation="vertical"] > li { inline-size: 100%; }
1020
+ @media (max-width: 36rem) { .flood-root .flood-steps[data-orientation="horizontal"] { flex-direction: column; } .flood-root .flood-steps > li { inline-size: 100%; } }
1021
+
1022
+ .flood-root .flood-section { min-inline-size: 0; }
1023
+ .flood-root .flood-section__header { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: var(--flood-sys-space-4); }
1024
+ .flood-root .flood-section__heading { display: grid; gap: var(--flood-sys-space-1); min-inline-size: 0; flex: 1 1 12rem; }
1025
+ .flood-root .flood-section__title { margin: 0; overflow-wrap: anywhere; }
1026
+ .flood-root .flood-section__description { color: var(--flood-sys-color-content-subtle); font-size: var(--flood-sys-type-compact-size); line-height: var(--flood-sys-type-compact-line-height); overflow-wrap: anywhere; }
1027
+ .flood-root .flood-section__description > :first-child { margin-block-start: 0; }
1028
+ .flood-root .flood-section__description > :last-child { margin-block-end: 0; }
1029
+ .flood-root .flood-section__actions { display: flex; flex-wrap: wrap; gap: var(--flood-sys-space-2); max-inline-size: 100%; }
1030
+ .flood-root .flood-section__body { margin-block-start: var(--flood-sys-space-4); min-inline-size: 0; }
1031
+
1032
+ .flood-root .flood-split { container: flood-split / inline-size; min-inline-size: 0; inline-size: 100%; }
1033
+ .flood-root .flood-split__layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: var(--flood-layout-gap); align-items: start; min-inline-size: 0; }
1034
+ .flood-root .flood-split__layout[data-side="start"], .flood-root .flood-split__layout[data-ratio="aside"] { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); }
1035
+ .flood-root .flood-split__layout[data-side="start"][data-ratio="aside"] { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); }
1036
+ .flood-root .flood-split__layout[data-ratio="balanced"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
1037
+ .flood-root :is(.flood-split__main,.flood-split__aside) { min-inline-size: 0; overflow-wrap: anywhere; }
1038
+ @container flood-split (max-width: 30rem) { .flood-root .flood-split__layout[data-collapse="sm"] { grid-template-columns: minmax(0, 1fr); } }
1039
+ @container flood-split (max-width: 48rem) { .flood-root .flood-split__layout[data-collapse="md"] { grid-template-columns: minmax(0, 1fr); } }
1040
+ @container flood-split (max-width: 64rem) { .flood-root .flood-split__layout[data-collapse="lg"] { grid-template-columns: minmax(0, 1fr); } }
1041
+
1042
+ .flood-root .flood-center { display: grid; place-items: center; box-sizing: border-box; min-inline-size: 0; inline-size: 100%; }
1043
+ .flood-root .flood-center[data-inline="true"] { display: inline-grid; inline-size: auto; vertical-align: middle; }
1044
+ .flood-root .flood-center__content { min-inline-size: 0; max-inline-size: min(100%, var(--flood-center-max, 100%)); }
1045
+
1046
+ .flood-root .flood-skip-link { position: fixed; inset-block-start: var(--flood-sys-space-3); inset-inline-start: var(--flood-sys-space-3); z-index: var(--flood-sys-layer-popover); padding: var(--flood-sys-space-2) var(--flood-sys-space-4); border: var(--flood-sys-stroke-width) solid var(--flood-sys-color-border-decorative); border-radius: var(--flood-sys-radius-action); background: var(--flood-sys-color-surface-raised); color: var(--flood-sys-color-content-default); font-size: var(--flood-sys-type-compact-size); line-height: var(--flood-sys-type-compact-line-height); }
1047
+ .flood-root .flood-skip-link:not(:focus) { inline-size: 1px; block-size: 1px; padding: 0; margin: 0; border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
1048
+ .flood-root .flood-skip-link:focus-visible { outline: var(--flood-sys-focus-width) solid var(--flood-sys-color-focus-ring); outline-offset: var(--flood-sys-focus-offset); }
1049
+ .flood-root :is(.flood-navigation-list,.flood-steps,.flood-section,.flood-split,.flood-center,.flood-skip-link)[hidden] { display: none; }
1050
+ @media (pointer: coarse) { .flood-root .flood-navigation-list__link, .flood-root .flood-steps__action { min-block-size: var(--flood-sys-size-touch); } }
1051
+ @media (forced-colors: active) { .flood-root .flood-navigation-list__link[aria-current="page"] { background: Highlight; color: HighlightText; forced-color-adjust: none; } .flood-root .flood-steps__indicator { border-color: CanvasText; } .flood-root :is(.flood-navigation-list__link,.flood-steps__action,.flood-skip-link):focus-visible { outline-color: Highlight; } }
1052
+
1053
+ /* Relationships: labels → controls use .25rem; rows own their compact hit areas. */
1054
+ .flood-root .flood-form-control__label { display: block; margin: 0 0 var(--flood-sys-space-1); padding: 0; color: var(--flood-sys-color-content-default); font-size: var(--flood-sys-type-label-size); line-height: var(--flood-sys-type-label-line-height); font-weight: var(--flood-sys-type-label-weight); }
1055
+ .flood-root .flood-form-control__sr-only { position: absolute; inline-size: 1px; block-size: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
1056
+ .flood-root .flood-list-box-field, .flood-root .flood-pin-input-field { min-inline-size: 0; max-inline-size: 100%; }
1057
+ .flood-root .flood-list-box { box-sizing: border-box; max-block-size: 16rem; overflow: auto; scrollbar-width: thin; scrollbar-color: var(--flood-sys-color-content-subtle) transparent; min-inline-size: 0; padding: var(--flood-sys-space-1); border: var(--flood-sys-stroke-width) solid var(--flood-sys-color-field-border); border-radius: var(--flood-sys-radius-field); background: var(--flood-sys-color-field-background); }
1058
+ .flood-root .flood-list-box:focus-visible { outline: var(--flood-sys-focus-width) solid var(--flood-sys-color-focus-ring); outline-offset: calc(-1 * var(--flood-sys-focus-width)); }
1059
+ .flood-root .flood-list-box__option { display: flex; align-items: center; justify-content: space-between; gap: var(--flood-sys-space-2); padding: var(--flood-sys-space-2) var(--flood-sys-space-3); min-block-size: var(--flood-control-height); box-sizing: border-box; border-radius: max(0px, calc(var(--flood-sys-radius-field) - var(--flood-sys-space-1) - var(--flood-sys-stroke-width))); cursor: pointer; font-size: var(--flood-control-text); line-height: var(--flood-control-line); }
1060
+ .flood-root .flood-list-box__copy { display: grid; min-inline-size: 0; gap: var(--flood-sys-space-1); overflow-wrap: anywhere; }
1061
+ .flood-root .flood-list-box__description { color: var(--flood-sys-color-content-subtle); font-size: var(--flood-sys-type-helper-size); line-height: var(--flood-sys-type-helper-line-height); }
1062
+ .flood-root .flood-list-box__check { flex: none; inline-size: var(--flood-control-icon); text-align: center; }
1063
+ .flood-root .flood-list-box__option[aria-selected="true"] { background: var(--flood-sys-color-selection-background); }
1064
+ .flood-root .flood-list-box:focus-visible .flood-list-box__option[data-active] { box-shadow: inset 0 0 0 var(--flood-sys-stroke-width) var(--flood-sys-color-border-decorative); }
1065
+ .flood-root .flood-list-box__option[aria-disabled="true"], .flood-root .flood-list-box[aria-disabled="true"] { color: var(--flood-sys-color-field-disabled-content); cursor: not-allowed; }
1066
+ .flood-root .flood-pin-input { position: relative; display: flex; gap: var(--flood-sys-space-2); inline-size: max-content; max-inline-size: 100%; }
1067
+ .flood-root .flood-pin-input__editor { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; opacity: 0; margin: 0; padding: 0; font: inherit; cursor: text; }
1068
+ .flood-root .flood-pin-input__slot { box-sizing: border-box; flex: 0 1 var(--flood-control-height); min-inline-size: 0; inline-size: var(--flood-control-height); block-size: var(--flood-control-height); display: grid; place-items: center; border: var(--flood-sys-stroke-width) solid var(--flood-sys-color-field-border); border-radius: var(--flood-sys-radius-field); background: var(--flood-sys-color-field-background); font-size: var(--flood-control-text); line-height: var(--flood-control-line); font-variant-numeric: tabular-nums; pointer-events: none; }
1069
+ .flood-root .flood-pin-input:has(.flood-pin-input__editor:focus-visible) .flood-pin-input__slot[data-active] { border: var(--flood-sys-focus-width) solid var(--flood-sys-color-focus-ring); }
1070
+ .flood-root .flood-pin-input[data-status] .flood-pin-input__slot { border-color: var(--flood-field-feedback); }
1071
+ .flood-root .flood-pin-input[data-readonly] .flood-pin-input__slot { background: var(--flood-sys-color-surface-canvas); border-style: dashed; }
1072
+ .flood-root .flood-pin-input:has(.flood-pin-input__editor:disabled) .flood-pin-input__slot { background: var(--flood-sys-color-field-disabled); color: var(--flood-sys-color-field-disabled-content); }
1073
+ .flood-root .flood-rating { display: block; min-inline-size: 0; max-inline-size: 100%; border: 0; padding: 0; margin: 0; }
1074
+ .flood-root .flood-rating__choices { display: flex; align-items: center; flex-wrap: wrap; gap: var(--flood-sys-space-1); }
1075
+ .flood-root .flood-rating__choice { position: relative; flex: none; display: grid; place-items: center; inline-size: var(--flood-sys-control-sm-height); block-size: var(--flood-sys-control-sm-height); border-radius: var(--flood-sys-radius-action); cursor: pointer; color: var(--flood-sys-color-content-subtle); }
1076
+ .flood-root .flood-rating--sm .flood-rating__choice { inline-size: var(--flood-sys-control-xs-height); block-size: var(--flood-sys-control-xs-height); }
1077
+ .flood-root .flood-rating--lg .flood-rating__choice { inline-size: var(--flood-sys-control-md-height); block-size: var(--flood-sys-control-md-height); }
1078
+ .flood-root .flood-rating__choice > input { position: absolute; inset: 0; margin: 0; inline-size: 100%; block-size: 100%; opacity: 0; cursor: inherit; }
1079
+ .flood-root .flood-rating__choice > svg { inline-size: 1.25rem; block-size: 1.25rem; pointer-events: none; }
1080
+ .flood-root .flood-rating--sm .flood-rating__choice > svg { inline-size: 1rem; block-size: 1rem; }
1081
+ .flood-root .flood-rating--lg .flood-rating__choice > svg { inline-size: 1.5rem; block-size: 1.5rem; }
1082
+ .flood-root .flood-rating__choice[data-filled] > svg { fill: currentColor; }
1083
+ .flood-root .flood-rating__choice[data-filled] { color: var(--flood-sys-color-content-default); }
1084
+ .flood-root .flood-rating__choice:has(input:focus-visible) { outline: var(--flood-sys-focus-width) solid var(--flood-sys-color-focus-ring); outline-offset: calc(-1 * var(--flood-sys-focus-width)); }
1085
+ .flood-root .flood-rating[aria-readonly="true"] .flood-rating__choice { cursor: default; }
1086
+ .flood-root .flood-rating__choice:has(input:disabled) { color: var(--flood-sys-color-field-disabled-content); cursor: not-allowed; }
1087
+ .flood-root .flood-dropzone { box-sizing: border-box; min-inline-size: 0; max-inline-size: 100%; display: grid; gap: var(--flood-sys-space-4); padding: var(--flood-sys-space-4); border: var(--flood-sys-stroke-width) dashed var(--flood-sys-color-field-border); border-radius: var(--flood-sys-radius-block); background: var(--flood-sys-color-surface-canvas); }
1088
+ .flood-root .flood-dropzone__intro { text-align: center; }
1089
+ .flood-root .flood-dropzone__label { display: grid; justify-items: center; gap: var(--flood-sys-space-2); cursor: pointer; font-size: var(--flood-sys-type-label-size); line-height: var(--flood-sys-type-label-line-height); }
1090
+ .flood-root .flood-dropzone__label > svg { inline-size: 1.5rem; block-size: 1.5rem; color: var(--flood-sys-color-content-subtle); }
1091
+ .flood-root .flood-dropzone__description { margin: var(--flood-sys-space-1) 0 0; color: var(--flood-sys-color-content-subtle); font-size: var(--flood-sys-type-helper-size); line-height: var(--flood-sys-type-helper-line-height); }
1092
+ .flood-root .flood-dropzone[data-dragging] { border-color: var(--flood-sys-color-focus-ring); background: var(--flood-sys-color-field-background); }
1093
+ .flood-root .flood-dropzone[data-status] { border-color: var(--flood-field-feedback); }
1094
+ .flood-root .flood-dropzone:has(input:disabled) .flood-dropzone__label { color: var(--flood-sys-color-field-disabled-content); cursor: not-allowed; }
1095
+ .flood-root .flood-character-count { display: inline-flex; align-items: baseline; flex-wrap: wrap; gap: var(--flood-sys-space-2); color: var(--flood-sys-color-content-subtle); font-size: var(--flood-sys-type-helper-size); line-height: var(--flood-sys-type-helper-line-height); font-variant-numeric: tabular-nums; }
1096
+ .flood-root .flood-character-count[data-over-limit] { color: var(--flood-sys-color-feedback-error); }
1097
+ .flood-root .flood-character-count__warning { font-weight: var(--flood-sys-type-label-weight); }
1098
+ @media (pointer: coarse) {
1099
+ .flood-root .flood-list-box__option { min-block-size: max(var(--flood-control-height), var(--flood-sys-size-touch)); }
1100
+ .flood-root .flood-rating__choice { inline-size: max(var(--flood-sys-control-sm-height), var(--flood-sys-size-touch)); block-size: max(var(--flood-sys-control-sm-height), var(--flood-sys-size-touch)); }
1101
+ .flood-root .flood-pin-input__slot { block-size: max(var(--flood-control-height), var(--flood-sys-size-touch)); }
1102
+ }
1103
+ @media (forced-colors: active) {
1104
+ .flood-root .flood-list-box__option[aria-selected="true"] { background: Highlight; color: HighlightText; forced-color-adjust: none; }
1105
+ .flood-root .flood-list-box:focus-visible, .flood-root .flood-rating__choice:has(input:focus-visible) { outline-color: Highlight; }
1106
+ .flood-root .flood-pin-input:has(.flood-pin-input__editor:focus-visible) .flood-pin-input__slot[data-active], .flood-root .flood-dropzone[data-dragging] { border-color: Highlight; }
1107
+ }
1108
+
1109
+ .flood-root .flood-copy-button__labels { display: inline-grid; min-inline-size: 0; gap: inherit; }
1110
+ .flood-root .flood-copy-button__labels > span { grid-area: 1 / 1; visibility: hidden; display: inline-flex; align-items: center; justify-content: center; gap: inherit; }
1111
+ .flood-root .flood-copy-button__labels > span[data-visible] { visibility: visible; }
1112
+ .flood-root .flood-toast-region { position: fixed; z-index: var(--flood-sys-layer-toast); inline-size: min(24rem, calc(100vw - 2 * var(--flood-sys-space-4))); max-block-size: calc(100dvh - 2 * var(--flood-sys-space-4)); overflow: auto; outline-offset: 0; }
1113
+ .flood-root .flood-toast-region[data-placement^="bottom"] { inset-block-end: max(var(--flood-sys-space-4), env(safe-area-inset-bottom)); }
1114
+ .flood-root .flood-toast-region[data-placement^="top"] { inset-block-start: max(var(--flood-sys-space-4), env(safe-area-inset-top)); }
1115
+ .flood-root .flood-toast-region[data-placement$="end"] { inset-inline-end: var(--flood-sys-space-4); }
1116
+ .flood-root .flood-toast-region[data-placement$="start"] { inset-inline-start: var(--flood-sys-space-4); }
1117
+ .flood-root .flood-toast-region[data-inline] { position: static; max-inline-size: 100%; max-block-size: 20rem; }
1118
+ .flood-root .flood-toast-region[hidden] { display: none; }
1119
+ .flood-root .flood-toast-region__list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--flood-sys-space-2); }
1120
+ .flood-root .flood-toast { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: start; gap: var(--flood-sys-space-2); padding: var(--flood-sys-space-3); background: var(--flood-sys-color-surface-floating); border: var(--flood-sys-stroke-width) solid var(--flood-sys-color-border-floating); border-radius: var(--flood-sys-radius-field); box-shadow: 0 var(--flood-sys-effect-floating-shadow-offset) var(--flood-sys-effect-floating-shadow-blur) var(--flood-sys-color-shadow-floating); }
1121
+ .flood-root .flood-toast__message { min-inline-size: 0; align-self: center; overflow-wrap: anywhere; }
1122
+ .flood-root .flood-toast__title { font-size: var(--flood-sys-type-compact-size); font-weight: var(--flood-sys-type-label-weight); }
1123
+ .flood-root .flood-toast__description { margin-block-start: var(--flood-sys-space-1); color: var(--flood-sys-color-content-subtle); font-size: var(--flood-sys-type-helper-size); }
1124
+ .flood-root .flood-toast__title::before { content: ""; display: inline-block; vertical-align: middle; inline-size: .375rem; block-size: .375rem; border-radius: var(--flood-sys-radius-action); margin-inline-end: var(--flood-sys-space-2); background: var(--flood-sys-color-content-subtle); }
1125
+ .flood-root .flood-toast[data-status="success"] .flood-toast__title::before { background: var(--flood-sys-color-feedback-success); }
1126
+ .flood-root .flood-toast[data-status="error"] .flood-toast__title::before { background: var(--flood-sys-color-feedback-error); }
1127
+ .flood-root .flood-toast[data-status="warning"] .flood-toast__title::before { background: var(--flood-sys-color-feedback-warning); }
1128
+ .flood-root .flood-toast[data-status="info"] .flood-toast__title::before { background: var(--flood-sys-color-feedback-info); }
1129
+ .flood-root .flood-toast__action { grid-column: 1 / -1; justify-self: start; }
1130
+ @media (forced-colors: active) { .flood-root .flood-toast { background: Canvas; color: CanvasText; border-color: CanvasText; box-shadow: none; } }