@co0ontty/wand 1.43.1 → 1.43.2

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.
@@ -15679,295 +15679,218 @@
15679
15679
  }
15680
15680
 
15681
15681
  /* ================================================================
15682
- Quick-Git drag slider — v2
15683
- Layout: [ 🔘 Commit ] ────→ [ Tag ] ────→ [ Push ]
15684
- - Tap (no drag) Commit
15685
- - Drag straight to Push → Commit + Push (skipped Tag — fast through)
15686
- - Drag to Tag, dwell ~600ms Tag latch arms
15687
- - Released at Tag (armed) Commit + Tag
15688
- - Continue armed Push → Commit + Tag + Push
15689
- Empty commit message / tag → auto-generated by the backend on submit
15682
+ Quick-Git magnetic dock
15683
+ Layout: [ free field with Commit/Tag/Push chips ] [ pad ]
15684
+ - Selected chips snap into one cluster (always Commit Tag → Push).
15685
+ - Unselected chips rest on a lower tray row.
15686
+ - Drag a chip onto the cluster to add it, away to remove it, tap to toggle.
15687
+ - Fling any chip into the ▶ pad (or tap it) to fire compose(selected).
15688
+ Commit is always included. Empty message / tag auto-generated on submit.
15690
15689
  ================================================================ */
15691
- .qc-drag-wrap {
15692
- padding-top: 4px;
15690
+ .qc-dock-wrap {
15693
15691
  display: flex;
15694
15692
  flex-direction: column;
15695
- gap: 6px;
15693
+ gap: 8px;
15694
+ padding-top: 2px;
15695
+ }
15696
+ .qc-dock-wrap[data-disabled="1"] { opacity: 0.55; pointer-events: none; }
15697
+
15698
+ /* Busy panel (replaces the dock while a request is in flight) */
15699
+ .qc-dock-busy {
15700
+ display: inline-flex;
15701
+ align-items: center;
15702
+ gap: 8px;
15703
+ align-self: flex-start;
15704
+ padding: 10px 14px;
15705
+ border-radius: 12px;
15706
+ background: rgba(197, 101, 61, 0.10);
15707
+ border: 1px solid rgba(197, 101, 61, 0.20);
15708
+ color: var(--accent);
15709
+ font-size: 0.82rem;
15710
+ font-weight: 700;
15711
+ }
15712
+ .qc-dock-busy-dot {
15713
+ width: 8px;
15714
+ height: 8px;
15715
+ border-radius: 50%;
15716
+ background: var(--accent);
15717
+ animation: qc-dock-busy-pulse 1.2s ease-in-out infinite;
15718
+ }
15719
+ @keyframes qc-dock-busy-pulse {
15720
+ 0%, 100% { opacity: 0.4; transform: scale(0.85); }
15721
+ 50% { opacity: 1; transform: scale(1.15); }
15696
15722
  }
15697
- .qc-drag-track {
15698
- --qc-progress: 0%;
15699
- --qc-knob-x: 6px;
15723
+
15724
+ /* Stage = free-drag field on the left + launch pad on the right.
15725
+ --qc-tone follows the composed action so the whole stage echoes the combo color. */
15726
+ .qc-dock-stage {
15700
15727
  --qc-tone: var(--accent);
15701
15728
  --qc-tone-soft: rgba(197, 101, 61, 0.20);
15702
- /* Keep in sync with QUICK_COMMIT_TAG_DWELL_MS in scripts.js */
15703
- --qc-dwell-ms: 1100ms;
15704
- position: relative;
15705
- height: 76px;
15706
- padding: 10px 12px;
15707
- border-radius: 14px;
15708
- border: 1px solid rgba(125, 91, 57, 0.18);
15729
+ display: grid;
15730
+ grid-template-columns: minmax(0, 1fr) 96px;
15731
+ gap: 10px;
15732
+ height: 150px;
15733
+ padding: 8px;
15734
+ border-radius: 16px;
15735
+ border: 1px solid rgba(125, 91, 57, 0.16);
15709
15736
  background:
15710
- radial-gradient(120% 100% at 50% 50%, rgba(255, 255, 255, 0.58), rgba(255, 245, 235, 0.20)),
15711
- linear-gradient(180deg, rgba(255, 255, 255, 0.5), rgba(255, 245, 235, 0.24));
15712
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75), 0 1px 3px rgba(89, 58, 32, 0.05);
15713
- overflow: hidden;
15714
- touch-action: none;
15737
+ radial-gradient(120% 120% at 30% 30%, rgba(255, 255, 255, 0.55), rgba(255, 245, 235, 0.16)),
15738
+ linear-gradient(180deg, rgba(255, 255, 255, 0.46), rgba(255, 245, 235, 0.22));
15739
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7), 0 1px 3px rgba(89, 58, 32, 0.05);
15715
15740
  user-select: none;
15716
- transition: border-color 0.2s ease, box-shadow 0.2s ease;
15717
15741
  }
