@lilydesignsystem/themes 0.1.0 → 0.2.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/dist/abyss.css +355 -3
- package/dist/acid.css +355 -3
- package/dist/adobe-spectrum.css +355 -3
- package/dist/aqua.css +355 -3
- package/dist/autumn.css +355 -3
- package/dist/black.css +355 -3
- package/dist/bumblebee.css +355 -3
- package/dist/business.css +355 -3
- package/dist/caramellatte.css +355 -3
- package/dist/cmyk.css +355 -3
- package/dist/coffee.css +355 -3
- package/dist/corporate.css +355 -3
- package/dist/cupcake.css +355 -3
- package/dist/cyberpunk.css +355 -3
- package/dist/dark.css +355 -3
- package/dist/dim.css +355 -3
- package/dist/dracula.css +355 -3
- package/dist/emerald.css +355 -3
- package/dist/fantasy.css +355 -3
- package/dist/forest.css +355 -3
- package/dist/garden.css +355 -3
- package/dist/halloween.css +355 -3
- package/dist/lemonade.css +355 -3
- package/dist/light.css +355 -3
- package/dist/lofi.css +355 -3
- package/dist/luxury.css +355 -3
- package/dist/mozilla-protocol.css +355 -3
- package/dist/night.css +355 -3
- package/dist/nord.css +355 -3
- package/dist/pastel.css +355 -3
- package/dist/retro.css +355 -3
- package/dist/silk.css +355 -3
- package/dist/sunset.css +355 -3
- package/dist/synthwave.css +355 -3
- package/dist/united-kingdom-government-digital-service.css +355 -3
- package/dist/united-kingdom-national-health-service-england-for-patients.css +355 -3
- package/dist/united-kingdom-national-health-service-england-for-practitioners.css +355 -3
- package/dist/united-kingdom-national-health-service-scotland-for-patients.css +355 -3
- package/dist/united-kingdom-national-health-service-scotland-for-practitioners.css +355 -3
- package/dist/united-kingdom-national-health-service-wales-for-patients.css +355 -3
- package/dist/united-kingdom-national-health-service-wales-for-practitioners.css +355 -3
- package/dist/united-states-web-design-system.css +355 -3
- package/dist/valentine.css +355 -3
- package/dist/winter.css +355 -3
- package/dist/wireframe.css +355 -3
- package/package.json +1 -1
|
@@ -2201,6 +2201,7 @@
|
|
|
2201
2201
|
.theme-picker,
|
|
2202
2202
|
.locale-picker,
|
|
2203
2203
|
.text-size-picker,
|
|
2204
|
+
.search-picker,
|
|
2204
2205
|
.share-picker,
|
|
2205
2206
|
.date-time-picker
|
|
2206
2207
|
) {
|
|
@@ -2212,6 +2213,7 @@
|
|
|
2212
2213
|
.theme-picker-button,
|
|
2213
2214
|
.locale-picker-button,
|
|
2214
2215
|
.text-size-picker-button,
|
|
2216
|
+
.search-picker-button,
|
|
2215
2217
|
.share-picker-button,
|
|
2216
2218
|
.date-time-picker-button
|
|
2217
2219
|
) {
|
|
@@ -2247,7 +2249,8 @@
|
|
|
2247
2249
|
.locale-picker-icon,
|
|
2248
2250
|
.text-size-picker-icon,
|
|
2249
2251
|
.motion-picker-icon,
|
|
2250
|
-
.share-picker-icon
|
|
2252
|
+
.share-picker-icon,
|
|
2253
|
+
.search-picker-icon
|
|
2251
2254
|
) {
|
|
2252
2255
|
display: inline-flex;
|
|
2253
2256
|
align-items: center;
|
|
@@ -2326,11 +2329,359 @@
|
|
|
2326
2329
|
line-height: 0;
|
|
2327
2330
|
}
|
|
2328
2331
|
|
|
2332
|
+
/* Components added 2026-10-05: kbd-shortcut, show-more, thinking,
|
|
2333
|
+
empty-state, file-tree, one-time-password-input, multi-select, and
|
|
2334
|
+
the four calendar views. The calendar views reuse the
|
|
2335
|
+
calendar-table-* sub-element hooks, so they only need the table
|
|
2336
|
+
root rule. show-more's clamp is keyed on data-expanded (the
|
|
2337
|
+
component never sets an inline style); file-tree hides a closed
|
|
2338
|
+
folder's group via aria-expanded. */
|
|
2339
|
+
:where(.calendar-year-table, .calendar-month-table, .calendar-week-table, .calendar-day-table) {
|
|
2340
|
+
width: 100%;
|
|
2341
|
+
border-collapse: collapse;
|
|
2342
|
+
}
|
|
2343
|
+
|
|
2344
|
+
:where(.kbd-shortcut) {
|
|
2345
|
+
display: inline-flex;
|
|
2346
|
+
align-items: center;
|
|
2347
|
+
gap: var(--lily-space-xs);
|
|
2348
|
+
}
|
|
2349
|
+
|
|
2350
|
+
:where(.kbd-shortcut-key) {
|
|
2351
|
+
display: inline-block;
|
|
2352
|
+
padding: 0.125rem 0.4rem;
|
|
2353
|
+
font-family: var(--lily-font-mono);
|
|
2354
|
+
font-size: 0.85em;
|
|
2355
|
+
background-color: var(--lily-surface-alt);
|
|
2356
|
+
border: var(--border) solid var(--lily-border-strong);
|
|
2357
|
+
border-bottom-width: 2px;
|
|
2358
|
+
border-radius: var(--lily-radius-sm);
|
|
2359
|
+
}
|
|
2360
|
+
|
|
2361
|
+
:where(.show-more-content[data-expanded="false"]) {
|
|
2362
|
+
max-height: 6em;
|
|
2363
|
+
overflow: hidden;
|
|
2364
|
+
}
|
|
2365
|
+
|
|
2366
|
+
:where(.show-more-button) {
|
|
2367
|
+
margin-block-start: var(--lily-space-xs);
|
|
2368
|
+
padding: var(--lily-space-xs);
|
|
2369
|
+
font: inherit;
|
|
2370
|
+
color: inherit;
|
|
2371
|
+
text-decoration: underline;
|
|
2372
|
+
background: none;
|
|
2373
|
+
border: 0;
|
|
2374
|
+
cursor: pointer;
|
|
2375
|
+
}
|
|
2376
|
+
|
|
2377
|
+
:where(.thinking) {
|
|
2378
|
+
padding: var(--lily-space-xs) var(--lily-space-sm);
|
|
2379
|
+
color: var(--lily-text-muted);
|
|
2380
|
+
border: var(--border) solid var(--lily-border-strong);
|
|
2381
|
+
border-radius: var(--lily-radius-md);
|
|
2382
|
+
}
|
|
2383
|
+
|
|
2384
|
+
:where(.thinking-summary) {
|
|
2385
|
+
cursor: pointer;
|
|
2386
|
+
}
|
|
2387
|
+
|
|
2388
|
+
:where(.thinking[data-streaming] .thinking-summary) {
|
|
2389
|
+
font-style: italic;
|
|
2390
|
+
}
|
|
2391
|
+
|
|
2392
|
+
:where(.empty-state) {
|
|
2393
|
+
padding: var(--lily-space-lg);
|
|
2394
|
+
text-align: center;
|
|
2395
|
+
color: var(--lily-text-muted);
|
|
2396
|
+
}
|
|
2397
|
+
|
|
2398
|
+
:where(.file-tree, .file-tree [role="group"]) {
|
|
2399
|
+
margin: 0;
|
|
2400
|
+
padding-inline-start: 0;
|
|
2401
|
+
list-style: none;
|
|
2402
|
+
}
|
|
2403
|
+
|
|
2404
|
+
:where(.file-tree [role="group"]) {
|
|
2405
|
+
padding-inline-start: var(--lily-space-md);
|
|
2406
|
+
}
|
|
2407
|
+
|
|
2408
|
+
:where(.file-tree [role="treeitem"]) {
|
|
2409
|
+
padding: var(--lily-space-xs) var(--lily-space-sm);
|
|
2410
|
+
cursor: pointer;
|
|
2411
|
+
}
|
|
2412
|
+
|
|
2413
|
+
:where(.file-tree [role="treeitem"][aria-expanded="false"] > [role="group"]) {
|
|
2414
|
+
display: none;
|
|
2415
|
+
}
|
|
2416
|
+
|
|
2417
|
+
:where(.file-tree [role="treeitem"]:focus-visible) {
|
|
2418
|
+
outline: var(--lily-focus-ring);
|
|
2419
|
+
outline-offset: -2px;
|
|
2420
|
+
}
|
|
2421
|
+
|
|
2422
|
+
:where(.one-time-password-input, .multi-select, .multi-select-with-extras select) {
|
|
2423
|
+
padding: var(--lily-space-xs) var(--lily-space-sm);
|
|
2424
|
+
font: inherit;
|
|
2425
|
+
color: var(--lily-text);
|
|
2426
|
+
background-color: var(--lily-surface);
|
|
2427
|
+
border: var(--border) solid var(--lily-border-strong);
|
|
2428
|
+
border-radius: var(--lily-radius-sm);
|
|
2429
|
+
}
|
|
2430
|
+
|
|
2431
|
+
:where(.one-time-password-input) {
|
|
2432
|
+
font-family: var(--lily-font-mono);
|
|
2433
|
+
letter-spacing: 0.25em;
|
|
2434
|
+
}
|
|
2435
|
+
|
|
2436
|
+
/* Chart containers added 2026-10-05 (gauge, heatmap, radar, sankey, pie,
|
|
2437
|
+
ring, funnel, candlestick, composed, choropleth, sunburst) join the
|
|
2438
|
+
existing five as block figures. Every chart's optional data-table
|
|
2439
|
+
wrapper sits below the graphic; the table itself inherits the
|
|
2440
|
+
catalog's table styling. */
|
|
2441
|
+
:where(
|
|
2442
|
+
.gauge-chart,
|
|
2443
|
+
.heatmap-chart,
|
|
2444
|
+
.radar-chart,
|
|
2445
|
+
.sankey-chart,
|
|
2446
|
+
.pie-chart,
|
|
2447
|
+
.ring-chart,
|
|
2448
|
+
.funnel-chart,
|
|
2449
|
+
.candlestick-chart,
|
|
2450
|
+
.composed-chart,
|
|
2451
|
+
.choropleth-chart,
|
|
2452
|
+
.sunburst-chart
|
|
2453
|
+
) {
|
|
2454
|
+
display: block;
|
|
2455
|
+
margin: 0;
|
|
2456
|
+
}
|
|
2457
|
+
|
|
2458
|
+
:where(
|
|
2459
|
+
.area-chart-data-table,
|
|
2460
|
+
.bar-chart-data-table,
|
|
2461
|
+
.column-chart-data-table,
|
|
2462
|
+
.line-chart-data-table,
|
|
2463
|
+
.scatter-chart-data-table,
|
|
2464
|
+
.gauge-chart-data-table,
|
|
2465
|
+
.heatmap-chart-data-table,
|
|
2466
|
+
.radar-chart-data-table,
|
|
2467
|
+
.sankey-chart-data-table,
|
|
2468
|
+
.pie-chart-data-table,
|
|
2469
|
+
.ring-chart-data-table,
|
|
2470
|
+
.funnel-chart-data-table,
|
|
2471
|
+
.candlestick-chart-data-table,
|
|
2472
|
+
.composed-chart-data-table,
|
|
2473
|
+
.choropleth-chart-data-table,
|
|
2474
|
+
.sunburst-chart-data-table
|
|
2475
|
+
) {
|
|
2476
|
+
margin-block-start: var(--lily-space-sm);
|
|
2477
|
+
overflow-x: auto;
|
|
2478
|
+
}
|
|
2479
|
+
|
|
2480
|
+
/* tool-call (2026-10-05): a bordered disclosure; the status word sits next
|
|
2481
|
+
to the name in the summary and is never the only cue. [data-status] is
|
|
2482
|
+
the consumer hook for a spinner or icon. */
|
|
2483
|
+
:where(.tool-call) {
|
|
2484
|
+
border: var(--border) solid var(--lily-border-strong);
|
|
2485
|
+
border-radius: var(--lily-radius-md);
|
|
2486
|
+
background-color: var(--lily-surface);
|
|
2487
|
+
color: var(--lily-text);
|
|
2488
|
+
}
|
|
2489
|
+
|
|
2490
|
+
:where(.tool-call-summary) {
|
|
2491
|
+
display: flex;
|
|
2492
|
+
align-items: center;
|
|
2493
|
+
gap: var(--lily-space-sm);
|
|
2494
|
+
padding: var(--lily-space-xs) var(--lily-space-sm);
|
|
2495
|
+
cursor: pointer;
|
|
2496
|
+
}
|
|
2497
|
+
|
|
2498
|
+
:where(.tool-call-content) {
|
|
2499
|
+
display: grid;
|
|
2500
|
+
gap: var(--lily-space-xs);
|
|
2501
|
+
padding: var(--lily-space-xs) var(--lily-space-sm);
|
|
2502
|
+
border-block-start: var(--border) solid var(--lily-border-strong);
|
|
2503
|
+
}
|
|
2504
|
+
|
|
2505
|
+
:where(.tool-call-name) {
|
|
2506
|
+
font-family: var(--lily-font-mono);
|
|
2507
|
+
}
|
|
2508
|
+
|
|
2509
|
+
:where(.tool-call-status) {
|
|
2510
|
+
color: var(--lily-text-muted);
|
|
2511
|
+
}
|
|
2512
|
+
|
|
2513
|
+
:where(.tool-call-input pre, .tool-call-output pre) {
|
|
2514
|
+
margin: 0;
|
|
2515
|
+
overflow-x: auto;
|
|
2516
|
+
font-family: var(--lily-font-mono);
|
|
2517
|
+
}
|
|
2518
|
+
|
|
2519
|
+
:where(.tool-call-error) {
|
|
2520
|
+
padding: var(--lily-space-xs) var(--lily-space-sm);
|
|
2521
|
+
border: var(--border) solid var(--lily-border-strong);
|
|
2522
|
+
border-radius: var(--lily-radius-sm);
|
|
2523
|
+
font-weight: 600;
|
|
2524
|
+
}
|
|
2525
|
+
|
|
2526
|
+
/* mark (2026-10-05): the native <mark> highlight. The UA default is a
|
|
2527
|
+
fixed yellow; this uses the theme's own surface and text tokens so the
|
|
2528
|
+
pair keeps its contrast in every theme (including dark ones). */
|
|
2529
|
+
:where(.mark) {
|
|
2530
|
+
padding-inline: 0.15em;
|
|
2531
|
+
color: var(--lily-text);
|
|
2532
|
+
background-color: var(--lily-surface-alt);
|
|
2533
|
+
border-radius: var(--lily-radius-sm);
|
|
2534
|
+
box-shadow: 0 0 0 1px var(--lily-border-strong);
|
|
2535
|
+
}
|
|
2536
|
+
|
|
2537
|
+
/* chat-composer (2026-10-05): one row, textarea growing, one button. The
|
|
2538
|
+
button's visible word is its accessible name — hide it visually, never
|
|
2539
|
+
with display:none, if you replace it with an icon. */
|
|
2540
|
+
:where(.chat-composer) {
|
|
2541
|
+
display: flex;
|
|
2542
|
+
align-items: flex-end;
|
|
2543
|
+
gap: var(--lily-space-xs);
|
|
2544
|
+
}
|
|
2545
|
+
|
|
2546
|
+
:where(.chat-composer-input) {
|
|
2547
|
+
flex: 1;
|
|
2548
|
+
padding: var(--lily-space-xs) var(--lily-space-sm);
|
|
2549
|
+
font: inherit;
|
|
2550
|
+
color: var(--lily-text);
|
|
2551
|
+
background-color: var(--lily-surface);
|
|
2552
|
+
border: var(--border) solid var(--lily-border-strong);
|
|
2553
|
+
border-radius: var(--lily-radius-md);
|
|
2554
|
+
resize: none;
|
|
2555
|
+
}
|
|
2556
|
+
|
|
2557
|
+
:where(.chat-composer-button) {
|
|
2558
|
+
min-width: 2.5rem;
|
|
2559
|
+
min-height: 2.5rem;
|
|
2560
|
+
padding: var(--lily-space-xs) var(--lily-space-sm);
|
|
2561
|
+
font: inherit;
|
|
2562
|
+
color: var(--lily-text);
|
|
2563
|
+
background-color: var(--lily-surface);
|
|
2564
|
+
border: var(--border) solid var(--lily-border-strong);
|
|
2565
|
+
border-radius: var(--lily-radius-md);
|
|
2566
|
+
cursor: pointer;
|
|
2567
|
+
}
|
|
2568
|
+
|
|
2569
|
+
:where(.chat-composer-button:disabled) {
|
|
2570
|
+
cursor: not-allowed;
|
|
2571
|
+
opacity: 0.6;
|
|
2572
|
+
}
|
|
2573
|
+
|
|
2574
|
+
/* Picker tooltips (added 2026-10-04): a visual-only role="tooltip"
|
|
2575
|
+
element beside each picker's icon button, holding the same text as
|
|
2576
|
+
its aria-label. The component toggles [hidden]; position and look
|
|
2577
|
+
are here. It sits just below the button, in the inverse of the
|
|
2578
|
+
page colours so it never disappears into the surface. A ::before
|
|
2579
|
+
strip bridges the gap to the button so the pointer can travel onto
|
|
2580
|
+
the tooltip without it closing (WCAG 1.4.13, hoverable). */
|
|
2581
|
+
:where(.motion-picker) {
|
|
2582
|
+
position: relative;
|
|
2583
|
+
display: inline-block;
|
|
2584
|
+
}
|
|
2585
|
+
|
|
2586
|
+
:where(
|
|
2587
|
+
.theme-picker-tooltip,
|
|
2588
|
+
.locale-picker-tooltip,
|
|
2589
|
+
.text-size-picker-tooltip,
|
|
2590
|
+
.motion-picker-tooltip,
|
|
2591
|
+
.share-picker-tooltip,
|
|
2592
|
+
.search-picker-tooltip,
|
|
2593
|
+
.date-time-picker-tooltip
|
|
2594
|
+
) {
|
|
2595
|
+
position: absolute;
|
|
2596
|
+
z-index: 11;
|
|
2597
|
+
inset-inline-start: 0;
|
|
2598
|
+
inset-block-start: 100%;
|
|
2599
|
+
margin-block-start: var(--lily-space-xs);
|
|
2600
|
+
padding: var(--lily-space-xs) var(--lily-space-sm);
|
|
2601
|
+
font-size: 0.875em;
|
|
2602
|
+
line-height: 1.3;
|
|
2603
|
+
white-space: nowrap;
|
|
2604
|
+
color: var(--lily-surface);
|
|
2605
|
+
background-color: var(--lily-text);
|
|
2606
|
+
border-radius: var(--lily-radius-sm);
|
|
2607
|
+
box-shadow: var(--lily-shadow-md);
|
|
2608
|
+
}
|
|
2609
|
+
|
|
2610
|
+
:where(
|
|
2611
|
+
.theme-picker-tooltip,
|
|
2612
|
+
.locale-picker-tooltip,
|
|
2613
|
+
.text-size-picker-tooltip,
|
|
2614
|
+
.motion-picker-tooltip,
|
|
2615
|
+
.share-picker-tooltip,
|
|
2616
|
+
.search-picker-tooltip,
|
|
2617
|
+
.date-time-picker-tooltip
|
|
2618
|
+
)::before {
|
|
2619
|
+
content: "";
|
|
2620
|
+
position: absolute;
|
|
2621
|
+
inset-inline: 0;
|
|
2622
|
+
inset-block-end: 100%;
|
|
2623
|
+
height: var(--lily-space-xs);
|
|
2624
|
+
}
|
|
2625
|
+
|
|
2626
|
+
:where(
|
|
2627
|
+
.theme-picker-tooltip,
|
|
2628
|
+
.locale-picker-tooltip,
|
|
2629
|
+
.text-size-picker-tooltip,
|
|
2630
|
+
.motion-picker-tooltip,
|
|
2631
|
+
.share-picker-tooltip,
|
|
2632
|
+
.search-picker-tooltip,
|
|
2633
|
+
.date-time-picker-tooltip
|
|
2634
|
+
)[hidden] {
|
|
2635
|
+
display: none;
|
|
2636
|
+
}
|
|
2637
|
+
|
|
2638
|
+
/* search-picker's panel holds a search form rather than a list: the
|
|
2639
|
+
field and the ⏎ submit button sit in one row, the button at the
|
|
2640
|
+
field's inline end (right in LTR, left under dir="rtl"). The ⏎
|
|
2641
|
+
button matches the picker trigger buttons' size and border. */
|
|
2642
|
+
:where(.search-picker-form) {
|
|
2643
|
+
display: flex;
|
|
2644
|
+
align-items: stretch;
|
|
2645
|
+
gap: var(--lily-space-xs);
|
|
2646
|
+
margin: 0;
|
|
2647
|
+
}
|
|
2648
|
+
|
|
2649
|
+
:where(.search-picker-input) {
|
|
2650
|
+
min-width: 14rem;
|
|
2651
|
+
padding: var(--lily-space-xs) var(--lily-space-sm);
|
|
2652
|
+
font: inherit;
|
|
2653
|
+
color: var(--lily-text);
|
|
2654
|
+
background-color: var(--lily-surface);
|
|
2655
|
+
border: var(--border) solid var(--lily-border-strong);
|
|
2656
|
+
border-radius: var(--lily-radius-sm);
|
|
2657
|
+
}
|
|
2658
|
+
|
|
2659
|
+
:where(.search-picker-submit) {
|
|
2660
|
+
display: inline-flex;
|
|
2661
|
+
align-items: center;
|
|
2662
|
+
justify-content: center;
|
|
2663
|
+
min-width: 2.5rem;
|
|
2664
|
+
min-height: 2.5rem;
|
|
2665
|
+
padding: var(--lily-space-xs);
|
|
2666
|
+
font: inherit;
|
|
2667
|
+
line-height: 1;
|
|
2668
|
+
color: var(--lily-text);
|
|
2669
|
+
background-color: var(--lily-surface);
|
|
2670
|
+
border: var(--border) solid var(--lily-border-strong);
|
|
2671
|
+
border-radius: var(--lily-radius-md);
|
|
2672
|
+
cursor: pointer;
|
|
2673
|
+
}
|
|
2674
|
+
|
|
2675
|
+
:where(.search-picker-submit:hover) {
|
|
2676
|
+
background-color: var(--lily-surface-alt);
|
|
2677
|
+
}
|
|
2678
|
+
|
|
2329
2679
|
:where(
|
|
2330
2680
|
.theme-picker-list,
|
|
2331
2681
|
.locale-picker-list,
|
|
2332
2682
|
.text-size-picker-list,
|
|
2333
|
-
.share-picker-list
|
|
2683
|
+
.share-picker-list,
|
|
2684
|
+
.search-picker-panel
|
|
2334
2685
|
) {
|
|
2335
2686
|
position: absolute;
|
|
2336
2687
|
z-index: 10;
|
|
@@ -2354,7 +2705,8 @@
|
|
|
2354
2705
|
.theme-picker-list,
|
|
2355
2706
|
.locale-picker-list,
|
|
2356
2707
|
.text-size-picker-list,
|
|
2357
|
-
.share-picker-list
|
|
2708
|
+
.share-picker-list,
|
|
2709
|
+
.search-picker-panel
|
|
2358
2710
|
)[hidden] {
|
|
2359
2711
|
display: none;
|
|
2360
2712
|
}
|