@umituz/web-design-system 6.14.0 → 6.16.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.
@@ -2479,3 +2479,1167 @@ textarea.input { font-family: inherit; }
2479
2479
  outline: none;
2480
2480
  cursor: pointer;
2481
2481
  }
2482
+
2483
+ .skip-link {
2484
+ position: absolute;
2485
+ left: 1rem;
2486
+ top: 0.5rem;
2487
+ z-index: 1000;
2488
+ padding: 0.5rem 1rem;
2489
+ background: var(--color-primary, #14705f);
2490
+ color: #ffffff;
2491
+ border-radius: var(--radius-sm, 6px);
2492
+ font-size: 0.875rem;
2493
+ font-weight: 500;
2494
+ transform: translateY(-200%);
2495
+ transition: transform 140ms cubic-bezier(0.2, 0.7, 0.3, 1);
2496
+ }
2497
+
2498
+ .skip-link:focus {
2499
+ transform: translateY(0);
2500
+ color: #ffffff;
2501
+ }
2502
+
2503
+ .visually-hidden {
2504
+ position: absolute;
2505
+ width: 1px;
2506
+ height: 1px;
2507
+ margin: -1px;
2508
+ padding: 0;
2509
+ overflow: hidden;
2510
+ clip: rect(0 0 0 0);
2511
+ white-space: nowrap;
2512
+ border: 0;
2513
+ }
2514
+
2515
+ .page-container {
2516
+ width: 100%;
2517
+ max-width: var(--container-max, 72rem);
2518
+ margin-inline: auto;
2519
+ padding-inline: var(--space-5, 1.5rem);
2520
+ }
2521
+
2522
+ @media (min-width: 768px) {
2523
+ .page-container {
2524
+ padding-inline: var(--space-8, 3rem);
2525
+ }
2526
+ }
2527
+
2528
+ .page-container.narrow {
2529
+ max-width: var(--container-narrow, 48rem);
2530
+ }
2531
+
2532
+ .entity-row {
2533
+ display: grid;
2534
+ grid-template-columns: auto minmax(0, 1fr) auto;
2535
+ align-items: center;
2536
+ gap: 0.75rem 1rem;
2537
+ width: 100%;
2538
+ padding: 1rem;
2539
+ border: 1px solid var(--color-border, #e7e5df);
2540
+ border-radius: var(--radius-md, 10px);
2541
+ background-color: var(--color-card, #ffffff);
2542
+ color: inherit;
2543
+ text-align: left;
2544
+ transition: border-color 140ms cubic-bezier(0.2, 0.7, 0.3, 1), box-shadow 140ms cubic-bezier(0.2, 0.7, 0.3, 1);
2545
+ text-decoration: none;
2546
+ box-sizing: border-box;
2547
+ }
2548
+
2549
+ a.entity-row:hover,
2550
+ .entity-row.interactive:hover {
2551
+ border-color: var(--color-primary, #14705f);
2552
+ }
2553
+
2554
+ .entity-row-icon {
2555
+ display: inline-flex;
2556
+ align-items: center;
2557
+ justify-content: center;
2558
+ width: 2.5rem;
2559
+ height: 2.5rem;
2560
+ border-radius: var(--radius-sm, 6px);
2561
+ background-color: var(--color-primary-soft, #eef5f2);
2562
+ color: var(--color-primary, #14705f);
2563
+ grid-row: span 2;
2564
+ }
2565
+
2566
+ .entity-row-main {
2567
+ display: grid;
2568
+ gap: 0.25rem;
2569
+ min-width: 0;
2570
+ }
2571
+
2572
+ .entity-row-title {
2573
+ display: inline-flex;
2574
+ align-items: center;
2575
+ gap: 0.5rem;
2576
+ font-weight: 500;
2577
+ color: var(--color-foreground, #101c19);
2578
+ }
2579
+
2580
+ .entity-row-title.highlight {
2581
+ font-weight: 600;
2582
+ }
2583
+
2584
+ .entity-row-dot {
2585
+ width: 7px;
2586
+ height: 7px;
2587
+ border-radius: 50%;
2588
+ background-color: var(--color-primary, #14705f);
2589
+ flex-shrink: 0;
2590
+ }
2591
+
2592
+ .entity-row-meta {
2593
+ font-size: 0.875rem;
2594
+ line-height: 1.35;
2595
+ color: var(--color-muted-foreground, #5c6b66);
2596
+ }
2597
+
2598
+ .entity-row-badge,
2599
+ .entity-row-aside {
2600
+ grid-row: span 2;
2601
+ justify-self: end;
2602
+ }
2603
+
2604
+ .entity-row-aside {
2605
+ display: grid;
2606
+ gap: 0.25rem;
2607
+ justify-items: end;
2608
+ font-size: 0.875rem;
2609
+ color: var(--color-foreground, #33413d);
2610
+ white-space: nowrap;
2611
+ }
2612
+
2613
+ .entity-row.highlight {
2614
+ border-color: var(--color-primary-soft, #b3d5c8);
2615
+ background-color: var(--color-primary-soft, #eef5f2);
2616
+ }
2617
+
2618
+ .placeholder-panel {
2619
+ border: 1px solid var(--color-border, #e7e5df);
2620
+ border-radius: var(--radius-md, 10px);
2621
+ background-color: var(--color-card, #ffffff);
2622
+ padding: 1.5rem;
2623
+ }
2624
+
2625
+ .placeholder-panel-step {
2626
+ display: inline-block;
2627
+ margin-bottom: 0.75rem;
2628
+ padding: 0.125rem 0.625rem;
2629
+ border-radius: 999px;
2630
+ background-color: var(--color-secondary, #f3f2ee);
2631
+ color: var(--color-muted-foreground, #5c6b66);
2632
+ font-size: 0.75rem;
2633
+ font-weight: 500;
2634
+ letter-spacing: 0.02em;
2635
+ }
2636
+
2637
+ .placeholder-panel-title {
2638
+ font-size: 1.375rem;
2639
+ font-weight: 600;
2640
+ margin: 0;
2641
+ color: var(--color-foreground, #101c19);
2642
+ }
2643
+
2644
+ .placeholder-panel-desc {
2645
+ margin-top: 0.5rem;
2646
+ max-width: 46rem;
2647
+ color: var(--color-muted-foreground, #5c6b66);
2648
+ line-height: 1.55;
2649
+ }
2650
+
2651
+ .placeholder-panel-caps {
2652
+ display: grid;
2653
+ grid-template-columns: repeat(2, minmax(0, 1fr));
2654
+ gap: 0.5rem 1.5rem;
2655
+ margin-top: 1.25rem;
2656
+ padding-top: 1.25rem;
2657
+ border-top: 1px solid var(--color-border, #e7e5df);
2658
+ list-style: none;
2659
+ padding-left: 0;
2660
+ }
2661
+
2662
+ @media (max-width: 767px) {
2663
+ .placeholder-panel-caps {
2664
+ grid-template-columns: 1fr;
2665
+ }
2666
+ }
2667
+
2668
+ .placeholder-panel-cap {
2669
+ display: flex;
2670
+ align-items: baseline;
2671
+ gap: 0.5rem;
2672
+ font-size: 0.875rem;
2673
+ color: var(--color-foreground, #33413d);
2674
+ }
2675
+
2676
+ .placeholder-panel-check {
2677
+ flex-shrink: 0;
2678
+ color: var(--color-primary, #14705f);
2679
+ transform: translateY(2px);
2680
+ }
2681
+
2682
+ .category-tile {
2683
+ display: flex;
2684
+ flex-direction: column;
2685
+ gap: 0.5rem;
2686
+ padding: 1.25rem;
2687
+ border: 1px solid var(--color-border, #e7e5df);
2688
+ border-radius: var(--radius-md, 10px);
2689
+ background-color: var(--color-card, #ffffff);
2690
+ color: inherit;
2691
+ text-decoration: none;
2692
+ transition: border-color 140ms cubic-bezier(0.2, 0.7, 0.3, 1), box-shadow 140ms cubic-bezier(0.2, 0.7, 0.3, 1);
2693
+ }
2694
+
2695
+ .category-tile:hover {
2696
+ border-color: var(--color-primary, #4f9c86);
2697
+ box-shadow: 0 1px 2px rgba(16, 28, 25, 0.05);
2698
+ }
2699
+
2700
+ .category-tile-icon {
2701
+ display: inline-flex;
2702
+ align-items: center;
2703
+ justify-content: center;
2704
+ width: 2.5rem;
2705
+ height: 2.5rem;
2706
+ border-radius: var(--radius-sm, 6px);
2707
+ background-color: var(--color-primary-soft, #eef5f2);
2708
+ color: var(--color-primary, #14705f);
2709
+ margin-bottom: 0.5rem;
2710
+ }
2711
+
2712
+ .category-tile-name {
2713
+ font-weight: 600;
2714
+ color: var(--color-foreground, #101c19);
2715
+ }
2716
+
2717
+ .category-tile-tagline {
2718
+ font-size: 0.875rem;
2719
+ line-height: 1.35;
2720
+ color: var(--color-muted-foreground, #5c6b66);
2721
+ }
2722
+
2723
+ .category-tile-meta {
2724
+ display: inline-flex;
2725
+ align-items: center;
2726
+ gap: 0.25rem;
2727
+ margin-top: 0.75rem;
2728
+ font-size: 0.75rem;
2729
+ font-weight: 500;
2730
+ color: var(--color-primary, #14705f);
2731
+ }
2732
+
2733
+ .product-row {
2734
+ display: flex;
2735
+ flex-wrap: wrap;
2736
+ justify-content: space-between;
2737
+ gap: 1rem;
2738
+ padding: 1.25rem;
2739
+ border: 1px solid var(--color-border, #e7e5df);
2740
+ border-radius: var(--radius-md, 10px);
2741
+ background-color: var(--color-card, #ffffff);
2742
+ }
2743
+
2744
+ .product-row-main {
2745
+ max-width: 34rem;
2746
+ min-width: 16rem;
2747
+ flex: 1;
2748
+ }
2749
+
2750
+ .product-row-provider {
2751
+ font-size: 0.75rem;
2752
+ font-weight: 600;
2753
+ letter-spacing: 0.08em;
2754
+ text-transform: uppercase;
2755
+ color: var(--color-muted-foreground, #7d8a85);
2756
+ }
2757
+
2758
+ .product-row-name {
2759
+ margin-top: 0.25rem;
2760
+ font-size: 1.125rem;
2761
+ color: var(--color-foreground, #101c19);
2762
+ }
2763
+
2764
+ .product-row-summary {
2765
+ margin-top: 0.5rem;
2766
+ font-size: 0.875rem;
2767
+ line-height: 1.35;
2768
+ color: var(--color-muted-foreground, #5c6b66);
2769
+ }
2770
+
2771
+ .product-row-highlights {
2772
+ display: flex;
2773
+ flex-wrap: wrap;
2774
+ gap: 0.25rem 1rem;
2775
+ margin-top: 0.75rem;
2776
+ list-style: none;
2777
+ padding: 0;
2778
+ }
2779
+
2780
+ .product-row-highlight {
2781
+ position: relative;
2782
+ padding-left: 0.75rem;
2783
+ font-size: 0.75rem;
2784
+ color: var(--color-muted-foreground, #5c6b66);
2785
+ }
2786
+
2787
+ .product-row-highlight::before {
2788
+ content: '';
2789
+ position: absolute;
2790
+ left: 0;
2791
+ top: 0.5em;
2792
+ width: 4px;
2793
+ height: 4px;
2794
+ border-radius: 50%;
2795
+ background-color: var(--color-primary, #4f9c86);
2796
+ }
2797
+
2798
+ .product-row-aside {
2799
+ display: grid;
2800
+ align-content: space-between;
2801
+ gap: 0.5rem;
2802
+ min-width: 11rem;
2803
+ text-align: right;
2804
+ }
2805
+
2806
+ @media (max-width: 640px) {
2807
+ .product-row-aside {
2808
+ text-align: left;
2809
+ width: 100%;
2810
+ }
2811
+ }
2812
+
2813
+ .product-row-premium {
2814
+ font-size: 1.25rem;
2815
+ font-weight: 600;
2816
+ color: var(--color-foreground, #101c19);
2817
+ }
2818
+
2819
+ .product-row-coverage {
2820
+ font-size: 0.75rem;
2821
+ color: var(--color-muted-foreground, #7d8a85);
2822
+ }
2823
+
2824
+ .product-row-cta {
2825
+ display: inline-flex;
2826
+ align-items: center;
2827
+ justify-content: center;
2828
+ padding: 0.5rem 1rem;
2829
+ border-radius: var(--radius-sm, 6px);
2830
+ background-color: var(--color-primary, #14705f);
2831
+ color: #ffffff;
2832
+ font-size: 0.875rem;
2833
+ font-weight: 500;
2834
+ text-decoration: none;
2835
+ transition: opacity 140ms ease;
2836
+ }
2837
+
2838
+ .product-row-cta:hover {
2839
+ opacity: 0.9;
2840
+ color: #ffffff;
2841
+ }
2842
+
2843
+ .agent-card {
2844
+ display: flex;
2845
+ flex-direction: column;
2846
+ gap: 0.75rem;
2847
+ padding: 1.25rem;
2848
+ border: 1px solid var(--color-border, #e7e5df);
2849
+ border-radius: var(--radius-md, 10px);
2850
+ background-color: var(--color-card, #ffffff);
2851
+ color: inherit;
2852
+ text-decoration: none;
2853
+ transition: border-color 140ms cubic-bezier(0.2, 0.7, 0.3, 1), box-shadow 140ms cubic-bezier(0.2, 0.7, 0.3, 1);
2854
+ }
2855
+
2856
+ .agent-card:hover {
2857
+ border-color: var(--color-primary, #4f9c86);
2858
+ box-shadow: 0 1px 2px rgba(16, 28, 25, 0.05);
2859
+ }
2860
+
2861
+ .agent-card-head {
2862
+ display: flex;
2863
+ align-items: center;
2864
+ gap: 0.75rem;
2865
+ }
2866
+
2867
+ .agent-card-avatar {
2868
+ display: inline-flex;
2869
+ align-items: center;
2870
+ justify-content: center;
2871
+ width: 2.75rem;
2872
+ height: 2.75rem;
2873
+ border-radius: 999px;
2874
+ background-color: var(--color-primary-soft, #eef5f2);
2875
+ color: var(--color-primary, #14705f);
2876
+ font-size: 0.875rem;
2877
+ font-weight: 600;
2878
+ flex-shrink: 0;
2879
+ }
2880
+
2881
+ .agent-card-identity {
2882
+ min-width: 0;
2883
+ }
2884
+
2885
+ .agent-card-name {
2886
+ display: flex;
2887
+ align-items: center;
2888
+ gap: 0.25rem;
2889
+ font-weight: 600;
2890
+ color: var(--color-foreground, #101c19);
2891
+ }
2892
+
2893
+ .agent-card-verified {
2894
+ color: var(--color-primary, #2c8268);
2895
+ }
2896
+
2897
+ .agent-card-role {
2898
+ font-size: 0.875rem;
2899
+ color: var(--color-muted-foreground, #5c6b66);
2900
+ white-space: nowrap;
2901
+ overflow: hidden;
2902
+ text-overflow: ellipsis;
2903
+ }
2904
+
2905
+ .agent-card-facts {
2906
+ display: flex;
2907
+ flex-wrap: wrap;
2908
+ gap: 0.5rem 1rem;
2909
+ font-size: 0.75rem;
2910
+ color: var(--color-muted-foreground, #5c6b66);
2911
+ }
2912
+
2913
+ .agent-card-fact {
2914
+ display: inline-flex;
2915
+ align-items: center;
2916
+ gap: 0.25rem;
2917
+ }
2918
+
2919
+ .agent-card-specialties {
2920
+ display: flex;
2921
+ flex-wrap: wrap;
2922
+ gap: 0.375rem;
2923
+ margin-top: auto;
2924
+ list-style: none;
2925
+ padding: 0;
2926
+ }
2927
+
2928
+ .agent-card-specialty {
2929
+ padding: 0.125rem 0.5rem;
2930
+ border-radius: 999px;
2931
+ background-color: var(--color-secondary, #f3f2ee);
2932
+ font-size: 0.75rem;
2933
+ color: var(--color-muted-foreground, #33413d);
2934
+ }
2935
+
2936
+ .stat-tile-grid {
2937
+ display: grid;
2938
+ grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr));
2939
+ gap: 0.75rem;
2940
+ margin-bottom: 2rem;
2941
+ list-style: none;
2942
+ padding: 0;
2943
+ }
2944
+
2945
+ .stat-tile {
2946
+ display: grid;
2947
+ gap: 0.25rem;
2948
+ padding: 1rem;
2949
+ border: 1px solid var(--color-border, #e7e5df);
2950
+ border-radius: var(--radius-md, 10px);
2951
+ background-color: var(--color-card, #ffffff);
2952
+ color: inherit;
2953
+ text-decoration: none;
2954
+ transition: border-color 140ms cubic-bezier(0.2, 0.7, 0.3, 1);
2955
+ }
2956
+
2957
+ .stat-tile:hover {
2958
+ border-color: var(--color-primary, #4f9c86);
2959
+ }
2960
+
2961
+ .stat-tile-val {
2962
+ font-size: 1.75rem;
2963
+ font-weight: 600;
2964
+ color: var(--color-foreground, #101c19);
2965
+ line-height: 1;
2966
+ }
2967
+
2968
+ .stat-tile-lbl {
2969
+ font-size: 0.75rem;
2970
+ font-weight: 500;
2971
+ color: var(--color-muted-foreground, #5c6b66);
2972
+ }
2973
+
2974
+ .profile-card {
2975
+ display: flex;
2976
+ flex-direction: column;
2977
+ gap: 0.5rem;
2978
+ margin-bottom: 1.5rem;
2979
+ }
2980
+
2981
+ .profile-kicker {
2982
+ margin: 0;
2983
+ font-size: 0.75rem;
2984
+ font-weight: 600;
2985
+ letter-spacing: 0.08em;
2986
+ text-transform: uppercase;
2987
+ color: var(--color-muted-foreground, #7d8a85);
2988
+ }
2989
+
2990
+ .profile-row {
2991
+ display: flex;
2992
+ align-items: center;
2993
+ gap: 0.75rem;
2994
+ }
2995
+
2996
+ .profile-avatar {
2997
+ flex-shrink: 0;
2998
+ width: 2.5rem;
2999
+ height: 2.5rem;
3000
+ display: grid;
3001
+ place-items: center;
3002
+ border-radius: 999px;
3003
+ background: var(--color-primary-soft, #eef5f2);
3004
+ color: var(--color-primary, #14705f);
3005
+ font-size: 0.875rem;
3006
+ font-weight: 600;
3007
+ }
3008
+
3009
+ .profile-name {
3010
+ margin: 0;
3011
+ font-size: 1rem;
3012
+ font-weight: 600;
3013
+ color: var(--color-foreground, #1a2723);
3014
+ }
3015
+
3016
+ .profile-meta {
3017
+ margin: 0;
3018
+ font-size: 0.875rem;
3019
+ color: var(--color-muted-foreground, #5c6b66);
3020
+ }
3021
+
3022
+ .audit-list {
3023
+ list-style: none;
3024
+ margin: 0;
3025
+ padding: 0;
3026
+ display: flex;
3027
+ flex-direction: column;
3028
+ gap: 0.5rem;
3029
+ }
3030
+
3031
+ .chart-total {
3032
+ font-family: var(--font-mono, monospace);
3033
+ font-size: 20px;
3034
+ font-weight: 600;
3035
+ color: var(--ink-900, var(--color-foreground));
3036
+ }
3037
+
3038
+ .axis-tick {
3039
+ font-family: var(--font-mono, monospace);
3040
+ font-size: 9.5px;
3041
+ fill: var(--ink-300, var(--color-muted-foreground));
3042
+ }
3043
+
3044
+ .axis-grid-line {
3045
+ stroke: var(--line, var(--color-border));
3046
+ stroke-width: 1;
3047
+ stroke-dasharray: 1 4;
3048
+ }
3049
+
3050
+ .chart-bar-label {
3051
+ font-family: var(--font-mono, monospace);
3052
+ font-size: 10px;
3053
+ fill: var(--ink-500, var(--color-muted-foreground));
3054
+ }
3055
+
3056
+ .ch-series-0 { fill: var(--chart-1, var(--color-primary)); stroke: var(--chart-1, var(--color-primary)); background: var(--chart-1, var(--color-primary)); }
3057
+ .ch-series-1 { fill: var(--chart-2, var(--color-accent)); stroke: var(--chart-2, var(--color-accent)); background: var(--chart-2, var(--color-accent)); }
3058
+ .ch-series-2 { fill: var(--chart-3, var(--color-info)); stroke: var(--chart-3, var(--color-info)); background: var(--chart-3, var(--color-info)); }
3059
+ .ch-series-3 { fill: var(--chart-4, #7a6ba8); stroke: var(--chart-4, #7a6ba8); background: var(--chart-4, #7a6ba8); }
3060
+ .ch-series-4 { fill: var(--chart-5, #8a5a3b); stroke: var(--chart-5, #8a5a3b); background: var(--chart-5, #8a5a3b); }
3061
+ .ch-series-5 { fill: var(--chart-6, #5e7d5a); stroke: var(--chart-6, #5e7d5a); background: var(--chart-6, #5e7d5a); }
3062
+ .ch-faint { fill: var(--chart-faint, var(--color-muted)); }
3063
+
3064
+ .font-display {
3065
+ font-family: var(--font-display, serif);
3066
+ font-weight: 600;
3067
+ letter-spacing: -0.01em;
3068
+ }
3069
+
3070
+ .font-mono {
3071
+ font-family: var(--font-mono, monospace);
3072
+ font-size: 0.93em;
3073
+ letter-spacing: -0.02em;
3074
+ }
3075
+
3076
+ .tnum {
3077
+ font-variant-numeric: tabular-nums;
3078
+ }
3079
+
3080
+ .overline {
3081
+ font-size: var(--text-xs, 11px);
3082
+ font-weight: 600;
3083
+ letter-spacing: 0.09em;
3084
+ text-transform: uppercase;
3085
+ color: var(--ink-400, var(--color-muted-foreground));
3086
+ }
3087
+
3088
+ .contour-bg {
3089
+ background-image: repeating-radial-gradient(
3090
+ circle at 30% 20%,
3091
+ transparent 0,
3092
+ transparent 22px,
3093
+ rgba(127, 148, 132, 0.16) 22px,
3094
+ rgba(127, 148, 132, 0.16) 23px
3095
+ );
3096
+ }
3097
+
3098
+ .cond-pips {
3099
+ display: inline-flex;
3100
+ align-items: center;
3101
+ gap: 3px;
3102
+ }
3103
+
3104
+ .cond-pips .pip {
3105
+ width: 7px;
3106
+ height: 7px;
3107
+ border-radius: 50%;
3108
+ background: var(--line-strong, var(--color-border));
3109
+ transition: background 120ms ease;
3110
+ }
3111
+
3112
+ .cond-pips .pip.on {
3113
+ background: var(--primary-600, var(--color-primary));
3114
+ }
3115
+
3116
+ .timeline {
3117
+ display: flex;
3118
+ flex-direction: column;
3119
+ position: relative;
3120
+ }
3121
+
3122
+ .tl-item {
3123
+ display: flex;
3124
+ align-items: flex-start;
3125
+ gap: 12px;
3126
+ padding: 8px 0;
3127
+ position: relative;
3128
+ text-align: left;
3129
+ background: transparent;
3130
+ border: none;
3131
+ font: inherit;
3132
+ color: inherit;
3133
+ }
3134
+
3135
+ .tl-item::before {
3136
+ content: '';
3137
+ position: absolute;
3138
+ top: 24px;
3139
+ bottom: -4px;
3140
+ left: 11px;
3141
+ width: 1px;
3142
+ background: var(--line, var(--color-border));
3143
+ }
3144
+
3145
+ .tl-item:last-child::before {
3146
+ display: none;
3147
+ }
3148
+
3149
+ .tl-marker {
3150
+ width: 23px;
3151
+ height: 23px;
3152
+ border-radius: 50%;
3153
+ background: var(--surface, var(--color-card));
3154
+ border: 1px solid var(--line-strong, var(--color-border));
3155
+ display: flex;
3156
+ align-items: center;
3157
+ justify-content: center;
3158
+ flex-shrink: 0;
3159
+ color: var(--ink-500, var(--color-muted-foreground));
3160
+ z-index: 1;
3161
+ }
3162
+
3163
+ .tl-item.tone-primary .tl-marker { color: var(--primary-600, var(--color-primary)); border-color: var(--primary-500, var(--color-primary)); }
3164
+ .tl-item.tone-success .tl-marker { color: var(--status-success, #2f6b40); border-color: var(--status-success, #2f6b40); }
3165
+ .tl-item.tone-warning .tl-marker { color: var(--status-warning, #96690f); border-color: var(--status-warning, #96690f); }
3166
+ .tl-item.tone-danger .tl-marker { color: var(--status-danger, #a53f2a); border-color: var(--status-danger, #a53f2a); }
3167
+ .tl-item.tone-info .tl-marker { color: var(--status-info, #3e5f80); border-color: var(--status-info, #3e5f80); }
3168
+
3169
+ .tl-content {
3170
+ display: flex;
3171
+ flex-direction: column;
3172
+ gap: 2px;
3173
+ min-width: 0;
3174
+ flex: 1;
3175
+ }
3176
+
3177
+ .tl-title {
3178
+ font-size: var(--text-sm, 12.5px);
3179
+ font-weight: 600;
3180
+ color: var(--ink-800, var(--color-foreground));
3181
+ }
3182
+
3183
+ .tl-sub {
3184
+ font-size: var(--text-sm, 12px);
3185
+ color: var(--ink-600, var(--color-muted-foreground));
3186
+ }
3187
+
3188
+ .tl-date {
3189
+ font-size: var(--text-xs, 11px);
3190
+ color: var(--ink-400, var(--color-muted-foreground));
3191
+ margin-top: 2px;
3192
+ }
3193
+
3194
+ .section-head {
3195
+ display: flex;
3196
+ align-items: center;
3197
+ justify-content: space-between;
3198
+ gap: 12px;
3199
+ margin-bottom: 12px;
3200
+ }
3201
+
3202
+ .section-title {
3203
+ font-size: var(--text-md, 15px);
3204
+ font-weight: 600;
3205
+ color: var(--ink-900, var(--color-foreground));
3206
+ }
3207
+
3208
+ .detail-grid {
3209
+ display: grid;
3210
+ grid-template-columns: repeat(2, minmax(0, 1fr));
3211
+ gap: 12px;
3212
+ }
3213
+
3214
+ .detail-item {
3215
+ display: flex;
3216
+ flex-direction: column;
3217
+ gap: 2px;
3218
+ }
3219
+
3220
+ .d-label {
3221
+ font-size: var(--text-xs, 11px);
3222
+ font-weight: 600;
3223
+ letter-spacing: 0.06em;
3224
+ text-transform: uppercase;
3225
+ color: var(--ink-400, var(--color-muted-foreground));
3226
+ }
3227
+
3228
+ .d-value {
3229
+ font-size: var(--text-sm, 13px);
3230
+ color: var(--ink-800, var(--color-foreground));
3231
+ }
3232
+
3233
+ .data-toolbar {
3234
+ display: flex;
3235
+ align-items: center;
3236
+ gap: 8px;
3237
+ padding: 10px 14px;
3238
+ background: var(--surface, var(--color-card));
3239
+ border: 1px solid var(--line, var(--color-border));
3240
+ border-radius: var(--r-md, 6px);
3241
+ margin-bottom: 12px;
3242
+ flex-wrap: wrap;
3243
+ }
3244
+
3245
+ .data-toolbar .search-field {
3246
+ position: relative;
3247
+ display: flex;
3248
+ align-items: center;
3249
+ flex: 1;
3250
+ min-width: 180px;
3251
+ }
3252
+
3253
+ .data-toolbar .search-field svg {
3254
+ position: absolute;
3255
+ left: 9px;
3256
+ color: var(--ink-400, var(--color-muted-foreground));
3257
+ pointer-events: none;
3258
+ }
3259
+
3260
+ .data-toolbar .search-field .input {
3261
+ padding-left: 28px;
3262
+ padding-right: 28px;
3263
+ }
3264
+
3265
+ .data-toolbar .result-count {
3266
+ font-size: var(--text-xs, 11px);
3267
+ color: var(--ink-400, var(--color-muted-foreground));
3268
+ margin-left: auto;
3269
+ font-weight: 500;
3270
+ }
3271
+
3272
+ .field {
3273
+ display: flex;
3274
+ flex-direction: column;
3275
+ gap: 5px;
3276
+ min-width: 0;
3277
+ }
3278
+
3279
+ .field-label {
3280
+ font-size: var(--text-sm, 12.5px);
3281
+ font-weight: 600;
3282
+ color: var(--ink-700, var(--color-foreground));
3283
+ display: flex;
3284
+ justify-content: space-between;
3285
+ align-items: baseline;
3286
+ }
3287
+
3288
+ .field-label .req {
3289
+ color: var(--status-danger, var(--color-destructive));
3290
+ margin-inline-start: 3px;
3291
+ }
3292
+
3293
+ .field-error {
3294
+ font-size: var(--text-sm, 12px);
3295
+ color: var(--status-danger, var(--color-destructive));
3296
+ display: flex;
3297
+ align-items: center;
3298
+ gap: 4px;
3299
+ }
3300
+
3301
+ .field-hint {
3302
+ font-size: var(--text-sm, 12px);
3303
+ color: var(--ink-400, var(--color-muted-foreground));
3304
+ }
3305
+
3306
+ .form-grid {
3307
+ display: grid;
3308
+ grid-template-columns: repeat(2, minmax(0, 1fr));
3309
+ gap: 14px;
3310
+ }
3311
+
3312
+ .form-row {
3313
+ display: flex;
3314
+ flex-direction: column;
3315
+ gap: 6px;
3316
+ }
3317
+
3318
+ .form-row.span-2 {
3319
+ grid-column: span 2;
3320
+ }
3321
+
3322
+ .kpi-card {
3323
+ background: var(--surface, var(--color-card));
3324
+ border: 1px solid var(--line, var(--color-border));
3325
+ border-radius: var(--r-lg, 9px);
3326
+ padding: 15px 17px 13px;
3327
+ display: flex;
3328
+ flex-direction: column;
3329
+ gap: 6px;
3330
+ min-width: 0;
3331
+ position: relative;
3332
+ }
3333
+
3334
+ .kpi-card.is-clickable {
3335
+ transition: border-color var(--dur-1, 110ms) ease, box-shadow var(--dur-1, 110ms) ease;
3336
+ }
3337
+
3338
+ .kpi-card.is-clickable:hover {
3339
+ border-color: var(--ink-300, var(--color-border));
3340
+ box-shadow: var(--shadow-2, 0 2px 6px rgba(26, 35, 28, 0.07));
3341
+ }
3342
+
3343
+ .kpi-label {
3344
+ display: flex;
3345
+ align-items: center;
3346
+ gap: 7px;
3347
+ font-size: var(--text-xs, 11px);
3348
+ font-weight: 600;
3349
+ letter-spacing: 0.08em;
3350
+ text-transform: uppercase;
3351
+ color: var(--ink-400, var(--color-muted-foreground));
3352
+ }
3353
+
3354
+ .kpi-value {
3355
+ font-family: var(--font-mono, monospace);
3356
+ font-size: 23px;
3357
+ font-weight: 600;
3358
+ letter-spacing: -0.03em;
3359
+ color: var(--ink-900, var(--color-foreground));
3360
+ line-height: 1.15;
3361
+ white-space: nowrap;
3362
+ overflow: hidden;
3363
+ text-overflow: ellipsis;
3364
+ }
3365
+
3366
+ .kpi-value small {
3367
+ font-size: 13px;
3368
+ font-weight: 500;
3369
+ color: var(--ink-400, var(--color-muted-foreground));
3370
+ margin-inline-start: 2px;
3371
+ }
3372
+
3373
+ .kpi-value.kpi-warn { color: var(--status-warning, #96690f); }
3374
+ .kpi-value.kpi-danger { color: var(--status-danger, #a53f2a); }
3375
+
3376
+ .kpi-delta {
3377
+ display: inline-flex;
3378
+ align-items: center;
3379
+ gap: 3px;
3380
+ font-size: var(--text-sm, 12.5px);
3381
+ font-weight: 600;
3382
+ }
3383
+
3384
+ .kpi-delta.up { color: var(--status-success, #2f6b40); }
3385
+ .kpi-delta.down { color: var(--status-danger, #a53f2a); }
3386
+ .kpi-delta svg { width: 12px; height: 12px; }
3387
+ .kpi-delta .delta-base {
3388
+ color: var(--ink-400, var(--color-muted-foreground));
3389
+ font-weight: 400;
3390
+ }
3391
+
3392
+ .app-shell {
3393
+ display: flex;
3394
+ height: 100vh;
3395
+ overflow: hidden;
3396
+ background: var(--paper, var(--color-background));
3397
+ color: var(--ink-800, var(--color-foreground));
3398
+ }
3399
+
3400
+ .sidebar-brand {
3401
+ height: var(--topbar-h, 54px);
3402
+ display: flex;
3403
+ align-items: center;
3404
+ gap: 10px;
3405
+ padding: 0 16px;
3406
+ border-bottom: 1px solid var(--chrome-line, #2a3f30);
3407
+ }
3408
+
3409
+ .brand-mark {
3410
+ width: 28px;
3411
+ height: 28px;
3412
+ border-radius: var(--r-md, 6px);
3413
+ background: var(--primary-600, var(--color-primary));
3414
+ display: flex;
3415
+ align-items: center;
3416
+ justify-content: center;
3417
+ color: #ffffff;
3418
+ flex-shrink: 0;
3419
+ }
3420
+
3421
+ .brand-text {
3422
+ display: flex;
3423
+ flex-direction: column;
3424
+ min-width: 0;
3425
+ }
3426
+
3427
+ .brand-name {
3428
+ font-family: var(--font-display, serif);
3429
+ font-size: 16px;
3430
+ font-weight: 600;
3431
+ color: #ffffff;
3432
+ line-height: 1.1;
3433
+ }
3434
+
3435
+ .brand-tag {
3436
+ font-size: 10.5px;
3437
+ color: var(--chrome-text-dim, #7f9484);
3438
+ letter-spacing: 0.04em;
3439
+ }
3440
+
3441
+ .farm-switcher {
3442
+ display: flex;
3443
+ align-items: center;
3444
+ gap: 9px;
3445
+ margin: 10px 10px 4px;
3446
+ padding: 8px 10px;
3447
+ border-radius: var(--r-md, 6px);
3448
+ background: var(--chrome-700, #1c2e21);
3449
+ border: 1px solid var(--chrome-line, #2a3f30);
3450
+ color: #ffffff;
3451
+ cursor: pointer;
3452
+ transition: background var(--dur-1, 110ms) ease;
3453
+ text-align: left;
3454
+ }
3455
+
3456
+ .farm-switcher:hover {
3457
+ background: var(--chrome-600, #233a2a);
3458
+ }
3459
+
3460
+ .fs-glyph {
3461
+ width: 22px;
3462
+ height: 22px;
3463
+ border-radius: 4px;
3464
+ background: rgba(121, 183, 136, 0.16);
3465
+ display: flex;
3466
+ align-items: center;
3467
+ justify-content: center;
3468
+ color: #9dc9a5;
3469
+ flex-shrink: 0;
3470
+ }
3471
+
3472
+ .fs-text {
3473
+ display: flex;
3474
+ flex-direction: column;
3475
+ min-width: 0;
3476
+ flex: 1;
3477
+ }
3478
+
3479
+ .fs-name {
3480
+ font-size: var(--text-sm, 12.5px);
3481
+ font-weight: 600;
3482
+ white-space: nowrap;
3483
+ overflow: hidden;
3484
+ text-overflow: ellipsis;
3485
+ }
3486
+
3487
+ .fs-sub {
3488
+ font-size: 10px;
3489
+ color: var(--chrome-text-dim, #7f9484);
3490
+ }
3491
+
3492
+ .fs-caret {
3493
+ color: var(--chrome-text-dim, #7f9484);
3494
+ flex-shrink: 0;
3495
+ }
3496
+
3497
+ .sidebar-nav {
3498
+ flex: 1;
3499
+ overflow-y: auto;
3500
+ padding: 8px 10px;
3501
+ display: flex;
3502
+ flex-direction: column;
3503
+ gap: 2px;
3504
+ }
3505
+
3506
+ .nav-group-label {
3507
+ font-size: 10px;
3508
+ font-weight: 600;
3509
+ letter-spacing: 0.08em;
3510
+ text-transform: uppercase;
3511
+ color: var(--chrome-text-dim, #7f9484);
3512
+ padding: 12px 10px 4px;
3513
+ }
3514
+
3515
+ .nav-item {
3516
+ display: flex;
3517
+ align-items: center;
3518
+ gap: 9px;
3519
+ padding: 7px 10px;
3520
+ border-radius: var(--r-md, 6px);
3521
+ font-size: var(--text-sm, 12.5px);
3522
+ color: var(--chrome-text, #c5cfc4);
3523
+ text-decoration: none;
3524
+ transition: background var(--dur-1, 110ms) ease, color var(--dur-1, 110ms) ease;
3525
+ }
3526
+
3527
+ .nav-item:hover {
3528
+ background: var(--chrome-700, #1c2e21);
3529
+ color: #ffffff;
3530
+ }
3531
+
3532
+ .nav-item.active {
3533
+ background: var(--chrome-600, #233a2a);
3534
+ color: var(--chrome-active, #d8e6d4);
3535
+ font-weight: 600;
3536
+ }
3537
+
3538
+ .nav-item .nav-badge {
3539
+ margin-left: auto;
3540
+ font-size: 10px;
3541
+ padding: 1px 6px;
3542
+ border-radius: 999px;
3543
+ background: var(--chrome-700, #1c2e21);
3544
+ color: var(--chrome-text, #c5cfc4);
3545
+ }
3546
+
3547
+ .nav-item .nav-badge-live {
3548
+ width: 6px;
3549
+ height: 6px;
3550
+ border-radius: 50%;
3551
+ background: #79b788;
3552
+ margin-left: auto;
3553
+ }
3554
+
3555
+ .nav-sub {
3556
+ display: block;
3557
+ padding: 5px 10px 5px 32px;
3558
+ font-size: 12px;
3559
+ color: var(--chrome-text-dim, #7f9484);
3560
+ border-radius: var(--r-sm, 4px);
3561
+ text-decoration: none;
3562
+ }
3563
+
3564
+ .nav-sub:hover {
3565
+ color: #dfe8db;
3566
+ background: var(--chrome-700, #1c2e21);
3567
+ }
3568
+
3569
+ .nav-sub.active {
3570
+ color: #ffffff;
3571
+ font-weight: 600;
3572
+ }
3573
+
3574
+ .sidebar-foot {
3575
+ padding: 10px;
3576
+ border-top: 1px solid var(--chrome-line, #2a3f30);
3577
+ }
3578
+
3579
+ .sidebar-user {
3580
+ display: flex;
3581
+ align-items: center;
3582
+ gap: 9px;
3583
+ padding: 6px 8px;
3584
+ border-radius: var(--r-md, 6px);
3585
+ cursor: pointer;
3586
+ width: 100%;
3587
+ text-align: left;
3588
+ }
3589
+
3590
+ .sidebar-user:hover {
3591
+ background: var(--chrome-700, #1c2e21);
3592
+ }
3593
+
3594
+ .sidebar-user .su-name {
3595
+ font-size: var(--text-sm, 12.5px);
3596
+ font-weight: 600;
3597
+ color: #ffffff;
3598
+ }
3599
+
3600
+ .sidebar-user .su-role {
3601
+ font-size: 10.5px;
3602
+ color: var(--chrome-text-dim, #7f9484);
3603
+ }
3604
+
3605
+ .main-area {
3606
+ flex: 1;
3607
+ display: flex;
3608
+ flex-direction: column;
3609
+ min-width: 0;
3610
+ overflow: hidden;
3611
+ }
3612
+
3613
+ .topbar-crumb {
3614
+ display: flex;
3615
+ align-items: center;
3616
+ gap: 6px;
3617
+ font-size: var(--text-sm, 12.5px);
3618
+ color: var(--ink-500, var(--color-muted-foreground));
3619
+ }
3620
+
3621
+ .topbar-crumb .crumb-sep {
3622
+ color: var(--ink-200, var(--color-border));
3623
+ }
3624
+
3625
+ .topbar-crumb .crumb-current {
3626
+ color: var(--ink-900, var(--color-foreground));
3627
+ font-weight: 600;
3628
+ }
3629
+
3630
+ .topbar-actions {
3631
+ display: flex;
3632
+ align-items: center;
3633
+ gap: 8px;
3634
+ }
3635
+
3636
+ .udb-period-select__select {
3637
+ height: 100%;
3638
+ border: none;
3639
+ background: transparent;
3640
+ font-family: var(--font-ui, var(--font-sans));
3641
+ font-size: var(--text-sm, 12.5px);
3642
+ color: var(--ink-600, var(--color-muted-foreground));
3643
+ outline: none;
3644
+ cursor: pointer;
3645
+ }