15718
- .qc-drag-track:hover {
15719
- border-color: rgba(125, 91, 57, 0.30);
15720
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85), 0 2px 8px rgba(89, 58, 32, 0.08);
15742
+ .qc-dock-stage[data-action="commit-tag"] { --qc-tone: #4a6fa5; --qc-tone-soft: rgba(74, 111, 165, 0.22); }
15743
+ .qc-dock-stage[data-action="commit-push"] { --qc-tone: #4f7a58; --qc-tone-soft: rgba(79, 122, 88, 0.22); }
15744
+ .qc-dock-stage[data-action="commit-tag-push"] { --qc-tone: #7c5aa8; --qc-tone-soft: rgba(124, 90, 168, 0.24); }
15745
+
15746
+ .qc-dock-field {
15747
+ position: relative;
15748
+ min-width: 0;
15749
+ border-radius: 12px;
15750
+ background: repeating-linear-gradient(45deg, rgba(125, 91, 57, 0.035) 0 8px, transparent 8px 16px);
15751
+ touch-action: none;
15752
+ overflow: hidden;
15721
15753
  }
15722
- /* Track tone shifts per current action so the whole panel echoes the knob color. */
15723
- .qc-drag-track[data-action="commit-tag"] { --qc-tone: #4a6fa5; --qc-tone-soft: rgba(74, 111, 165, 0.20); }
15724
- .qc-drag-track[data-action="commit-push"] { --qc-tone: #4f7a58; --qc-tone-soft: rgba(79, 122, 88, 0.22); }
15725
- .qc-drag-track[data-action="commit-tag-push"] { --qc-tone: #7c5aa8; --qc-tone-soft: rgba(124, 90, 168, 0.24); }
15726
15754
 
15727
- /* Baseline railCommit Tag Push. Segments brighten as the knob crosses them. */
15728
- .qc-drag-baseline {
15755
+ /* Cluster backdropthe tray that selected chips snap onto. JS sizes/positions it. */
15756
+ .qc-dock-cluster {
15729
15757
  position: absolute;
15730
- inset: 0 14px;
15731
- width: calc(100% - 28px);
15732
- height: 100%;
15758
+ left: 0;
15759
+ top: 0;
15760
+ border-radius: 14px;
15761
+ background: color-mix(in srgb, var(--qc-tone) 10%, transparent);
15762
+ border: 1.5px dashed color-mix(in srgb, var(--qc-tone) 38%, transparent);
15763
+ box-shadow: 0 4px 14px var(--qc-tone-soft);
15733
15764
  pointer-events: none;
15734
- }
15735
- .qc-baseline-rail {
15736
- stroke: rgba(125, 91, 57, 0.16);
15737
- stroke-width: 2;
15738
- stroke-linecap: round;
15739
- }
15740
- .qc-baseline-seg {
15741
- stroke: var(--qc-tone);
15742
- stroke-width: 2;
15743
- stroke-linecap: round;
15765
+ z-index: 0;
15744
15766
  opacity: 0;
15745
- transition: opacity 0.2s ease, stroke 0.2s ease;
15767
+ transition: transform 0.22s cubic-bezier(0.22, 1, 0.36, 1),
15768
+ width 0.22s cubic-bezier(0.22, 1, 0.36, 1),
15769
+ height 0.22s cubic-bezier(0.22, 1, 0.36, 1),
15770
+ opacity 0.18s ease, background 0.2s ease, border-color 0.2s ease;
15746
15771
  }
15747
- .qc-drag-track[data-zone="tag"] .qc-baseline-seg--left,
15748
- .qc-drag-track[data-zone="push"] .qc-baseline-seg--left { opacity: 0.85; }
15749
- .qc-drag-track[data-zone="push"] .qc-baseline-seg--right { opacity: 0.85; }
15772
+ /* Only visible while two or more chips are travelling together. */
15773
+ .qc-dock-cluster.is-active { opacity: 1; }
15750
15774
 
15751
- /* Three marching chevrons drag this way */
15752
- .qc-chevrons {
15775
+ /* Chips absolutely positioned; JS sets transform. */
15776
+ .qc-chip {
15753
15777
  position: absolute;
15754
- top: 50%;
15755
- right: 16px;
15756
- transform: translateY(-50%);
15757
- display: flex;
15778
+ left: 0;
15779
+ top: 0;
15780
+ display: inline-flex;
15758
15781
  align-items: center;
15759
- gap: 3px;
15760
- pointer-events: none;
15761
- color: rgba(125, 91, 57, 0.42);
15762
- z-index: 1;
15763
- }
15764
- .qc-chevron {
15765
- opacity: 0.16;
15766
- animation: qc-chevron-march 1.3s ease-in-out infinite;
15767
- }
15768
- .qc-chevron:nth-child(1) { animation-delay: 0s; }
15769
- .qc-chevron:nth-child(2) { animation-delay: 0.16s; }
15770
- .qc-chevron:nth-child(3) { animation-delay: 0.32s; }
15771
- .qc-drag-track[data-zone="tag"] .qc-chevrons { color: var(--qc-tone); }
15772
- .qc-drag-track[data-zone="push"] .qc-chevrons { opacity: 0.25; }
15773
- .qc-drag-track[data-tag-dwell="armed"] .qc-chevrons { color: var(--qc-tone); }
15774
- .qc-drag-track[data-tag-dwell="armed"] .qc-chevron { animation-duration: 0.8s; }
15775
- .qc-drag-track.is-dragging .qc-chevron { animation-play-state: paused; opacity: 0.55; }
15776
- @keyframes qc-chevron-march {
15777
- 0%, 100% { opacity: 0.10; transform: translateX(-4px); }
15778
- 45% { opacity: 0.95; transform: translateX(0); }
15779
- 75% { opacity: 0.45; transform: translateX(3px); }
15780
- }
15781
-
15782
- /* Stage labels along the rail */
15783
- .qc-drag-stages {
15784
- position: absolute;
15785
- inset: 12px 18px;
15786
- display: grid;
15787
- grid-template-columns: 1fr 1fr 1fr;
15788
- align-items: end;
15789
- pointer-events: none;
15790
- z-index: 2;
15791
- }
15792
- .qc-drag-stage {
15793
- align-self: end;
15794
- padding-bottom: 6px;
15795
- font-size: 0.68rem;
15796
- font-weight: 800;
15797
- color: var(--text-muted);
15798
- letter-spacing: 0.06em;
15799
- text-transform: uppercase;
15800
- transition: color 0.18s ease, transform 0.18s ease;
15801
- }
15802
- .qc-stage-commit { justify-self: start; padding-left: 4px; }
15803
- .qc-stage-tag { justify-self: center; }
15804
- .qc-stage-push { justify-self: end; padding-right: 4px; }
15805
- .qc-drag-stage.is-passed { color: var(--qc-tone); }
15806
- .qc-drag-stage.is-active { transform: translateY(-1px); }
15807
- /* Tag stage gets a little dot indicator that pulses while user dwells. */
15808
- .qc-stage-tag::before {
15809
- content: "";
15810
- display: block;
15811
- width: 6px;
15812
- height: 6px;
15813
- margin: 0 auto 4px;
15814
- border-radius: 50%;
15815
- background: rgba(125, 91, 57, 0.30);
15816
- transition: background 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
15817
- }
15818
- .qc-drag-stage.qc-stage-tag.is-passed::before {
15819
- background: var(--qc-tone);
15820
- box-shadow: 0 0 0 4px color-mix(in srgb, var(--qc-tone) 22%, transparent);
15821
- }
15822
- .qc-drag-track[data-tag-dwell="active"] .qc-stage-tag::before {
15823
- background: var(--qc-tone);
15824
- animation: qc-tag-dot-pulse var(--qc-dwell-ms) ease-out forwards;
15825
- }
15826
- .qc-drag-track[data-tag-dwell="armed"] .qc-stage-tag::before {
15827
- background: var(--qc-tone);
15828
- transform: scale(1.4);
15829
- box-shadow: 0 0 0 6px color-mix(in srgb, var(--qc-tone) 22%, transparent);
15830
- }
15831
- @keyframes qc-tag-dot-pulse {
15832
- 0% { transform: scale(1); }
15833
- 100% { transform: scale(1.35); box-shadow: 0 0 0 6px color-mix(in srgb, var(--qc-tone) 18%, transparent); }
15834
- }
15835
-
15836
- /* The draggable knob — starts at left, breathes when idle, snaps colors per zone. */
15837
- .qc-drag-action {
15838
- position: absolute;
15839
- left: var(--qc-knob-x, 6px);
15840
- top: 50%;
15841
- z-index: 3;
15842
- width: 42%;
15843
- min-width: 138px;
15844
- max-width: 200px;
15845
- height: 56px;
15846
- padding: 0 16px;
15847
- border: 0;
15848
- border-radius: 12px;
15849
- background: linear-gradient(180deg, var(--qc-tone), color-mix(in srgb, var(--qc-tone) 84%, black));
15850
- color: white;
15782
+ gap: 7px;
15783
+ height: 38px;
15784
+ padding: 0 14px;
15785
+ border: 1px solid rgba(125, 91, 57, 0.22);
15786
+ border-radius: 999px;
15787
+ background: rgba(255, 255, 255, 0.92);
15788
+ color: var(--text-secondary);
15851
15789
  font-family: var(--font-sans);
15852
- font-size: 0.86rem;
15853
- font-weight: 800;
15790
+ font-size: 0.82rem;
15791
+ font-weight: 700;
15854
15792
  letter-spacing: 0.01em;
15855
- display: inline-flex;
15856
- align-items: center;
15857
- justify-content: center;
15858
- gap: 10px;
15793
+ white-space: nowrap;
15859
15794
  cursor: grab;
15860
- box-shadow:
15861
- 0 8px 22px var(--qc-tone-soft),
15862
- inset 0 1px 0 rgba(255, 255, 255, 0.35);
15863
- transform: translateY(-50%);
15864
- transition: left 0.22s cubic-bezier(0.4, 0.0, 0.2, 1),
15865
- background 0.18s ease,
15866
- box-shadow 0.18s ease;
15867
15795
  touch-action: none;
15868
- overflow: hidden;
15869
- animation: qc-knob-breathe 2.4s ease-in-out infinite;
15870
- }
15871
- .qc-drag-track.is-dragging .qc-drag-action {
15872
- cursor: grabbing;
15873
- transition: background 0.12s ease, box-shadow 0.12s ease;
15874
- animation: none;
15875
- }
15876
- .qc-drag-grip {
15877
- display: inline-flex;
15878
- flex-direction: column;
15879
- align-items: center;
15880
- justify-content: center;
15881
- gap: 2px;
15882
- margin-right: 2px;
15883
- opacity: 0.7;
15884
- flex: 0 0 auto;
15885
- }
15886
- .qc-drag-grip i {
15887
- display: block;
15888
- width: 12px;
15889
- height: 1.5px;
15890
- border-radius: 1px;
15891
- background: rgba(255, 255, 255, 0.85);
15892
- }
15893
- .qc-drag-label {
15894
- white-space: nowrap;
15895
- overflow: hidden;
15896
- text-overflow: ellipsis;
15897
- }
15898
- .qc-drag-action:disabled {
15899
- opacity: 0.5;
15900
- cursor: not-allowed;
15901
- box-shadow: none;
15902
- animation: none;
15903
- }
15904
- /* Dwell progress bar — bottom of the knob, fills left→right over DWELL_MS */
15905
- .qc-drag-dwell-bar {
15906
- position: absolute;
15907
- left: 0;
15908
- right: 0;
15909
- bottom: 0;
15910
- height: 3px;
15911
- background: rgba(255, 255, 255, 0.78);
15912
- transform: scaleX(0);
15913
- transform-origin: left center;
15914
- border-radius: 0 0 12px 12px;
15915
- pointer-events: none;
15916
- transition: opacity 0.2s ease;
15917
- opacity: 0;
15918
- }
15919
- .qc-drag-track[data-tag-dwell="active"] .qc-drag-dwell-bar {
15920
- opacity: 1;
15921
- animation: qc-dwell-fill var(--qc-dwell-ms) linear forwards;
15796
+ box-shadow: 0 2px 6px rgba(89, 58, 32, 0.08);
15797
+ z-index: 2;
15798
+ transition: box-shadow 0.18s ease, border-color 0.18s ease, background 0.18s ease, color 0.18s ease;
15922
15799
  }
15923
- .qc-drag-track[data-tag-dwell="armed"] .qc-drag-dwell-bar {
15924
- opacity: 0.55;
15925
- transform: scaleX(1);
15800
+ /* Only animate position while settling, so live drag stays glued to the pointer. */
15801
+ .qc-chip.qc-chip--anim {
15802
+ transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
15803
+ box-shadow 0.18s ease, border-color 0.18s ease, background 0.18s ease, color 0.18s ease;
15926
15804
  }
15927
- @keyframes qc-dwell-fill {
15928
- from { transform: scaleX(0); }
15929
- to { transform: scaleX(1); }
15805
+ .qc-chip.is-grabbing {
15806
+ cursor: grabbing;
15807
+ z-index: 5;
15808
+ box-shadow: 0 12px 26px rgba(89, 58, 32, 0.22);
15930
15809
  }
15931
- @keyframes qc-knob-breathe {
15932
- 0%, 100% { box-shadow: 0 6px 18px var(--qc-tone-soft), inset 0 1px 0 rgba(255, 255, 255, 0.35); }
15933
- 50% { box-shadow: 0 10px 28px var(--qc-tone-soft),
15934
- 0 0 0 4px color-mix(in srgb, var(--qc-tone) 22%, transparent),
15935
- inset 0 1px 0 rgba(255, 255, 255, 0.4); }
15810
+ .qc-chip:disabled { cursor: not-allowed; }
15811
+ .qc-chip:not(:disabled):hover { border-color: var(--qc-tone); }
15812
+
15813
+ .qc-chip-dot {
15814
+ width: 9px;
15815
+ height: 9px;
15816
+ border-radius: 50%;
15817
+ background: rgba(125, 91, 57, 0.30);
15818
+ box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.6);
15819
+ transition: background 0.18s ease, transform 0.18s ease;
15936
15820
  }
15937
- @media (prefers-reduced-motion: reduce) {
15938
- .qc-drag-action,
15939
- .qc-chevron,
15940
- .qc-drag-dwell-bar { animation: none !important; transition: none !important; }
15821
+ .qc-chip--commit .qc-chip-dot { background: var(--accent); }
15822
+ .qc-chip--tag .qc-chip-dot { background: #4a6fa5; }
15823
+ .qc-chip--push .qc-chip-dot { background: #4f7a58; }
15824
+
15825
+ /* Each chip carries its own identity tint at rest. */
15826
+ .qc-chip--commit { border-color: color-mix(in srgb, var(--accent) 30%, rgba(125, 91, 57, 0.2)); }
15827
+ .qc-chip--tag { border-color: color-mix(in srgb, #4a6fa5 30%, rgba(125, 91, 57, 0.2)); }
15828
+ .qc-chip--push { border-color: color-mix(in srgb, #4f7a58 30%, rgba(125, 91, 57, 0.2)); }
15829
+
15830
+ /* Grabbed or magnetically attached → lifts and lights up in its own color. */
15831
+ .qc-chip.is-grabbing, .qc-chip.is-attached {
15832
+ color: var(--text-primary);
15833
+ box-shadow: 0 12px 26px var(--qc-tone-soft);
15834
+ z-index: 5;
15941
15835
  }
15836
+ .qc-chip.is-grabbing .qc-chip-dot, .qc-chip.is-attached .qc-chip-dot { transform: scale(1.1); }
15837
+ .qc-chip--commit.is-grabbing, .qc-chip--commit.is-attached { background: linear-gradient(180deg, #fff, color-mix(in srgb, var(--accent) 16%, #fff)); border-color: color-mix(in srgb, var(--accent) 46%, transparent); }
15838
+ .qc-chip--tag.is-grabbing, .qc-chip--tag.is-attached { background: linear-gradient(180deg, #fff, color-mix(in srgb, #4a6fa5 16%, #fff)); border-color: color-mix(in srgb, #4a6fa5 46%, transparent); }
15839
+ .qc-chip--push.is-grabbing, .qc-chip--push.is-attached { background: linear-gradient(180deg, #fff, color-mix(in srgb, #4f7a58 16%, #fff)); border-color: color-mix(in srgb, #4f7a58 46%, transparent); }
15942
15840
 
15943
- /* Cancel modeuser has ventured past Commit, then dragged back. Release here = no-op. */
15944
- .qc-drag-track[data-cancel-mode="1"] {
15945
- --qc-tone: #8c735f;
15946
- --qc-tone-soft: rgba(125, 91, 57, 0.16);
15841
+ /* Launch paddrop target on the right; also tappable. */
15842
+ .qc-dock-launch {
15843
+ display: flex;
15844
+ flex-direction: column;
15845
+ align-items: center;
15846
+ justify-content: center;
15847
+ gap: 4px;
15848
+ border-radius: 14px;
15849
+ border: 1.5px dashed rgba(125, 91, 57, 0.32);
15850
+ background: rgba(255, 255, 255, 0.4);
15851
+ color: var(--text-muted);
15852
+ cursor: pointer;
15853
+ touch-action: none;
15854
+ transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease,
15855
+ transform 0.2s ease, box-shadow 0.2s ease;
15947
15856
  }
15948
- .qc-drag-track[data-cancel-mode="1"] .qc-drag-action {
15949
- background: linear-gradient(180deg, #a3897a, #7a604c);
15950
- box-shadow: 0 4px 12px rgba(125, 91, 57, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.25);
15951
- animation: none;
15857
+ .qc-dock-launch:not(:disabled):hover {
15858
+ border-color: var(--qc-tone);
15859
+ color: var(--qc-tone);
15860
+ background: color-mix(in srgb, var(--qc-tone) 8%, rgba(255, 255, 255, 0.5));
15952
15861
  }
15953
- .qc-drag-track[data-cancel-mode="1"] .qc-drag-dwell-bar,
15954
- .qc-drag-track[data-cancel-mode="1"] .qc-baseline-seg,
15955
- .qc-drag-track[data-cancel-mode="1"] .qc-chevrons { opacity: 0.25 !important; }
15956
- .qc-drag-track[data-cancel-mode="1"] .qc-drag-label {
15957
- animation: qc-cancel-shake 0.6s ease-in-out infinite;
15862
+ .qc-dock-launch:disabled { cursor: not-allowed; }
15863
+ .qc-dock-launch-arrow { display: inline-flex; transition: transform 0.2s ease; }
15864
+ .qc-dock-launch-label {
15865
+ font-size: 0.72rem;
15866
+ font-weight: 800;
15867
+ letter-spacing: 0.04em;
15958
15868
  }
15959
- @keyframes qc-cancel-shake {
15960
- 0%, 100% { transform: translateX(0); }
15961
- 25% { transform: translateX(-1.5px); }
15962
- 75% { transform: translateX(1.5px); }
15869
+ /* Hot = a chip is hovering over the pad; release to fire. */
15870
+ .qc-dock-stage[data-hot="1"] .qc-dock-launch {
15871
+ border-style: solid;
15872
+ border-color: var(--qc-tone);
15873
+ background: var(--qc-tone);
15874
+ color: #fff;
15875
+ transform: scale(1.04);
15876
+ box-shadow: 0 8px 22px var(--qc-tone-soft), 0 0 0 5px color-mix(in srgb, var(--qc-tone) 18%, transparent);
15963
15877
  }
15878
+ .qc-dock-stage[data-hot="1"] .qc-dock-launch-arrow { transform: translateX(3px); }
15964
15879
 
15965
- .qc-drag-help {
15880
+ .qc-dock-hint {
15881
+ min-height: 1em;
15966
15882
  font-size: 0.7rem;
15967
15883
  color: var(--text-muted);
15968
15884
  text-align: center;
15969
15885
  letter-spacing: 0.02em;
15970
- opacity: 0.78;
15886
+ opacity: 0.8;
15887
+ }
15888
+
15889
+ @media (prefers-reduced-motion: reduce) {
15890
+ .qc-chip, .qc-chip--anim, .qc-dock-cluster, .qc-dock-launch, .qc-dock-busy-dot {
15891
+ animation: none !important;
15892
+ transition: none !important;
15893
+ }
15971
15894
  }
15972
15895
 
15973
15896
  @media (max-width: 720px) {
@@ -15986,13 +15909,17 @@
15986
15909
  grid-template-columns: 1fr 18px 1fr;
15987
15910
  gap: 6px;
15988
15911
  }
15989
- .qc-drag-track { height: 80px; }
15990
- .qc-drag-action {
15991
- width: 46%;
15992
- min-width: 122px;
15993
- height: 54px;
15912
+ .qc-dock-stage {
15913
+ height: 160px;
15914
+ grid-template-columns: minmax(0, 1fr) 82px;
15915
+ gap: 8px;
15916
+ }
15917
+ .qc-chip {
15918
+ height: 36px;
15919
+ padding: 0 12px;
15920
+ font-size: 0.8rem;
15994
15921
  }
15995
- .qc-chevrons { right: 10px; }
15922
+ .qc-dock-launch-label { font-size: 0.68rem; }
15996
15923
  }
15997
15924
 
15998
15925
  /* ============================================================ */
@@ -1,4 +1,4 @@
1
- export declare const EMBEDDED_WEB_ASSET_VERSION = "57b36c48d8a4";
1
+ export declare const EMBEDDED_WEB_ASSET_VERSION = "88a2b1bfc9fa";
2
2
  export declare const EMBEDDED_WEB_ASSETS: {
3
3
  readonly scriptsJs: string;
4
4
  readonly stylesCss: string;